std.lib.bin
bitseq
added in 3.0
(bitseq obj)converts to a bitseq binary representation
(binary/bitseq (byte-array 49)) => 1 0 0 0 1 1
bitset
added in 3.0
(bitset obj)converts to a bitset binary representation
(-> (binary/bitset “100011”) (bitset-to-bitseq)) => 1 0 0 0 1 1
bitstr
added in 3.0
(bitstr obj)converts to a bitstr binary representation
(binary/bitstr (byte-array 49)) => “100011”
buffer
added in 3.0
(buffer len-or-elems)(buffer len-or-elems {:keys [type direct endian convert wrap], :or {type :byte, direct false, endian +endian-native+, convert true, wrap false}})either creates or wraps a byte buffer of a given type
(buffer 10) => java.nio.ByteBuffer
(buffer 10 {:type :float :convert false}) => java.nio.ByteBuffer
(buffer 10 {:type :float :direct true}) => java.nio.FloatBuffer
buffer-read
added in 3.0
(buffer-read buff)(buffer-read buff arr)reads primitive array from buffer
(def -buf- (buffer 4)) (def -out- (int-array 1))
(do (.put ^java.nio.ByteBuffer -buf- 3 (byte 1)) (buffer-read -buf- -out-) (first -out-)) => 1
buffer-write
added in 3.0
(buffer-write buff arr)writes primitive array to a buffer
(def ^java.nio.ByteBuffer -buf- (buffer 16)) (buffer-write -buf- (int-array 1 2 3 4))
(.get -buf- 3) (.get -buf- 7) (.get -buf- 11) (.get -buf- 15) => 1 2 3 4
byte-buffer
(byte-buffer len-or-elems)(byte-buffer len-or-elems {:keys [type direct endian convert], :as opts})bytes
added in 3.0
(bytes obj)converts to a byte array binary representation
(-> (binary/bytes “100011”) (seq)) => 49
char-buffer
(char-buffer len-or-elems)(char-buffer len-or-elems {:keys [type direct endian convert], :as opts})double-buffer
(double-buffer len-or-elems)(double-buffer len-or-elems {:keys [type direct endian convert], :as opts})float-buffer
(float-buffer len-or-elems)(float-buffer len-or-elems {:keys [type direct endian convert], :as opts})input-stream
added in 3.0
(input-stream obj)creates an inputstream from various representations
(input-stream 9223372036854775808N) => java.io.ByteArrayInputStream
int-buffer
(int-buffer len-or-elems)(int-buffer len-or-elems {:keys [type direct endian convert], :as opts})long-buffer
(long-buffer len-or-elems)(long-buffer len-or-elems {:keys [type direct endian convert], :as opts})number
added in 3.0
(number obj)converts to a number binary representation
(binary/number “100011”) => 49
output-stream
added in 3.0
(output-stream obj)creates an inputstream from various representations
(output-stream (fs/file “project.clj”)) => java.io.FileOutputStream
short-buffer
(short-buffer len-or-elems)(short-buffer len-or-elems {:keys [type direct endian convert], :as opts})