Legend:
Library
Module
Module type
Parameter
Class
Class type
Process is used to create "subprocesses" or "child processes" of the Emacs process, which is their "parent process". A subprocess of Emacs may be "synchronous" or "asynchronous", depending on how it is created. When you create a synchronous subprocess, the program waits for the subprocess to terminate before continuing execution. When you create an asynchronous subprocess, it can run in parallel with Emacs. This kind of subprocess is represented within Emacs by a Process.t. Programs can use this object to communicate with the subprocess or to control it. For example, you can send signals, obtain status information, receive output from the process, or send input to it.
eq t1 t2 = Value.eq (to_value t1) (to_value t2), i.e. eq checks whether the Emacs values underlying t1 and t2 are physically equal. This is different than phys_equal t1 t2, because we don't always wrap eq Emacs values in phys_equal OCaml values. I.e. phys_equal t1 t2 implies eq t1 t2, but not the converse.
val call_exn :
?input:Call.Input.t->?working_directory:Working_directory.t->?strip_whitespace:bool ->string ->string list->
string
call_exn runs call_result_exn, strips whitespace from stdout+stderr if strip_whitespace is true, and returns the resulting string, raising on nonzero exit.
val call_expect_no_output_exn :
?input:Call.Input.t->?working_directory:Working_directory.t->?strip_whitespace:bool ->string ->string list->
unit
call_expect_no_output_exn runs call_result_exn and raises if the command output is not the empty string or on nonzero exit.