summaryrefslogtreecommitdiff
path: root/src/gen_lib/prompt_monad.lem
diff options
context:
space:
mode:
authorBrian Campbell2018-05-17 16:39:30 +0100
committerBrian Campbell2018-05-17 16:39:30 +0100
commit1867ec89a4493ca6ce92c8926885c4090b6d3d5d (patch)
tree8f6b4a527d80180341c8b19efd21c869a5e30065 /src/gen_lib/prompt_monad.lem
parent333bbb7cbfda60eda1bfe6642e068f2795056c1d (diff)
parentf5672ea6a1e04ad1f2bee91ad86584b183d323b4 (diff)
Merge branch 'cheri-mono' into sail2
Diffstat (limited to 'src/gen_lib/prompt_monad.lem')
-rw-r--r--src/gen_lib/prompt_monad.lem7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gen_lib/prompt_monad.lem b/src/gen_lib/prompt_monad.lem
index 9eb59319..87c9af39 100644
--- a/src/gen_lib/prompt_monad.lem
+++ b/src/gen_lib/prompt_monad.lem
@@ -212,3 +212,10 @@ let barrier bk = Barrier bk (Done ())
val footprint : forall 'rv 'e. unit -> monad 'rv unit 'e
let footprint _ = Footprint (Done ())
+
+(* Define a type synonym that also takes the register state as a type parameter,
+ in order to make switching to the state monad without changing generated
+ definitions easier, see also lib/hol/prompt_monad.lem. *)
+
+type base_monad 'regval 'regstate 'a 'e = monad 'regval 'a 'e
+type base_monadR 'regval 'regstate 'a 'r 'e = monadR 'regval 'a 'r 'e