narrative/
lib.rs

1pub mod environment;
2mod independent_type;
3pub mod runner;
4pub mod step;
5pub mod story;
6pub mod value;
7
8pub use independent_type::IndependentType;
9pub use narrative_macros::*;
10
11/// Marker trait for types owned by a single story.
12/// Due to the Orphan Rule, using `#[local_type_for]` on remote types (types from other crates)
13/// will result in a compilation error.
14/// Additionally, attempting to use `#[local_type_for]` on the same type for multiple stories
15/// will cause conflicting trait implementations.
16pub trait StoryOwnedType: std::fmt::Debug + Clone + serde::Serialize {}
17
18pub mod serde {
19    pub use serde::*;
20}
21
22pub mod prelude {
23    pub use crate::step::Run as _;
24    pub use crate::step::RunAsync as _;
25    pub use crate::step::Step as _;
26    pub use crate::step::StepArg as _;
27    pub use crate::story::RunStory as _;
28    pub use crate::story::RunStoryAsync as _;
29    pub use crate::story::StoryConst as _;
30    pub use crate::story::StoryContext as _;
31    pub use crate::story::StoryContext as _;
32}