1#![doc = include_str!("../README.md")]
2#![no_std]
3
4extern crate alloc;
5
6pub mod action;
7pub mod ease;
8pub mod pipeline;
9pub mod sequence;
10pub mod subject;
11pub mod timeline;
12pub mod track;
13
14pub use field_path;
16
17pub mod prelude {
18 pub use field_path::accessor::{
19 Accessor, FieldAccessorRegistry, UntypedAccessor, accessor,
20 };
21 pub use field_path::field::{Field, UntypedField, field};
22
23 pub use crate::ThreadSafe;
24 pub use crate::action::{
25 Action, ActionBuilder, ActionId, EaseFn, InterpActionBuilder,
26 InterpFn,
27 };
28 pub use crate::ease;
29 pub use crate::pipeline::{
30 BakeCtx, Pipeline, PipelineKey, PipelineRegistry, SampleCtx,
31 };
32 pub use crate::timeline::{Timeline, TimelineBuilder};
33 pub use crate::track::{Track, TrackFragment, TrackOrdering};
34}
35
36pub trait ThreadSafe: Send + Sync + 'static {}
39
40impl<T> ThreadSafe for T where T: Send + Sync + 'static {}