package core

  1. Overview
  2. Docs
Industrial strength alternative to OCaml's standard library

Install

Dune Dependency

Authors

Maintainers

Sources

v0.17.0.tar.gz
sha256=b0e23c1b1049e48cbbaa596d49927c66e6026506031bd7f5b485af6e9475b4e3

doc/core/Core/Signal/index.html

Module Core.SignalSource

Signal handlers.

Sourcetype t
include Bin_prot.Binable.S with type t := t
include Bin_prot.Binable.S_only_functions with type t := t
Sourceval bin_size_t : t Bin_prot.Size.sizer
Sourceval bin_write_t : t Bin_prot.Write.writer
Sourceval bin_read_t : t Bin_prot.Read.reader
Sourceval __bin_read_t__ : (int -> t) Bin_prot.Read.reader

This function only needs implementation if t exposed to be a polymorphic variant. Despite what the type reads, this does *not* produce a function after reading; instead it takes the constructor tag (int) before reading and reads the rest of the variant t afterwards.

Sourceval bin_shape_t : Bin_prot.Shape.t
include Sexplib0.Sexpable.S with type t := t
Sourceval t_of_sexp : Sexplib0.Sexp.t -> t
Sourceval sexp_of_t : t -> Sexplib0.Sexp.t
include Comparable.S with type t := t
include Base.Comparable.S with type t := t
include Base.Comparisons.S with type t := t
include Base.Comparisons.Infix with type t := t
Sourceval (>=) : t -> t -> bool
Sourceval (<=) : t -> t -> bool
Sourceval (=) : t -> t -> bool
Sourceval (>) : t -> t -> bool
Sourceval (<) : t -> t -> bool
Sourceval (<>) : t -> t -> bool
Sourceval min : t -> t -> t
Sourceval max : t -> t -> t
Sourceval ascending : t -> t -> int

ascending is identical to compare. descending x y = ascending y x. These are intended to be mnemonic when used like List.sort ~compare:ascending and List.sort ~cmp:descending, since they cause the list to be sorted in ascending or descending order, respectively.

Sourceval descending : t -> t -> int
Sourceval between : t -> low:t -> high:t -> bool

between t ~low ~high means low <= t <= high

Sourceval clamp_exn : t -> min:t -> max:t -> t

clamp_exn t ~min ~max returns t', the closest value to t such that between t' ~low:min ~high:max is true.

Raises if not (min <= max).

Sourceval clamp : t -> min:t -> max:t -> t Base.Or_error.t
include Base.Comparator.S with type t := t
Sourcetype comparator_witness
Sourceval validate_lbound : min:t Maybe_bound.t -> t Validate.check
Sourceval validate_ubound : max:t Maybe_bound.t -> t Validate.check
Sourceval validate_bound : min:t Maybe_bound.t -> max:t Maybe_bound.t -> t Validate.check
include Hashable.S with type t := t
include Ppx_compare_lib.Comparable.S with type t := t
Sourceval compare : t -> t -> int
include Ppx_hash_lib.Hashable.S with type t := t
Sourceval hash_fold_t : Base.Hash.state -> t -> Base.Hash.state
Sourceval hashable : t Base.Hashable.t
Sourcemodule Table : Hashtbl.S with type key = t
Sourcemodule Hash_set : Hash_set.S with type elt = t
Sourcemodule Hash_queue : Hash_queue.S with type key = t
include Base.Stringable.S with type t := t
Sourceval of_string : string -> t
Sourceval equal : t -> t -> Base.Bool.t
Sourceval of_caml_int : Base.Int.t -> t

of_caml_int constructs a Signal.t given an OCaml internal signal number. This is only for the use of the Core_unix module.

Sourceval to_caml_int : t -> Base.Int.t
Sourceval to_string : t -> Base.String.t

to_string t returns a human-readable name: "sigabrt", "sigalrm", ...

Sourcetype sys_behavior = [
  1. | `Continue
    (*

    Continue the process if it is currently stopped

    *)
  2. | `Dump_core
    (*

    Terminate the process and dump core

    *)
  3. | `Ignore
    (*

    Ignore the signal

    *)
  4. | `Stop
    (*

    Stop (suspend) the process

    *)
  5. | `Terminate
    (*

    Terminate the process

    *)
]

The behaviour of the system if a signal is received by a process. See include/linux/kernel.h in the Linux kernel source tree (not the file /usr/include/linux/kernel.h).

Sourceval sexp_of_sys_behavior : sys_behavior -> Sexplib0.Sexp.t
Sourceval sys_behavior_of_sexp : Sexplib0.Sexp.t -> sys_behavior
Sourceval __sys_behavior_of_sexp__ : Sexplib0.Sexp.t -> sys_behavior
Sourceval default_sys_behavior : t -> sys_behavior

Queries the default system behavior for a signal.

Sourceval handle_default : t -> Base.Unit.t

handle_default t is set t `Default.

Sourceval ignore : t -> Base.Unit.t

ignore t is set t `Ignore.

Specific signals, along with their default behavior and meaning.

Sourceval abrt : t

Dump_core Abnormal termination

Sourceval alrm : t

Terminate Timeout

Sourceval bus : t

Dump_core Bus error

Sourceval chld : t

Ignore Child process terminated

Sourceval cont : t

Continue Continue

Sourceval fpe : t

Dump_core Arithmetic exception

Sourceval hup : t

Terminate Hangup on controlling terminal

Sourceval ill : t

Dump_core Invalid hardware instruction

Sourceval int : t

Terminate Interactive interrupt (ctrl-C)

Sourceval kill : t

Terminate Termination (cannot be ignored)

Sourceval pipe : t

Terminate Broken pipe

Sourceval poll : t

Terminate Pollable event

Sourceval prof : t

Terminate Profiling interrupt

Sourceval quit : t

Dump_core Interactive termination

Sourceval segv : t

Dump_core Invalid memory reference

Sourceval sys : t

Dump_core Bad argument to routine

Sourceval stop : t

Stop Stop

Sourceval term : t

Terminate Termination

Sourceval trap : t

Dump_core Trace/breakpoint trap

Sourceval tstp : t

Stop Interactive stop

Sourceval ttin : t

Stop Terminal read from background process

Sourceval ttou : t

Stop Terminal write from background process

Sourceval urg : t

Ignore Urgent condition on socket

Sourceval usr1 : t

Terminate Application-defined signal 1

Sourceval usr2 : t

Terminate Application-defined signal 2

Sourceval vtalrm : t

Terminate Timeout in virtual time

Sourceval xcpu : t

Dump_core Timeout in cpu time

Sourceval xfsz : t

Dump_core File size limit exceeded

Sourceval zero : t

Ignore No-op; can be used to test whether the target process exists and the current process has permission to signal it

Sourcetype pid_spec = [
  1. | `Use_Signal_unix
]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourcetype sigprocmask_command = [
  1. | `Use_Signal_unix
]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval can_send_to : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval of_system_int : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval send : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval send_exn : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval send_i : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval sexp_of_pid_spec : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval sigpending : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval sigprocmask : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval sigsuspend : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourceval to_system_int : [ `Use_Signal_unix ]
  • deprecated [since 2021-04] Use [Signal_unix]
Sourcemodule Expert : sig ... end

The Expert module contains functions that novice users should avoid, due to their complexity.

Sourcemodule Stable : sig ... end
OCaml

Innovation. Community. Security.