package liquidsoap-lang

  1. Overview
  2. Docs
module Vars : sig ... end

Sets of variables.

module Methods : sig ... end
type custom
type custom_handler = {
  1. name : string;
  2. to_string : custom -> string;
  3. to_json : pos:Pos.t list -> custom -> Json.t;
  4. compare : custom -> custom -> int;
  5. typ : Type.t;
}
type custom_term = {
  1. value : custom;
  2. handler : custom_handler;
}
type 'a term = {
  1. t : Type.t;
  2. term : 'a;
  3. flags : Flags.flags;
  4. methods : 'a term Methods.t;
}
val has_flag : 'a term -> Flags.flag -> bool
type ('a, 'b) func_argument = {
  1. label : string;
  2. as_variable : string option;
  3. default : 'a option;
  4. typ : 'b;
}
type ('a, 'b) func = {
  1. mutable free_vars : Vars.t option;
  2. name : string option;
  3. arguments : ('a, 'b) func_argument list;
  4. body : 'a;
}
type 'a app = 'a * (string * 'a) list
type ('a, 'b) cast = {
  1. cast : 'a;
  2. typ : 'b;
}
type ('a, 'b) common_ast = [
  1. | `Custom of custom_term
  2. | `Tuple of 'a list
  3. | `Null
  4. | `Cast of ('a, 'b) cast
  5. | `Open of 'a * 'a
  6. | `Var of string
  7. | `Seq of 'a * 'a
]
type 'a invoke = {
  1. invoked : 'a;
  2. invoke_default : 'a option;
  3. meth : string;
}
type 'a encoder_params = [ `Anonymous of string | `Encoder of 'a encoder | `Labelled of string * 'a ] list
and 'a encoder = string * 'a encoder_params
type pattern = [
  1. | `PVar of string list
  2. | `PTuple of string list
]
type 'a let_t = {
  1. doc : Doc.Value.t option;
  2. replace : bool;
  3. pat : pattern;
  4. mutable gen : Type.var list;
  5. def : 'a;
  6. body : 'a;
}
type cached_env = {
  1. var_name : int;
  2. var_id : int;
  3. env : Typing.env;
}
type 'a runtime_ast = [
  1. | `Int of int
  2. | `Cache_env of cached_env ref
  3. | `Float of float
  4. | `String of string
  5. | `Bool of bool
  6. | `Let of 'a let_t
  7. | `List of 'a list
  8. | `App of 'a * (string * 'a) list
  9. | `Invoke of 'a invoke
  10. | `Hide of 'a * string list
  11. | `Encoder of 'a encoder
  12. | `Fun of ('a, Type.t) func
]
type t = ast term
and ast = [
  1. | (t, Type.t) common_ast
  2. | t runtime_ast
]
OCaml

Innovation. Community. Security.