Module Core

Core is an extension of Core_kernel. The unmodified libraries can be found there.

module Bigbuffer : sig ... end
module Bigstring : sig ... end

String type based on Bigarray, for use in I/O and C-bindings

module Bigstring_marshal : sig ... end

Utility functions for marshalling to and from bigstring

module Caml : sig ... end
module Command : sig ... end

Purely functional command line parsing.

module Condition = Core__.Core_condition
module Core_stable = Core__.Stable
module Crc : sig ... end

Crc functions

module Daemon : sig ... end

This module provides support for daemonizing a process. It provides flexibility as to where the standard file descriptors (stdin, stdout and stderr) are connected after daemonization has occurred.

module Date = Core__.Core_date
module Filename = Core__.Core_filename
module Interval : sig ... end

Module for simple closed intervals over arbitrary types. Used by calling the Make functor with a type that satisfies Base.Comparable (for correctly ordering elements).

module Interval_intf : sig ... end
module Iobuf : sig ... end

A non-moving (in the GC sense) contiguous range of bytes, useful for I/O operations.

module Iobuf_debug : sig ... end
module Iobuf_intf : sig ... end

no_seek and seek are phantom types used in a similar manner to read and read_write.

module Linux_ext : sig ... end
module Lock_file : sig ... end

Mutual exclusion between processes using flock and lockf. A file is considered locked only if both of these mechanisms work.

module Mac_address : sig ... end

A 48-bit MAC address.

module Md5 : sig ... end
module Digest = Md5
module Mutex = Core__.Core_mutex
module Nano_mutex : sig ... end

A nano-mutex is a lightweight mutex that can be used only within a single OCaml runtime.

module Piecewise_linear : sig ... end

Piece-wise linear interpolation from float-like types to float.

module Process_env : sig ... end

Utility functions for dealing with the environment.

module Schedule_v4_deprecated : sig ... end

Deprecated version of Schedule, which defines a type for schedules like "every 5 min after the hour" or "every weekday at 3pm."

module Schedule_v5 : sig ... end

Latest version of Schedule, which defines a type for schedules like "every 5 min after the hour" or "every weekday at 3pm." More expressive than V4, for example by adding the Zoned_between variant, which behaves like Between but allows expressing the start and end times in different zones.

module Signal : sig ... end
module Squeue : sig ... end

Thread-safe queue module, using locks.

module Sys = Core__.Core_sys
module Thread = Core__.Core_thread
module Time_common : sig ... end

This module type is basically the intersection of the module types of Core.Time and Core.Time_ns. We verify that that relation holds in

module Time_ns = Core__.Core_time_ns
module Time_stamp_counter : sig ... end

High-performance timing.

module Timing_wheel_float : sig ... end

A timing wheel in which time is represented by Time.t, i.e. a floating-point number of seconds since the epoch. This is a wrapper around Timing_wheel_ns, which is preferable to use due to its better performance and avoiding issues due to floating point.

module Unix = Core__.Core_unix
module User_and_group : sig ... end

A pair of unix username and primary unix group.

module Uuid : sig ... end

Implements universally unique identifiers based on version 3 of the UUID specification. Identifier generation is thread safe, and fast.

module Version_util : sig ... end
module Weak_hashtbl : sig ... end

A hashtable that keeps a weak pointer to each key's data and uses a finalizer to detect when the data is no longer referenced (by any non-weak pointers).

val (^/) : string ‑> string ‑> string