Module Forge.Macros

val let| : ('a, 'b) Stdlib.result -> ('a -> ('c, 'b) Stdlib.result) -> ('c, 'b) Stdlib.result
val prim : ?args:Proto.micheline list -> ?annots:string list -> Proto.primitive_or_macro -> Proto.micheline
val check_letters : string -> int -> int -> (char -> bool) -> bool
val expand_caddadr : args:'a list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_carn : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, 'a) Stdlib.result
val expand_cdrn : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, 'a) Stdlib.result
val extract_field_annots : string list -> string list * string list
val expand_set_caddadr : args:'a list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_map_caddadr : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
exception Not_a_roman
val decimal_of_roman : string -> int
val dip : ?annots:string list -> int -> Proto.micheline -> Proto.micheline
val expand_deprecated_dxiiivp : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
type pair_item =
  1. | A
  2. | I
  3. | P of int * pair_item * pair_item
val parse_pair_substr : string -> len:int -> int -> (pair_item, [> `unmacro_error ]) Stdlib.result
val unparse_pair_item : pair_item -> string
module IMap : sig ... end
val pappaiir_annots_pos : pair_item -> 'a list -> ('a list * 'a list) IMap.t
val expand_pappaiir : args:'a list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_unpappaiir : args:'a list -> annots:'b -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_deprecated_duuuuup : args:'a list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_compare : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_asserts : args:'a list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_if_some : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_if_right : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline option, [> `unmacro_error ]) Stdlib.result
val expand_fail : args:'a list -> annots:'b list -> string -> (Proto.micheline option, 'c) Stdlib.result
val expand : args:Proto.micheline list -> annots:string list -> string -> (Proto.micheline, [> `unknown_primitive of string option | `unmacro_error ]) Stdlib.result