package merlin-extend

  1. Overview
  2. Docs
type buffer = {
  1. path : string;
  2. flags : string list;
  3. text : string;
}

Description of a buffer managed by Merlin

type parsetree =
  1. | Structure of Parsetree.structure
  2. | Signature of Parsetree.signature

ASTs exchanged with Merlin

type outcometree =
  1. | Out_value of Outcometree.out_value
  2. | Out_type of Outcometree.out_type
  3. | Out_class_type of Outcometree.out_class_type
  4. | Out_module_type of Outcometree.out_module_type
  5. | Out_sig_item of Outcometree.out_sig_item
  6. | Out_signature of Outcometree.out_sig_item list
  7. | Out_type_extension of Outcometree.out_type_extension
  8. | Out_phrase of Outcometree.out_phrase

Printing in error messages or completion items

type pretty_parsetree =
  1. | Pretty_toplevel_phrase of Parsetree.toplevel_phrase
  2. | Pretty_expression of Parsetree.expression
  3. | Pretty_core_type of Parsetree.core_type
  4. | Pretty_pattern of Parsetree.pattern
  5. | Pretty_signature of Parsetree.signature
  6. | Pretty_structure of Parsetree.structure
  7. | Pretty_case_list of Parsetree.case list

Printing in case destruction

type complete_info = {
  1. complete_labels : bool;
}

Additional information useful for guiding completion

module type V0 = sig ... end
type request =
  1. | Req_load of buffer
  2. | Req_parse
  3. | Req_parse_line of Lexing.position * string
  4. | Req_parse_for_completion of Lexing.position
  5. | Req_get_ident_at of Lexing.position
  6. | Req_print_outcome of outcometree list
  7. | Req_pretty_print of pretty_parsetree
type response =
  1. | Res_loaded
  2. | Res_parse of parsetree
  3. | Res_parse_for_completion of complete_info * parsetree
  4. | Res_get_ident_at of string Location.loc list
  5. | Res_print_outcome of string list
  6. | Res_pretty_print of string
OCaml

Innovation. Community. Security.