package saltoIL
Library
Module
Module type
Parameter
Class
Class type
: Pierre LERMUSIAUX <pierre.lermusiaux@inria.fr> Copyright © Inria 2022-2023
val typing_data :
?extras:('b * Location.t * Typedtree.attributes) list ->
?attrs:Typedtree.attributes ->
Types.type_expr ->
Env.t ->
('a, 'b) Ast.typing
Helper function to create values of type typing_data
val transpose_pattern_data : Typedtree.pattern -> Ast.pattern_data
Transpose OCaml typed value patterns in the Salto AST
val transpose_general_pattern :
Typedtree.computation Typedtree.general_pattern ->
Ast.general_pattern
Transpose OCaml typed computation patterns in the Salto AST, by splitting value patterns and exception patterns into 2 lists of patterns
val transpose_expression_data :
?is_rec:bool ->
scopes:Debuginfo.Scoped_location.scopes ->
?in_new_scope:bool ->
Typedtree.expression ->
Ast.expression_data
Transpose OCaml typed expressions in the Salto AST, encoding try_with expressions, and match_with expressions containing exceptions cases, through a dispatch construction
val transpose_class_expr_data :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.class_expr ->
Ast.class_expr_data
Transpose OCaml typed class expressions in the Salto AST
val transpose_structure :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.structure ->
Ast.structure
Transpose OCaml typed module structures in the Salto AST
val transpose_structure_item_data :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.structure_item ->
Ast.structure_item_data list
Transpose OCaml typed module structure items in the Salto AST
val transpose_module_type_data :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.module_type ->
Ast.module_type_data
Transpose OCaml typed module types in the Salto AST
val transpose_signature :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.signature ->
Ast.signature
Transpose OCaml typed module signatures in the Salto AST
val transpose_signature_item_data :
scopes:Debuginfo.Scoped_location.scopes ->
Typedtree.signature_item ->
Ast.signature_item_data
Transpose OCaml typed module signature items in the Salto AST
type transposed_annots =
| Packed of Types.signature * string list
| Implementation of Ast.structure
| Interface of Ast.signature
| Partial_implementation of transposed_part list
| Partial_interface of transposed_part list
Type for cmt binnary annots transposed into the Salto AST
and transposed_part =
| Partial_structure of Ast.structure
| Partial_structure_item of Ast.structure_item_data
| Partial_expression of Ast.expression_data
| Partial_value_pattern of Ast.pattern_data
| Partial_general_pattern of Ast.general_pattern
| Partial_class_expr of Ast.class_expr_data
| Partial_signature of Ast.signature
| Partial_signature_item of Ast.signature_item_data
| Partial_module_type of Ast.module_type_data
Type for cmt binnary parts transposed into the Salto AST
val transpose_annots :
scopes:Debuginfo.Scoped_location.scopes ->
Cmt_format.binary_annots ->
transposed_annots
transpose_annots annots
translates annots from a cmt file into the Salto AST