427 Commits

Author SHA1 Message Date
Emil Fresk
241085e970 Fixed MPMC panic on wrapping sub 2021-04-22 20:00:30 +02:00
Emil Fresk
bd32ab8383
Merge pull request #198 from japaric/const_generics
Const generics port
2021-04-22 19:07:27 +02:00
Emil Fresk
8754c3dfd2 Added missing {enqueue, dequeue}_unchecked interfaces 2021-04-20 16:19:00 +02:00
Emil Fresk
8c2fd3b90f
Merge pull request #144 from debug-ito/mpmc-i8-dif
mpmc: use i8 to calculate dif to deal with u8 wrapping
2021-04-20 10:52:31 +02:00
Toshio Ito
4e2825972b run cargo fmt. 2021-04-20 16:10:59 +09:00
Emil Fresk
bf6728ef6f Clarification in changelog 2021-04-20 08:59:10 +02:00
Toshio Ito
9645a1bd64 mpmc: use i8 to calculate dif
Remove the boundary check introduced by #132
Now it passes full_at_wrapped_pos0.
2021-04-20 08:34:57 +09:00
Toshio Ito
98f9636d88 mpmc: add test full_at_wrapped_pos0.
This goes into infinite loop.
2021-04-20 08:34:57 +09:00
Toshio Ito
68ca3df55a mpmc: test: add more assertions. 2021-04-20 08:34:57 +09:00
Toshio Ito
ec1f4a4601 mpmc: make a test name more specific. 2021-04-20 08:34:57 +09:00
Emil Fresk
58cb279aec IndexMap::new() is now a const-fn 2021-04-19 21:36:38 +02:00
Emil Fresk
6fdcc4fb99 New SPSC queue, now safe and much simpler
This commit implements a new, simplified, SPSC that does not have the
reported issues (e.g. not properly wrapping the indexes for non
powers-of-2), and the support for multiple different index sizes has
been removed for simplicity.
2021-04-18 19:18:56 +02:00
Emil Fresk
dfa5d5091f Updated changelog 2021-04-08 17:37:13 +02:00
Emil Fresk
0ffef8f9c9 Cleanup of comments 2021-04-08 12:05:46 +02:00
Emil Fresk
2c248a31e9 Fixed so pool and MPMC works on thumbv6 2021-04-04 13:18:49 +02:00
Emil Fresk
1fac5935e5 Added unsafe and docs to Queue::{u8(), u16()} 2021-04-04 12:55:53 +02:00
Emil Fresk
2bfe3fe8f4 Restore tests for SPSC as close as we can 2021-04-04 12:12:22 +02:00
Emil Fresk
e21c4026f7
Merge pull request #203 from kpp/simplify_histbuf
Simplify code in histbuf for const generics
2021-04-04 11:56:54 +02:00
Roman Proskuryakov
6bee0f8a9b Simplify code in histbuf 2021-04-03 22:20:09 +03:00
Emil Fresk
5d294a700f
Merge pull request #202 from kpp/fix_cfail
Fix cfail tests in const generics
2021-04-03 14:01:10 +02:00
Roman Proskuryakov
a507b8ec3e Fix cfail tests in const generics 2021-04-03 14:02:09 +03:00
Emil Fresk
fbf8c4d162
Merge pull request #201 from burrbull/const_generics
AsRef, AsMut for pool
2021-04-03 08:12:58 +02:00
Andrey Zgarbul
618eebfcb9 AsRef, AsMut for pool 2021-04-02 23:00:31 +03:00
Emil Fresk
622eba960a
Merge pull request #200 from burrbull/const_generics
remove as_slice dependency
2021-04-02 21:12:15 +02:00
Andrey Zgarbul
e0b3b3a179 remove as_slice dependency 2021-04-02 20:45:18 +03:00
Emil Fresk
870a925229 Removed SingeCore and MultiCore, relies on atomics now 2021-04-01 21:07:05 +02:00
Emil Fresk
12682bdfd8 Removed unnecessary String interface, already covered by core 2021-04-01 19:44:07 +02:00
Emil Fresk
73d209a0ef
Merge branch 'master' into const_generics 2021-04-01 19:16:21 +02:00
Emil Fresk
1444990e52 Cleanup and HistoryBuffer is now const and using MaybeUninit 2021-04-01 19:14:40 +02:00
Emil Fresk
aee0817491
Merge pull request #199 from kpp/const_generics
Fix several issues in const generics
2021-03-30 17:15:37 +02:00
Roman Proskuryakov
5bde47c214 Fix cfail tests 2021-03-28 11:04:39 +03:00
Roman Proskuryakov
7fb276f6dc Fix warnings in src/indexmap.rs 2021-03-28 11:04:39 +03:00
Roman Proskuryakov
92cc062a4c Fix cargo test without cargo features enabled 2021-03-28 10:22:22 +03:00
Emil Fresk
11c9bd3de4
Merge pull request #197 from syrusakbary/patch-1
Fix typo
2021-03-28 08:57:03 +02:00
Roman Proskuryakov
a3f4d8f41e Update minimal Rust version from 1.31 to 1.51 2021-03-28 09:49:34 +03:00
Roman Proskuryakov
f7cb3e575f Fix fmt 2021-03-28 09:48:34 +03:00
Syrus Akbary
de20c36cf2
Fix typo 2021-03-26 11:19:17 +01:00
Emil Fresk
3de878b09e Cleanup 2021-03-25 19:42:21 +01:00
Emil Fresk
305de719f6 Fixed warnings 2021-03-25 17:52:15 +01:00
Emil Fresk
8ba71d4b14 Merge branch 'master' into const_generics 2021-03-25 17:45:10 +01:00
Emil Fresk
6dcedb89f3 Fixes for min const generics 2021-03-25 16:51:38 +01:00
Per Lindgren
f962e3a45f Initial conversion to const generics
vec passes tests

vec passes tests with docs as well (besides one with FromIter)

vec passes tests with docs as well (besides one with FromIter)

exposing full API

passing all current tests

starting with string

string test passes mostly

string test passes

ufmt passes

TODO removed

binary_heap wip

binary_heap passes tests

sealed passes

spsc wip

spsc wip2

split wip3

spcs and split passes --lib tests

spcs and split passes --lib tests

spcs and split passes --lib tests

spcs and split passes all tests (doc + lib)

indexmap wip

indexmap passes --lib test

indexmap passes all tests (lib + doc)

indexset passes all tests (lib + doc)

indexset passes all tests (lib + doc)

linear map wip

linear map all test (lib + doc) passes, drop not tested, into_iter(mut self) not implemented

history buffer all test pass (doc + lib), Copy instead of clone atm

serde does not work

pool works, serde still not

serde wip

serde wip

serde wip

serde wip
2021-03-25 16:31:58 +01:00
samlich
6ba462eb93 String: add as_mut_vec 2021-03-25 16:30:45 +01:00
samlich
0364e05766 Vec: add set_len 2021-03-25 16:30:45 +01:00
Andres Vahter
9e08514d39 histbuf: fix style 2021-03-25 16:30:45 +01:00
Andres Vahter
26dcfa3ae6 histbuf: replace slow modulo operatins
on cortex m0  `%` is extremely costly
2021-03-25 16:30:45 +01:00
Andres Vahter
0ab806d5cd readme: add instructions for tests 2021-03-25 16:30:45 +01:00
Willem
1790c4f30f indexmap: expose PowerOfTwo, Bucket and Pos
This change allows the create custom structs with size arguments outside
the heapless crate itself.
2021-03-25 16:30:45 +01:00
Bryan Kadzban
87917e059b Make Producer<..., SingleCore> Send, like Consumer
I assume there's no reason that only multi-core Producers are marked
Send, while Consumers are not (they're pretty symmetrical).
2021-03-25 16:30:45 +01:00
Emil Fresk
357a312dba Preparing for v0.5.5 2021-03-25 16:30:45 +01:00