1
0
Fork 0
mirror of https://codeberg.org/icewind/bitbuffer.git synced 2026-06-03 16:44:06 +02:00
Commit graph

186 commits

Author SHA1 Message Date
af93d0917e dont store byte_len separatly
bit_len actually makes a performance difference
2019-07-24 12:53:45 +02:00
211de49a54 dont save pointer to data
this doesn't actually make a performance difference
2019-07-24 12:32:18 +02:00
76bd8f6bb1 remove usafe code from read_bool
safe version is a bit faster than the unsafe version even
2019-07-24 12:24:15 +02:00
613199c089 remove unchecked_utf8 and read_in_unchecked 2019-07-24 12:16:40 +02:00
00e4efec86 'assert' check bounds when reading, fix issue with missing null termination for strings 2019-07-22 18:37:38 +02:00
2ab425356e remove unused use 2019-05-25 23:48:40 +02:00
14c632c939 still advance the stream on utf8 errors
this allows the caller to handle the error and continue reading
2019-05-25 23:46:01 +02:00
51cfcb42de add unchecked version for read_int 2019-05-01 19:45:28 +02:00
7030fffe58 remove simd feature
it barely made any difference
2019-04-27 16:24:35 +02:00
4b95909042 mark Endianness trait as sealed 2019-04-09 20:09:55 +02:00
71823f22ec read for NoZero ints 2019-04-09 20:00:11 +02:00
b723dee23b add trait for skipping types 2019-03-17 18:44:14 +01:00
7b222158f1 rename skip to skipbits 2019-03-17 15:56:42 +01:00
3c1081be9a experimental simd dynamic string reading 2019-03-16 22:06:39 +01:00
da62bb9e9d optimize byte_read for aligned reads 2019-03-16 16:52:44 +01:00
52f830bf7f store pointer separately 2019-03-16 16:40:32 +01:00
031979673e minor dynamic length string performance improvement 2019-03-16 14:56:38 +01:00
18cd799a9b remove unneeded extra bounds check when reading boolean 2019-03-16 13:49:33 +01:00
bb54b1c917 add feature to disable checking strings for valid utf8 2019-03-09 16:59:48 +01:00
1c82edd402 no need to trim dynamic length strings 2019-03-09 16:59:48 +01:00
833213f640 inline for more compile time checks 2019-03-05 17:04:26 +01:00
8342290cc6 inline count check 2019-03-05 16:23:44 +01:00
f54d8748ad some docs 2019-03-05 16:01:55 +01:00
aeec13ceec docs for lazy structs 2019-03-03 21:38:01 +01:00
f96bd78f30 adds structs that allow lazy reading of values 2019-03-03 17:58:39 +01:00
fe95592d57 add traits for determining the number of bits required to read a type 2019-03-03 16:46:47 +01:00
be689d05a4 remove note after stream performance following optimizations 2019-03-03 14:14:12 +01:00
383376f5f0 remove extra bounds check in stream
this is done by
 - making the buffer cloneable
 - allow getting a clone of the buffer with a shorter length
 - use the shorter buffer when reading a sub-stream

that way the bounds checks in the buffer are enough to bounds check sub-streams
2019-03-03 14:06:17 +01:00
984dfdce62 extra comment for reading string bytes 2019-03-03 13:44:57 +01:00
2a2317cbee remove unneeded result 2019-03-03 13:40:38 +01:00
48a0c85d19 format 2019-03-03 02:33:59 +01:00
efcf31d596 faster byte_index
this can overflow the buffer when reading the initial bytes,
but we'll only uses the bytes that are part of the stream
2019-03-03 02:20:55 +01:00
589928921e move bounds check to higher functions 2019-03-03 02:16:03 +01:00
bd012039d0 use unchecked type conversions
this is safe because we already checked their bit size
2019-03-03 01:42:56 +01:00
8fdcd6b4c4 optimize dynamic length string reading 2019-03-03 00:24:03 +01:00
6e36d00c1e implement Debug 2019-02-28 22:34:06 +01:00
29ca7e359e impl ReadSized for Option<T> 2019-02-28 22:23:11 +01:00
ea2640655b fix read_bytes in BE mode 2019-02-28 22:18:38 +01:00
5e7a68a57e impl Clone for BitStream 2019-02-28 21:56:01 +01:00
ccced2c28e implement ReadSized for HashMap 2019-02-28 21:19:53 +01:00
47df4fd310 expand crate level example 2019-02-28 20:33:01 +01:00
a2b0d4ffb4 allow deriving BitReadSized for enums 2019-02-28 20:24:43 +01:00
5ec499f42f allow BitReadSized to be derived 2019-02-28 19:47:12 +01:00
c145761970 more documentation for derive 2019-02-28 19:30:33 +01:00
8ad8d07dd5 allow deriving BitRead for enums 2019-02-28 19:05:23 +01:00
4bf39b874d impl ReadSized for BitStream 2019-02-28 17:04:49 +01:00
af83f5e3b3 rename Read to BitRead to avoid confusion with Read trait from std 2019-02-28 16:01:34 +01:00
a49835d003 add test for reading derived Read
this requires moving the tests into their own folder, so they get tested loaded as a separate crate
2019-02-28 00:16:35 +01:00
b45ca3856e docs for derive 2019-02-28 00:12:24 +01:00
8a19225d61 add derive macro for Read 2019-02-27 23:53:17 +01:00