1[package]
2name = "embassy-time-queue-utils"
3version = "0.1.0"
4edition = "2021"
5description = "Timer queue driver trait for embassy-time"
6repository = "https://github.com/embassy-rs/embassy"
7documentation = "https://docs.embassy.dev/embassy-time-queue-utils"
8readme = "README.md"
9license = "MIT OR Apache-2.0"
10categories = [
11 "embedded",
12 "no-std",
13 "concurrency",
14 "asynchronous",
15]
16
17# Prevent multiple copies of this crate in the same binary.
18# Needed because different copies might get different tick rates, causing
19# wrong delays if the time driver is using one copy and user code is using another.
20# This is especially common when mixing crates from crates.io and git.
21links = "embassy-time-queue"
22
23[dependencies]
24heapless = "0.8"
25embassy-executor = { version = "0.7.0", path = "../embassy-executor" }
26
27[features]
28#! ### Generic Queue
29
30#! By default this crate uses a timer queue implementation that is faster but depends on `embassy-executor`.
31#! It will panic if you try to await any timer when using another executor.
32#!
33#! Alternatively, you can choose to use a "generic" timer queue implementation that works on any executor.
34#! To enable it, enable any of the features below.
35#!
36#! The features also set how many timers are used for the generic queue. At most one
37#! `generic-queue-*` feature can be enabled. If none is enabled, a default of 64 timers is used.
38#!
39#! When using embassy-time-queue-driver from libraries, you should *not* enable any `generic-queue-*` feature, to allow the
40#! end user to pick.
41
42## Generic Queue with 8 timers
43generic-queue-8 = ["_generic-queue"]
44## Generic Queue with 16 timers
45generic-queue-16 = ["_generic-queue"]
46## Generic Queue with 32 timers
47generic-queue-32 = ["_generic-queue"]
48## Generic Queue with 64 timers
49generic-queue-64 = ["_generic-queue"]
50## Generic Queue with 128 timers
51generic-queue-128 = ["_generic-queue"]
52
53_generic-queue = []
54
55[package.metadata.embassy_docs]
56src_base = "https://github.com/embassy-rs/embassy/blob/embassy-time-queue-utils-v$VERSION/embassy-time-queue-utils/src/"
57src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-time-queue-utils/src/"
58target = "x86_64-unknown-linux-gnu"
59