package archetype

  1. Overview
  2. Docs
type exn =
  1. | Enotfound
  2. | Ekeyexist
  3. | Enegassignnat
  4. | Einvalidcaller
  5. | Einvalidcondition
  6. | Einvalidstate
  7. | Enotransfer
  8. | Ebreak
  9. | Einvalid of string option
type fmod =
  1. | Logic
  2. | Rec
  3. | NoMod
type 'i abstract_qualid = 'i list
type ('i, 't) abstract_type =
  1. | Tyint
  2. | Tyuint
  3. | Tybool
  4. | Tystring
  5. | Tyrational
  6. | Tyaddr
  7. | Tyrole
  8. | Tykey
  9. | Tykeyhash
  10. | Tydate
  11. | Tyduration
  12. | Tytez
  13. | Tysignature
  14. | Tybytes
  15. | Tychainid
  16. | Tystorage
  17. | Tyoperation
  18. | Tyentrysig
  19. | Tyunit
  20. | Tycontract of 'i
  21. | Tyrecord of 'i
  22. | Tycoll of 'i
  23. | Tyview of 'i
  24. | Tymap of 'i
  25. | Tyasset of 'i
  26. | Typartition of 'i
  27. | Tyaggregate of 'i
  28. | Tystate
  29. | Tyenum of 'i
  30. | Tyoption of 't
  31. | Tyset of 'i
  32. | Tylist of 't
  33. | Tytuple of 't list
type ('t, 'i) abstract_univ_decl = 'i list * 't
type 'i pattern_node =
  1. | Twild
  2. | Tpignore
  3. | Tconst of 'i
  4. | Tpatt_tuple of 'i pattern_node list
  5. | Tpsome of 'i
type ('e, 't, 'i) abstract_term =
  1. | Tseq of 'e list
  2. | Tletin of bool * 'i * 't option * 'e * 'e
  3. | Tletfun of ('e, 't, 'i) abstract_fun_struct * 'e
  4. | Tif of 'e * 'e * 'e option
  5. | Tmatch of 'e * ('i pattern_node * 'e) list
  6. | Tapp of 'e * 'e list
  7. | Tfor of 'i * 'e * 'e * ('e, 'i) abstract_formula list * 'e
  8. | Ttry of 'e * (exn * 'e) list
  9. | Tvar of 'i
  10. | Ttuple of 'e list
  11. | Ttupleaccess of 'e * int * int
  12. | Trecord of 'e option * ('i * 'e) list
  13. | Tdot of 'e * 'e
  14. | Tdoti of 'i * 'i
  15. | Tename
  16. | Tcaller of 'i
  17. | Tsender of 'i
  18. | Ttransferred of 'i
  19. | Tnow of 'i
  20. | Tadded of 'i
  21. | Trmed of 'i
  22. | Tchainid of 'i
  23. | Tselfaddress of 'i
  24. | Tlist of 'e list
  25. | Tnil of 'i
  26. | Temptycoll of 'i
  27. | Temptyview of 'i
  28. | Temptyfield of 'i
  29. | Tcard of 'i * 'e
  30. | Tfromfield of 'i * 'e * 'e
  31. | Tfromview of 'i * 'e * 'e
  32. | Ttoview of 'i * 'e
  33. | Tviewtolist of 'i * 'e * 'e
  34. | Telts of 'i * 'e
  35. | Tshallow of 'i * 'e * 'e
  36. | Tmlist of 'i * 'e * 'i * 'i * 'i * 'e
  37. | Tcons of 'i * 'e * 'e
  38. | Tprepend of 'i * 'e * 'e
  39. | Tmkcoll of 'i * 'e list
  40. | Tmkview of 'i * 'e
  41. | Tcontent of 'i * 'e
  42. | Tcontains of 'i * 'e * 'e
  43. | Tvcontent of 'i * 'e
  44. | Tadd of 'i * 'e * 'e
  45. | Tvadd of 'i * 'e * 'e
  46. | Tremove of 'i * 'e * 'e
  47. | Tvremove of 'i * 'e * 'e
  48. | Tget of 'i * 'e * 'e
  49. | Tgetforce of 'i * 'e * 'e
  50. | Tfget of 'i * 'e * 'e
  51. | Tset of 'i * 'e * 'e * 'e
  52. | Tvsum of 'i * 'e * 'e
  53. | Tcsum of 'i * 'e
  54. | Tcsort of 'i * 'e
  55. | Tvsort of 'i * 'e * 'e
  56. | Tnth of 'i * 'e * 'e
  57. | Tnthtuple of int * int * 'e
  58. | Tcoll of 'i * 'e
  59. | Tassign of 'e * 'e
  60. | Traise of exn
  61. | Texn of exn
  62. | Tconcat of 'e * 'e
  63. | Ttransfer of 'e * 'e
  64. | Tcall of 'e * 'e * 'i * 'e
  65. | Tmkoperation of 'e * 'e * 'e
  66. | Tentrypoint of 'i * 'e
  67. | Tfst of 'e
  68. | Tsnd of 'e
  69. | Tsndopt of 'e
  70. | Tabs of 'e
  71. | Tmktr of 'e * 'e
  72. | Ttradd of 'i
  73. | Ttrrm of 'i
  74. | Tplus of 't * 'e * 'e
  75. | Tminus of 't * 'e * 'e
  76. | Tuminus of 't * 'e
  77. | Tmult of 't * 'e * 'e
  78. | Tdiv of 't * 'e * 'e
  79. | Tmod of 't * 'e * 'e
  80. | Tnot of 'e
  81. | Tpand of 'e * 'e
  82. | Teq of 't * 'e * 'e
  83. | Teqfield of 'i * 'e * 'e
  84. | Tneq of 't * 'e * 'e
  85. | Tlt of 't * 'e * 'e
  86. | Tle of 't * 'e * 'e
  87. | Tgt of 't * 'e * 'e
  88. | Tge of 't * 'e * 'e
  89. | Tdlt of 't * 'e * 'e * 'e
  90. | Tdle of 't * 'e * 'e * 'e
  91. | Tdlet of 't * 'e * 'e * 'e
  92. | Tdlte of 't * 'e * 'e * 'e
  93. | Tint of Core.big_int
  94. | Tstring of string
  95. | Taddr of string
  96. | Tbytes of string
  97. | Tforall of ('t, 'i) abstract_univ_decl list * 'e
  98. | Texists of ('t, 'i) abstract_univ_decl list * 'e
  99. | Tresult
  100. | Timpl of 'e * 'e
  101. | Tequiv of 'e * 'e
  102. | Tand of 'e * 'e
  103. | Tor of 'e * 'e
  104. | Told of 'e
  105. | Tfalse
  106. | Ttrue
  107. | Tunion of 'i * 'e * 'e
  108. | Tinter of 'i * 'e * 'e
  109. | Tdiff of 'i * 'e * 'e
  110. | Tsubset of 'i * 'e * 'e
  111. | Tassert of 'i option * 'e
  112. | Tmem of 'i * 'e * 'e
  113. | Tvmem of 'i * 'e * 'e
  114. | Tlmem of 'i * 'e * 'e
  115. | Tccontains of 'i * 'e * 'e
  116. | Tvcontains of 'i * 'e * 'e
  117. | Tempty of 'i * 'e
  118. | Tvempty of 'i * 'e
  119. | Tsingl of 'i * 'e
  120. | Tchead of 'i * 'e * 'e
  121. | Tvhead of 'i * 'e * 'e
  122. | Tctail of 'i * 'e * 'e
  123. | Tvtail of 'i * 'e * 'e
  124. | Tcnth of 'i * 'e * 'e
  125. | Tvnth of 'i * 'e * 'e
  126. | Tlnth of 'i * 'e * 'e
  127. | Tselect of 'i * 'i * 'e list * 'e
  128. | Twitness of 'i
  129. | Tnone
  130. | Tsome of 'e
  131. | Tenum of 'i
  132. | Tmark of 'i * 'e
  133. | Tat of 'i * 'e
  134. | Tunit
  135. | Ttobereplaced
  136. | Tnottranslated
and ('e, 'i) abstract_formula = {
  1. id : 'i;
  2. form : 'e;
}
and ('e, 't, 'i) abstract_fun_struct = {
  1. name : 'i;
  2. logic : fmod;
  3. args : ('i * 't) list;
  4. returns : 't;
  5. raises : 'e list;
  6. variants : 'e list;
  7. requires : ('e, 'i) abstract_formula list;
  8. ensures : ('e, 'i) abstract_formula list;
  9. body : 'e;
}
type ('e, 't, 'i) abstract_field = {
  1. name : 'i;
  2. typ : 't;
  3. init : 'e;
  4. mutable_ : bool;
}
type ('e, 't, 'i) abstract_storage_struct = {
  1. fields : ('e, 't, 'i) abstract_field list;
  2. invariants : ('e, 'i) abstract_formula list;
}
type ('i, 't) abstract_clone_subst =
  1. | Ctype of 'i * 't
  2. | Cval of 'i * 'i
  3. | Cfun of 'i * 'i
  4. | Cpred of 'i * 'i
type theotyp =
  1. | Theo
  2. | Axiom
  3. | Lemma
  4. | Goal
val show_theotyp : theotyp -> Ppx_deriving_runtime.string
type ('e, 't, 'i) abstract_decl =
  1. | Duse of bool * 'i abstract_qualid * string option
  2. | Dval of 'i * 't
  3. | Dclone of 'i abstract_qualid * 'i * ('i, 't) abstract_clone_subst list
  4. | Denum of 'i * 'i list
  5. | Drecord of 'i * ('e, 't, 'i) abstract_field list
  6. | Dstorage of ('e, 't, 'i) abstract_storage_struct
  7. | Dtheorem of theotyp * 'i * 'e
  8. | Dfun of ('e, 't, 'i) abstract_fun_struct
type ('e, 't, 'i) abstract_module = {
  1. name : 'i;
  2. decls : ('e, 't, 'i) abstract_decl list;
}
type ('e, 't, 'i) abstract_mlw_tree = ('e, 't, 'i) abstract_module list
val map_abstract_qualid : ('i1 -> 'i2) -> 'i1 abstract_qualid -> 'i2 list
val map_abstract_type : ('i1 -> 'i2) -> ('t1 -> 't2) -> ('i1, 't1) abstract_type -> ('i2, 't2) abstract_type
val map_abstract_univ_decl : ('t1 -> 't2) -> ('i1 -> 'i2) -> ('t1, 'i1) abstract_univ_decl -> ('t2, 'i2) abstract_univ_decl
val map_pattern : ('a -> 'b) -> 'a pattern_node -> 'b pattern_node
val map_abstract_formula : ('e1 -> 'e2) -> ('i1 -> 'i2) -> ('e1, 'i1) abstract_formula -> ('e2, 'i2) abstract_formula
val map_abstract_fun_struct : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_fun_struct -> ('e2, 't2, 'i2) abstract_fun_struct
val map_abstract_term : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_term -> ('e2, 't2, 'i2) abstract_term
val map_abstract_field : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_field -> ('e2, 't2, 'i2) abstract_field
val map_abstract_storage_struct : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_storage_struct -> ('e2, 't2, 'i2) abstract_storage_struct
val map_abstract_clone_subst : ('i1 -> 'i2) -> ('t1 -> 't2) -> ('i1, 't1) abstract_clone_subst -> ('i2, 't2) abstract_clone_subst
val map_abstract_decl : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_decl -> ('e2, 't2, 'i2) abstract_decl
val map_abstract_module : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_module -> ('e2, 't2, 'i2) abstract_module
val map_abstract_mlw_tree : ('e1 -> 'e2) -> ('t1 -> 't2) -> ('i1 -> 'i2) -> ('e1, 't1, 'i1) abstract_mlw_tree -> ('e2, 't2, 'i2) abstract_module list
type ident = string
type qualid = ident abstract_qualid
val show_qualid : qualid -> Ppx_deriving_runtime.string
type typ = (ident, typ) abstract_type
type univ_decl = (typ, ident) abstract_univ_decl
val show_univ_decl : univ_decl -> Ppx_deriving_runtime.string
type term = (term, typ, ident) abstract_term
type formula = (term, ident) abstract_formula
val show_formula : formula -> Ppx_deriving_runtime.string
type field = (term, typ, ident) abstract_field
type fun_struct = (term, typ, ident) abstract_fun_struct
val show_fun_struct : fun_struct -> Ppx_deriving_runtime.string
type storage_struct = (term, typ, ident) abstract_storage_struct
val show_storage_struct : storage_struct -> Ppx_deriving_runtime.string
type clone_subst = (ident, typ) abstract_clone_subst
val show_clone_subst : clone_subst -> Ppx_deriving_runtime.string
type decl = (term, typ, ident) abstract_decl
type mlw_module = (term, typ, ident) abstract_module
val show_mlw_module : mlw_module -> Ppx_deriving_runtime.string
type mlw_tree = (term, typ, ident) abstract_mlw_tree
val show_mlw_tree : mlw_tree -> Ppx_deriving_runtime.string
type 'o with_loc = {
  1. obj : 'o;
  2. loc : Location.t;
}
type loc_ident = string with_loc
val show_loc_ident : loc_ident -> Ppx_deriving_runtime.string
val show_loc_qualid : loc_qualid -> Ppx_deriving_runtime.string
val show_loc_typ : loc_typ -> Ppx_deriving_runtime.string
val show_loc_univ_decl : loc_univ_decl -> Ppx_deriving_runtime.string
val show_loc_term : loc_term -> Ppx_deriving_runtime.string
val show_loc_formula : loc_formula -> Ppx_deriving_runtime.string
val show_loc_field : loc_field -> Ppx_deriving_runtime.string
val show_loc_fun_struct : loc_fun_struct -> Ppx_deriving_runtime.string
val show_loc_storage_struct : loc_storage_struct -> Ppx_deriving_runtime.string
val show_loc_clone_subst : loc_clone_subst -> Ppx_deriving_runtime.string
val show_loc_decl : loc_decl -> Ppx_deriving_runtime.string
type loc_mlw_module = (loc_term, loc_typ, loc_ident) abstract_module
val show_loc_mlw_module : loc_mlw_module -> Ppx_deriving_runtime.string
val show_loc_mlw_tree : loc_mlw_tree -> Ppx_deriving_runtime.string
val unloc_tree : loc_mlw_tree -> mlw_tree
val unloc_term : loc_term -> term
val unloc_type : loc_typ -> typ
val unloc_ident : loc_ident -> ident
val unloc_decl : loc_decl -> (term, typ, ident) abstract_decl
val with_dummy_loc : 'a -> 'a with_loc
val mk_loc : Location.t -> 'a -> 'a with_loc
val loc_tree : mlw_tree -> loc_mlw_tree
val loc_term : term -> loc_term
val loc_type : typ -> loc_typ
val loc_ident : ident -> loc_ident
val deloc : 'a with_loc -> 'a
val compare_exn : exn -> exn -> bool
val compare_fmod : fmod -> fmod -> bool
val compare_abstract_type : ('i -> 'i -> bool) -> ('t -> 't -> bool) -> ('i, 't) abstract_type -> ('i, 't) abstract_type -> bool
val compare_abstract_formula : ('e -> 'e -> bool) -> ('i -> 'i -> bool) -> ('e, 'i) abstract_formula -> ('e, 'i) abstract_formula -> bool
val compare_abstract_fun_struct : ('e -> 'e -> bool) -> ('t -> 't -> bool) -> ('i -> 'i -> bool) -> ('e, 't, 'i) abstract_fun_struct -> ('e, 't, 'i) abstract_fun_struct -> bool
val compare_pattern : ('a -> 'b -> bool) -> 'a pattern_node -> 'b pattern_node -> bool
val compare_abstract_term : ('e -> 'e -> bool) -> ('t -> 't -> bool) -> ('i -> 'i -> bool) -> ('e, 't, 'i) abstract_term -> ('e, 't, 'i) abstract_term -> bool
val cmp_loc_ident : loc_ident -> loc_ident -> bool
val cmp_loc_type : loc_typ -> loc_typ -> bool
val cmp_loc_term : loc_term -> loc_term -> bool
val cmp_ident : ident -> ident -> bool
val cmp_type : typ -> typ -> bool
val cmp_term : term -> term -> bool
val id : 'a -> 'a
val loc_replace : loc_term -> ('a, loc_typ, loc_ident) abstract_term with_loc as 'a -> loc_term -> 'a
val replace : term -> ('a, typ, ident) abstract_term as 'a -> term -> 'a
OCaml

Innovation. Community. Security.