Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
module Make (R : Range_intf.S) : RangeMap_intf.S
include RangeMap_intf.S with module Range = Range
Maps a position of the cursor (point) to the corresponding token of type 'a in a given text editor with a .lp file open.
module Range = Range
val empty : 'a t
The empty range map.
val find : Range.point -> 'a t -> (Range.t * 'a) option
find pt map
returns the only (token, range) couple in map such that pt
is a point within the mapped interval range. Requires map
to be well-defined (see add).
add range token map
adds a mapping (key : range
, value : token
) to map
.
Requires all added keys to be non overlapping intervals to be well-defined. /!\ Does not ensure proper functionning if the added keys are overlapping intervals, e.g might change a previously added (key, element) couple or throw an error.
val to_string : ('a -> string) -> 'a t -> string