Module Ocaml_typing.Shape_reduce
type result = | Resolved of Ocaml_typing.Shape.Uid.t(*Shape reduction succeeded and a uid was found
*)| Resolved_alias of Ocaml_typing.Shape.Uid.t * Ocaml_typing.Shape_reduce.result(*Reduction led to an alias
*)| Unresolved of Ocaml_typing.Shape.t(*Result still contains
*)Comp_unitterms| Approximated of Ocaml_typing.Shape.Uid.t option(*Reduction failed: it can arrive with first-class modules for example
*)| Internal_error_missing_uid(*Reduction succeeded but no uid was found, this should never happen
*)
The result of reducing a shape and looking for its uid
val print_result :
Stdlib.Format.formatter ->
Ocaml_typing.Shape_reduce.result ->
unitmodule Diagnostics : sig ... endThe Make functor is used to generate a reduction function for shapes.
val local_reduce :
?diagnostics:Ocaml_typing.Shape_reduce.Diagnostics.t ->
Ocaml_typing.Env.t ->
Ocaml_typing.Shape.t ->
Ocaml_typing.Shape.tlocal_reduce will not reduce shapes that require loading external compilation units.
val local_reduce_for_uid :
Ocaml_typing.Env.t ->
Ocaml_typing.Shape.t ->
Ocaml_typing.Shape_reduce.resultlocal_reduce_for_uid will not reduce shapes that require loading external compilation units.