Skip to main content

Crate typestate_pipeline_core

Crate typestate_pipeline_core 

Source
Expand description

Runtime primitives for the typestate-pipeline ecosystem.

  • Pipeline is the dual-mode pipeline carrier; concrete pipelines are typically introduced as type aliases over it.
  • Mode, Resolved, InFlight, and BoxFuture form the mode axis that selects Pipeline’s storage shape.
  • Pipelined is the marker trait that user-side carrier newtypes implement so the proc-macros can read carrier metadata via trait projection instead of AST manipulation.
  • Yes, No, Satisfiable, Satisfied, and Storage are the per-field flag primitives the TypestateFactory derive uses for the named-field accumulator pattern.

Re-exports§

pub use flag::No;
pub use flag::Satisfiable;
pub use flag::Satisfied;
pub use flag::Storage;
pub use flag::Yes;
pub use mode::BoxFuture;
pub use mode::InFlight;
pub use mode::Mode;
pub use mode::Resolved;
pub use pipeline::Pipeline;
pub use pipelined::Pipelined;

Modules§

flag
Per-field type-level flag primitives used by the TypestateFactory derive.
mode
Mode axis: selects the storage shape for a Pipeline.
pipeline
Generic dual-mode pipeline carrier.
pipelined
Pipelined<'a> — marker trait that user-side typestate carriers implement so the proc-macros can introspect them.