The SerDe interface is used to move data in and out of the KV-Store.
Most of these are usable for both key and value SerDes.
For SerDes like big-int-serde
, big-decimal-serde
, nippy-serde
, and string-serde
it is recommended to use caution when serializing keys as there is a 511 byte limit
in the underlying LMDB embedded database.
To ease concerns a 511 byte limit supports most of the hashing algorithms easily:
The SerDe interface is used to move data in and out of the KV-Store. Most of these are usable for both key and value SerDes. For SerDes like `big-int-serde`, `big-decimal-serde`, `nippy-serde`, and `string-serde` it is recommended to use caution when serializing keys as there is a 511 byte limit in the underlying LMDB embedded database. To ease concerns a 511 byte limit supports most of the hashing algorithms easily: * MD5 - 16 bytes * RIPEMD - 20 bytes * SHA256 - 32 bytes * SHA384 - 48 bytes * SHA512 - 64 bytes * WHIRLPOOL - 64 bytes * xxhash - 8 bytes by default but a 128-bit xxhash is 16 bytes
(big-decimal-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle large, high-precision fractions represented as java.math.BigDecimal
.
Returns:
A [[clj.intracel.api.protocols/KVSerde]] that can process java.math.BigDecimal
s
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle large, high-precision fractions represented as `java.math.BigDecimal`. Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process `java.math.BigDecimal`s
(big-int-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle large integers represented as java.math.BigInteger
.
Returns:
A [[clj.intracel.api.protocols/KVSerde]] that can process java.math.BigIntegers
s
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle large integers represented as `java.math.BigInteger`. Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process `java.math.BigIntegers`s
(byte-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a single 8-bit signed integer.
Min: -128
Max: 127
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a single 8-bit integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a single 8-bit signed integer. Min: -128 Max: 127 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a single 8-bit integer.
(double-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 64-bit signed integer.
Min: -9223372036854775808
Max: 9223372036854775807
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 64-bit signed integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 64-bit signed integer. Min: -9223372036854775808 Max: 9223372036854775807 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 64-bit signed integer.
(float-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 32-bit signed floating point number.
Min: 1.4E-45
Max: 3.4028235E38
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 32-bit signed floating point number.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 32-bit signed floating point number. Min: 1.4E-45 Max: 3.4028235E38 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 32-bit signed floating point number.
(int-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 32-bit signed integer.
Min: -2147483648
Max: 2147483647
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 32-bit signed integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 32-bit signed integer. Min: -2147483648 Max: 2147483647 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 32-bit signed integer.
(long-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 64-bit signed integer.
Min: -9223372036854775808
Max: 9223372036854775807
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 64-bit signed integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 64-bit signed integer. Min: -9223372036854775808 Max: 9223372036854775807 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 64-bit signed integer.
(nippy-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle EDN formatted data and convert it to/from nippy.
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process valid EDN formatted data.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle EDN formatted data and convert it to/from nippy. Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process valid EDN formatted data.
(short-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 16-bit signed integer.
Min: -32768
Max: 32767
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 16-bit signed integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 16-bit signed integer. Min: -32768 Max: 32767 Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 16-bit signed integer.
(string-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a Clojure string.
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a Clojure string.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a Clojure string. Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a Clojure string.
(u128-int-serde)
Creates a clj.intracel.api.interface.protocols/KVSerde
that can handle a 128-bit unsigned integer.
Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 128-bit unsigned integer.
Creates a [[clj.intracel.api.interface.protocols/KVSerde]] that can handle a 128-bit unsigned integer. Returns: A [[clj.intracel.api.protocols/KVSerde]] that can process a 128-bit unsigned integer.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close