Module Shared_ast.Var

Variables and their collections

This module provides types and helpers for Bindlib variables on the gexpr type

type 'e t = ( 'a, 'a, 't ) Shared_ast__Definitions.base_gexpr Bindlib.var constraint 'e = ( ( 'a, 'a, 't ) Shared_ast__Definitions.base_gexpr, 't Shared_ast__Definitions.mark ) Catala_utils.Mark.ed
type 'e vars = ( 'a, 'a, 't ) Shared_ast__Definitions.base_gexpr Bindlib.mvar constraint 'e = ( ( 'a, 'a, 't ) Shared_ast__Definitions.base_gexpr, 't Shared_ast__Definitions.mark ) Catala_utils.Mark.ed
val make : string -> 'e t
val compare : 'e t -> 'e t -> int
val eq : 'e t -> 'e t -> bool
val translate : 'e1 t -> 'e2 t

Needed when converting from one AST type to another. See the note of caution on Bindlib.copy_var.

type 'e var = 'e t

Alias to allow referring to the type in the submodules

module Set : sig ... end

Wrapper over Set.S but with a type variable for the AST type parameters. Extend as needed

module Map : sig ... end

Wrapper over Map.S but with a type variable for the AST type parameters. Extend as needed