package dolmen
A parser library
Install
Dune Dependency
Authors
Maintainers
Sources
dolmen-v0.6.tbz
sha256=81b034da2de84da19fb6368aaa39135f6259ee2773ff08c8f03da9ceeb10748c
sha512=98786ff1cc5b0c8bc4cb2dfe756ae15556c3876a206546b04374826be7d0a422dd5526d93f09cb0ea0d4985b71c408c182a951d4df908399c7e04b17c91a7d70
doc/src/dolmen.intf/location.ml.html
Source file location.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
(* This file is free software, part of dolmen. See file "LICENSE" for more information *) (** Interface for file locations. This module defines an interface to store locations in files. These locations are used by the parsers to specify the locations of all parsed expressions whenever it is possible. This interface also requires some exceptions to be defined. These exceptions make use of locations to specify at which point in the file the parsing went wrong. *) module type S = sig type t (** The type of locations. *) type file (** A store for various meta-data about an input file, can be used to optimize representation of locations. *) exception Uncaught of t * exn * Printexc.raw_backtrace (** The exception to be raised whenever an unexpected exception is raised during parsing. *) exception Lexing_error of t * string (** The exception to be raised when the lexer cannot parse the input. *) exception Syntax_error of t * [ | `Regular of Msg.t | `Advanced of Msg.t * Msg.t * Msg.t ] (** [Syntax_error (loc, msg)] denotes a syntax error at the given location. In the [`Advanced (prod, parsed, expected)] case, - prod is a delayed message to print in order to identify which production/syntax construction the parser was trying to reduce, - parsed is a description of the token which raised the error, - expected is a messages describing what would have been corect tokens/inputs at that point. *) val of_lexbuf : Lexing.lexbuf -> t (** Make a position using a lexbuf directly. *) val mk_pos : Lexing.position -> Lexing.position -> t (** Make a position from two lewing positions. *) val mk_file : string -> file (** Create meta-data for a given filename. *) val newline : file -> Lexing.lexbuf -> unit (** Offer a way for the file meta-data to store the current location of the lexbuf as the start of a new line. *) end
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>