package catala

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Utils.PosSource

Source code position

Sourcetype t

A position in the source code is a file, as well as begin and end location of the form col:line

Custom visitor for the Pos.marked type

Constructor and getters

Sourceval from_lpos : (Lexing.position * Lexing.position) -> t
Sourceval from_info : string -> int -> int -> int -> int -> t
Sourceval overwrite_law_info : t -> string list -> t
Sourceval get_start_line : t -> int
Sourceval get_start_column : t -> int
Sourceval get_end_line : t -> int
Sourceval get_end_column : t -> int
Sourceval get_file : t -> string
Sourcetype input_file =
  1. | FileName of string
  2. | Contents of string

Formatters

Sourceval to_string : t -> string

Formats a position like this:

in file <file>, from <start_line>:<start_col> to <end_line>:<end_col>
Sourceval to_string_short : t -> string

Formats a position like this:

<file>;<start_line>:<start_col>--<end_line>:<end_col>
Sourceval retrieve_loc_text : t -> string

Open the file corresponding to the position and retrieves the text concerned by the position

AST markings

Sourcetype 'a marked = 'a * t

Everything related to the source code should keep its position stored, to improve error messages

Sourceval no_pos : t

Placeholder position

Sourceval unmark : 'a marked -> 'a
Sourceval get_position : 'a marked -> t
Sourceval map_under_mark : ('a -> 'b) -> 'a marked -> 'b marked
Sourceval same_pos_as : 'a -> 'b marked -> 'a marked
Sourceval unmark_option : 'a marked option -> 'a option

Visitors

Sourceclass 'self marked_map : object ... end
Sourceclass 'self marked_iter : object ... end
OCaml

Innovation. Community. Security.