package catala

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

Source code position

type t

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

Constructor and getters

val from_lpos : (Stdlib.Lexing.position * Stdlib.Lexing.position) -> t
val from_info : string -> int -> int -> int -> int -> t
val overwrite_law_info : t -> string list -> t
val get_law_info : t -> string list
val get_start_line : t -> int
val get_start_column : t -> int
val get_end_line : t -> int
val get_end_column : t -> int
val get_file : t -> string
val join : t -> t -> t

Returns the smallest range including both supplied ranges.

  • raises Invalid_argument

    if they don't belong to the same file. The law position used is the one of the earliest position.

Formatters

val to_string : t -> string

Formats a position like this:

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

Formats a position like this:

<file>;<start_line>:<start_col>--<end_line>:<end_col>

This function is compliant with the GNU coding standards.

val format_loc_text : Stdlib.Format.formatter -> t -> unit

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

val format_loc_text_parts : t -> (Stdlib.Format.formatter -> unit) * (Stdlib.Format.formatter -> unit) * (Stdlib.Format.formatter -> unit) option

Like format_loc_text, but returns the printing functions in 3 separate parts: the file name header, the line context, and the law headers

val no_pos : t

Placeholder position

OCaml

Innovation. Community. Security.