`sig
type t = {
p_name : string;
p_args : string list;
p_pid : int;
p_cwd : string;
p_time : float;
p_stdout : string option;
p_stderr : string option;
p_env : string option;
p_info : string option;
p_metadata : (string * string) list;
}
val create :
?info_file:string ->
?env_file:string ->
?allow_stdin:bool ->
?stdout_file:string ->
?stderr_file:string ->
?env:string array ->
?metadata:(string * string) list ->
verbose:bool -> string -> string list -> OpamProcess.t
type result = {
r_code : int;
r_duration : float;
r_info : (string * string) list;
r_stdout : string list;
r_stderr : string list;
r_cleanup : string list;
}
val wait : OpamProcess.t -> OpamProcess.result
val run :
?env:string array ->
?verbose:bool ->
?name:string ->
?metadata:(string * string) list ->
?allow_stdin:bool -> string -> string list -> OpamProcess.result
val is_success : OpamProcess.result -> bool
val is_failure : OpamProcess.result -> bool
val clean_files : OpamProcess.result -> unit
val read_lines : string -> string list
val string_of_result :
?color:OpamGlobals.text_style -> OpamProcess.result -> string
end`