how-far-along 0.1.0

Tracking and observation for cooperative progress and cancellation
Documentation
#![doc = include_str!("../README.md")]
#![cfg_attr(not(feature = "std"), no_std)]
#![forbid(unsafe_code)]
#![warn(missing_docs)]

extern crate alloc;

#[macro_use]
mod pulse;
mod callback;
pub mod ext;
mod json;
pub use callback::{Checkpoint, FnPulse};
pub mod poll;
#[cfg(feature = "smooth")]
mod smooth;
mod sync;
mod tree;
pub use how_far::WithStop;
// Application-facing protocol names only; implementor/checked helpers remain in how_far.
use how_far::ChildPulse;
pub use how_far::{
    AsStopReason, Child, Complete, Execution, NoPulse, Outcome, Paced, PhaseSpec, Phases,
    PlanError, ProgressExt, Pulse, Report, ResultExt, SharedPulse, Stage, StageKey, Stages, Stop,
    StopOnly, StopReason, Total, Unstoppable, prelude,
};

pub use pulse::PulseTree;
#[cfg(feature = "smooth")]
pub use smooth::ProgressSmoother;
pub use tree::{NodeId, Observer, Phase, Reporter, Snapshot, Status, Summary};