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/Context/index.html

Module Merlin_analysis.ContextSource

Sourcetype t =
  1. | Constructor of Ocaml_typing.Data_types.constructor_description * Ocaml_parsing.Location.t
  2. | Expr
  3. | Label of Ocaml_typing.Data_types.label_description
  4. | Module_path
  5. | Module_type
  6. | Patt
  7. | Type
  8. | Constant
  9. | Unknown
Sourceval to_string : t -> string

inspect_browse_tree lid ~cursor mbrowse tries to provide contextual information given the selected identifier, the position of the cursor and the typed tree. It is used by Locate and Type_enclosing.

disambiguate is used to get the enclosing node when some nodes share the same location (but have different context).

The cursor position is used to distinguished whether a module path or an actual constructor name is pointed at when the cursor is in the middle of a longident, e.g. Foo.B|ar.Constructor (with | being the cursor).

FIXME: when cursor at (M.|A 3), the enclosing node returned is const 3, thus breaking the context inference.