Perk.AstAbstract Syntax Tree of a Perk program.
val pp_annotated :
'a. (Ppx_deriving_runtime.Format.formatter ->
'a ->
Ppx_deriving_runtime.unit) ->
Ppx_deriving_runtime.Format.formatter ->
'a annotated ->
Ppx_deriving_runtime.unitval show_annotated :
'a. (Ppx_deriving_runtime.Format.formatter ->
'a ->
Ppx_deriving_runtime.unit) ->
'a annotated ->
Ppx_deriving_runtime.stringval (@@) : 'a annotated -> Location.locationval ($) : 'a annotated -> 'aval annotate : 'a -> Location.location -> 'a annotatedval annotate_2 : Location.location -> 'a -> 'a annotatedval annotate_code :
'a ->
(Stdlib.Lexing.position * Stdlib.Lexing.position) ->
string ->
'a annotatedval annotate_2_code :
string ->
(Stdlib.Lexing.position * Stdlib.Lexing.position) ->
'a ->
'a annotatedval annotate_dummy : 'a -> 'a annotatedval pp_perkident :
Ppx_deriving_runtime.Format.formatter ->
perkident ->
Ppx_deriving_runtime.unitval show_perkident : perkident -> Ppx_deriving_runtime.stringval pp_perktype_attribute :
Ppx_deriving_runtime.Format.formatter ->
perktype_attribute ->
Ppx_deriving_runtime.unitval show_perktype_attribute : perktype_attribute -> Ppx_deriving_runtime.stringval equal_perktype_attribute :
perktype_attribute ->
perktype_attribute ->
Ppx_deriving_runtime.boolval pp_perktype_qualifier :
Ppx_deriving_runtime.Format.formatter ->
perktype_qualifier ->
Ppx_deriving_runtime.unitval show_perktype_qualifier : perktype_qualifier -> Ppx_deriving_runtime.stringval equal_perktype_qualifier :
perktype_qualifier ->
perktype_qualifier ->
Ppx_deriving_runtime.booltype perktype_partial = | Basetype of string| Funtype of perktype list * perktypetypes of args, return type
*)| Lambdatype of perktype list * perktype * perkvardesc list| Pointertype of perktype| Arraytype of perktype * int option| Structtype of string * perkdef list| ArcheType of perkident * perkdecl list| Modeltype of perkident
* perkident list
* (perktype_attribute list * perkdecl) list
* perktype list
* perkident list| Optiontype of perktype| Tupletype of perktype list| ArchetypeSum of perktype list| Vararg| Inferand perktype =
perktype_attribute list * perktype_partial * perktype_qualifier listand perkdecl = perkvardescand perkfundef = perktype * perkident * perkvardesc list * command_aand expr_t = | Nothing of perktype| Something of expr_a * perktype| Bool of bool| Int of int| Float of float| Char of char| String of string| Var of perkident| Apply of expr_a * expr_a list * perktype option| Binop of binop * expr_a * expr_a| PreUnop of preunop * expr_a| Lambda of perktype * perkvardesc list * command_a * perkvardesc list| PostUnop of postunop * expr_a| Parenthesised of expr_a| Subscript of expr_a * expr_a| TupleSubscript of expr_a * int| Summon of perkident * expr_a list| Make of perkident * (perkident * expr_a) list| Access of expr_a * perkident * perktype option * perktype option| Tuple of expr_a list * perktype option| As of perkident * perktype list * perktype option| Array of expr_a listCast ((from_type, to_type), expression)
*)| Cast of perktype * perktype * expr_a| IfThenElseExpr of expr_a * expr_a * expr_aand command_t = | InlineCCmd of string| DefCmd of perkdef * perktype option| Block of command_a| Assign of expr_a * expr_a * perktype option * perktype option| Seq of command_a * command_a| IfThenElse of expr_a * command_a * command_a| Whiledo of expr_a * command_a| Dowhile of expr_a * command_a| For of command_a * expr_a * command_a * command_a| Expr of expr_a| Switch of expr_a * (expr_a * command_a) list| Skip| Banish of perkident| Return of expr_a option| Break| Continueand topleveldef_t = | InlineC of string| Import of string| Open of string| Extern of perkident * perktype| Def of perkdef * perktype option| Fundef of perkfundef| Archetype of perkident * declorfun_a list| Model of perkident * perkident list * deforfun_a list| Struct of perkident * perkdef listand deforfun_t = | DefVar of perktype_attribute list * perkdef| DefFun of perktype_attribute list * perkfundefand topleveldef_a = topleveldef_t annotatedand deforfun_a = deforfun_t annotatedand declorfun_a = declorfun_t annotatedval pp_perktype_partial :
Ppx_deriving_runtime.Format.formatter ->
perktype_partial ->
Ppx_deriving_runtime.unitval show_perktype_partial : perktype_partial -> Ppx_deriving_runtime.stringval pp_perktype :
Ppx_deriving_runtime.Format.formatter ->
perktype ->
Ppx_deriving_runtime.unitval show_perktype : perktype -> Ppx_deriving_runtime.stringval pp_perkvardesc :
Ppx_deriving_runtime.Format.formatter ->
perkdecl ->
Ppx_deriving_runtime.unitval show_perkvardesc : perkvardesc -> Ppx_deriving_runtime.stringval pp_perkdecl :
Ppx_deriving_runtime.Format.formatter ->
perkdecl ->
Ppx_deriving_runtime.unitval show_perkdecl : perkdecl -> Ppx_deriving_runtime.stringval pp_binop :
Ppx_deriving_runtime.Format.formatter ->
binop ->
Ppx_deriving_runtime.unitval show_binop : binop -> Ppx_deriving_runtime.stringval pp_preunop :
Ppx_deriving_runtime.Format.formatter ->
preunop ->
Ppx_deriving_runtime.unitval show_preunop : preunop -> Ppx_deriving_runtime.stringval pp_postunop :
Ppx_deriving_runtime.Format.formatter ->
postunop ->
Ppx_deriving_runtime.unitval show_postunop : postunop -> Ppx_deriving_runtime.stringval pp_perkdef :
Ppx_deriving_runtime.Format.formatter ->
perkdef ->
Ppx_deriving_runtime.unitval show_perkdef : perkdef -> Ppx_deriving_runtime.stringval pp_perkfundef :
Ppx_deriving_runtime.Format.formatter ->
perkfundef ->
Ppx_deriving_runtime.unitval show_perkfundef : perkfundef -> Ppx_deriving_runtime.stringval pp_expr_t :
Ppx_deriving_runtime.Format.formatter ->
expr_t ->
Ppx_deriving_runtime.unitval show_expr_t : expr_t -> Ppx_deriving_runtime.stringval pp_command_t :
Ppx_deriving_runtime.Format.formatter ->
command_t ->
Ppx_deriving_runtime.unitval show_command_t : command_t -> Ppx_deriving_runtime.stringval pp_topleveldef_t :
Ppx_deriving_runtime.Format.formatter ->
topleveldef_t ->
Ppx_deriving_runtime.unitval show_topleveldef_t : topleveldef_t -> Ppx_deriving_runtime.stringval pp_deforfun_t :
Ppx_deriving_runtime.Format.formatter ->
deforfun_t ->
Ppx_deriving_runtime.unitval show_deforfun_t : deforfun_t -> Ppx_deriving_runtime.stringval pp_declorfun_t :
Ppx_deriving_runtime.Format.formatter ->
declorfun_t ->
Ppx_deriving_runtime.unitval show_declorfun_t : declorfun_t -> Ppx_deriving_runtime.stringval pp_expr_a :
Ppx_deriving_runtime.Format.formatter ->
expr_a ->
Ppx_deriving_runtime.unitval show_expr_a : expr_a -> Ppx_deriving_runtime.stringval pp_command_a :
Ppx_deriving_runtime.Format.formatter ->
command_a ->
Ppx_deriving_runtime.unitval show_command_a : command_a -> Ppx_deriving_runtime.stringval pp_topleveldef_a :
Ppx_deriving_runtime.Format.formatter ->
topleveldef_a ->
Ppx_deriving_runtime.unitval show_topleveldef_a : topleveldef_a -> Ppx_deriving_runtime.stringval pp_deforfun_a :
Ppx_deriving_runtime.Format.formatter ->
deforfun_a ->
Ppx_deriving_runtime.unitval show_deforfun_a : deforfun_a -> Ppx_deriving_runtime.stringval pp_declorfun_a :
Ppx_deriving_runtime.Format.formatter ->
declorfun_a ->
Ppx_deriving_runtime.unitval show_declorfun_a : declorfun_a -> Ppx_deriving_runtime.stringval equal_perktype_partial :
perktype_partial ->
perktype_partial ->
Ppx_deriving_runtime.boolval equal_perkvardesc : perkvardesc -> perkdecl -> Ppx_deriving_runtime.boolval equal_perkfundef : perkfundef -> perkfundef -> Ppx_deriving_runtime.boolval equal_topleveldef_t :
topleveldef_t ->
topleveldef_t ->
Ppx_deriving_runtime.boolval equal_deforfun_t : deforfun_t -> deforfun_t -> Ppx_deriving_runtime.boolval equal_declorfun_t : declorfun_t -> declorfun_t -> Ppx_deriving_runtime.boolval equal_topleveldef_a :
topleveldef_a ->
topleveldef_a ->
Ppx_deriving_runtime.boolval equal_deforfun_a : deforfun_a -> deforfun_a -> Ppx_deriving_runtime.boolval equal_declorfun_a : declorfun_a -> declorfun_a -> Ppx_deriving_runtime.bool