James Munns
620ee9a510
Allow for manual opt-out of CAS features
2019-10-02 17:09:05 +02:00
Jorge Aparicio
cda0c20b16
v0.5.0
...
closes #105
2019-07-12 01:20:18 +02:00
Jorge Aparicio
94db64d8a6
add multiple-producer multiple-consumer lock-free queue
2019-05-22 18:58:58 +02:00
Jorge Aparicio
e609aed1dd
pre-release
2019-05-21 13:46:11 +02:00
Jorge Aparicio
fd1f701120
drop the maybe_uninit feature gate
2019-05-21 12:43:19 +02:00
Jorge Aparicio
fc4054571f
drop const-fn feature; provide const constructors on near stable (1.36)
2019-05-06 17:13:15 +02:00
Jorge Aparicio
4932eb27df
use core::mem::MaybeUninit; drop min-const-fn and smaller-atomics features
2019-05-03 14:00:28 +02:00
Jorge Aparicio
ef399ab44f
add lock-free, interrupt-safe memory pool
...
this adds the stable subset of the `lifo::Pool` [1] API
[1]: https://github.com/japaric/lifo
2019-04-22 20:49:34 +02:00
Jorge Aparicio
1cfc847892
document and guarantee MSRV
2019-02-12 19:40:51 +01:00
Artem Vorotnikov
d551759884
Serde support
2019-02-06 18:41:54 +03:00
Jorge Aparicio
82fded5155
remove no longer needded integer_atomics feature
2019-02-04 19:23:47 +01:00
Georg Brandl
69379fbccc
Fix remaining RingBuffer reference
2018-10-31 16:06:01 +01:00
Jorge Aparicio
b47d8d8a5d
drop no longer required feature gate
2018-10-19 19:49:20 +02:00
Jorge Aparicio
64a76132da
use integer_atomics feature instead of core_intrinsics
2018-10-19 19:48:07 +02:00
Jorge Aparicio
f83329cbf4
rename RingBuffer to spsc::Queue
2018-10-19 19:28:57 +02:00
Jorge Aparicio
991e4146e1
remove Uxx from the public interface
2018-10-19 14:13:10 +02:00
Jorge Aparicio
63ae080138
move more feature gates behind a Cargo feature
2018-07-13 19:01:48 -05:00
Jorge Aparicio
ddc6842342
RingBuffer: put smaller atomic indices behind a Cargo feature
...
this let us drop the core_intrinsics feature gate
2018-07-13 18:51:06 -05:00
Felix Stegmaier
40133fea0f
Merge remote-tracking branch 'origin/master' into const-fn-feature
2018-07-13 11:25:56 +02:00
Jorge Aparicio
e3c9f23e94
drop the nonzero feature gate
2018-07-13 00:29:08 -05:00
Felix Stegmaier
e48b15474d
Update docs and tests
2018-05-21 13:18:28 +02:00
Felix Stegmaier
479c74d9e5
Fix static variables in tests
2018-05-19 18:32:47 +02:00
Felix Stegmaier
512ce719ed
Fix missing_docs in const_fn macro
2018-05-19 12:25:30 +02:00
Felix
23b301362b
WIP const_fn macro
2018-05-19 01:23:10 +02:00
Jorge Aparicio
ffc7849f27
avoid using NLL
2018-05-03 03:35:46 +02:00
Jorge Aparicio
22ef801d6a
cargo fmt
2018-04-28 05:49:05 +02:00
Jorge Aparicio
66585909ef
re-export generic_array::ArrayLength
2018-04-27 04:53:05 +02:00
Jorge Aparicio
f58f7abfed
port IndexMap and IndexSet
2018-04-23 19:40:36 +02:00
Jorge Aparicio
c1892739f7
drop untagged-option dependency, and depend on generic-array
2018-04-22 00:41:13 +02:00
bors[bot]
a8d404fbe8
Merge #26
...
26: Ringbuffer iterators macro r=japaric a=XOSplicer
Resolves #6
Refactor the ring_buffer::{Iter,IterMut} implementations to use a macro, so there is less duplicate code.
Inspired by the[ slice iterator macro in lib core](https://github.com/rust-lang/rust/blob/master/src/libcore/slice/mod.rs ).
I have never worked with macros to generate const / mut implementations.
So this might be a little rough.
`#![allow(stable_features)]` is needed for current rust nightly, since otherwise `conservative_impl_trait` would throw a warning. Removing the feature flag would not be backwards compatible with earlier nightly versions.
Co-authored-by: Felix <stegmaier.felix@gmail.com>
2018-04-19 19:46:33 +00:00
Jorge Aparicio
ad13b81a21
implement BinaryHeap
2018-04-18 02:47:18 +02:00
Jorge Aparicio
9fc5f71799
elide bounds check in Vec.deref{,_mut}
2018-04-13 16:21:21 +02:00
Felix
8e51a6138f
#![allow(stable_features)]
...
#![feature(conservative_impl_trait)] has been stabelized in Rust 1.26, #![deny(warnings)] would therefore break the build when a stable feature is explicitly used
2018-04-09 22:15:27 +02:00
Jorge Aparicio
d1e51cb43f
add LinearMap
2018-03-11 22:35:27 +01:00
Mike Hommey
b086fa992b
Remove unused features
2018-03-04 07:19:01 +09:00
Jorge Aparicio
95893d4155
v0.2.2
2018-03-01 20:38:38 +01:00
Jorge Aparicio
0dd522268c
fix warnings
2018-03-01 19:40:39 +01:00
Per Lindgren
faad961e9c
add String
2018-03-01 19:00:55 +01:00
Jorge Aparicio
30ea33c349
relax the lifetime constraint of RingBuffer.split
...
also
- add a "`split` freezes the ring buffer" compile fail test
- hide compile-fail doc tests
- add scoped threads tests
2017-11-09 02:27:01 +01:00
Jorge Aparicio
37c8b5b637
create our own AtomicUsize
...
which works on thumbv6m-none-eabi and probably other targets with max-atomic-width = 0
2017-11-08 22:12:24 +01:00
Jorge Aparicio
978f0ee2de
add a compiler barrier
2017-11-08 00:50:26 +01:00
Jorge Aparicio
55f891e64f
use atomics where available
...
cc #5
2017-10-31 21:26:02 +01:00
Jorge Aparicio
da5757a71b
add examples and cfail tests
2017-10-31 17:59:47 +01:00
Jorge Aparicio
e841c8a664
update the documentation
2017-10-31 16:48:11 +01:00
Jorge Aparicio
7e91814cf8
support arrays of any size, don't require an initialization value, ..
...
single producer single consumer support for ring buffer
2017-10-03 16:04:27 +02:00
Jorge Aparicio
f515ed9ead
v0.1.0
2017-04-27 16:25:57 -05:00
Jorge Aparicio
2d8ff5b066
fix bug in Vec.push
...
the length of the vector wasn't being incremented
2017-03-17 12:07:23 -05:00
Jorge Aparicio
1d9cdb1ae1
initial commit
2017-03-05 00:30:10 -05:00