Liquidsoap_lang_ast.Runtime_termThe AST skeleton shared by both representations.
module Vars : sig ... endSets of variables.
module Methods : sig ... endval hash_fold_custom :
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
custom ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.stateval hash_custom :
custom ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.hash_valuetype custom_handler = {name : string;to_string : custom -> string;to_json : pos:Liquidsoap_lang_prelude.Pos.t list ->
custom ->
Liquidsoap_lang_data.Json.t;compare : custom -> custom -> int;typ : Liquidsoap_lang_types.Type.t;}val hash_fold_custom_handler :
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
custom_handler ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.stateval hash_custom_handler :
custom_handler ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.hash_valueval hash_fold_custom_term :
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
custom_term ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.stateval hash_custom_term :
custom_term ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.hash_valuetype 'a term = {t : Liquidsoap_lang_types.Type.t;term : 'a;flags : Liquidsoap_lang_data.Flags.flags;methods : 'a term Methods.t;}val has_flag : 'a term -> Liquidsoap_lang_data.Flags.flag -> booltype ('a, 'b) func_argument = {label : string;as_variable : string option;default : 'a option;typ : 'b;pos : Liquidsoap_lang_prelude.Pos.t option;}val hash_fold_func_argument :
'a 'b. (Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'a ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
(Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'b ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
('a, 'b) func_argument ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.statetype ('a, 'b) func = {mutable free_vars : Vars.t option;name : string option;arguments : ('a, 'b) func_argument list;body : 'a;}val hash_fold_cast :
'a 'b. (Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'a ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
(Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'b ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
('a, 'b) cast ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.statetype ('a, 'b) common_ast = [ | `Custom of custom_term| `Tuple of 'a list| `Null| `Cast of ('a, 'b) cast| `Open of 'a * 'a| `Var of string| `Seq of 'a * 'a ]val hash_fold_common_ast :
'a 'b. (Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'a ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
(Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
'b ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state) ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.state ->
('a, 'b) common_ast ->
Liquidsoap_lang_prelude.Term_hash.Ppx_hash_lib.Std.Hash.statetype 'a encoder_params =
[ `Anonymous of string | `Encoder of 'a encoder | `Labelled of string * 'a ]
listand 'a encoder = string * 'a encoder_paramstype 'a let_t = {doc : Liquidsoap_lang_data.Doc.Value.t option;replace : bool;pat : pattern;mutable gen : Liquidsoap_lang_types.Type.var list;def : 'a;body : 'a;}type 'a runtime_ast = [ | `Int of int| `Cache_env of cached_env Stdlib.ref| `Float of float| `String of string| `Bool of bool| `Let of 'a let_t| `List of 'a list| `App of 'a * (string * 'a) list| `Invoke of 'a invoke| `Hide of 'a * string list| `Encoder of 'a encoder| `Fun of ('a, Liquidsoap_lang_types.Type.t) func ]