Module Ecaml__.Process
type t
= Ecaml__.Process0.t
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
include Ecaml__.Import.Value.Subtype with type t := t
type value
type t
= private value
We expose
private value
for free identity conversions when the value is nested in some covariant type, e.g.(symbols : Symbol.t list :> Value.t list)
rather thanList.map symbols ~f:Symbol.to_value
.
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
val eq : t -> t -> bool
eq t1 t2 = Value.eq (to_value t1) (to_value t2)
, i.e.eq
checks whether the Emacs values underlyingt1
andt2
are physically equal. This is different thanphys_equal t1 t2
, because we don't always wrapeq
Emacs values inphys_equal
OCaml values. I.e.phys_equal t1 t2
implieseq t1 t2
, but not the converse.
val is_in_subtype : value -> bool
include Ecaml_value__.Valueable0.S with type t := t
val of_value_exn : Ecaml_value__.Value0.t -> t
val to_value : t -> Ecaml_value__.Value0.t
val type_ : t type_
val t : t type_
val buffer : t -> Ecaml__.Import.Buffer.t option
(describe-function 'process-buffer)
val command : t -> string list option
(describe-function 'process-command)
val name : t -> string
(describe-function 'process-name)
val pid : t -> Core_kernel.Pid.t option
(describe-function 'process-id)
val query_on_exit : t -> bool
(describe-function 'process-query-on-exit-flag)
module Status : sig ... end
module Exit_status : sig ... end
val exit_status : t -> Exit_status.t
(describe-function 'process-exit-status)
module Exited : sig ... end
val exited : t -> Exited.t Async_kernel.Deferred.t
val is_alive : t -> bool
(describe-function 'process-live-p)
val mark : t -> Ecaml.Marker.t
(describe-function 'process-mark)
val set_query_on_exit : t -> bool -> unit
set_query_on_exit t
specifies whether Emacs should query the user about killingt
when it exits.(describe-function 'set-process-query-on-exit-flag)
.
val all_emacs_children : unit -> t list
(describe-function 'process-list)
val get_property : t -> Ecaml.Symbol.t -> Ecaml__.Import.Value.t option
(describe-function 'process-get)
val set_property : t -> Ecaml.Symbol.t -> Ecaml__.Import.Value.t -> unit
(describe-function 'process-put)
val create : string -> string list -> name:string -> ?buffer:Ecaml__.Import.Buffer.t -> unit -> t
(Info-goto-node "(elisp)Asynchronous Processes")
(describe-function 'start-process)
val find_by_name : string -> t option
(describe-function 'get-process)
(Info-goto-node "(elisp)Process Information")
module Call : sig ... end
val call_result_exn : ?input:Call.Input.t -> ?output:Call.Output.t -> ?redisplay_on_output:bool -> ?working_directory:Ecaml.Working_directory.t -> string -> string list -> Call.Result.t
(Info-goto-node "(elisp)Synchronous Processes")
(describe-function 'call-process)
val call_region_exn : ?input:Call.Region_input.t -> ?output:Call.Output.t -> ?redisplay_on_output:bool -> ?working_directory:Ecaml.Working_directory.t -> string -> string list -> Call.Result.t
(Info-goto-node "(elisp)Synchronous Processes")
(describe-function 'call-process-region)
val call_exn : ?input:Call.Input.t -> ?working_directory:Ecaml.Working_directory.t -> ?strip_whitespace:bool -> ?verbose_exn:bool -> string -> string list -> string
call_exn
runscall_result_exn
, strips whitespace from stdout+stderr ifstrip_whitespace
istrue
, and returns the resulting string, raising on nonzero exit.
val call_expect_no_output_exn : ?input:Call.Input.t -> ?working_directory:Ecaml.Working_directory.t -> ?strip_whitespace:bool -> ?verbose_exn:bool -> string -> string list -> unit
call_expect_no_output_exn
runscall_result_exn
and raises if the command output is not the empty string or on nonzero exit.
val shell_command_result : ?input:Call.Input.t -> ?output:Call.Output.t -> ?redisplay_on_output:bool -> ?working_directory:Ecaml.Working_directory.t -> string -> Call.Result.t
val shell_command_exn : ?input:Call.Input.t -> ?working_directory:Ecaml.Working_directory.t -> ?verbose_exn:bool -> string -> string
shell_command_exn command
runscommand
in a subshell, strips whitespace from stdout+stderr, and returns the resulting string, raising on nonzero exit.
val shell_command_expect_no_output_exn : ?input:Call.Input.t -> ?working_directory:Ecaml.Working_directory.t -> ?verbose_exn:bool -> string -> unit
val create_unix_network_process : unit -> filter:(t -> Ecaml.Text.t -> unit) -> name:string -> socket_path:string -> t
(Info-goto-node "(elisp)Network Servers")
(describe-function 'make-network-process)
The
t
returned bycreate_unix_network_process
represents listening on the socket. Thet
passed tofilter
represents a specific connection accepted on the socket.
val kill : t -> unit
(Info-goto-node "(elisp)Deleting Processes")
(describe-function 'delete-process)
.
val extend_sentinel : Core_kernel.Source_code_position.t -> t -> (unit, 'a) Ecaml.Defun.Returns.t -> sentinel:(event:string -> 'a) -> unit
(Info-goto-node "(elisp)Sentinels")
Register
sentinel
as a process sentinel for the specified process.sentinel
runs after any other processes sentinels set for that process.