Carl Lerche
b10992a5e8
Refactor RingBuf
2016-09-25 22:40:39 -07:00
Carl Lerche
b1dc10e907
Rename & refactor ByteBuf -> SliceBuf
2016-09-25 22:40:35 -07:00
Carl Lerche
98e0d954b5
Reorganize crate
2016-09-23 12:05:32 -07:00
Carl Lerche
4105901244
Rename RingBuf::new -> with_capacity
2016-09-20 13:42:24 -07:00
Nikolay Kim
1f188b5628
fix dropping front block in BlockBuf
2016-09-13 15:30:44 -07:00
Stefan Bühler and Carl Lerche
f693e038d9
Fix buffer overflow in Sink for Vec<u8>
...
Fixes #46
2016-09-03 13:25:40 -07:00
Carl Lerche
046c864543
Integrate with byteorder
2016-08-31 12:07:44 -07:00
Carl Lerche
38abb8074b
Create ByteBuf with MutByteBuf::with_capacity
2016-08-23 14:22:39 -07:00
Carl Lerche
fbebb19a02
Simplify allocation strategy for now
...
Not having `unsafe_no_drop_flag` caused some weirdness with optimizing buffers
and bytes. For now, remeove it.
2016-08-11 01:36:16 -07:00
Carl Lerche
04e0ac75e2
Huge overhaul of bytes
...
* Get rid of `ByteStr` trait
* `Bytes` is not a concrete type
* Add `BlockBuf`
* Delete lots of cruft
* Performance work
2016-08-10 15:45:31 -07:00
Carl Lerche
16b4266c3c
Improve Buf/MutBuf impl for Cursor
2016-08-05 22:19:37 -07:00
Carl Lerche
b6a424d892
Get rid of BufError
2016-08-05 21:54:29 -07:00
Carl Lerche
6529f6392a
Remove traits mod
2016-08-05 21:42:07 -07:00
Carl Lerche
41b722dee8
Allow checking out AppendBufs from Pool
2016-07-23 09:54:18 -07:00
Carl Lerche
d650404bb8
Add an AppendBuf
2016-07-23 09:49:59 -07:00
Carl Lerche
1c2234f7fe
Initial stab at a buffer pool
2016-07-20 22:47:41 +02:00
Carl Lerche
270d2e2844
Freshen up buf API
2016-06-08 14:48:49 -07:00
Nandor Kracser and Carl Lerche
a76dd8ed0e
Add clear method to RingBuf
2015-09-25 09:45:55 -07:00
Carl Lerche
3d0a4adc30
Fix tests
2015-09-25 09:36:32 -07:00
Carl Lerche
531c77654c
Merge branch 'v0.2.x'
2015-08-10 10:14:32 -07:00
Carl Lerche
ed087be853
Provide Take decorator that limits Buf size
2015-07-28 12:51:24 -07:00
Carl Lerche
b4abd1431a
Mark MutBuf::mut_buf as unsafe
...
`MutBuf::mut_buf` allows access to uninitialized memory.
2015-07-26 11:02:46 -07:00
Carl Lerche
296cac263c
Implement buffer traits on Vec<u8>, &[u8], Cursor
2015-07-24 16:52:19 -07:00
Paul Cavallaro
23ad12f842
Add bytes() method to MutByteBuf to allow reading of data already written
...
without necessitating flipping to ByteBuf.
2015-07-17 22:22:58 -04:00
Jamie Turner
7b63fa034f
Add resume() method to ByteBuf that restores prior write position.
2015-07-02 17:19:43 -07:00
James Bielman
d2b4cc3870
RingBuf: Fix edge cases with mark/reset.
...
- This fixes #25 and fixes #26 .
- Move the mark state into a 'Mark' enum.
- Store both 'pos' and 'len' inside the mark because both
are needed to distinguish between full/empty states. This
fixes 'reset' setting 'len' to zero when the buffer was
full when marked.
- Clear the mark when the length of the marked input range
exceeds the capacity. Fixes bugs with the mark not being
cleared correctly on writes.
- Add test cases.
2015-06-02 23:51:57 -07:00
Florian Hartwig
d25958970e
+ isn't implemented on Vec any more
2015-05-09 17:58:23 +02:00
Dan Burkert
4d645c7f53
add mark/reset feature to ByteBuf and RingBuf
2015-04-11 15:18:32 -07:00
Florian Hartwig
40f1d1aa77
Add some basic tests for RingBuf
2015-04-09 23:18:16 +02:00
Carl Lerche
29e5dc72bb
Get compiling on Rust 1.0 beta
2015-04-03 23:45:34 -07:00
Victor Berger
635274752b
Update for new blanket impl rules.
2015-04-03 22:46:10 +02:00
Carl Lerche
f0ce42d9c3
Track Rust nightlies
2015-04-01 20:09:20 -07:00
Carl Lerche
8f526231d8
Track Rust nightlies
2015-03-25 12:44:38 -07:00
Carl Lerche
83680dda27
Implement Source for std::io::Read
2015-03-24 22:10:29 -07:00
Carl Lerche
bd2c643e17
Flesh out ToBytes, ByteStr::concat, and ByteStr eq
2015-03-23 23:22:21 -07:00
Carl Lerche
a87dea0bd4
Track Rust master
2015-03-23 17:12:39 -07:00
Florian Hartwig
3f9b7f6d46
Fix errors and warnings with current rust nightly
2015-03-19 16:23:29 +01:00
Carl Lerche
7444721d98
Implement Debug for Bytes
2015-02-17 12:40:15 -08:00
Carl Lerche
3c4ebb85f0
WIP - Implement abstractions for working with bytes
2015-02-09 21:24:53 -08:00