package obeam

  1. Overview
  2. Docs
module Sf = Simple_term_format
module Z = Aux.Z
val raise_unknown_error : string -> Sf.t -> 'a
type line_t = int
val pp_line_t : Ppx_deriving_runtime.Format.formatter -> line_t -> Ppx_deriving_runtime.unit
val show_line_t : line_t -> Ppx_deriving_runtime.string
type t =
  1. | AbstractCode of form_t
and form_t =
  1. | ModDecl of form_t list
  2. | AttrExport of line_t * (string * int) list
  3. | AttrExportType of line_t * (string * int) list
  4. | AttrImport of line_t * (string * int) list
  5. | AttrMod of line_t * string
  6. | AttrFile of line_t * string * line_t
  7. | DeclFun of line_t * string * int * clause_t list
  8. | SpecFun of line_t * string option * string * int * type_t list
  9. | DeclRecord of line_t * (line_t * string * expr_t option * type_t option) list
  10. | DeclType of line_t * string * (line_t * string) list * type_t
  11. | DeclOpaqueType of line_t * string * (line_t * string) list * type_t
  12. | AttrWild of line_t * string * Sf.t
  13. | FormEof
and literal_t =
  1. | LitAtom of line_t * string
  2. | LitInteger of line_t * int
  3. | LitBigInt of line_t * Z.t
  4. | LitString of line_t * string
and pattern_t =
  1. | PatMap of line_t * pattern_assoc_t list
  2. | PatUniversal of line_t
  3. | PatVar of line_t * string
  4. | PatLit of literal_t
and pattern_assoc_t =
  1. | PatAssocExact of line_t * pattern_t * pattern_t
and expr_t =
  1. | ExprBody of expr_t list
  2. | ExprCase of line_t * expr_t * clause_t list
  3. | ExprMapCreation of line_t * expr_assoc_t list
  4. | ExprMapUpdate of line_t * expr_t * expr_assoc_t list
  5. | ExprBinOp of line_t * string * expr_t * expr_t
  6. | ExprVar of line_t * string
  7. | ExprLit of literal_t
and expr_assoc_t =
  1. | ExprAssoc of line_t * expr_t * expr_t
  2. | ExprAssocExact of line_t * expr_t * expr_t
and clause_t =
  1. | ClsCase of line_t * pattern_t * guard_sequence_t option * expr_t
  2. | ClsFun of line_t * pattern_t list * guard_sequence_t option * expr_t
and guard_sequence_t =
  1. | GuardSeq of guard_t list
and guard_t =
  1. | Guard of guard_test_t list
and guard_test_t =
  1. | GuardTestCall of line_t * literal_t * guard_test_t list
  2. | GuardTestMapCreation of line_t * guard_test_assoc_t list
  3. | GuardTestMapUpdate of line_t * guard_test_t * guard_test_assoc_t list
  4. | GuardTestBinOp of line_t * string * guard_test_t * guard_test_t
  5. | GuardTestVar of line_t * string
  6. | GuardTestLit of literal_t
and guard_test_assoc_t =
  1. | GuardTestAssoc of line_t * guard_test_t * guard_test_t
  2. | GuardTestAssocExact of line_t * guard_test_t * guard_test_t
and type_t =
  1. | TyAnn of line_t * type_t * type_t
  2. | TyPredef of line_t * string * type_t list
  3. | TyProduct of line_t * type_t list
  4. | TyVar of line_t * string
  5. | TyContFun of line_t * type_t * type_t
  6. | TyFun of line_t * type_t * type_t
  7. | TyCont of type_t list
  8. | TyContRel of line_t * type_t * type_t * type_t
  9. | TyContIsSubType of line_t
val pp : Ppx_deriving_runtime.Format.formatter -> t -> Ppx_deriving_runtime.unit
val show : t -> Ppx_deriving_runtime.string
val pp_form_t : Ppx_deriving_runtime.Format.formatter -> form_t -> Ppx_deriving_runtime.unit
val show_form_t : form_t -> Ppx_deriving_runtime.string
val pp_literal_t : Ppx_deriving_runtime.Format.formatter -> literal_t -> Ppx_deriving_runtime.unit
val show_literal_t : literal_t -> Ppx_deriving_runtime.string
val pp_pattern_t : Ppx_deriving_runtime.Format.formatter -> pattern_t -> Ppx_deriving_runtime.unit
val show_pattern_t : pattern_t -> Ppx_deriving_runtime.string
val pp_pattern_assoc_t : Ppx_deriving_runtime.Format.formatter -> pattern_assoc_t -> Ppx_deriving_runtime.unit
val show_pattern_assoc_t : pattern_assoc_t -> Ppx_deriving_runtime.string
val pp_expr_t : Ppx_deriving_runtime.Format.formatter -> expr_t -> Ppx_deriving_runtime.unit
val show_expr_t : expr_t -> Ppx_deriving_runtime.string
val pp_expr_assoc_t : Ppx_deriving_runtime.Format.formatter -> expr_assoc_t -> Ppx_deriving_runtime.unit
val show_expr_assoc_t : expr_assoc_t -> Ppx_deriving_runtime.string
val pp_clause_t : Ppx_deriving_runtime.Format.formatter -> clause_t -> Ppx_deriving_runtime.unit
val show_clause_t : clause_t -> Ppx_deriving_runtime.string
val pp_guard_sequence_t : Ppx_deriving_runtime.Format.formatter -> guard_sequence_t -> Ppx_deriving_runtime.unit
val show_guard_sequence_t : guard_sequence_t -> Ppx_deriving_runtime.string
val pp_guard_t : Ppx_deriving_runtime.Format.formatter -> guard_t -> Ppx_deriving_runtime.unit
val show_guard_t : guard_t -> Ppx_deriving_runtime.string
val pp_guard_test_t : Ppx_deriving_runtime.Format.formatter -> guard_test_t -> Ppx_deriving_runtime.unit
val show_guard_test_t : guard_test_t -> Ppx_deriving_runtime.string
val pp_guard_test_assoc_t : Ppx_deriving_runtime.Format.formatter -> guard_test_assoc_t -> Ppx_deriving_runtime.unit
val show_guard_test_assoc_t : guard_test_assoc_t -> Ppx_deriving_runtime.string
val pp_type_t : Ppx_deriving_runtime.Format.formatter -> type_t -> Ppx_deriving_runtime.unit
val show_type_t : type_t -> Ppx_deriving_runtime.string
val of_sf : Sf.t -> t
val form_of_sf : Sf.t -> form_t
val name_and_arity_of_sf : Sf.t -> string * int
val record_field_of_sf : Sf.t -> line_t * string * expr_t option * type_t option
val tvar_of_sf : Sf.t -> line_t * string
val lit_of_sf : Sf.t -> literal_t
val pat_of_sf : Sf.t -> pattern_t
val pat_assoc_of_sf : Sf.t -> pattern_assoc_t
val expr_of_sf : Sf.t -> expr_t
val expr_assoc_of_sf : Sf.t -> expr_assoc_t
val cls_of_sf : ?in_function:bool -> Sf.t -> clause_t
val guard_sequence_of_sf : Sf.t -> guard_sequence_t
val guard_of_sf : Sf.t -> guard_t
val guard_test_of_sf : Sf.t -> guard_test_t
val guard_test_assoc_of_sf : Sf.t -> guard_test_assoc_t
val type_of_sf : Sf.t -> type_t
val fun_type_of_sf : Sf.t -> type_t
val cont_of_sf : Sf.t -> type_t
val of_etf : Obeam__External_term_format.t -> t
OCaml

Innovation. Community. Security.