package merlin-lib
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=67da3b34f2fea07678267309f61da4a2c6f08298de0dc59655b8d30fd8269af1
sha512=1fb3b5180d36aa82b82a319e15b743b802b6888f0dc67645baafdb4e18dfc23a7b90064ec9bc42f7424061cf8cde7f8839178d8a8537bf4596759f3ff4891873
doc/merlin-lib.ocaml_typing/Ocaml_typing/Shape/Uid/index.html
Module Shape.Uid
Source
A Uid.t
is associated to every declaration in signatures and implementations. They uniquely identify bindings in the program. When associated with these bindings' locations they are useful to external tools when trying to jump to an identifier's declaration or definition. They are stored to that effect in the uid_to_decl
table of cmt files.
type t = private
| Compilation_unit of string
| Item of {
comp_unit : string;
id : int;
from : Ocaml_parsing.Unit_info.intf_or_impl;
}
| Internal
| Predef of string
include Ocaml_utils.Identifiable.S with type t := t
include Ocaml_utils.Identifiable.Thing with type t := T.t
include Hashtbl.HashedType with type t := T.t
A hashing function on keys. It must be such that if two keys are equal according to equal
, then they have identical hash values as computed by hash
. Examples: suitable (equal
, hash
) pairs for arbitrary key types include
- (
(=)
,hash
) for comparing objects by structure (provided objects do not contain floats) - (
(fun x y -> compare x y = 0)
,hash
) for comparing objects by structure and handlingStdlib.nan
correctly - (
(==)
,hash
) for comparing objects by physical equality (e.g. for mutable or cyclic objects).
include Map.OrderedType with type t := T.t
A total ordering function over the keys. This is a two-argument function f
such that f e1 e2
is zero if the keys e1
and e2
are equal, f e1 e2
is strictly negative if e1
is smaller than e2
, and f e1 e2
is strictly positive if e1
is greater than e2
. Example: a suitable ordering function is the generic structural comparison function Stdlib.compare
.