ocaml-containers/doc/intro.txt

169 lines
2.3 KiB
Text

{1 Containers}
{2 Change Log}
See {{: https://github.com/c-cube/ocaml-containers/blob/master/CHANGELOG.adoc } 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
CCChar
CCError
CCFloat
CCFun
CCFormat
CCHash
CCHashtbl
CCHeap
CCInt
CCInt64
CCIO
CCList
CCMap
CCOpt
CCOrd
CCPair
CCPrint
CCRandom
CCRef
CCResult
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:
CCAllocCache
CCBitField
CCBloom
CCBV
CCCache
CCDeque
CCFQueue
CCFlatHashtbl
CCGraph
CCHashSet
CCHashTrie
CCImmutArray
CCIntMap
CCMixmap
CCMixset
CCMixtbl
CCMultiMap
CCMultiSet
CCPersistentArray
CCPersistentHashtbl
CCRAL
CCRingBuffer
CCTrie
CCWBTree
}
{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
CCSexpM
}
{4 Containers.iter}
Iterators:
{!modules:
CCKList
CCKTree
CCLazy_list}
{4 String}
{!modules:
CCApp_parse
CCKMP
CCLevenshtein
CCParse
}
{4 Bigarrays}
{b deprecated} (use package bigstring instead)
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}
Moved to its own repository.
{4 Lwt}
Moved to its own repository
{4 Others}
{!modules:
CCBlockingQueue
CCLock
CCPool
CCSemaphore
CCThread
CCTimer
}
{2 Index}
{!indexlist}