sig
val exec : string list -> unit Language.t
val call : string Language.t list -> unit Language.t
val ( &&& ) : bool Language.t -> bool Language.t -> bool Language.t
val ( ||| ) : bool Language.t -> bool Language.t -> bool Language.t
val ( =$= ) : string Language.t -> string Language.t -> bool Language.t
val ( <$> ) : string Language.t -> string Language.t -> bool Language.t
val returns : 'a Language.t -> value:int -> bool Language.t
val succeeds : 'a Language.t -> bool Language.t
val nop : unit Language.t
val if_then_else :
bool Language.t -> unit Language.t -> unit Language.t -> unit Language.t
val if_then : bool Language.t -> unit Language.t -> unit Language.t
val seq : unit Language.t list -> unit Language.t
val not : bool Language.t -> bool Language.t
val with_signal :
?signal_name:string ->
catch:unit Language.t ->
(unit Language.t -> unit Language.t) -> unit Language.t
val fail : unit Language.t
val make_switch :
(bool Language.t * unit Language.t) list ->
default:unit Language.t -> unit Language.t
val write_output :
?stdout:string Language.t ->
?stderr:string Language.t ->
?return_value:string Language.t -> unit Language.t -> unit Language.t
val write_stdout :
path:string Language.t -> unit Language.t -> unit Language.t
val to_fd : int Language.t -> int Language.t -> Language.fd_redirection
val to_file :
int Language.t -> string Language.t -> Language.fd_redirection
val with_redirections :
unit Language.t -> Language.fd_redirection list -> unit Language.t
val literal : 'a Language.Literal.t -> 'a Language.t
val string : string -> string Language.t
val int : int -> int Language.t
val bool : bool -> bool Language.t
val file_exists : string Language.t -> bool Language.t
val getenv : string Language.t -> string Language.t
val setenv : var:string Language.t -> string Language.t -> unit Language.t
val output_as_string : unit Language.t -> string Language.t
val feed : string:string Language.t -> unit Language.t -> unit Language.t
val ( >> ) : string Language.t -> unit Language.t -> unit Language.t
val pipe : unit Language.t list -> unit Language.t
val ( ||> ) : unit Language.t -> unit Language.t -> unit Language.t
val loop_while : bool Language.t -> body:unit Language.t -> unit Language.t
val list : 'a Language.t list -> 'a list Language.t
val string_concat_list : string list Language.t -> string Language.t
val list_append :
'a list Language.t -> 'a list Language.t -> 'a list Language.t
val list_iter :
'a list Language.t ->
f:((unit -> 'a Language.t) -> unit Language.t) -> unit Language.t
val list_to_string :
'a list Language.t ->
f:('a Language.t -> string Language.t) -> string Language.t
val list_of_string :
string Language.t ->
f:(string Language.t -> 'a Language.t) -> 'a list Language.t
module Bool :
sig
val of_string : string Language.t -> bool Language.t
val to_string : bool Language.t -> string Language.t
end
module Integer :
sig
val to_string : int Language.t -> string Language.t
val of_string : string Language.t -> int Language.t
val bin_op :
int Language.t ->
[ `Div | `Minus | `Mod | `Mult | `Plus ] ->
int Language.t -> int Language.t
val add : int Language.t -> int Language.t -> int Language.t
val ( + ) : int Language.t -> int Language.t -> int Language.t
val sub : int Language.t -> int Language.t -> int Language.t
val ( - ) : int Language.t -> int Language.t -> int Language.t
val mul : int Language.t -> int Language.t -> int Language.t
val ( * ) : int Language.t -> int Language.t -> int Language.t
val div : int Language.t -> int Language.t -> int Language.t
val ( / ) : int Language.t -> int Language.t -> int Language.t
val modulo : int Language.t -> int Language.t -> int Language.t
val ( mod ) : int Language.t -> int Language.t -> int Language.t
val cmp :
[ `Eq | `Ge | `Gt | `Le | `Lt | `Ne ] ->
int Language.t -> int Language.t -> bool Language.t
val eq : int Language.t -> int Language.t -> bool Language.t
val ne : int Language.t -> int Language.t -> bool Language.t
val lt : int Language.t -> int Language.t -> bool Language.t
val le : int Language.t -> int Language.t -> bool Language.t
val ge : int Language.t -> int Language.t -> bool Language.t
val gt : int Language.t -> int Language.t -> bool Language.t
val ( = ) : int Language.t -> int Language.t -> bool Language.t
val ( <> ) : int Language.t -> int Language.t -> bool Language.t
val ( < ) : int Language.t -> int Language.t -> bool Language.t
val ( <= ) : int Language.t -> int Language.t -> bool Language.t
val ( >= ) : int Language.t -> int Language.t -> bool Language.t
val ( > ) : int Language.t -> int Language.t -> bool Language.t
end
module Magic : sig val unit : string -> unit Language.t end
end