package zanuda

  1. Overview
  2. Docs

These extra functions are an extension of Untypeast module from compiler libs. Maybe in new versions of compiler they will be available out of box.

include module type of struct include Untypeast end
val lident_of_path : Path.t -> Longident.t
type mapper = Untypeast.mapper = {
  1. attribute : mapper -> Typedtree.attribute -> Parsetree.attribute;
  2. attributes : mapper -> Typedtree.attribute list -> Parsetree.attribute list;
  3. binding_op : mapper -> Typedtree.binding_op -> Typedtree.pattern -> Parsetree.binding_op;
  4. case : 'k. mapper -> 'k Typedtree.case -> Parsetree.case;
  5. class_declaration : mapper -> Typedtree.class_declaration -> Parsetree.class_declaration;
  6. class_description : mapper -> Typedtree.class_description -> Parsetree.class_description;
  7. class_expr : mapper -> Typedtree.class_expr -> Parsetree.class_expr;
  8. class_field : mapper -> Typedtree.class_field -> Parsetree.class_field;
  9. class_signature : mapper -> Typedtree.class_signature -> Parsetree.class_signature;
  10. class_structure : mapper -> Typedtree.class_structure -> Parsetree.class_structure;
  11. class_type : mapper -> Typedtree.class_type -> Parsetree.class_type;
  12. class_type_declaration : mapper -> Typedtree.class_type_declaration -> Parsetree.class_type_declaration;
  13. class_type_field : mapper -> Typedtree.class_type_field -> Parsetree.class_type_field;
  14. constructor_declaration : mapper -> Typedtree.constructor_declaration -> Parsetree.constructor_declaration;
  15. expr : mapper -> Typedtree.expression -> Parsetree.expression;
  16. extension_constructor : mapper -> Typedtree.extension_constructor -> Parsetree.extension_constructor;
  17. include_declaration : mapper -> Typedtree.include_declaration -> Parsetree.include_declaration;
  18. include_description : mapper -> Typedtree.include_description -> Parsetree.include_description;
  19. label_declaration : mapper -> Typedtree.label_declaration -> Parsetree.label_declaration;
  20. location : mapper -> Location.t -> Location.t;
  21. module_binding : mapper -> Typedtree.module_binding -> Parsetree.module_binding;
  22. module_declaration : mapper -> Typedtree.module_declaration -> Parsetree.module_declaration;
  23. module_substitution : mapper -> Typedtree.module_substitution -> Parsetree.module_substitution;
  24. module_expr : mapper -> Typedtree.module_expr -> Parsetree.module_expr;
  25. module_type : mapper -> Typedtree.module_type -> Parsetree.module_type;
  26. module_type_declaration : mapper -> Typedtree.module_type_declaration -> Parsetree.module_type_declaration;
  27. package_type : mapper -> Typedtree.package_type -> Parsetree.package_type;
  28. open_declaration : mapper -> Typedtree.open_declaration -> Parsetree.open_declaration;
  29. open_description : mapper -> Typedtree.open_description -> Parsetree.open_description;
  30. pat : 'k. mapper -> 'k Typedtree.general_pattern -> Parsetree.pattern;
  31. row_field : mapper -> Typedtree.row_field -> Parsetree.row_field;
  32. object_field : mapper -> Typedtree.object_field -> Parsetree.object_field;
  33. signature : mapper -> Typedtree.signature -> Parsetree.signature;
  34. signature_item : mapper -> Typedtree.signature_item -> Parsetree.signature_item;
  35. structure : mapper -> Typedtree.structure -> Parsetree.structure;
  36. structure_item : mapper -> Typedtree.structure_item -> Parsetree.structure_item;
  37. typ : mapper -> Typedtree.core_type -> Parsetree.core_type;
  38. type_declaration : mapper -> Typedtree.type_declaration -> Parsetree.type_declaration;
  39. type_extension : mapper -> Typedtree.type_extension -> Parsetree.type_extension;
  40. type_exception : mapper -> Typedtree.type_exception -> Parsetree.type_exception;
  41. type_kind : mapper -> Typedtree.type_kind -> Parsetree.type_kind;
  42. value_binding : mapper -> Typedtree.value_binding -> Parsetree.value_binding;
  43. value_description : mapper -> Typedtree.value_description -> Parsetree.value_description;
  44. with_constraint : mapper -> (Path.t * Longident.t Location.loc * Typedtree.with_constraint) -> Parsetree.with_constraint;
}
val default_mapper : mapper
val untype_structure : ?mapper:mapper -> Typedtree.structure -> Parsetree.structure
val untype_signature : ?mapper:mapper -> Typedtree.signature -> Parsetree.signature
val untype_expression : ?mapper:mapper -> Typedtree.expression -> Parsetree.expression
val untype_pattern : ?mapper:mapper -> _ Typedtree.general_pattern -> Parsetree.pattern

New functions

OCaml

Innovation. Community. Security.