package archetype

  1. Overview
  2. Docs
type t
type label_kind = [
  1. | `Plain
  2. | `Code
  3. | `Loop of Ident.ident
]
type entry = [
  1. | `Label of t * label_kind
  2. | `State of statedecl
  3. | `StateByCtor of statedecl * M.lident
  4. | `Type of M.ptyp
  5. | `Local of M.ptyp
  6. | `Global of vardecl
  7. | `Asset of assetdecl
  8. | `Action of t tactiondecl
  9. | `Function of t fundecl
  10. | `Field of Ident.ident
  11. | `Contract of contractdecl
  12. | `Context of assetdecl * Ident.ident option
]
type ecallback = error -> unit
val create : ecallback -> t
val emit_error : t -> error -> unit
val name_free : t -> Ident.ident -> [ `Free | `Clash of Location.t option ]
val lookup_entry : t -> Ident.ident -> entry option
val open_ : t -> t
val close : t -> t
val inscope : t -> (t -> t * 'a) -> t * 'a
module Label : sig ... end
module Type : sig ... end
module Local : sig ... end
module Var : sig ... end
module Function : sig ... end
module State : sig ... end
module Asset : sig ... end
module TAction : sig ... end
module Contract : sig ... end
module Context : sig ... end
OCaml

Innovation. Community. Security.