1#![cfg_attr(not(feature = "std"), no_std)]
8
9extern crate alloc;
10extern crate core;
11
12#[cfg(all(feature = "std-duration", feature = "wasm"))]
14compile_error!("Features 'std-duration' and 'wasm' cannot be enabled simultaneously");
15
16#[cfg(all(feature = "std-duration", not(feature = "std")))]
17compile_error!("Feature 'std-duration' requires 'std' feature");
18
19#[cfg(all(feature = "crossterm", not(feature = "std")))]
20compile_error!("Feature 'crossterm' requires 'std' feature");
21
22#[cfg(all(feature = "dsl", not(feature = "std")))]
23compile_error!("DSL feature is not supported in no-std environments. Use either 'dsl' with 'std' or disable 'dsl' for no-std builds.");
24
25#[cfg(all(feature = "std-duration", feature = "wasm"))]
26compile_error!("Features 'std-duration' and 'wasm' cannot be enabled simultaneously");
27
28mod bitvec;
29mod bounding_box;
30mod buffer_renderer;
31mod cell_filter;
32mod cell_iter;
33mod color_cache;
34mod color_ext;
35mod color_mapper;
36mod color_space;
37mod duration;
38mod effect;
39mod effect_manager;
40mod effect_timer;
41mod features;
42mod interpolation;
43mod lru_cache;
44mod math;
45mod motion;
46pub mod pattern;
47mod rect_ext;
48mod ref_rect;
49mod render_effect;
50mod shader;
51mod simple_rng;
52
53pub mod fx;
54pub mod widget;
55
56#[doc = include_str!("../docs/dsl.md")]
57#[cfg(feature = "dsl")]
58pub mod dsl;
59
60pub use buffer_renderer::*;
61pub use cell_filter::*;
62pub use cell_iter::CellIterator;
64pub use color_cache::ColorCache;
65pub use color_ext::ToRgbComponents;
66#[allow(deprecated)]
67pub use color_mapper::ColorMapper;
68pub use color_space::*;
69pub use duration::Duration;
70#[allow(unused_imports)] pub(crate) use effect::ShaderExt;
72pub use effect::{Effect, IntoEffect};
73pub use effect_manager::EffectManager;
74pub use effect_timer::EffectTimer;
75pub use features::{ref_count, RefCount, ThreadSafetyMarker};
76pub use interpolation::*;
77pub use lru_cache::LruCache;
78pub use motion::*;
79pub use rect_ext::CenteredShrink;
80pub use ref_rect::RefRect;
81pub use render_effect::EffectRenderer;
82pub use shader::Shader;
83pub use simple_rng::*;