1 | [package] |
2 | name = "embassy-time-queue-utils" |
3 | version = "0.1.0" |
4 | edition = "2021" |
5 | description = "Timer queue driver trait for embassy-time" |
6 | repository = "https://github.com/embassy-rs/embassy" |
7 | documentation = "https://docs.embassy.dev/embassy-time-queue-utils" |
8 | readme = "README.md" |
9 | license = "MIT OR Apache-2.0" |
10 | categories = [ |
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. |
21 | links = "embassy-time-queue" |
22 | |
23 | [dependencies] |
24 | heapless = "0.8" |
25 | embassy-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 |
43 | generic-queue-8 = ["_generic-queue" ] |
44 | ## Generic Queue with 16 timers |
45 | generic-queue-16 = ["_generic-queue" ] |
46 | ## Generic Queue with 32 timers |
47 | generic-queue-32 = ["_generic-queue" ] |
48 | ## Generic Queue with 64 timers |
49 | generic-queue-64 = ["_generic-queue" ] |
50 | ## Generic Queue with 128 timers |
51 | generic-queue-128 = ["_generic-queue" ] |
52 | |
53 | _generic-queue = [] |
54 | |
55 | [package.metadata.embassy_docs] |
56 | src_base = "https://github.com/embassy-rs/embassy/blob/embassy-time-queue-utils-v$VERSION/embassy-time-queue-utils/src/" |
57 | src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-time-queue-utils/src/" |
58 | target = "x86_64-unknown-linux-gnu" |
59 | |