summaryrefslogtreecommitdiff
path: root/tests/lean
diff options
context:
space:
mode:
authorSon HO2024-04-26 10:55:47 +0200
committerGitHub2024-04-26 10:55:47 +0200
commit5da597289c1723aa59bf87ad5075675820c18f73 (patch)
treed63e2f44c75634674a3e4eabb57ff08c0ae441ac /tests/lean
parent2df6dd65b84a2fd9aad4f716f323bf3f85bf82db (diff)
parentfe8d14cd8b7ba907d5248d574619e93e6d1d253a (diff)
Merge pull request #125 from zhassan-aws/core-option-unwrap
Add `core::option::unwrap` builtin
Diffstat (limited to '')
-rw-r--r--tests/lean/BetreeMain/Funs.lean18
-rw-r--r--tests/lean/BetreeMain/FunsExternal.lean5
-rw-r--r--tests/lean/BetreeMain/FunsExternal_Template.lean6
-rw-r--r--tests/lean/External/FunsExternal.lean1
4 files changed, 9 insertions, 21 deletions
diff --git a/tests/lean/BetreeMain/Funs.lean b/tests/lean/BetreeMain/Funs.lean
index 0c31b9bc..f0032d51 100644
--- a/tests/lean/BetreeMain/Funs.lean
+++ b/tests/lean/BetreeMain/Funs.lean
@@ -219,8 +219,8 @@ divergent def betree.Node.lookup_in_bindings
Source: 'src/betree.rs', lines 819:4-819:90 -/
divergent def betree.Node.apply_upserts
(msgs : betree.List (U64 × betree.Message)) (prev : Option U64) (key : U64)
- (st : State) :
- Result (State × (U64 × (betree.List (U64 × betree.Message))))
+ :
+ Result (U64 × (betree.List (U64 × betree.Message)))
:=
do
let b ← betree.ListPairU64T.head_has_key betree.Message msgs key
@@ -235,14 +235,14 @@ divergent def betree.Node.apply_upserts
| betree.Message.Upsert s =>
do
let v ← betree.upsert_update prev s
- betree.Node.apply_upserts msgs1 (some v) key st
+ betree.Node.apply_upserts msgs1 (some v) key
else
do
- let (st1, v) ← core.option.Option.unwrap U64 prev st
+ let v ← core.option.Option.unwrap U64 prev
let msgs1 ←
betree.List.push_front (U64 × betree.Message) msgs (key,
betree.Message.Insert v)
- Result.ok (st1, (v, msgs1))
+ Result.ok (v, msgs1)
/- [betree_main::betree::{betree_main::betree::Internal#4}::lookup_in_children]:
Source: 'src/betree.rs', lines 395:4-395:63 -/
@@ -307,13 +307,13 @@ divergent def betree.Node.lookup
let (st2, (v, node1)) ←
betree.Internal.lookup_in_children (betree.Internal.mk i i1 n n1)
key st1
- let (st3, (v1, pending1)) ←
+ let (v1, pending1) ←
betree.Node.apply_upserts (betree.List.Cons (k,
- betree.Message.Upsert ufs) l) v key st2
+ betree.Message.Upsert ufs) l) v key
let ⟨ i2, i3, n2, n3 ⟩ := node1
let msgs1 ← lookup_first_message_for_key_back pending1
- let (st4, _) ← betree.store_internal_node i2 msgs1 st3
- Result.ok (st4, (some v1, betree.Node.Internal (betree.Internal.mk i2
+ let (st3, _) ← betree.store_internal_node i2 msgs1 st2
+ Result.ok (st3, (some v1, betree.Node.Internal (betree.Internal.mk i2
i3 n2 n3)))
| betree.List.Nil =>
do
diff --git a/tests/lean/BetreeMain/FunsExternal.lean b/tests/lean/BetreeMain/FunsExternal.lean
index 71d26da4..d26177fb 100644
--- a/tests/lean/BetreeMain/FunsExternal.lean
+++ b/tests/lean/BetreeMain/FunsExternal.lean
@@ -28,8 +28,3 @@ def betree_utils.load_leaf_node
def betree_utils.store_leaf_node
: U64 → betree.List (U64 × U64) → State → Result (State × Unit) :=
fun _ _ _ => .fail .panic
-
-/- [core::option::Option::{0}::unwrap] -/
-def core.option.Option.unwrap
- (T : Type) : Option T → State → Result (State × T) :=
- fun _ _ => .fail .panic
diff --git a/tests/lean/BetreeMain/FunsExternal_Template.lean b/tests/lean/BetreeMain/FunsExternal_Template.lean
index 0b3e4ef4..0dcce5ca 100644
--- a/tests/lean/BetreeMain/FunsExternal_Template.lean
+++ b/tests/lean/BetreeMain/FunsExternal_Template.lean
@@ -28,9 +28,3 @@ axiom betree_utils.load_leaf_node
axiom betree_utils.store_leaf_node
: U64 → betree.List (U64 × U64) → State → Result (State × Unit)
-/- [core::option::{core::option::Option<T>}::unwrap]:
- Source: '/rustc/d59363ad0b6391b7fc5bbb02c9ccf9300eef3753/library/core/src/option.rs', lines 932:4-932:34
- Name pattern: core::option::{core::option::Option<@T>}::unwrap -/
-axiom core.option.Option.unwrap
- (T : Type) : Option T → State → Result (State × T)
-
diff --git a/tests/lean/External/FunsExternal.lean b/tests/lean/External/FunsExternal.lean
index 28ba2077..c3e8dd79 100644
--- a/tests/lean/External/FunsExternal.lean
+++ b/tests/lean/External/FunsExternal.lean
@@ -14,4 +14,3 @@ def core.cell.Cell.get
def core.cell.Cell.get_mut (T : Type) (c : core.cell.Cell T) (s : State) :
Result (State × (T × (T → State → Result (State × (core.cell.Cell T))))) :=
sorry
-