package genspio

  1. Overview
  2. Docs
module Format = Caml.Format
type c_string =
  1. | C_string
type byte_array =
  1. | Byte_Array
module Literal : sig ... end
type raw_command_annotation = ..
type raw_command_annotation +=
  1. | Magic_unit
type fd_redirection = {
  1. take : Common.int t;
  2. redirect_to : [ `Path of c_string t | `Fd of Common.int t ];
}
and _ t =
  1. | Exec : c_string t Common.list -> Common.unit t
  2. | Raw_cmd : (raw_command_annotation Common.option * Common.string) -> 'a t
  3. | Bool_operator : Common.bool t * [ `And | `Or ] * Common.bool t -> Common.bool t
  4. | String_operator : byte_array t * [ `Eq | `Neq ] * byte_array t -> Common.bool t
  5. | Not : Common.bool t -> Common.bool t
  6. | Returns : {
    1. expr : 'a t;
    2. value : Common.int;
    } -> Common.bool t
  7. | No_op : Common.unit t
  8. | If : Common.bool t * Common.unit t * Common.unit t -> Common.unit t
  9. | Seq : Common.unit t Common.list -> Common.unit t
  10. | Literal : 'a Literal.t -> 'a t
  11. | Output_as_string : Common.unit t -> byte_array t
  12. | Redirect_output : Common.unit t * fd_redirection Common.list -> Common.unit t
  13. | Write_output : {
    1. expr : Common.unit t;
    2. stdout : c_string t Common.option;
    3. stderr : c_string t Common.option;
    4. return_value : c_string t Common.option;
    } -> Common.unit t
  14. | Feed : byte_array t * Common.unit t -> Common.unit t
  15. | Pipe : Common.unit t Common.list -> Common.unit t
  16. | While : {
    1. condition : Common.bool t;
    2. body : Common.unit t;
    } -> Common.unit t
  17. | Fail : Common.string -> Common.unit t
  18. | Int_to_string : Common.int t -> c_string t
  19. | String_to_int : c_string t -> Common.int t
  20. | Bool_to_string : Common.bool t -> c_string t
  21. | String_to_bool : c_string t -> Common.bool t
  22. | List_to_string : 'a Common.list t * ('a t -> byte_array t) -> byte_array t
  23. | String_to_list : byte_array t * (byte_array t -> 'a t) -> 'a Common.list t
  24. | List : 'a t Common.list -> 'a Common.list t
  25. | C_string_concat : c_string Common.list t -> c_string t
  26. | Byte_array_concat : byte_array Common.list t -> byte_array t
  27. | List_append : ('a Common.list t * 'a Common.list t) -> 'a Common.list t
  28. | List_iter : 'a Common.list t * ((Common.unit -> 'a t) -> Common.unit t) -> Common.unit t
  29. | Byte_array_to_c_string : byte_array t -> c_string t
  30. | C_string_to_byte_array : c_string t -> byte_array t
  31. | Int_bin_op : Common.int t * [ `Plus | `Minus | `Mult | `Div | `Mod ] * Common.int t -> Common.int t
  32. | Int_bin_comparison : Common.int t * [ `Eq | `Ne | `Gt | `Ge | `Lt | `Le ] * Common.int t -> Common.bool t
  33. | Getenv : c_string t -> c_string t
  34. | Setenv : c_string t * c_string t -> Common.unit t
  35. | Comment : Common.string * 'a t -> 'a t
val pp_in_expr : Format.formatter -> (Format.formatter -> unit -> unit) -> unit
val pp_fun_call : Format.formatter -> string -> (Format.formatter -> 'a -> unit) -> 'a list -> unit
val pp : 'a. Format.formatter -> 'a t -> Common.unit
module Construct : sig ... end