package liquidsoap-lang

  1. Overview
  2. Docs

Helper functions for the parser.

module Term = Parsed_term
type arglist = Term.fun_arg list
type pos = Parsed_term.pos
type lexer_let_decoration = [
  1. | `Eval
  2. | `Json_parse
  3. | `None
  4. | `Recursive
  5. | `Replaces
  6. | `Yaml_parse
  7. | `Xml_parse
  8. | `Sqlite_row
  9. | `Sqlite_query
]
type explicit_binding = [
  1. | `Def of Term._let
  2. | `Let of Term._let
]
type binding = [
  1. | explicit_binding
  2. | `Binding of Term._let
]
type let_opt_el = string * Term.t
val clear_comments : unit -> unit
val append_comment : pos:pos -> string -> unit
val attach_comments : Term.t -> unit
val mk_let : pos:pos -> [< `Binding of Term._let | `Def of Term._let | `Let of Term._let ] -> Term.t -> Term.t
val let_args : decoration:Term.let_decoration -> pat:Term.pattern -> ?arglist:arglist -> def:Term.t -> ?cast:Term.type_annotation -> unit -> Term._let
val let_decoration_of_lexer_let_decoration : lexer_let_decoration -> Term.let_decoration
val mk_json_assoc_object_ty : pos:pos -> (Parsed_term.type_annotation * string * string * string) -> Term.type_annotation
val mk : ?comments:(pos * Parsed_term.comment) list -> pos:pos -> Term.parsed_ast -> Term.t
val mk_try : ?ensure:Term.t -> ?handler:Term.t -> ?errors_list:Term.t -> variable:string -> body:Term.t -> pos:pos -> unit -> Term.t
val mk_fun : pos:pos -> arglist -> Term.t -> Term.t
val mk_encoder : pos:pos -> string -> Term.encoder_params -> Term.t
val args_of_json_parse : pos:pos -> (string * 'a) list -> (string * 'a) list
val render_string_ref : (pos:pos -> (char * string) -> string) ref
val render_string : pos:pos -> (char * string) -> string
OCaml

Innovation. Community. Security.