sig
type 'a t constraint 'a = 'b -> 'c
type 'a elem = 'a LineShtream.elem
type initial = LineShtream.initial
type 'a shtream = 'a LineShtream.t
type 'a coshtream = 'a LineShtream.co_t
type procref = Channel.procref
type text = Fitting.initial Fitting.elem
val ( -| ) :
('a -> 'b) Fitting.t -> ('b -> 'c) Fitting.t -> ('a -> 'c) Fitting.t
val pipe :
('a -> 'b) Fitting.t -> ('b -> 'c) Fitting.t -> ('a -> 'c) Fitting.t
val from_file : string -> ('a -> Fitting.text) Fitting.t
val from_null : ('a -> Fitting.text) Fitting.t
val from_gen : Channel.dup_in_source -> ('a -> Fitting.text) Fitting.t
val from_shtream : 'a Fitting.shtream -> ('b -> 'a) Fitting.t
val to_file :
?clobber:Channel.clobber_spec ->
string -> ('a Fitting.elem -> 'b) Fitting.t
val to_null : ('a Fitting.elem -> 'b) Fitting.t
val to_stderr : ('a Fitting.elem -> 'b) Fitting.t
val to_gen : Channel.dup_out_source -> ('a Fitting.elem -> 'b) Fitting.t
val to_coshtream : 'a Fitting.coshtream -> ('a -> 'b) Fitting.t
val command : string -> ('a Fitting.elem -> Fitting.text) Fitting.t
val program :
?path:bool ->
string ->
?argv0:string ->
string list -> ('a Fitting.elem -> Fitting.text) Fitting.t
val thunk : (unit -> unit) -> ('a Fitting.elem -> Fitting.text) Fitting.t
val sed : ('a -> 'b) -> ('a -> 'b) Fitting.t
val grep : ('a -> bool) -> ('a -> 'a) Fitting.t
val trans :
('a Fitting.shtream -> 'b Fitting.shtream) -> ('a -> 'b) Fitting.t
val sed_string : (string -> 'a) -> ('b Fitting.elem -> 'a) Fitting.t
val grep_string :
(string -> bool) -> ('a Fitting.elem -> 'a Fitting.elem) Fitting.t
val ( /</ ) :
(Fitting.text -> 'a) Fitting.t ->
Channel.dup_spec -> (Fitting.text -> 'a) Fitting.t
val redirect_in :
Channel.dup_spec ->
(Fitting.text -> 'a) Fitting.t -> (Fitting.text -> 'a) Fitting.t
val ( />/ ) :
('a -> 'b Fitting.elem) Fitting.t ->
Channel.dup_spec -> ('a -> 'b Fitting.elem) Fitting.t
val redirect_out :
Channel.dup_spec ->
('a -> 'b Fitting.elem) Fitting.t -> ('a -> 'b Fitting.elem) Fitting.t
val ( ^>>= ) :
('a -> 'b) Fitting.t ->
(Proc.status -> ('a -> 'b) Fitting.t) -> ('a -> 'b) Fitting.t
val seq :
('a -> 'b) Fitting.t ->
(Proc.status -> ('a -> 'b) Fitting.t) -> ('a -> 'b) Fitting.t
val ( ^>> ) :
('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t
val ( &&^ ) :
('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t
val ( ||^ ) :
('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t -> ('a -> 'b) Fitting.t
val ( ~>> ) : ('a -> 'b) Fitting.t list -> ('a -> 'b) Fitting.t
val ( ~&& ) : ('a -> 'b) Fitting.t list -> ('a -> 'b) Fitting.t
val ( ~|| ) : ('a -> 'b) Fitting.t list -> ('a -> 'b) Fitting.t
val commands : string list -> (Fitting.text -> Fitting.text) Fitting.t
val yield : Proc.status -> ('a -> 'b) Fitting.t
val caml : (unit -> ('a -> 'b) Fitting.t) -> ('a -> 'b) Fitting.t
val ( ^&= ) :
(Fitting.text -> 'a Fitting.elem) Fitting.t ->
(Proc.t -> ('b -> 'c) Fitting.t) -> ('b -> 'c) Fitting.t
val par :
(Fitting.text -> 'a Fitting.elem) Fitting.t ->
(Proc.t -> ('b -> 'c) Fitting.t) -> ('b -> 'c) Fitting.t
val ( ^& ) :
(Fitting.text -> 'a Fitting.elem) Fitting.t ->
('b -> 'c) Fitting.t -> ('b -> 'c) Fitting.t
val run_source : (Fitting.text -> 'a) Fitting.t -> 'a Fitting.shtream
val run_sink : ('a -> 'b Fitting.elem) Fitting.t -> 'a Fitting.coshtream
val run_list : (Fitting.text -> 'a) Fitting.t -> 'a list
val run_shtream :
('a -> 'b) Fitting.t -> 'a Fitting.shtream -> 'b Fitting.shtream
val run_in :
?procref:Fitting.procref ->
(Fitting.text -> 'a Fitting.elem) Fitting.t -> Pervasives.in_channel
val run_out :
?procref:Fitting.procref ->
(Fitting.text -> 'a Fitting.elem) Fitting.t -> Pervasives.out_channel
val run_backquote :
?procref:Fitting.procref ->
(Fitting.text -> 'a Fitting.elem) Fitting.t -> string
val run_bg : (Fitting.text -> 'a Fitting.elem) Fitting.t -> Proc.t
val run : (Fitting.text -> 'a Fitting.elem) Fitting.t -> Proc.status
val string_of_elem : 'a Fitting.elem -> string
val elem_of_string : string -> Fitting.text
val int_of_elem : 'a Fitting.elem -> int
val elem_of_int : int -> Fitting.text
val char_of_elem : 'a Fitting.elem -> char
val elem_of_char : char -> Fitting.text
val float_of_elem : 'a Fitting.elem -> float
val elem_of_float : float -> Fitting.text
val bool_of_elem : 'a Fitting.elem -> bool
val elem_of_bool : bool -> Fitting.text
module type SHTREAM = AnyShtream.ANYSHTREAM
module type FITTING =
sig
type 'a t constraint 'a = 'b -> 'c
type 'a elem
type initial
type 'a shtream
type 'a coshtream
type procref = Channel.procref
type text = Fitting.FITTING.initial Fitting.FITTING.elem
val ( -| ) :
('a -> 'b) Fitting.FITTING.t ->
('b -> 'c) Fitting.FITTING.t -> ('a -> 'c) Fitting.FITTING.t
val pipe :
('a -> 'b) Fitting.FITTING.t ->
('b -> 'c) Fitting.FITTING.t -> ('a -> 'c) Fitting.FITTING.t
val from_file :
string -> ('a -> Fitting.FITTING.text) Fitting.FITTING.t
val from_null : ('a -> Fitting.FITTING.text) Fitting.FITTING.t
val from_gen :
Channel.dup_in_source ->
('a -> Fitting.FITTING.text) Fitting.FITTING.t
val from_shtream :
'a Fitting.FITTING.shtream -> ('b -> 'a) Fitting.FITTING.t
val to_file :
?clobber:Channel.clobber_spec ->
string -> ('a Fitting.FITTING.elem -> 'b) Fitting.FITTING.t
val to_null : ('a Fitting.FITTING.elem -> 'b) Fitting.FITTING.t
val to_stderr : ('a Fitting.FITTING.elem -> 'b) Fitting.FITTING.t
val to_gen :
Channel.dup_out_source ->
('a Fitting.FITTING.elem -> 'b) Fitting.FITTING.t
val to_coshtream :
'a Fitting.FITTING.coshtream -> ('a -> 'b) Fitting.FITTING.t
val command :
string ->
('a Fitting.FITTING.elem -> Fitting.FITTING.text) Fitting.FITTING.t
val program :
?path:bool ->
string ->
?argv0:string ->
string list ->
('a Fitting.FITTING.elem -> Fitting.FITTING.text) Fitting.FITTING.t
val thunk :
(unit -> unit) ->
('a Fitting.FITTING.elem -> Fitting.FITTING.text) Fitting.FITTING.t
val sed : ('a -> 'b) -> ('a -> 'b) Fitting.FITTING.t
val grep : ('a -> bool) -> ('a -> 'a) Fitting.FITTING.t
val trans :
('a Fitting.FITTING.shtream -> 'b Fitting.FITTING.shtream) ->
('a -> 'b) Fitting.FITTING.t
val sed_string :
(string -> 'a) -> ('b Fitting.FITTING.elem -> 'a) Fitting.FITTING.t
val grep_string :
(string -> bool) ->
('a Fitting.FITTING.elem -> 'a Fitting.FITTING.elem)
Fitting.FITTING.t
val ( /</ ) :
(Fitting.FITTING.text -> 'a) Fitting.FITTING.t ->
Channel.dup_spec -> (Fitting.FITTING.text -> 'a) Fitting.FITTING.t
val redirect_in :
Channel.dup_spec ->
(Fitting.FITTING.text -> 'a) Fitting.FITTING.t ->
(Fitting.FITTING.text -> 'a) Fitting.FITTING.t
val ( />/ ) :
('a -> 'b Fitting.FITTING.elem) Fitting.FITTING.t ->
Channel.dup_spec -> ('a -> 'b Fitting.FITTING.elem) Fitting.FITTING.t
val redirect_out :
Channel.dup_spec ->
('a -> 'b Fitting.FITTING.elem) Fitting.FITTING.t ->
('a -> 'b Fitting.FITTING.elem) Fitting.FITTING.t
val ( ^>>= ) :
('a -> 'b) Fitting.FITTING.t ->
(Proc.status -> ('a -> 'b) Fitting.FITTING.t) ->
('a -> 'b) Fitting.FITTING.t
val seq :
('a -> 'b) Fitting.FITTING.t ->
(Proc.status -> ('a -> 'b) Fitting.FITTING.t) ->
('a -> 'b) Fitting.FITTING.t
val ( ^>> ) :
('a -> 'b) Fitting.FITTING.t ->
('a -> 'b) Fitting.FITTING.t -> ('a -> 'b) Fitting.FITTING.t
val ( &&^ ) :
('a -> 'b) Fitting.FITTING.t ->
('a -> 'b) Fitting.FITTING.t -> ('a -> 'b) Fitting.FITTING.t
val ( ||^ ) :
('a -> 'b) Fitting.FITTING.t ->
('a -> 'b) Fitting.FITTING.t -> ('a -> 'b) Fitting.FITTING.t
val ( ~>> ) :
('a -> 'b) Fitting.FITTING.t list -> ('a -> 'b) Fitting.FITTING.t
val ( ~&& ) :
('a -> 'b) Fitting.FITTING.t list -> ('a -> 'b) Fitting.FITTING.t
val ( ~|| ) :
('a -> 'b) Fitting.FITTING.t list -> ('a -> 'b) Fitting.FITTING.t
val commands :
string list ->
(Fitting.FITTING.text -> Fitting.FITTING.text) Fitting.FITTING.t
val yield : Proc.status -> ('a -> 'b) Fitting.FITTING.t
val caml :
(unit -> ('a -> 'b) Fitting.FITTING.t) ->
('a -> 'b) Fitting.FITTING.t
val ( ^&= ) :
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
(Proc.t -> ('b -> 'c) Fitting.FITTING.t) ->
('b -> 'c) Fitting.FITTING.t
val par :
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
(Proc.t -> ('b -> 'c) Fitting.FITTING.t) ->
('b -> 'c) Fitting.FITTING.t
val ( ^& ) :
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
('b -> 'c) Fitting.FITTING.t -> ('b -> 'c) Fitting.FITTING.t
val run_source :
(Fitting.FITTING.text -> 'a) Fitting.FITTING.t ->
'a Fitting.FITTING.shtream
val run_sink :
('a -> 'b Fitting.FITTING.elem) Fitting.FITTING.t ->
'a Fitting.FITTING.coshtream
val run_list :
(Fitting.FITTING.text -> 'a) Fitting.FITTING.t -> 'a list
val run_shtream :
('a -> 'b) Fitting.FITTING.t ->
'a Fitting.FITTING.shtream -> 'b Fitting.FITTING.shtream
val run_in :
?procref:Fitting.FITTING.procref ->
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
Pervasives.in_channel
val run_out :
?procref:Fitting.FITTING.procref ->
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
Pervasives.out_channel
val run_backquote :
?procref:Fitting.FITTING.procref ->
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
string
val run_bg :
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
Proc.t
val run :
(Fitting.FITTING.text -> 'a Fitting.FITTING.elem) Fitting.FITTING.t ->
Proc.status
val string_of_elem : 'a Fitting.FITTING.elem -> string
val elem_of_string : string -> Fitting.FITTING.text
val int_of_elem : 'a Fitting.FITTING.elem -> int
val elem_of_int : int -> Fitting.FITTING.text
val char_of_elem : 'a Fitting.FITTING.elem -> char
val elem_of_char : char -> Fitting.FITTING.text
val float_of_elem : 'a Fitting.FITTING.elem -> float
val elem_of_float : float -> Fitting.FITTING.text
val bool_of_elem : 'a Fitting.FITTING.elem -> bool
val elem_of_bool : bool -> Fitting.FITTING.text
end
module Make :
functor (Shtream : SHTREAM) ->
sig
type 'a t constraint 'a = 'b -> 'c
type 'a elem = 'a Shtream.elem
type initial = Shtream.initial
type 'a shtream = 'a Shtream.t
type 'a coshtream = 'a Shtream.co_t
type procref = Channel.procref
type text = initial elem
val ( -| ) : ('a -> 'b) t -> ('b -> 'c) t -> ('a -> 'c) t
val pipe : ('a -> 'b) t -> ('b -> 'c) t -> ('a -> 'c) t
val from_file : string -> ('a -> text) t
val from_null : ('a -> text) t
val from_gen : Channel.dup_in_source -> ('a -> text) t
val from_shtream : 'a shtream -> ('b -> 'a) t
val to_file :
?clobber:Channel.clobber_spec -> string -> ('a elem -> 'b) t
val to_null : ('a elem -> 'b) t
val to_stderr : ('a elem -> 'b) t
val to_gen : Channel.dup_out_source -> ('a elem -> 'b) t
val to_coshtream : 'a coshtream -> ('a -> 'b) t
val command : string -> ('a elem -> text) t
val program :
?path:bool ->
string -> ?argv0:string -> string list -> ('a elem -> text) t
val thunk : (unit -> unit) -> ('a elem -> text) t
val sed : ('a -> 'b) -> ('a -> 'b) t
val grep : ('a -> bool) -> ('a -> 'a) t
val trans : ('a shtream -> 'b shtream) -> ('a -> 'b) t
val sed_string : (string -> 'a) -> ('b elem -> 'a) t
val grep_string : (string -> bool) -> ('a elem -> 'a elem) t
val ( /</ ) : (text -> 'a) t -> Channel.dup_spec -> (text -> 'a) t
val redirect_in :
Channel.dup_spec -> (text -> 'a) t -> (text -> 'a) t
val ( />/ ) :
('a -> 'b elem) t -> Channel.dup_spec -> ('a -> 'b elem) t
val redirect_out :
Channel.dup_spec -> ('a -> 'b elem) t -> ('a -> 'b elem) t
val ( ^>>= ) :
('a -> 'b) t -> (Proc.status -> ('a -> 'b) t) -> ('a -> 'b) t
val seq :
('a -> 'b) t -> (Proc.status -> ('a -> 'b) t) -> ('a -> 'b) t
val ( ^>> ) : ('a -> 'b) t -> ('a -> 'b) t -> ('a -> 'b) t
val ( &&^ ) : ('a -> 'b) t -> ('a -> 'b) t -> ('a -> 'b) t
val ( ||^ ) : ('a -> 'b) t -> ('a -> 'b) t -> ('a -> 'b) t
val ( ~>> ) : ('a -> 'b) t list -> ('a -> 'b) t
val ( ~&& ) : ('a -> 'b) t list -> ('a -> 'b) t
val ( ~|| ) : ('a -> 'b) t list -> ('a -> 'b) t
val commands : string list -> (text -> text) t
val yield : Proc.status -> ('a -> 'b) t
val caml : (unit -> ('a -> 'b) t) -> ('a -> 'b) t
val ( ^&= ) :
(text -> 'a elem) t -> (Proc.t -> ('b -> 'c) t) -> ('b -> 'c) t
val par :
(text -> 'a elem) t -> (Proc.t -> ('b -> 'c) t) -> ('b -> 'c) t
val ( ^& ) : (text -> 'a elem) t -> ('b -> 'c) t -> ('b -> 'c) t
val run_source : (text -> 'a) t -> 'a shtream
val run_sink : ('a -> 'b elem) t -> 'a coshtream
val run_list : (text -> 'a) t -> 'a list
val run_shtream : ('a -> 'b) t -> 'a shtream -> 'b shtream
val run_in : ?procref:procref -> (text -> 'a elem) t -> in_channel
val run_out : ?procref:procref -> (text -> 'a elem) t -> out_channel
val run_backquote : ?procref:procref -> (text -> 'a elem) t -> string
val run_bg : (text -> 'a elem) t -> Proc.t
val run : (text -> 'a elem) t -> Proc.status
val string_of_elem : 'a elem -> string
val elem_of_string : string -> text
val int_of_elem : 'a elem -> int
val elem_of_int : int -> text
val char_of_elem : 'a elem -> char
val elem_of_char : char -> text
val float_of_elem : 'a elem -> float
val elem_of_float : float -> text
val bool_of_elem : 'a elem -> bool
val elem_of_bool : bool -> text
end
end