package archetype

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

Module Archetype.ModelSource

Sourcetype namespace = lident option
Sourcetype path = namespace * lident
Sourcetype mident = path
Sourcetype container =
  1. | Collection
  2. | Aggregate
  3. | Partition
  4. | AssetContainer
  5. | AssetKey
  6. | AssetValue
  7. | View
Sourcetype btyp =
  1. | Bunit
  2. | Bbool
  3. | Bint
  4. | Brational
  5. | Bdate
  6. | Bduration
  7. | Btimestamp
  8. | Bstring
  9. | Baddress
  10. | Btez
  11. | Bsignature
  12. | Bkey
  13. | Bkeyhash
  14. | Bbytes
  15. | Bnat
  16. | Bchainid
  17. | Bbls12_381_fr
  18. | Bbls12_381_g1
  19. | Bbls12_381_g2
  20. | Bnever
  21. | Bchest
  22. | Bchest_key
Sourcetype ntype =
  1. | Tasset of mident
  2. | Tenum of mident
  3. | Tstate
  4. | Tbuiltin of btyp
  5. | Tcontainer of type_ * container
  6. | Tlist of type_
  7. | Toption of type_
  8. | Ttuple of type_ list
  9. | Tset of type_
  10. | Tmap of type_ * type_
  11. | Tbig_map of type_ * type_
  12. | Titerable_big_map of type_ * type_
  13. | Tor of type_ * type_
  14. | Trecord of mident
  15. | Tevent of mident
  16. | Tlambda of type_ * type_
  17. | Tunit
  18. | Toperation
  19. | Tcontract of type_
  20. | Tticket of type_
  21. | Tsapling_state of int
  22. | Tsapling_transaction of int
Sourceand type_ = ntype * lident option
Sourcetype pattern_node =
  1. | Pwild
  2. | Pconst of mident * lident list
Sourcetype pattern = {
  1. node : pattern_node;
  2. loc : Location.t;
}
Sourcetype for_ident =
  1. | FIsimple of mident
  2. | FIdouble of mident * mident
Sourcetype comparison_operator =
  1. | Gt
  2. | Ge
  3. | Lt
  4. | Le
Sourceval show_comparison_operator : comparison_operator -> Ppx_deriving_runtime.string
Sourcetype rat_arith_op =
  1. | Rplus
  2. | Rminus
  3. | Rmult
  4. | Rdiv
Sourcetype assignment_operator =
  1. | ValueAssign
  2. | PlusAssign
  3. | MinusAssign
  4. | MultAssign
  5. | DivAssign
  6. | AndAssign
  7. | OrAssign
Sourceval show_assignment_operator : assignment_operator -> Ppx_deriving_runtime.string
Sourcetype sort_kind =
  1. | SKasc
  2. | SKdesc
Sourcetype 'term assign_kind_gen =
  1. | Avar of mident
  2. | Avarstore of mident
  3. | Aasset of mident * mident * 'term
  4. | Arecord of 'term * mident * mident
  5. | Atuple of 'term * int * int
  6. | Astate
  7. | Aoperations
Sourcetype 'term var_kind_gen =
  1. | Vassetstate of 'term
  2. | Vstorevar
  3. | Vstorecol
  4. | Vlocal
  5. | Vparam
  6. | Vfield
  7. | Vstate
  8. | Vthe
  9. | Vparameter
Sourcetype 'term container_kind_gen =
  1. | CKcoll
  2. | CKview of 'term
  3. | CKfield of Ident.ident * Ident.ident * 'term
Sourcetype 'term iter_container_kind_gen =
  1. | ICKcoll of Ident.ident
  2. | ICKview of 'term
  3. | ICKfield of Ident.ident * Ident.ident * 'term
  4. | ICKset of 'term
  5. | ICKlist of 'term
  6. | ICKmap of 'term
Sourcetype 'term transfer_kind_gen =
  1. | TKsimple of 'term * 'term
  2. | TKcall of 'term * Ident.ident * type_ * 'term * 'term
  3. | TKentry of 'term * 'term * 'term
  4. | TKgen of 'term * Ident.ident * Ident.ident * type_ * 'term * 'term
  5. | TKself of 'term * Ident.ident * (Ident.ident * 'term) list
  6. | TKoperation of 'term
Sourcetype map_kind =
  1. | MKMap
  2. | MKBigMap
  3. | MKIterableBigMap
Sourcetype michelson_struct = {
  1. ms_content : Michelson.obj_micheline;
}
Sourcetype 'term detach_kind_gen =
  1. | DK_option of type_ * Ident.ident
  2. | DK_map of type_ * Ident.ident * 'term
Sourcetype 'term letin_value_gen =
  1. | LVsimple of 'term
  2. | LVreplace of mident * 'term detach_kind_gen * 'term
Sourcetype 'term mterm_node =
  1. | Mletin of mident list * 'term letin_value_gen * type_ option * 'term * 'term option
  2. | Mdeclvar of mident list * type_ option * 'term * bool
  3. | Mdeclvaropt of mident list * type_ option * 'term * 'term option * bool
  4. | Mapp of mident * 'term list
  5. | Massign of assignment_operator * type_ * 'term assign_kind_gen * 'term
  6. | Massignopt of assignment_operator * type_ * 'term assign_kind_gen * 'term * 'term
  7. | Mif of 'term * 'term * 'term option
  8. | Mmatchwith of 'term * (pattern * 'term) list
  9. | Minstrmatchoption of 'term * mident * 'term * 'term
  10. | Minstrmatchor of 'term * mident * 'term * mident * 'term
  11. | Minstrmatchlist of 'term * mident * mident * 'term * 'term
  12. | Minstrmatchdetach of 'term detach_kind_gen * mident * 'term * 'term
  13. | Mfor of for_ident * 'term iter_container_kind_gen * 'term
  14. | Miter of mident * 'term * 'term * 'term * bool
  15. | Mwhile of 'term * 'term
  16. | Mseq of 'term list
  17. | Mreturn of 'term
  18. | Mfail of fail_type
  19. | Mfailexpr of 'term
  20. | Mfailsome of 'term
  21. | Mtransfer of 'term transfer_kind_gen
  22. | Memit of mident * 'term
  23. | Mdetach of mident * 'term detach_kind_gen * type_ * 'term
  24. | Mmicheline of Michelson.obj_micheline
  25. | Mgetentrypoint of type_ * mident * 'term
  26. | Mcallview of type_ * 'term * mident * 'term
  27. | Mimportcallview of type_ * 'term * mident * 'term
  28. | Mself of mident
  29. | Mselfcallview of type_ * lident * 'term list
  30. | Moperations
  31. | Mmakeoperation of 'term * 'term * 'term
  32. | Mmakeevent of type_ * mident * 'term
  33. | Mcreatecontract of create_contract_type * 'term * 'term
  34. | Mint of Core.big_int
  35. | Mnat of Core.big_int
  36. | Mbool of bool
  37. | Mrational of Core.big_int * Core.big_int
  38. | Mstring of string
  39. | Mmutez of Core.big_int
  40. | Maddress of string
  41. | Mdate of Core.date
  42. | Mduration of Core.duration
  43. | Mtimestamp of Core.big_int
  44. | Mbytes of string
  45. | Mchain_id of string
  46. | Mkey of string
  47. | Mkey_hash of string
  48. | Msignature of string
  49. | Mbls12_381_fr of string
  50. | Mbls12_381_fr_n of Core.big_int
  51. | Mbls12_381_g1 of string
  52. | Mbls12_381_g2 of string
  53. | Munit
  54. | MsaplingStateEmpty of int
  55. | MsaplingTransaction of int * string
  56. | Mchest of string
  57. | Mchest_key of string
  58. | Mtz_expr of string
  59. | Mexprif of 'term * 'term * 'term
  60. | Mexprmatchwith of 'term * (pattern * 'term) list
  61. | Mmatchoption of 'term * mident * 'term * 'term
  62. | Mmatchor of 'term * mident * 'term * mident * 'term
  63. | Mmatchlist of 'term * mident * mident * 'term * 'term
  64. | Mternarybool of 'term * 'term * 'term
  65. | Mternaryoption of 'term * 'term * 'term
  66. | Mfold of 'term * mident * 'term
  67. | Mmap of 'term * mident * 'term
  68. | Mexeclambda of 'term * 'term
  69. | Mapplylambda of 'term * 'term
  70. | Mleft of type_ * 'term
  71. | Mright of type_ * 'term
  72. | Mnone
  73. | Msome of 'term
  74. | Mtuple of 'term list
  75. | Masset of 'term list
  76. | Massets of 'term list
  77. | Mlitset of 'term list
  78. | Mlitlist of 'term list
  79. | Mlitmap of map_kind * ('term * 'term) list
  80. | Mlitrecord of (Ident.ident * 'term) list
  81. | Mlitevent of (Ident.ident * 'term) list
  82. | Mlambda of type_ * mident * type_ * 'term
  83. | Mlambda_michelson of type_ * type_ * Michelson.obj_micheline
  84. | Mmicheline_expr of type_ * Michelson.obj_micheline * 'term list
  85. | Mdot of 'term * mident
  86. | Mdotassetfield of mident * 'term * mident
  87. | Mquestionoption of 'term * mident
  88. | Mequal of type_ * 'term * 'term
  89. | Mnequal of type_ * 'term * 'term
  90. | Mgt of 'term * 'term
  91. | Mge of 'term * 'term
  92. | Mlt of 'term * 'term
  93. | Mle of 'term * 'term
  94. | Mmulticomp of 'term * (comparison_operator * 'term) list
  95. | Mand of 'term * 'term
  96. | Mor of 'term * 'term
  97. | Mgreedyand of 'term * 'term
  98. | Mgreedyor of 'term * 'term
  99. | Mxor of 'term * 'term
  100. | Mnot of 'term
  101. | Mplus of 'term * 'term
  102. | Mminus of 'term * 'term
  103. | Mmult of 'term * 'term
  104. | Mdivrat of 'term * 'term
  105. | Mdiveuc of 'term * 'term
  106. | Mmodulo of 'term * 'term
  107. | Mdivmod of 'term * 'term
  108. | Muminus of 'term
  109. | MthreeWayCmp of 'term * 'term
  110. | Mshiftleft of 'term * 'term
  111. | Mshiftright of 'term * 'term
  112. | Msubnat of 'term * 'term
  113. | Msubmutez of 'term * 'term
  114. | Maddasset of Ident.ident * 'term
  115. | Mputsingleasset of Ident.ident * 'term
  116. | Mputasset of Ident.ident * 'term * 'term
  117. | Maddfield of Ident.ident * Ident.ident * 'term * 'term
  118. | Mremoveasset of Ident.ident * 'term
  119. | Mremovefield of Ident.ident * Ident.ident * 'term * 'term
  120. | Mremoveall of Ident.ident * 'term container_kind_gen
  121. | Mremoveif of Ident.ident * 'term container_kind_gen * (Ident.ident * type_) list * 'term * 'term list
  122. | Mclear of Ident.ident * 'term container_kind_gen
  123. | Mset of Ident.ident * Ident.ident list * 'term * 'term
  124. | Mupdate of Ident.ident * 'term * (mident * assignment_operator * 'term) list
  125. | Mupdateall of Ident.ident * 'term container_kind_gen * (mident * assignment_operator * 'term) list
  126. | Maddupdate of Ident.ident * 'term container_kind_gen * 'term * (mident * assignment_operator * 'term) list
  127. | Mputremove of Ident.ident * 'term container_kind_gen * 'term * 'term
  128. | Mget of Ident.ident * 'term container_kind_gen * 'term
  129. | Mgetsome of Ident.ident * 'term container_kind_gen * 'term
  130. | Mselect of Ident.ident * 'term container_kind_gen * (Ident.ident * type_) list * 'term * 'term list
  131. | Msort of Ident.ident * 'term container_kind_gen * (Ident.ident * sort_kind) list
  132. | Mcontains of Ident.ident * 'term container_kind_gen * 'term
  133. | Mnth of Ident.ident * 'term container_kind_gen * 'term
  134. | Mcount of Ident.ident * 'term container_kind_gen
  135. | Msum of Ident.ident * 'term container_kind_gen * 'term
  136. | Mhead of Ident.ident * 'term container_kind_gen * 'term
  137. | Mtail of Ident.ident * 'term container_kind_gen * 'term
  138. | Mcast of type_ * type_ * 'term
  139. | Mtupleaccess of 'term * Core.big_int
  140. | Mrecupdate of 'term * (Ident.ident * 'term) list
  141. | Mmakeasset of Ident.ident * 'term * 'term
  142. | Mtocontainer of Ident.ident
  143. | Mglobal_constant of type_ * 'term
  144. | Msetadd of type_ * 'term * 'term
  145. | Msetremove of type_ * 'term * 'term
  146. | Msetupdate of type_ * 'term * 'term * 'term
  147. | Msetcontains of type_ * 'term * 'term
  148. | Msetlength of type_ * 'term
  149. | Msetfold of type_ * mident * mident * 'term * 'term * 'term
  150. | Msetinstradd of type_ * 'term assign_kind_gen * 'term
  151. | Msetinstrremove of type_ * 'term assign_kind_gen * 'term
  152. | Mlistprepend of type_ * 'term * 'term
  153. | Mlistlength of type_ * 'term
  154. | Mlistcontains of type_ * 'term * 'term
  155. | Mlistnth of type_ * 'term * 'term
  156. | Mlisthead of type_ * 'term * 'term
  157. | Mlisttail of type_ * 'term * 'term
  158. | Mlistreverse of type_ * 'term
  159. | Mlistconcat of type_ * 'term * 'term
  160. | Mlistfold of type_ * mident * mident * 'term * 'term * 'term
  161. | Mlistinstrprepend of type_ * 'term assign_kind_gen * 'term
  162. | Mlistinstrconcat of type_ * 'term assign_kind_gen * 'term
  163. | Mmapput of map_kind * type_ * type_ * 'term * 'term * 'term
  164. | Mmapremove of map_kind * type_ * type_ * 'term * 'term
  165. | Mmapupdate of map_kind * type_ * type_ * 'term * 'term * 'term
  166. | Mmapget of map_kind * type_ * type_ * 'term * 'term * Ident.ident option
  167. | Mmapgetopt of map_kind * type_ * type_ * 'term * 'term
  168. | Mmapcontains of map_kind * type_ * type_ * 'term * 'term
  169. | Mmaplength of map_kind * type_ * type_ * 'term
  170. | Mmapfold of map_kind * type_ * mident * mident * mident * 'term * 'term * 'term
  171. | Mmapinstrput of map_kind * type_ * type_ * 'term assign_kind_gen * 'term * 'term
  172. | Mmapinstrremove of map_kind * type_ * type_ * 'term assign_kind_gen * 'term
  173. | Mmapinstrupdate of map_kind * type_ * type_ * 'term assign_kind_gen * 'term * 'term
  174. | Mmin of 'term * 'term
  175. | Mmax of 'term * 'term
  176. | Mabs of 'term
  177. | Mconcat of 'term * 'term
  178. | Mconcatlist of 'term
  179. | Mslice of 'term * 'term * 'term
  180. | Mlength of 'term
  181. | Misnone of 'term
  182. | Missome of 'term
  183. | Minttonat of 'term
  184. | Mfloor of 'term
  185. | Mceil of 'term
  186. | Mnattostring of 'term
  187. | Mbytestonat of 'term
  188. | Mnattobytes of 'term
  189. | Mbytestoint of 'term
  190. | Minttobytes of 'term
  191. | Mpack of 'term
  192. | Munpack of type_ * 'term
  193. | Msetdelegate of 'term
  194. | Mkeyhashtocontract of 'term
  195. | Mcontracttoaddress of 'term
  196. | Maddresstocontract of type_ * 'term
  197. | Mkeytoaddress of 'term
  198. | Msimplify_rational of 'term
  199. | Mget_numerator of 'term
  200. | Mget_denominator of 'term
  201. | Misimplicitaddress of 'term
  202. | Mexp_horner of 'term * 'term
  203. | Mblake2b of 'term
  204. | Msha256 of 'term
  205. | Msha512 of 'term
  206. | Msha3 of 'term
  207. | Mkeccak of 'term
  208. | Mkeytokeyhash of 'term
  209. | Mchecksignature of 'term * 'term * 'term
  210. | Mtotalvotingpower
  211. | Mvotingpower of 'term
  212. | Mcreateticket of 'term * 'term
  213. | Mreadticket of 'term
  214. | Msplitticket of 'term * 'term * 'term
  215. | Mjointickets of 'term * 'term
  216. | Msapling_empty_state of int
  217. | Msapling_verify_update of 'term * 'term
  218. | Mpairing_check of 'term
  219. | Mopen_chest of 'term * 'term * 'term
  220. | Mnow
  221. | Mtransferred
  222. | Mcaller
  223. | Mbalance
  224. | Msource
  225. | Mselfaddress
  226. | Mselfchainid
  227. | Mmetadata
  228. | Mlevel
  229. | Mminblocktime
  230. | Mvar of mident * 'term var_kind_gen
  231. | Menumval of mident * 'term list * mident
  232. | Mrateq of 'term * 'term
  233. | Mratcmp of comparison_operator * 'term * 'term
  234. | Mratarith of rat_arith_op * 'term * 'term
  235. | Mratuminus of 'term
  236. | Mrattez of 'term * 'term
  237. | Mnattoint of 'term
  238. | Mnattorat of 'term
  239. | Minttorat of 'term
  240. | Mratdur of 'term * 'term
  241. | Minttodate of 'term
  242. | Mmuteztonat of 'term
Sourceand assign_kind = mterm assign_kind_gen
Sourceand var_kind = mterm var_kind_gen
Sourceand container_kind = mterm container_kind_gen
Sourceand iter_container_kind = mterm iter_container_kind_gen
Sourceand transfer_kind = mterm transfer_kind_gen
Sourceand mterm_gen = {
  1. node : mterm_gen mterm_node;
  2. type_ : type_;
  3. loc : Location.t;
}
Sourceand mterm = mterm_gen
Sourceand mterm__node = mterm mterm_node
Sourceand fail_type =
  1. | Invalid of mterm
  2. | InvalidCaller
  3. | InvalidSource
  4. | InvalidCondition of Ident.ident * mterm option
  5. | NotFound
  6. | AssetNotFound of Ident.ident
  7. | KeyExists of Ident.ident
  8. | KeyExistsOrNotFound of Ident.ident
  9. | DivByZero
  10. | NatNegAssign
  11. | NoTransfer
  12. | InvalidState
Sourceand api_container_kind =
  1. | Coll
  2. | View
  3. | Field of Ident.ident * Ident.ident
Sourceand api_list =
  1. | Lprepend of type_
  2. | Lcontains of type_
  3. | Llength of type_
  4. | Lnth of type_
  5. | Lreverse of type_
Sourceand api_builtin =
  1. | Bmin of type_
  2. | Bmax of type_
  3. | Babs of type_
  4. | Bconcat of type_
  5. | Bslice of type_
  6. | Blength of type_
  7. | Bisnone of type_
  8. | Bissome of type_
  9. | Boptget of type_
  10. | Bfloor
  11. | Bceil
  12. | Bfail of type_
Sourceand api_internal =
  1. | RatEq
  2. | RatCmp
  3. | RatArith
  4. | RatUminus
  5. | RatTez
  6. | RatDur
Sourceand api_storage_node =
  1. | APIAsset of api_asset
  2. | APIList of api_list
  3. | APIBuiltin of api_builtin
  4. | APIInternal of api_internal
Sourceand api_storage = {
  1. node_item : api_storage_node;
}
Sourceand letin_value = mterm letin_value_gen
Sourceand detach_kind = mterm detach_kind_gen
Sourceand create_contract_type =
  1. | CCTz of michelson_struct * mterm
  2. | CCArl of Ident.ident * (Ident.ident * mterm) list
Sourceval show_iter_container_kind : iter_container_kind -> Ppx_deriving_runtime.string
Sourceval show_api_container_kind : api_container_kind -> Ppx_deriving_runtime.string
Sourceval show_create_contract_type : create_contract_type -> Ppx_deriving_runtime.string
Sourcetype model_type =
  1. | MTvar
  2. | MTconst
  3. | MTasset of mident
  4. | MTstate
  5. | MTenum of Ident.ident
Sourcetype storage_item = {
  1. id : mident;
  2. model_type : model_type;
  3. typ : type_;
  4. const : bool;
  5. ghost : bool;
  6. default : mterm;
  7. namespace : Ident.ident option;
  8. no_storage : bool;
  9. loc : Location.t;
}
Sourcetype storage = storage_item list
Sourcetype enum_item = {
  1. name : mident;
  2. args : type_ list;
}
Sourcetype variable_kind =
  1. | VKconstant
  2. | VKvariable
Sourcetype var = {
  1. name : mident;
  2. type_ : type_;
  3. original_type : type_;
  4. kind : variable_kind;
  5. default : mterm option;
  6. loc : Location.t;
}
Sourcetype enum = {
  1. name : mident;
  2. values : enum_item list;
  3. initial : mident;
}
Sourcetype asset_item = {
  1. name : mident;
  2. type_ : type_;
  3. original_type : type_;
  4. default : mterm option;
  5. shadow : bool;
  6. loc : Location.t;
}
Sourcetype asset = {
  1. name : mident;
  2. values : asset_item list;
  3. keys : Ident.ident list;
  4. sort : mident list;
  5. map_kind : map_kind;
  6. state : lident option;
  7. init : mterm list;
  8. no_storage : bool;
  9. loc : Location.t;
}
Sourcetype position =
  1. | Ptuple of Ident.ident list
  2. | Pnode of position list
Sourcetype record_field = {
  1. name : mident;
  2. type_ : type_;
  3. loc : Location.t;
}
Sourcetype record = {
  1. name : mident;
  2. fields : record_field list;
  3. pos : position;
  4. loc : Location.t;
}
Sourcetype function_ = {
  1. name : mident;
}
Sourcetype entry = {
  1. name : mident;
}
Sourcetype argument = mident * type_ * mterm option
Sourcetype function_struct = {
  1. name : mident;
  2. args : argument list;
  3. eargs : argument list;
  4. stovars : Ident.ident list;
  5. body : mterm;
  6. side_effect : bool;
  7. loc : Location.t;
}
Sourcetype view_visibility =
  1. | VVonchain
  2. | VVoffchain
  3. | VVonoffchain
Sourcetype returned_fun_type =
  1. | Typed of type_
  2. | Void
Sourcetype function_node =
  1. | Function of function_struct * returned_fun_type
  2. | Getter of function_struct * type_
  3. | View of function_struct * type_ * view_visibility
  4. | Entry of function_struct
Sourcetype signature = {
  1. name : mident;
  2. args : argument list;
  3. ret : type_ option;
}
Sourcetype decl_node =
  1. | Dvar of var
  2. | Denum of enum
  3. | Dasset of asset
  4. | Drecord of record
  5. | Devent of record
Sourcetype parameter = {
  1. name : mident;
  2. typ : type_;
  3. default : mterm option;
  4. value : mterm option;
  5. const : bool;
  6. loc : Location.t;
}
Sourcetype metadata_kind =
  1. | MKuri of string Location.loced
  2. | MKjson of string Location.loced
Sourcetype odel_asset = {
  1. name : mident;
  2. container_type : type_;
  3. key_type : type_;
  4. value_type : type_;
}
Sourcetype odel_record = {
  1. name : mident;
  2. current_type : type_;
}
Sourcetype odel_enum = {
  1. name : mident;
  2. current_type : type_;
}
Sourcetype original_decl =
  1. | ODAsset of odel_asset
  2. | ODRecord of odel_record
  3. | ODEnum of odel_enum
Sourcetype extra = {
  1. original_decls : original_decl list;
}
Sourcetype model = {
  1. name : lident;
  2. parameters : parameter list;
  3. metadata : metadata_kind option;
  4. api_items : api_storage list;
  5. decls : decl_node list;
  6. storage : storage;
  7. functions : function_node list;
  8. extra : extra;
  9. cc_models : model list;
  10. loc : Location.t;
}
Sourceval mk_mident : ?namespace:lident -> lident -> mident
Sourceval unloc_mident : mident -> Ident.ident
Sourceval loc_mident : mident -> Location.t
Sourceval deloc_mident : mident -> Location.t * Ident.ident
Sourceval mk_pattern : ?loc:Location.t -> pattern_node -> pattern
Sourceval mk_mterm : ?loc:Location.t -> mterm_gen mterm_node -> type_ -> mterm
Sourceval mk_var : ?default:mterm -> ?loc:Location.t -> mident -> type_ -> type_ -> variable_kind -> var
Sourceval mk_enum : ?values:enum_item list -> mident -> mident -> enum
Sourceval mk_enum_item : ?args:type_ list -> mident -> enum_item
Sourceval mk_asset : ?values:asset_item list -> ?sort:mident list -> ?map_kind:map_kind -> ?state:lident -> ?keys:Ident.ident list -> ?init:mterm list -> ?loc:Location.t -> ?no_storage:bool -> mident -> asset
Sourceval mk_asset_item : ?default:mterm -> ?shadow:bool -> ?loc:Location.t -> mident -> type_ -> type_ -> asset_item
Sourceval mk_record : ?fields:record_field list -> ?pos:position -> ?loc:Location.t -> mident -> record
Sourceval mk_record_field : ?loc:Location.t -> mident -> type_ -> record_field
Sourceval mk_storage_item : ?const:bool -> ?ghost:bool -> ?namespace:Ident.ident -> ?no_storage:bool -> ?loc:Location.t -> mident -> model_type -> type_ -> mterm -> storage_item
Sourceval mk_function_struct : ?args:argument list -> ?eargs:argument list -> ?stovars:Ident.ident list -> ?side_effect:bool -> ?loc:Location.t -> mident -> mterm -> function_struct
Sourceval mk_api_item : api_storage_node -> api_storage
Sourceval mk_odel_asset : mident -> type_ -> type_ -> type_ -> odel_asset
Sourceval mk_odel_record : mident -> type_ -> odel_record
Sourceval mk_odel_enum : mident -> type_ -> odel_enum
Sourceval mk_extra : ?original_decls:original_decl list -> unit -> extra
Sourceval mk_model : ?parameters:parameter list -> ?metadata:metadata_kind -> ?api_items:api_storage list -> ?decls:decl_node list -> ?functions:function_node list -> ?storage:storage -> ?extra:extra -> ?cc_models:model list -> ?loc:Location.t -> lident -> model
Sourceval gen_mident : string -> mident -> Ident.ident
Sourceval normalize_mident : mident -> Ident.ident
Sourceval printable_mident : mident -> Ident.ident
Sourceval string_to_mident : ?nm:string option -> Ident.ident -> mident
Sourceval mktype : ?annot:lident -> ntype -> type_
Sourceval get_ntype : (ntype * 'a) -> ntype
Sourceval get_atype : ('a * lident option) -> lident option
Sourceval mkannot : string -> lident -> lident option
Sourceval mkfannot : lident -> lident option
Sourceval mkvannot : lident -> lident option
Sourceval tunit : type_
Sourceval tbool : type_
Sourceval tnat : type_
Sourceval tint : type_
Sourceval tstring : type_
Sourceval tbytes : type_
Sourceval ttez : type_
Sourceval tduration : type_
Sourceval tkey : type_
Sourceval tkeyhash : type_
Sourceval tdate : type_
Sourceval ttimestamp : type_
Sourceval taddress : type_
Sourceval tenum : mident -> type_
Sourceval tstate : type_
Sourceval trecord : mident -> type_
Sourceval tevent : mident -> type_
Sourceval toption : type_ -> type_
Sourceval tset : type_ -> type_
Sourceval tlist : type_ -> type_
Sourceval tmap : type_ -> type_ -> type_
Sourceval tbig_map : type_ -> type_ -> type_
Sourceval titerable_big_map : type_ -> type_ -> type_
Sourceval tor : type_ -> type_ -> type_
Sourceval tlambda : type_ -> type_ -> type_
Sourceval ttuple : type_ list -> type_
Sourceval trat : type_
Sourceval toperation : type_
Sourceval tsignature : type_
Sourceval tcontract : type_ -> type_
Sourceval tticket : type_ -> type_
Sourceval tsapling_state : int -> type_
Sourceval tsapling_transaction : int -> type_
Sourceval trational : type_
Sourceval tchainid : type_
Sourceval tbls12_381_fr : type_
Sourceval tbls12_381_g1 : type_
Sourceval tbls12_381_g2 : type_
Sourceval tnever : type_
Sourceval tchest : type_
Sourceval tchest_key : type_
Sourceval tasset : mident -> type_
Sourceval tcollection : mident -> type_
Sourceval taggregate : mident -> type_
Sourceval tpartition : mident -> type_
Sourceval tassetcontainer : mident -> type_
Sourceval tassetkey : mident -> type_
Sourceval tassetvalue : mident -> type_
Sourceval tview : mident -> type_
Sourceval toperations : type_
Sourceval tmetadata : type_
Sourceval mk_bool : bool -> mterm
Sourceval mk_string : string -> mterm
Sourceval mk_bytes : string -> mterm
Sourceval mk_chain_id : string -> mterm
Sourceval mk_key : string -> mterm
Sourceval mk_key_hash : string -> mterm
Sourceval mk_signature : string -> mterm
Sourceval mk_bls12_381_fr : string -> mterm
Sourceval mk_bls12_381_fr_n : Core.big_int -> mterm
Sourceval mk_bls12_381_g1 : string -> mterm
Sourceval mk_bls12_381_g2 : string -> mterm
Sourceval mk_bnat : Core.big_int -> mterm
Sourceval mk_nat : int -> mterm
Sourceval mk_bint : Core.big_int -> mterm
Sourceval mk_int : int -> mterm
Sourceval mk_brational : Core.big_int -> Core.big_int -> mterm
Sourceval mk_rational : int -> int -> mterm
Sourceval mk_address : string -> mterm
Sourceval unit : mterm
Sourceval mk_sapling_state_empty : int -> mterm
Sourceval mk_sapling_transaction : int -> string -> mterm
Sourceval mk_chest : string -> mterm
Sourceval mk_chest_key : string -> mterm
Sourceval mk_tz_expr : string -> mterm
Sourceval mk_date : Core.date -> mterm
Sourceval mk_duration : Core.duration -> mterm
Sourceval mk_pair : mterm list -> mterm
Sourceval mtrue : mterm
Sourceval mfalse : mterm
Sourceval mnow : mterm
Sourceval mtransferred : mterm
Sourceval mcaller : mterm
Sourceval mbalance : mterm
Sourceval msource : mterm
Sourceval mselfaddress : mterm
Sourceval mselfchainid : mterm
Sourceval mmetadata : mterm
Sourceval mlevel : mterm
Sourceval mminblocktime : mterm
Sourceval mk_mvar : mident -> type_ -> mterm
Sourceval mk_pvar : mident -> type_ -> mterm
Sourceval mk_svar : mident -> type_ -> mterm
Sourceval mk_state_var : 'a -> mterm
Sourceval mk_enum_value : ?args:mterm_gen list -> mident -> mident -> mterm
Sourceval mk_state_value : mident -> mterm
Sourceval mk_btez : Core.big_int -> mterm
Sourceval mk_tez : int -> mterm
Sourceval mk_tuple : ?loc:Location.t -> mterm list -> mterm
Sourceval mk_letin : ?loc:Location.t -> mident -> mterm_gen -> mterm_gen -> mterm
Sourceval mk_declvar : mident -> type_ -> mterm_gen -> mterm
Sourceval mk_iter : mident -> mterm_gen -> mterm_gen -> mterm_gen -> bool -> mterm
Sourceval mk_return : mterm_gen -> mterm
Sourceval mk_tupleaccess : int -> mterm -> mterm
Sourceval mk_min : mterm -> mterm -> type_ -> mterm
Sourceval mk_max : mterm -> mterm -> type_ -> mterm
Sourceval mk_abs : mterm -> mterm
Sourceval mk_nat_to_int : mterm -> mterm
Sourceval mk_int_to_rat : mterm -> mterm
Sourceval mk_nat_to_rat : mterm -> mterm
Sourceval mk_some : mterm_gen -> mterm
Sourceval mk_left : type_ -> mterm_gen -> mterm
Sourceval mk_right : type_ -> mterm_gen -> mterm
Sourceval mk_none : type_ -> mterm
Sourceval mk_pack : mterm_gen -> mterm
Sourceval mk_unpack : type_ -> mterm_gen -> mterm
Sourceval mk_blake2b : mterm_gen -> mterm
Sourceval mk_sha256 : mterm_gen -> mterm
Sourceval mk_sha512 : mterm_gen -> mterm
Sourceval mk_keytokeyhash : mterm_gen -> mterm
Sourceval mk_checksignature : mterm_gen -> mterm_gen -> mterm_gen -> mterm
Sourceval mk_rat : int -> int -> mterm
Sourceval mk_muteztonat : mterm_gen -> mterm
Sourceval mk_nattoint : mterm_gen -> mterm
Sourceval mk_metadata : (mterm_gen * mterm_gen) list -> mterm
Sourceval fail : string -> mterm
Sourceval failg : mterm -> mterm
Sourceval failc : fail_type -> mterm
Sourceval faile : mterm_gen -> type_ -> mterm
Sourceval mnot : mterm_gen -> mterm
Sourceval seq : mterm_gen list -> mterm
Sourceval skip : mterm
Sourceval operations : mterm
Sourceval mk_get_entrypoint : type_ -> lident -> mterm -> mterm
Sourceval mk_mkoperation : mterm_gen -> mterm_gen -> mterm_gen -> mterm
Sourceval mk_mkevent : type_ -> mident -> mterm_gen -> mterm
Sourceval mk_transfer_op : mterm_gen -> mterm
Sourceval fail_msg_ASSET_NOT_FOUND : string
Sourceval fail_msg_DIV_BY_ZERO : string
Sourceval fail_msg_INVALID_CALLER : string
Sourceval fail_msg_INVALID_CONDITION : string
Sourceval fail_msg_INVALID_SOURCE : string
Sourceval fail_msg_INVALID_STATE : string
Sourceval fail_msg_KEY_EXISTS : string
Sourceval fail_msg_KEY_EXISTS_OR_NOT_FOUND : string
Sourceval fail_msg_NAT_NEG_ASSIGN : string
Sourceval fail_msg_NO_TRANSFER : string
Sourceval fail_msg_NOT_FOUND : string
Sourceval fail_msg_OPTION_IS_NONE : string
Sourceval fail_msg_OUT_OF_BOUND : string
Sourceval fail_msg_ENTRY_NOT_FOUND : string
Sourceval fail_msg_EMPTY_LIST : string
Sourceval fail_msg_NOT_IMPLICIT_CONTRACT : string
Sourceval fail_msg_KEY_NOT_FOUND : string
Sourceval fail_msg_INVALID_EVENT_CONTRACT : string
Sourceval cmp_ident : Ident.ident -> Ident.ident -> bool
Sourceval cmp_big_int : Core.big_int -> Core.big_int -> bool
Sourceval cmp_int : int -> int -> bool
Sourceval cmp_lident : lident -> lident -> bool
Sourceval cmp_namespace : namespace -> namespace -> bool
Sourceval cmp_path : path -> path -> bool
Sourceval cmp_mident : mident -> mident -> bool
Sourceval cmp_bool : bool -> bool -> bool
Sourceval cmp_assign_op : assignment_operator -> assignment_operator -> bool
Sourceval cmp_container : container -> container -> bool
Sourceval cmp_btyp : btyp -> btyp -> bool
Sourceval cmp_comparison_operator : comparison_operator -> comparison_operator -> bool
Sourceval cmp_rat_arith_op : rat_arith_op -> rat_arith_op -> bool
Sourceval cmp_fail_type : (mterm -> mterm -> bool) -> fail_type -> fail_type -> bool
Sourceval cmp_ntype : ntype -> ntype -> bool
Sourceval cmp_type : ?with_annot:bool -> type_ -> type_ -> bool
Sourceval cmp_pattern_node : pattern_node -> pattern_node -> bool
Sourceval cmp_pattern : pattern -> pattern -> bool
Sourceval cmp_for_ident : (mident -> mident -> bool) -> for_ident -> for_ident -> bool
Sourceval cmp_mterm_node : (mterm -> mterm -> bool) -> (mident -> mident -> bool) -> mterm mterm_node -> mterm mterm_node -> bool
Sourceval cmp_mterm : mterm -> mterm -> bool
Sourceval cmp_container_kind : api_container_kind -> api_container_kind -> bool
Sourceval cmp_api_item_node : api_storage_node -> api_storage_node -> bool
Sourceval cmp_api_storage : api_storage -> api_storage -> bool
Sourceval map_ptyp : (type_ -> type_) -> ntype -> ntype
Sourceval map_type : (type_ -> type_) -> type_ -> type_
Sourceval fold_typ : ('a -> type_ -> 'a) -> 'a -> type_ -> 'a
Sourceval map_for_ident : (mident -> mident) -> for_ident -> for_ident
Sourceval map_assign_kind : (mident -> mident) -> ('a -> 'b) -> 'a assign_kind_gen -> 'b assign_kind_gen
Sourceval map_var_kind : ('a -> 'b) -> 'a var_kind_gen -> 'b var_kind_gen
Sourceval map_container_kind : (Ident.ident -> Ident.ident) -> ('a -> 'b) -> 'a container_kind_gen -> 'b container_kind_gen
Sourceval map_iter_container_kind : (Ident.ident -> Ident.ident) -> ('a -> 'b) -> 'a iter_container_kind_gen -> 'b iter_container_kind_gen
Sourceval map_transfer_kind : (Ident.ident -> Ident.ident) -> (type_ -> type_) -> ('a -> 'b) -> 'a transfer_kind_gen -> 'b transfer_kind_gen
Sourceval map_detach_kind : (Ident.ident -> Ident.ident) -> (type_ -> type_) -> ('a -> 'b) -> 'a detach_kind_gen -> 'b detach_kind_gen
Sourceval map_create_contract_type : (mterm -> mterm) -> (Ident.ident -> Ident.ident) -> create_contract_type -> create_contract_type
Sourceval map_term_node_internal : (Ident.ident -> Ident.ident) -> (mident -> mident) -> (type_ -> type_) -> (mterm -> mterm) -> mterm mterm_node -> mterm mterm_node
Sourceval map_mterm : (mterm -> mterm) -> ?fi:(Ident.ident -> Ident.ident) -> ?g:(mident -> mident) -> ?ft:(type_ -> type_) -> mterm -> mterm
Sourcetype 't ctx_model_gen = {
  1. formula : bool;
  2. fun_node : function_node option;
  3. fs : function_struct option;
  4. label : mident option;
  5. spec_id : mident option;
  6. invariant_id : mident option;
  7. custom : 't;
}
Sourcetype ctx_model = unit ctx_model_gen
Sourceval mk_ctx_model : ?formula:bool -> ?fun_node:function_node -> ?fs:function_struct -> ?label:mident -> ?spec_id:mident -> ?invariant_id:mident -> 't -> 't ctx_model_gen
Sourceval map_mterm_model_gen : 't -> ('t ctx_model_gen -> mterm -> mterm) -> model -> model
Sourceval map_mterm_model : (unit ctx_model_gen -> mterm -> mterm) -> model -> model
Sourceval fold_assign_kind : ('a -> 'b -> 'a) -> 'a -> 'b assign_kind_gen -> 'a
Sourceval fold_var_kind : ('a -> 'b -> 'a) -> 'a -> 'b var_kind_gen -> 'a
Sourceval fold_container_kind : ('a -> 'b -> 'a) -> 'a -> 'b container_kind_gen -> 'a
Sourceval fold_iter_container_kind : ('a -> 'b -> 'a) -> 'a -> 'b iter_container_kind_gen -> 'a
Sourceval fold_transfer_kind : ('a -> 'b -> 'a) -> 'a -> 'b transfer_kind_gen -> 'a
Sourceval fold_detach_kind : ('a -> 'b -> 'a) -> 'a -> 'b detach_kind_gen -> 'a
Sourceval fold_term : ('a -> mterm -> 'a) -> 'a -> mterm -> 'a
Sourceval fold_map_term_list : ('a -> 'b -> 'term * 'a) -> 'a -> 'b list -> 'term list * 'a
Sourceval fold_map_assign_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b assign_kind_gen -> 'c assign_kind_gen * 'a
Sourceval fold_map_var_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b var_kind_gen -> 'c var_kind_gen * 'a
Sourceval fold_map_container_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b container_kind_gen -> 'c container_kind_gen * 'a
Sourceval fold_map_iter_container_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b iter_container_kind_gen -> 'c iter_container_kind_gen * 'a
Sourceval fold_map_transfer_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b transfer_kind_gen -> 'c transfer_kind_gen * 'a
Sourceval fold_map_detach_kind : ('a -> 'b -> 'c * 'a) -> 'a -> 'b detach_kind_gen -> 'c detach_kind_gen * 'a
Sourceval fold_map_term : (mterm mterm_node -> mterm) -> ('a -> mterm -> mterm * 'a) -> 'a -> mterm -> mterm * 'a
Sourceval fold_left : ('a -> 'b -> 'b) -> 'a list -> 'b -> 'b
Sourceval fold_model : (unit ctx_model_gen -> 'a -> mterm -> 'a) -> model -> 'a -> 'a
Sourcetype kind_ident =
  1. | KIarchetype
  2. | KIparameter
  3. | KIdeclvarname
  4. | KIassetname
  5. | KIassetfield
  6. | KIassetstate
  7. | KIassetinit
  8. | KIrecordname
  9. | KIrecordfield
  10. | KIparamlambda
  11. | KIenumname
  12. | KIenumvalue
  13. | KIcontractname
  14. | KIcontractentry
  15. | KIstoragefield
  16. | KIentry
  17. | KIfunction
  18. | KIgetter
  19. | KIview
  20. | KIargument
  21. | KIlocalvar
  22. | KIlabel
  23. | KIpredicate
  24. | KIdefinition
  25. | KIdefinitionvar
  26. | KIinvariant
  27. | KIpostcondition
  28. | KIpostconditionuse
  29. | KIfaillabel
  30. | KIfailfid
  31. | KIfailarg
  32. | KIsecurityad
  33. | KIsecurityrole
  34. | KIsecurityentry
  35. | KImterm
Sourceval map_model : (kind_ident -> Ident.ident -> Ident.ident) -> (type_ -> type_) -> (mterm -> mterm) -> model -> model
Sourceval replace_ident_model : (kind_ident -> Ident.ident -> Ident.ident) -> model -> model
Sourceval merge_seq : mterm -> mterm -> mterm
Sourceval extract_list : mterm -> mterm -> mterm list
Sourcetype effect =
  1. | Eadded of Ident.ident
  2. | Eremoved of Ident.ident
  3. | Eupdated of Ident.ident
Sourcemodule Utils : sig ... end
OCaml

Innovation. Community. Security.