heapless icon indicating copy to clipboard operation
heapless copied to clipboard

Heapless, `static` friendly data structures

Results 121 heapless issues
Sort by recently updated
recently updated
newest added

There is already `as_slice()` which gives access to the underlying backing array where the elements are not in the order of writing. With automatic dereferencing, functions like `iter()` or `windows()`...

API Break

An addendum to #610 for streamlining the interface of `HistoryBuf` even further. I'm opening this PR with two proposals for starting a discussion.

API Break

## Description I've been using heapless's `HistoryBuffer` (now renamed to `HistoryBuf`) as a sliding search window with much success. More precisely, I have an iterator over a substantial number of...

bug

- [ ] https://github.com/rust-embedded/heapless/pull/610 - [ ] https://github.com/rust-embedded/heapless/pull/611

### Problem The `heapless` crate currently lacks a Binary Search Tree (BST) implementation. BSTs are essential for use cases like implementing process schedulers with priorities in kernel environments, where efficient...

As part of #562 I am working through the usage of `unsafe` code and I think I uncovered some UB in the `pool` module that affects `Arc` and `Box`. I...

I get this error: ```sh error[E0223]: ambiguous associated type --> /home/esp/.cargo/registry/src/index.crates.io-6f17d22bba15001f/heapless-0.9.1/src/c_string.rs:181:17 | 181 | Err(FromBytesWithNulError::InteriorNul { position }) => { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | help: if there were a trait named...

Adds a basic fuzzing test harness using `cargo-fuzz` to run randomized tests against the `Vec` and `String` types.

While I think this is a good change, unfortunately it's a breaking change and hence keeping it in draft for now until the next API break (perhaps 1.0).

API Break

`IndexSet` depends on the `View` type for `IndexMap` being available. `IndexMap` is currently implemented with a `CoreMap`type that looks like: ```rust struct CoreMap { entries: Vec, indices: [Option; N], }...