ocaml-containers/doc/intro.txt

165 lines
2.3 KiB
Text

{1 Containers}
{2 Change Log}
See {{: https://github.com/c-cube/ocaml-containers/blob/master/CHANGELOG.md } this file}
{2 License}
This code is free, under the BSD license.
The logo (media/logo.png) is
CC-SA3 {{:http://en.wikipedia.org/wiki/File:Hypercube.svg} wikimedia}
{2 Contents}
The design is mostly centered around polymorphism rather than functors. Such
structures comprise (some modules in misc/, some other in core/):
the core library, containers, now depends on
{{:https://github.com/mjambon/cppo}cppo} and base-bytes (provided
by ocamlfind).
{4 Core Modules (extension of the standard library)}
{!modules:
CCArray
CCBool
CCError
CCFloat
CCFun
CCFormat
CCHash
CCHashtbl
CCHeap
CCInt
CCIO
CCList
CCMap
CCOpt
CCOrd
CCPair
CCPrint
CCRandom
CCRef
CCSet
CCString
CCVector
Containers
}
The module {!Containers} contains aliases to most other modules defined
in {i containers core}, and mixins
such as:
{[ module List = struct
include List
include CCList
end
]}
{4 Containers.data}
Various data structures.
{!modules:
CCBitField
CCBV
CCCache
CCFQueue
CCFlatHashtbl
CCHashSet
CCIntMap
CCMixmap
CCMixset
CCMixtbl
CCMultiMap
CCMultiSet
CCPersistentArray
CCPersistentHashtbl
CCRingBuffer
CCTrie
}
{4 Containers.io}
{b deprecated} use {!CCIO} directly from the set of core modules.
{4 Containers.unix}
Helpers that depend on {!Unix}, e.g. to spawn sub-processes.
{!modules: CCUnix}
{4 Containers.sexp}
A small S-expression library. The interface is relatively unstable, but
the main type ([CCSexp.t]) isn't.
{!modules: CCSexp CCSexpStream CCSexpM}
{4 Containers.iter}
Iterators:
{!modules: CCKList CCKTree}
{4 String}
{!modules: Levenshtein KMP}
{4 Bigarrays}
Use bigarrays to hold large strings and map files directly into memory.
{!modules: CCBigstring CCArray1}
{4 Advanced}
This module is qualified with [Containers_advanced]. It
requires {{:https://github.com/c-cube/sequence} Sequence}.
{!modules: CCLinq CCCat CCBatch}
{4 Misc}
This list is not necessarily up-to-date.
{!modules:
AbsSet
Automaton
Bij
CSM
Hashset
LazyGraph
PHashtbl
PrintBox
RAL
RoseTree
SmallSet
UnionFind
Univ
}
{4 Lwt}
Utils for Lwt (including experimental stuff)
{!modules:
Lwt_actor
Lwt_klist
Lwt_pipe
}
{4 Others}
{!modules:
CCFuture
CCLock
CCSemaphore
}
{2 Index}
{!indexlist}