package p4spectec

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

Module Elaborate.Ctx

val error_undef : Util.Source.region -> string -> string -> 'a
val error_dup : Util.Source.region -> string -> string -> 'a
val tick : int ref
val refresh : unit -> unit
val fresh : unit -> int
val empty : t
val init : unit -> t
val find_typdef_opt : t -> Domain.Lib.TId.t -> Runtime.Type.Typdef.t option
val find_typdef : t -> Domain.Lib.TId.t -> Runtime.Type.Typdef.t
val bound_typdef : t -> Domain.Lib.TId.t -> bool
val find_metavar_opt : t -> Domain.Lib.TId.t -> Runtime.Type.Typ.t option
val find_metavar : t -> Domain.Lib.TId.t -> Runtime.Type.Typ.t
val bound_metavar : t -> Domain.Lib.TId.t -> bool
val find_defined_rel_opt : t -> Domain.Lib.RId.t -> (Lang.Il.nottyp * int list * Lang.Il.rulegroup list * Lang.Il.elsegroup option) option
val find_defined_rel : t -> Domain.Lib.RId.t -> Lang.Il.nottyp * int list * Lang.Il.rulegroup list * Lang.Il.elsegroup option
val bound_defined_rel : t -> Domain.Lib.RId.t -> bool
val find_rel_signature_opt : t -> Domain.Lib.RId.t -> (Lang.Il.nottyp * int list) option
val find_rel_signature : t -> Domain.Lib.RId.t -> Lang.Il.nottyp * int list
val bound_rel : t -> Domain.Lib.RId.t -> bool
val bound_rulegroup : t -> Domain.Lib.RId.t -> Domain.Lib.Id.t -> bool
val find_table_func_opt : t -> Domain.Lib.FId.t -> (Lang.Il.param list * Lang.Il.typ * Lang.Il.tablerow list) option
val find_table_func : t -> Domain.Lib.FId.t -> Lang.Il.param list * Lang.Il.typ * Lang.Il.tablerow list
val find_defined_func_opt : t -> Domain.Lib.FId.t -> (Lang.Il.tparam list * Lang.Il.param list * Lang.Il.typ * Lang.Il.clause list * Lang.Il.clause option) option
val find_defined_func : t -> Domain.Lib.FId.t -> Lang.Il.tparam list * Lang.Il.param list * Lang.Il.typ * Lang.Il.clause list * Lang.Il.clause option
val bound_defined_func : t -> Domain.Lib.FId.t -> bool
val find_func_signature_opt : t -> Domain.Lib.FId.t -> (Lang.Il.tparam list * Lang.Il.param list * Lang.Il.typ) option
val find_func_signature : t -> Domain.Lib.FId.t -> Lang.Il.tparam list * Lang.Il.param list * Lang.Il.typ
val bound_func : t -> Domain.Lib.FId.t -> bool
val add_free : t -> Domain.Lib.Id.t -> t
val add_frees : t -> Domain.Lib.IdSet.t -> t
val add_metavar : t -> Domain.Lib.TId.t -> Runtime.Type.Typ.t -> t
val add_typdef : t -> Domain.Lib.TId.t -> Runtime.Type.Typdef.t -> t
val add_tparam : t -> Lang.El.tparam -> t
val add_tparams : t -> Lang.El.tparam list -> t
val add_extern_rel : t -> Domain.Lib.RId.t -> Lang.Il.nottyp -> int list -> t
val add_defined_rel : t -> Domain.Lib.RId.t -> Lang.Il.nottyp -> int list -> t
val add_defined_rulegroup : t -> Domain.Lib.RId.t -> Lang.Il.rulegroup -> t
val add_defined_elsegroup : t -> Domain.Lib.RId.t -> Lang.Il.elsegroup -> t
val add_extern_func_dec : t -> Domain.Lib.FId.t -> Lang.El.tparam list -> Lang.Il.param list -> Lang.Il.typ -> t
val add_builtin_func_dec : t -> Domain.Lib.FId.t -> Lang.El.tparam list -> Lang.Il.param list -> Lang.Il.typ -> t
val add_table_func_dec : t -> Domain.Lib.FId.t -> Lang.Il.param list -> Lang.Il.typ -> t
val add_defined_func_dec : t -> Domain.Lib.FId.t -> Lang.Il.tparam list -> Lang.Il.param list -> Lang.Il.typ -> t
val add_table_func_tablerows : t -> Domain.Lib.FId.t -> Lang.Il.tablerow list -> t
val add_defined_func_clause : t -> Domain.Lib.FId.t -> Lang.Il.clause -> t
val add_defined_func_elseclause : t -> Domain.Lib.FId.t -> Lang.Il.elseclause -> t
val update_typdef : t -> Domain.Lib.TId.t -> Runtime.Type.Typdef.t -> t