package catala

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

Module Catala_utils.UidSource

Global identifiers factories using a generative functor

Sourcemodule type Info = sig ... end

The information carried in global identifiers

Sourcemodule MarkedString : Info with type info = string Mark.pos

The only kind of information carried in Catala identifiers is the original string of the identifier annotated with the position where it is declared or used.

Sourcemodule type Id = sig ... end

Identifiers have abstract types, but are comparable so they can be used as keys in maps or sets. Their underlying information can be retrieved at any time.

Sourcemodule type Style = sig ... end

Used to define a consistent specific style when printing the different kinds of uids

Sourcemodule Make (X : Info) (_ : Style) () : Id with type info = X.info

This is the generative functor that ensures that two modules resulting from two different calls to Make will be viewed as different types t by the OCaml typechecker. Prevents mixing up different sorts of identifiers.

Sourcemodule Gen (_ : Style) () : Id with type info = MarkedString.info

Shortcut for creating a kind of uids over marked strings

Handling of Uids with additional path information

Sourcemodule Module : Id with type info = MarkedString.info
Sourcemodule Path : sig ... end
Sourcemodule Gen_qualified (_ : Style) () : sig ... end

Same as Gen but also registers path information

OCaml

Innovation. Community. Security.