Yalo_plugin_CAMELOT.Astutilstype exp = Yalo_plugin_ocaml.V1.OCAML_AST.expressionval is_id : Yalo_plugin_ocaml.V1.OCAML_AST.expression -> string -> boolval (=~) : exp -> string -> boolval is_construct : exp -> string -> boolval (=|) : exp -> string -> boolval skip_seq_let :
Yalo_plugin_ocaml.V1.OCAML_AST.expression ->
Yalo_plugin_ocaml.V1.OCAML_AST.expressionval get_branches :
Yalo_plugin_ocaml.V1.OCAML_AST.expression ->
(Yalo_plugin_ocaml.V1.OCAML_AST.expression
* Yalo_plugin_ocaml.V1.OCAML_AST.expression)
optionval is_list_lit : exp -> boolval is_bool_lit : exp -> boolval is_exp_const : exp -> boolval is_exp_id : exp -> boolval are_idents_same :
Yalo_plugin_ocaml.V1.OCAML_AST.expression ->
Yalo_plugin_ocaml.V1.OCAML_AST.expression ->
boolval is_singleton_list : exp -> boolval is_option_lit : exp -> boolval is_some_lit : exp -> boolval is_pat_constr : Yalo_plugin_ocaml.V1.OCAML_AST.pattern -> string -> boolval is_pat_tuple : Yalo_plugin_ocaml.V1.OCAML_AST.pattern -> boolval is_pat_record : Yalo_plugin_ocaml.V1.OCAML_AST.pattern -> boolval is_case_constr : Yalo_plugin_ocaml.V1.OCAML_AST.pattern -> string -> boolval is_case_const : Yalo_plugin_ocaml.V1.OCAML_AST.pattern -> boolval ident_of_let : Yalo_plugin_ocaml.V1.OCAML_AST.value_binding -> stringval binding_of_lcase : Yalo_plugin_ocaml.V1.OCAML_AST.case -> stringval uses_func_recursively_list :
Yalo_plugin_ocaml.V1.OCAML_AST.case ->
func_name:string ->
string ->
boolval uses_func_recursively_list_any :
Yalo_plugin_ocaml.V1.OCAML_AST.case ->
func_name:string ->
string ->
boolHas to be recursive, since functions of multiple arguments are curried That's why we interleave skipping sequencing and lets with calls to body_of_fun, til we reach a `fixpoint`.
val body_of_fun :
Yalo_plugin_ocaml.V1.OCAML_AST.expression ->
Yalo_plugin_ocaml.V1.OCAML_AST.expressionval uses_func_recursively_seq :
Yalo_plugin_ocaml.V1.OCAML_AST.case ->
func_name:string ->
string ->
boolval smash_boolean_tree :
Yalo_plugin_ocaml.V1.OCAML_AST.expression_desc ->
Yalo_plugin_ocaml.V1.OCAML_AST.expression_desc listSmash a tree of || and && exps into a list of the expressions contained within.
val e_eq_any : Yalo_plugin_ocaml.V1.OCAML_AST.expression_desc list -> boolReturns true if any two expressions in the provided list are equal.