summaryrefslogtreecommitdiff
path: root/src/bytecode_util.ml
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-07-27 18:50:31 +0100
committerAlasdair Armstrong2018-07-27 18:50:31 +0100
commite4af7c3090c93a129e99dd75f2a20d5a9d2f6920 (patch)
tree124e9a76fbc36e36f4499e7bdb0fb1f2b25691e9 /src/bytecode_util.ml
parent4c84c70eafbbf9bea475e3264f21eedc3555021f (diff)
Make type annotations abstract in type_check.mli
Rather than exporting the implementation of type annotations as type tannot = (Env.t * typ * effect) option we leave it abstract as type tannot Some additional functions have been added to type_check.mli to work with these abstract type annotations. Most use cases where the type was constructed explicitly can be handled by using either mk_tannot or empty_tannot. For pattern matching on a tannot there is a function val destruct_tannot : tannot -> (Env.t * typ * effect) option Note that it is specifically not guaranteed that using mk_tannot on the elements returned by destruct_tannot re-constructs the same tannot, as destruct_tannot is only used to give the old view of a type annotation, and we may add additional information that will not be returned by destruct_tannot.
Diffstat (limited to 'src/bytecode_util.ml')
0 files changed, 0 insertions, 0 deletions