jon.recoil.org

Module Typeopt

val is_function_type : Env.t -> Types.type_expr -> (Types.type_expr * Types.type_expr) option
val is_base_type : Env.t -> Types.type_expr -> Path.t -> bool
val array_type_kind : elt_sort:Jkind.Sort.Const.t option -> elt_ty:Types.type_expr option -> Env.t -> Location.t -> Types.type_expr -> Lambda.array_kind
val array_type_mut : Env.t -> Types.type_expr -> Lambda.mutable_flag
val array_kind_of_elt : elt_sort:Jkind.Sort.Const.t option -> Env.t -> Location.t -> Types.type_expr -> Lambda.array_kind
val bigarray_specialize_kind_and_layout : Env.t -> kind:Lambda.bigarray_kind -> layout:Lambda.bigarray_layout -> Types.type_expr -> Lambda.bigarray_kind * Lambda.bigarray_layout
val layout_of_sort : Location.t -> Jkind.Sort.Const.t -> Lambda.layout
val layout_of_non_void_sort : Jkind.Sort.Const.t -> Lambda.layout
val function_return_layout : Env.t -> Location.t -> Jkind.Sort.Const.t -> Types.type_expr -> Lambda.layout
val function2_return_layout : Env.t -> Location.t -> Jkind.Sort.Const.t -> Types.type_expr -> Lambda.layout
val function_arg_layout : Env.t -> Location.t -> Jkind.Sort.Const.t -> Types.type_expr -> Lambda.layout
val transl_mixed_block_element : Env.t -> Location.t -> Types.type_expr -> Types.mixed_block_element -> unit Lambda.mixed_block_element
val classify_lazy_argument : Typedtree.expression -> [ `Constant_or_function | `Float_that_cannot_be_shortcut | `Identifier of [ `Forward_value | `Other ] | `Other ]