package core_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

core_kernel v0.15.0

Libraries

This package provides the following libraries (via ocamlobjinfo):

weak_pointer

Documentation:

  • Weak_pointer A weak pointer is a pointer to a heap block that does not cause the heap block to remain live during garbage collection.

weak_hashtbl

Documentation:

  • Weak_hashtbl 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).

weak_array

Documentation:

  • Weak_array Module for dealing with weak pointers, i.e., pointers that don't prevent garbage collection of what they point to.

version_util

Documentation:

  • Version_util This module gives access to the same version/build information returned by Command-based executables when called with the -version or -build-info flags by $0 version (-build-info | -version) or $0 (-build-info | -version).

uuid

Documentation:

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

uopt

Documentation:

  • Uopt A Uopt.t is an unboxed option. This module is tricky and potentially unsafe. It should mostly not be used, and when it is, one must keep the Uopt.t inside their module, and not expose them (not even if they are given an abstract type).

unpack_buffer

Documentation:

  • Unpack_buffer A buffer for incremental decoding of an input stream.

univ

Documentation:

  • Univ An extensible "universal" variant type.

tuple_pool

Documentation:

total_map

Documentation:

  • Total_map A map that includes an entry for every possible value of the key type.

timing_wheel

Documentation:

thread_safe_queue

Documentation:

thread_pool_cpu_affinity

Documentation:

sexp_hidden_in_test

Documentation:

rope

Documentation:

  • Rope A rope is a standard data structure that represents a single string as a tree of strings, allowing concatenation to do no work up front. See the README.md file for details and motivating examples.

reversed_list

Documentation:

pooled_hashtbl

Documentation:

  • Pooled_hashtbl A polymorphic hashtbl that uses Pool to avoid allocation.

pairing_heap

Documentation:

nonempty_list

Documentation:

moption

Documentation:

  • Moption A Moption is a mutable option, like 'a option ref, but with a more efficient implementation; in particular, set_some does not allocate.

limiter

Documentation:

  • Limiter Implements a token-bucket-based throttling rate limiter. This module is useful for limiting network clients to a sensible query rate, or in any case where you have jobs that consume a scarce but replenishable resource.

iobuf

Documentation:

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

int_set

Documentation:

  • Int_set An implementation of compressed integer sets using lists of integer ranges. Operations such as adding and membership are O(n) where n is the number of contiguous ranges in the set. For data that is mostly serial, n should remain very small.

hash_heap

Documentation:

  • Hash_heap A hash-heap is a combination of a heap and a hashtable that supports constant time lookup, and log(n) time removal and replacement of elements in addition to the normal heap operations.

force_once

Documentation:

  • Force_once A "force_once" is a thunk that can only be forced once. Subsequent forces will raise an exception.

flags

Documentation:

fheap

Documentation:

enum

Documentation:

composition_infix

Documentation:

caml_unix

Documentation:

caml_threads

Documentation:

bus

Documentation:

  • Bus A Bus is a publisher/subscriber system within the memory space of the program. A bus has a mutable set of subscribers, which can be modified using subscribe_exn and unsubscribe.

bounded_int_table

Documentation:

  • Bounded_int_table A Bounded_int_table is a table whose keys can be mapped to integers in a fixed range, 0 ... num_keys - 1, where num_keys is specified at table-creation time. The purpose of Bounded_int_table is to be faster than Hashtbl in situations where one is willing to pay a space cost for the speed.

binary_packing

Documentation:

  • Binary_packing Packs and unpacks various types of integers into and from strings.

balanced_reducer

Documentation:

  • Balanced_reducer A Balanced_reducer.t stores a mutable fixed-length sequence of optional values, and incrementally maintains the result of folding an associative operation (reduce) over the sequence as its elements change.

ansi_kernel

Documentation:

core_kernel

Documentation: