diff options
author | Arnaud Spiwack <arnaud@spiwack.net> | 2014-02-27 13:50:57 +0100 |
---|---|---|
committer | Arnaud Spiwack <arnaud@spiwack.net> | 2014-02-27 13:50:57 +0100 |
commit | 4d6b938e90ecd9dbfb29a0af28a7d8b6a657ae17 (patch) | |
tree | 2269e31293437dc346447bccd13f22c172f10fca /lib/genarg.mli | |
parent | 27d780bd52e1776afb05793d43ac030af861c82d (diff) |
Remove unsafe code (Obj.magic) in Tacinterp.
This commit also introduces a module Monad to generate monadic combinators (currently, only List.map).
Diffstat (limited to 'lib/genarg.mli')
-rw-r--r-- | lib/genarg.mli | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/genarg.mli b/lib/genarg.mli index 6eea3ac92..45f0dddf2 100644 --- a/lib/genarg.mli +++ b/lib/genarg.mli @@ -186,6 +186,16 @@ val app_pair : ('a generic_argument -> 'b generic_argument) -> 'a generic_argument -> 'b generic_argument +module Monadic (M:Monad.S) : sig + + (** [Monadic.app_list f x] maps the monadic computation [f] on + elements of [x], provided [x] has the tag [List0 t] for some [t]. It + fails otherwise. *) + val app_list : ('a generic_argument -> 'b generic_argument M.t) -> + 'a generic_argument -> 'b generic_argument M.t + +end + (** {6 Type reification} *) type argument_type = |