package sequoia

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
include module type of struct include M.Expr end
type !'a t = 'a Sequoia_expr.t = ..
type !'a cast = 'a Sequoia_expr.cast = ..
module Base = M.Expr.Base
type handover = Sequoia_expr.handover = {
  1. expr : 'a. Sequoia_common.build_step -> 'a t -> Sequoia_common.build_step;
  2. cast : 'b. 'b cast -> string;
}
val build_function : placeholder:(int -> string) -> handover:handover -> Sequoia_common.build_step -> string -> 'a t list -> string -> Sequoia_common.build_step
val string_of_cast : ?handover:('a cast -> string) -> 'a cast -> string
type ('a, !'b) expr = 'b t
module Vector = M.Expr.Vector
include module type of struct include Base end
type M.Expr.cast +=
  1. | Bool : bool M.Expr.cast
  2. | Int : int M.Expr.cast
  3. | Float : float M.Expr.cast
  4. | String : string M.Expr.cast
  5. | Blob : bytes M.Expr.cast
type M.Expr.t +=
  1. | Lit : 'a Sequoia_lit.t -> 'a M.Expr.t
  2. | Eq : 'a0 M.Expr.t * 'a0 M.Expr.t -> bool M.Expr.t
  3. | Neq : 'a1 M.Expr.t * 'a1 M.Expr.t -> bool M.Expr.t
  4. | Gt : 'a2 M.Expr.t * 'a2 M.Expr.t -> bool M.Expr.t
  5. | Ge : 'a3 M.Expr.t * 'a3 M.Expr.t -> bool M.Expr.t
  6. | Lt : 'a4 M.Expr.t * 'a4 M.Expr.t -> bool M.Expr.t
  7. | Le : 'a5 M.Expr.t * 'a5 M.Expr.t -> bool M.Expr.t
  8. | And : bool M.Expr.t * bool M.Expr.t -> bool M.Expr.t
  9. | Or : bool M.Expr.t * bool M.Expr.t -> bool M.Expr.t
  10. | Like : string M.Expr.t * string -> bool M.Expr.t
  11. | Not_like : string M.Expr.t * string -> bool M.Expr.t
  12. | In : 'a6 M.Expr.t * 'a6 M.Expr.t list -> bool M.Expr.t
  13. | Not_in : 'a7 M.Expr.t * 'a7 M.Expr.t list -> bool M.Expr.t
  14. | Is_not_null : 'a8 option M.Expr.t -> bool M.Expr.t
  15. | Is_null : 'a9 option M.Expr.t -> bool M.Expr.t
  16. | IAdd : int M.Expr.t * int M.Expr.t -> int M.Expr.t
  17. | ISub : int M.Expr.t * int M.Expr.t -> int M.Expr.t
  18. | IMul : int M.Expr.t * int M.Expr.t -> int M.Expr.t
  19. | IDiv : int M.Expr.t * int M.Expr.t -> int M.Expr.t
  20. | FAdd : float M.Expr.t * float M.Expr.t -> float M.Expr.t
  21. | FSub : float M.Expr.t * float M.Expr.t -> float M.Expr.t
  22. | FMul : float M.Expr.t * float M.Expr.t -> float M.Expr.t
  23. | FDiv : float M.Expr.t * float M.Expr.t -> float M.Expr.t
  24. | LShift : int M.Expr.t * int -> int M.Expr.t
  25. | RShift : int M.Expr.t * int -> int M.Expr.t
  26. | Cast : 'a10 M.Expr.t * 'b M.Expr.cast -> 'b M.Expr.t
val (=) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (=%) : ('a -> string M.Expr.t) -> string -> 'a -> bool M.Expr.t
val (<>) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (<>%) : ('a -> string M.Expr.t) -> string -> 'a -> bool M.Expr.t
val (>) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (>=) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (<) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (<=) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val (&&) : ('a -> bool M.Expr.t) -> ('a -> bool M.Expr.t) -> 'a -> bool M.Expr.t
val (||) : ('a -> bool M.Expr.t) -> ('a -> bool M.Expr.t) -> 'a -> bool M.Expr.t
val (+) : ('a -> int M.Expr.t) -> ('a -> int M.Expr.t) -> 'a -> int M.Expr.t
val (-) : ('a -> int M.Expr.t) -> ('a -> int M.Expr.t) -> 'a -> int M.Expr.t
val (*) : ('a -> int M.Expr.t) -> ('a -> int M.Expr.t) -> 'a -> int M.Expr.t
val (/) : ('a -> int M.Expr.t) -> ('a -> int M.Expr.t) -> 'a -> int M.Expr.t
val (+.) : ('a -> float M.Expr.t) -> ('a -> float M.Expr.t) -> 'a -> float M.Expr.t
val (-.) : ('a -> float M.Expr.t) -> ('a -> float M.Expr.t) -> 'a -> float M.Expr.t
val (*.) : ('a -> float M.Expr.t) -> ('a -> float M.Expr.t) -> 'a -> float M.Expr.t
val (/.) : ('a -> float M.Expr.t) -> ('a -> float M.Expr.t) -> 'a -> float M.Expr.t
val (<<) : ('a -> int M.Expr.t) -> int -> 'a -> int M.Expr.t
val (>>) : ('a -> int M.Expr.t) -> int -> 'a -> int M.Expr.t
val (=?) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) list -> 'a -> bool M.Expr.t
val (<>?) : ('a -> 'b M.Expr.t) -> ('a -> 'b M.Expr.t) list -> 'a -> bool M.Expr.t
val is_null : ('a -> 'b option M.Expr.t) -> 'a -> bool M.Expr.t
val is_not_null : ('a -> 'b option M.Expr.t) -> 'a -> bool M.Expr.t
val bool : bool -> 'a -> bool M.Expr.t
val int : int -> 'a -> int M.Expr.t
val float : float -> 'a -> float M.Expr.t
val string : string -> 'a -> string M.Expr.t
val blob : bytes -> 'a -> bytes M.Expr.t
val as_bool : ('a -> 'b M.Expr.t) -> 'a -> bool M.Expr.t
val as_int : ('a -> 'b M.Expr.t) -> 'a -> int M.Expr.t
val as_float : ('a -> 'b M.Expr.t) -> 'a -> float M.Expr.t
val as_string : ('a -> 'b M.Expr.t) -> 'a -> string M.Expr.t
val as_blob : ('a -> 'b M.Expr.t) -> 'a -> bytes M.Expr.t
module Null = Base.Null
type t +=
  1. | Abs : int t -> int t
  2. | Changes : int t
  3. | Char : int t list -> string t
  4. | Coalesce : 'a0 t list -> 'a0 t
  5. | Glob : string * string t -> bool t
  6. | Hex : bytes t -> string t
  7. | Ifnull : 'a1 t * 'a1 t -> 'a1 t
  8. | Instr : string t * string -> int t
  9. | Length : string t -> int t
  10. | Likelihood : bool t * float -> bool t
  11. | Likely : bool t -> bool t
  12. | Lower : string t -> string t
  13. | Ltrim : string t * string option -> string t
  14. | Max : 'a2 t list -> 'a2 t
  15. | Min : 'a3 t list -> 'a3 t
  16. | Nullif : 'a4 t * 'a4 t -> 'a4 t
  17. | Random : int t
  18. | Randomblob : int t -> bytes t
  19. | Replace : string t * string * string -> string t
  20. | Round : float t * int option -> float t
  21. | Rtrim : string t * string option -> string t
  22. | Substr : string t * int * int option -> string t
  23. | Trim : string t * string option -> string t
  24. | Typeof : 'a5 t -> string t
  25. | Unicode : string t -> int t
  26. | Unlikely : bool t -> bool t
  27. | Upper : string t -> string t
  28. | Zeroblob : int t -> bytes t
  29. | Date : string t * string list -> string t
  30. | Time : string t * string list -> string t
  31. | Julianday : string t * string list -> string t
  32. | Strftime : string * string t * string list -> string t
  33. | Avg : float t -> float t
  34. | Count : 'a6 t option -> int t
  35. | Group_concat : string t * string option -> string t
  36. | MaxAgg : 'a7 t -> 'a7 t
  37. | MinAgg : 'a8 t -> 'a8 t
  38. | Sum : int t -> int t
  39. | Total : int t -> int t
val changes : unit -> 'a -> int t
val char : ('a -> int t list) -> 'a -> string t
val coalesce : ('a -> 'b t list) -> 'a -> 'b t
val glob : string -> ('a -> string t) -> 'a -> bool t
val hex : ('a -> bytes t) -> 'a -> string t
val ifnull : ('a -> 'b t) -> ('a -> 'b t) -> 'a -> 'b t
val instr : ('a -> string t) -> string -> 'a -> int t
val length : ('a -> string t) -> 'a -> int t
val likelihood : ('a -> bool t) -> float -> 'a -> bool t
val likely : ('a -> bool t) -> 'a -> bool t
val lower : ('a -> string t) -> 'a -> string t
val ltrim : ('a -> string t) -> ?chars:string -> 'a -> string t
val max : ('a -> 'b t list) -> 'a -> 'b t
val min : ('a -> 'b t list) -> 'a -> 'b t
val nullif : ('a -> 'b t) -> ('a -> 'b t) -> 'a -> 'b t
val random : unit -> 'a -> int t
val randomblob : ('a -> int t) -> 'a -> bytes t
val replace : ('a -> string t) -> string -> string -> 'a -> string t
val round : ('a -> float t) -> ?digits:int -> 'a -> float t
val rtrim : ('a -> string t) -> ?chars:string -> 'a -> string t
val substr : ('a -> string t) -> int -> ?len:int -> 'a -> string t
val trim : ('a -> string t) -> ?chars:string -> 'a -> string t
val typeof : ('a -> 'b t) -> 'a -> string t
val unicode : ('a -> string t) -> 'a -> int t
val unlikely : ('a -> bool t) -> 'a -> bool t
val upper : ('a -> string t) -> 'a -> string t
val zeroblob : ('a -> int t) -> 'a -> bytes t
val date : ('a -> string t) -> string list -> 'a -> string t
val time : ('a -> string t) -> string list -> 'a -> string t
val julianday : ('a -> string t) -> string list -> 'a -> string t
val strftime : string -> ('a -> string t) -> string list -> 'a -> string t
val avg : ('a -> float t) -> 'a -> float t
val count : ('a -> 'b t option) -> 'a -> int t
val group_concat : ('a -> string t) -> ?sep:string -> 'a -> string t
val max_agg : ('a -> 'b t) -> 'a -> 'b t
val min_agg : ('a -> 'b t) -> 'a -> 'b t
val sum : ('a -> int t) -> 'a -> int t
val total : ('a -> int t) -> 'a -> int t
val build : 'a. handover:handover -> Sequoia_common.build_step -> 'a t -> Sequoia_common.build_step