diff options
author | Leo White <leo@lpw25.net> | 2017-09-15 09:29:29 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-15 09:29:29 +0100 |
commit | 5cb27d8ebbc22a5eb2e921b63819aaad7bc96021 (patch) | |
tree | f13cd9285b6c3a2a43ec4c27a88a2201bea23790 /typing/subst.mli | |
parent | 1501bc9bb0bcf336f45595713b136d22464d99f9 (diff) | |
parent | e87113c782e0ceaa43e351d5dd31d5022413a787 (diff) | |
download | ocaml-5cb27d8ebbc22a5eb2e921b63819aaad7bc96021.tar.gz |
Merge pull request #792 from sliquister/generalize-destr-subst2
Fixing the limitations on destructive substitutions
Diffstat (limited to 'typing/subst.mli')
-rw-r--r-- | typing/subst.mli | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/typing/subst.mli b/typing/subst.mli index b92f338d4c..f81cb4da56 100644 --- a/typing/subst.mli +++ b/typing/subst.mli @@ -34,7 +34,11 @@ type t val identity: t val add_type: Ident.t -> Path.t -> t -> t +val add_type_path: Path.t -> Path.t -> t -> t +val add_type_function: + Path.t -> params:type_expr list -> body:type_expr -> t -> t val add_module: Ident.t -> Path.t -> t -> t +val add_module_path: Path.t -> Path.t -> t -> t val add_modtype: Ident.t -> module_type -> t -> t val for_saving: t -> t val reset_for_saving: unit -> unit @@ -60,3 +64,7 @@ val class_signature: t -> class_signature -> class_signature (* Composition of substitutions: apply (compose s1 s2) x = apply s2 (apply s1 x) *) val compose: t -> t -> t + +(* A forward reference to be filled in ctype.ml. *) +val ctype_apply_env_empty: + (type_expr list -> type_expr -> type_expr list -> type_expr) ref |