Encodes and decodes data for storage. Clojure implementation
Encodes and decodes data for storage. Clojure implementation
Encodes and decodes data for storage. ClojureScript implementation
Encodes and decodes data for storage. ClojureScript implementation
(comparable-map m)
Converts a map into a vector of the equivalent data, so it may be compared
Converts a map into a vector of the equivalent data, so it may be compared
(concat-bytes bas)
Takes multiple byte arrays and returns an array with all of the bytes concattenated
Takes multiple byte arrays and returns an array with all of the bytes concattenated
The set of types that can be encoded in a constant number of bytes. Used for homogenous sequences.
The set of types that can be encoded in a constant number of bytes. Used for homogenous sequences.
(encapsulate-long l)
Encapsulates a long value. If the long is too large to be encapsulated, then return nil.
Encapsulates a long value. If the long is too large to be encapsulated, then return nil.
(encapsulate-sstr s type-mask)
Encapsulates a short string. If the string cannot be encapsulated, then return nil.
Encapsulates a short string. If the string cannot be encapsulated, then return nil.
(body this)
Returns a byte array containing the encoded data
Returns a byte array containing the encoded data
(comparable this)
Returns a version of this data that can be compared
Returns a version of this data that can be compared
(encapsulate-id this)
Returns an ID that encapsulates the type
Returns an ID that encapsulates the type
(header this len)
Returns a byte array containing a header
Returns a byte array containing a header
(general-header t len)
Takes a type number and a length, and encodes to the general header style. Lengths 0-255 [2r1110tttt length] Lengths 256-32k [2r1111tttt (low-byte length) (high-byte length)] Lengths 32k-2G [2r1111tttt (byte0 length) (byte1 length) (byte2 length) (byte3 length)]
Takes a type number and a length, and encodes to the general header style. Lengths 0-255 [2r1110tttt length] Lengths 256-32k [2r1111tttt (low-byte length) (high-byte length)] Lengths 32k-2G [2r1111tttt (byte0 length) (byte1 length) (byte2 length) (byte3 length)]
(map-body this)
Common function for encoding the body of the various map types
Common function for encoding the body of the various map types
(map-header this len)
Common function for encoding the header of the various map types
Common function for encoding the header of the various map types
Number of nanoseconds in a millisecond
Number of nanoseconds in a millisecond
(n-byte-number n x)
Returns an array of n bytes representing the number x. Must be initialized for the current thread.
Returns an array of n bytes representing the number x. Must be initialized for the current thread.
(num-bytes n)
Determines the number of bytes that can hold a value. From 2-4 tests, this preferences small numbers.
Determines the number of bytes that can hold a value. From 2-4 tests, this preferences small numbers.
A map of types to encoding functions
A map of types to encoding functions
(str-constructor? c)
Tests if a class has a constructor that takes a string
Tests if a class has a constructor that takes a string
(to-bytes o)
Returns a tuple of byte arrays, representing the header and the body
Returns a tuple of byte arrays, representing the header and the body
(to-counted-bytes o)
Returns a tuple of byte arrays, representing the header and the body
Returns a tuple of byte arrays, representing the header and the body
(type-code o)
Returns a code number for an object
Returns a code number for an object
(type-compare a b)
Provides a regular comparison of objects of potentially different types
Provides a regular comparison of objects of potentially different types
A single element byte array containing 0
A single element byte array containing 0
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close