Query_protocol
Sourcetype 'a type_search_result = {
name : string;
typ : 'a;
loc : Ocaml_parsing.Location_aux.t;
doc : string option;
cost : int;
constructible : string;
}
and item = {
outline_name : string;
outline_kind : [ `Value
| `Constructor
| `Label
| `Module
| `Modtype
| `Type
| `Exn
| `Class
| `Method ];
outline_type : string option;
deprecated : bool;
location : Ocaml_parsing.Location_aux.t;
children : outline;
}
type signature_help_result = {
label : string;
parameters : signature_help_param list;
active_param : int;
active_signature : int;
}
type signature_help = {
position : Merlin_kernel.Msource.position;
trigger_kind : trigger_kind option;
is_retrigger : bool;
active_signature_help : signature_help_result option;
}
type _ t =
| Type_expr : string * Merlin_kernel.Msource.position -> string t
| Type_enclosing : (string * int) option
* Merlin_kernel.Msource.position
* int option -> (Ocaml_parsing.Location.t
* [ `String of string | `Index of int ]
* is_tail_position)
list
t
| Enclosing : Merlin_kernel.Msource.position -> Ocaml_parsing.Location.t list t
| Complete_prefix : string
* Merlin_kernel.Msource.position
* Compl.kind list
* [ `with_documentation ] _bool
* [ `with_types ] _bool -> completions t
| Expand_prefix : string
* Merlin_kernel.Msource.position
* Compl.kind list
* [ `with_types ] _bool -> completions t
| Polarity_search : string * Merlin_kernel.Msource.position -> completions t
| Type_search : string
* Merlin_kernel.Msource.position
* int
* bool -> string type_search_result list t
| Refactor_open : [ `Qualify | `Unqualify ]
* Merlin_kernel.Msource.position -> (string * Ocaml_parsing.Location.t) list
t
| Document : string option
* Merlin_kernel.Msource.position -> [ `Found of string
| `Invalid_context
| `Builtin of string
| `Not_in_env of string
| `File_not_found of string
| `Not_found of string * string option
| `No_documentation ]
t
| Syntax_document : Merlin_kernel.Msource.position -> [ `Found of
syntax_doc_result
| `No_documentation ]
t
| Expand_ppx : Merlin_kernel.Msource.position -> [ `Found of ppxed_source
| `No_ppx ]
t
| Locate_type : Merlin_kernel.Msource.position -> [ `Found of
string option
* Lexing.position
| `Invalid_context
| `Builtin of string
| `Not_in_env of string
| `File_not_found of string
| `Not_found of
string * string option
| `At_origin ]
t
| Locate : string option
* [ `ML | `MLI ]
* Merlin_kernel.Msource.position -> [ `Found of
string option * Lexing.position
| `Invalid_context
| `Builtin of string
| `Not_in_env of string
| `File_not_found of string
| `Not_found of string * string option
| `At_origin ]
t
| Jump : string
* Merlin_kernel.Msource.position -> [ `Found of Lexing.position
| `Error of string ]
t
| Phrase : [ `Next | `Prev ]
* Merlin_kernel.Msource.position -> Lexing.position t
| Case_analysis : Merlin_kernel.Msource.position
* Merlin_kernel.Msource.position -> (Ocaml_parsing.Location.t * string) t
| Holes : (Ocaml_parsing.Location.t * string) list t
| Construct : Merlin_kernel.Msource.position
* [ `None | `Local ] option
* int option -> (Ocaml_parsing.Location.t * string list) t
| Inlay_hints : Merlin_kernel.Msource.position
* Merlin_kernel.Msource.position
* bool
* bool
* bool -> (Lexing.position * string) list t
| Outline : outline t
| Shape : Merlin_kernel.Msource.position -> shape list t
| Errors : error_filter -> Ocaml_parsing.Location.error list t
| Dump : Merlin_utils.Std.json list -> Merlin_utils.Std.json t
| Path_of_source : string list -> string t
| List_modules : string list -> string list t
| Findlib_list : string list t
| Extension_list : [ `All | `Enabled | `Disabled ] -> string list t
| Path_list : [ `Build | `Source ] -> string list t
| Occurrences : [ `Ident_at of Merlin_kernel.Msource.position ]
* [ `Project | `Buffer ] -> (Ocaml_parsing.Location.t list
* occurrences_status)
t
| Signature_help : signature_help -> signature_help_result option t
In current version, Merlin only uses the parameter position
to answer signature_help queries. The additionnal parameters are described in the LSP protocol and might enable finer behaviour in the future.
| Version : string t