1#![allow(
7 clippy::missing_safety_doc,
8 clippy::module_inception,
9 clippy::needless_doctest_main,
10 clippy::upper_case_acronyms
11)]
12#![cfg_attr(not(feature = "std"), no_std)]
13
14#[cfg(not(all(feature = "std", feature = "alloc")))]
15compile_error! {
16 "The `acme-engine` crate requires either the `std` or `alloc` feature to be enabled."
17}
18
19#[cfg(feature = "std")]
20extern crate std;
21
22#[cfg(feature = "alloc")]
23extern crate alloc;
24
25#[doc(inline)]
26pub use self::{
27 engine::*,
28 error::*,
29 pipes::prelude::*,
30 scheduler::Scheduler,
31 sources::{SourceManager, SourceRegistry},
32 traits::*,
33 types::*,
34};
35
36#[macro_use]
37pub(crate) mod macros {
38 #[macro_use]
39 pub(crate) mod seal;
40}
41
42pub mod engine;
43pub mod error;
44pub mod pipes;
45pub mod scheduler;
46pub mod sources;
47
48mod traits {
49 #[doc(inline)]
51 pub use self::prelude::*;
52
53 mod engine;
54
55 mod prelude {
56 #[doc(inline)]
57 pub use super::engine::*;
58 }
59}
60
61mod types {
62 #[doc(inline)]
64 pub use self::prelude::*;
65
66 mod aliases;
67
68 mod prelude {
69 #[doc(inline)]
70 pub use super::aliases::*;
71 }
72}
73
74#[doc(hidden)]
75pub mod prelude {
76 #[doc(no_inline)]
77 pub use crate::engine::*;
78 #[doc(no_inline)]
79 pub use crate::pipes::prelude::*;
80 #[doc(no_inline)]
81 pub use crate::scheduler::*;
82 #[doc(no_inline)]
83 pub use crate::sources::prelude::*;
84 #[doc(no_inline)]
85 pub use crate::traits::*;
86 #[doc(no_inline)]
87 pub use crate::types::*;
88}