embassy-sync: Add capacity and free_capacity functions to Channel
This commit is contained in:
parent
fa94b5cec0
commit
3d9b502c7a
2 changed files with 13 additions and 1 deletions
|
@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
|
||||
## Unreleased
|
||||
|
||||
- Add `len`, `is_empty` and `is_full` functions to `Channel`.
|
||||
- Add `capacity`, `free_capacity`, `len`, `is_empty` and `is_full` functions to `Channel`.
|
||||
|
||||
## 0.5.0 - 2023-12-04
|
||||
|
||||
|
|
|
@ -620,6 +620,18 @@ where
|
|||
self.lock(|c| c.try_receive())
|
||||
}
|
||||
|
||||
/// Returns the maximum number of elements the channel can hold.
|
||||
pub const fn capacity(&self) -> usize {
|
||||
N
|
||||
}
|
||||
|
||||
/// Returns the free capacity of the channel.
|
||||
///
|
||||
/// This is equivalent to `capacity() - len()`
|
||||
pub fn free_capacity(&self) -> usize {
|
||||
N - self.len()
|
||||
}
|
||||
|
||||
/// Returns the number of elements currently in the channel.
|
||||
pub fn len(&self) -> usize {
|
||||
self.lock(|c| c.len())
|
||||
|
|
Loading…
Add table
Reference in a new issue