//! Side effects: observing candidates without modifying them.
//!
//! A [`SideEffect`] is a tap that observes items for logging,
//! metrics, or analytics. Items pass through unchanged.
use Io;
use crateStage;
/// Observes candidates without modifying them.
///
/// Used for logging, metrics, and analytics. The items pass
/// through the stage unchanged after the effect runs.
/// Convert a [`SideEffect`] into a [`Stage`] that passes items through.
///
/// The side effect runs, then the original items are returned.