package merlin-lib

  1. Overview
  2. Docs
Merlin's libraries

Install

dune-project
 Dependency

Authors

Maintainers

Sources

merlin-5.8-505.tbz
sha256=5642cde8486a84aad98fa5c590b70e8dcc6074d7fbdb3b9b8c46b2c5b42f653b
sha512=1d7a7751157e393d3ae248ef5ae24a6b4e81430666c61cc51a3d0ec35804523317036f3d7a3c7f18a7554337f4e5f5989fb677865b261ece3fd2b317903570ba

doc/merlin-lib.analysis/Merlin_analysis/Locate/index.html

Module Merlin_analysis.LocateSource

Sourcetype config = {
  1. mconfig : Merlin_kernel.Mconfig.t;
  2. ml_or_mli : [ `ML | `Smart | `MLI ];
    (*

    When ml_or_mli is `Smart, if locate blocks on an interface uid, it will use the cmt_declaration_dependencies to try finding a unique corresponding definition in the implementation.

    *)
  3. traverse_aliases : bool;
}
Sourcetype result = {
  1. uid : Ocaml_typing.Shape.Uid.t;
  2. decl_uid : Ocaml_typing.Shape.Uid.t;
  3. file : string;
  4. location : Ocaml_parsing.Location.t;
  5. approximated : bool;
}
Sourceval uid_of_result : traverse_aliases:bool -> Ocaml_typing.Shape_reduce.result -> Ocaml_typing.Shape.Uid.t option * bool

Lookup the delcaration of the given Uid in the appropriate cmt file

Sourceval get_linked_uids : config:config -> comp_unit:string -> Ocaml_typing.Shape.Uid.t -> Ocaml_typing.Shape.Uid.t list

get_linked_uids queries the cmt_declaration_dependencies table and returns udis related to the one passed as argument. TODO right now this function only returns simple links tagged with Definition_to_declaration

Sourceval find_source : config:Merlin_kernel.Mconfig.t -> Ocaml_utils.Warnings.loc -> string -> [> `File_not_found of string | `Found of string * Ocaml_parsing.Location.t ]
Sourceval from_path : config:config -> env:Ocaml_typing.Env.t -> local_defs:Merlin_kernel.Mtyper.typedtree -> namespace:Env_lookup.Namespace.t -> Ocaml_typing.Path.t -> [> `File_not_found of result | `Found of result | `Builtin of Ocaml_typing.Shape.Uid.t * string | `Not_in_env of string | `Not_found of string * string option ]
Sourceval from_string : config:config -> env:Ocaml_typing.Env.t -> local_defs:Merlin_kernel.Mtyper.typedtree -> pos:Lexing.position -> ?namespaces:Env_lookup.Namespace.inferred_basic list -> string -> [> `File_not_found of result | `Found of result | `Builtin of Ocaml_typing.Shape.Uid.t * string | `Missing_labels_namespace | `Not_found of string * string option | `Not_in_env of string | `At_origin ]
Sourceval get_doc : config:Merlin_kernel.Mconfig.t -> env:Ocaml_typing.Env.t -> local_defs:Merlin_kernel.Mtyper.typedtree -> comments:(string * Ocaml_parsing.Location.t) list -> pos:Lexing.position -> [ `User_input of string | `Completion_entry of Env_lookup.Namespace.t * Ocaml_typing.Path.t * Ocaml_parsing.Location.t ] -> [> `Found of string | `Builtin of string | `Not_found of string * string option | `Not_in_env of string | `No_documentation ]