diff options
author | 2014-10-21 12:11:04 +0200 | |
---|---|---|
committer | 2014-10-22 07:31:45 +0200 | |
commit | a8ea528113f89302f7156416e1f3da18848e59b2 (patch) | |
tree | 6c164224c49d8f6429b856e01c9271cadeb7ade7 /pretyping/evd.ml | |
parent | 5349f30a7b7db65b7b1ef37b1d9b27f97d03d5fd (diff) |
Add more primitives to the [Monad.Make] arguments.
For optimisation purposes.
Diffstat (limited to 'pretyping/evd.ml')
-rw-r--r-- | pretyping/evd.ml | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pretyping/evd.ml b/pretyping/evd.ml index a41db3f8f..93d47d6b1 100644 --- a/pretyping/evd.ml +++ b/pretyping/evd.ml @@ -1630,6 +1630,13 @@ module MonadR = let (s',a) = x s in f a s' + let (>>) x y = fun s -> + let (s',()) = x s in + y s' + + let map f x = fun s -> + on_snd f (x s) + end) module Monad = @@ -1643,6 +1650,13 @@ module Monad = let (a,s') = x s in f a s' + let (>>) x y = fun s -> + let ((),s') = x s in + y s' + + let map f x = fun s -> + on_fst f (x s) + end) (**********************************************************) |