pub trait Logger: Send + Sync {
// Required methods
fn add(&self, backend: Arc<dyn LogBackend>) -> Result<(), EffectLoggerError>;
fn replace(
&self,
idx: usize,
backend: Arc<dyn LogBackend>,
) -> Result<(), EffectLoggerError>;
fn remove(&self, idx: usize) -> Result<(), EffectLoggerError>;
}Expand description
Effect.ts-style composable logger: Self::add, Self::replace, Self::remove.
Message and Output from the gap doc map to LogRecord::message and
Result<(), EffectLoggerError> respectively.
Required Methods§
Sourcefn add(&self, backend: Arc<dyn LogBackend>) -> Result<(), EffectLoggerError>
fn add(&self, backend: Arc<dyn LogBackend>) -> Result<(), EffectLoggerError>
Append a backend to the ordered fan-out list.
Sourcefn replace(
&self,
idx: usize,
backend: Arc<dyn LogBackend>,
) -> Result<(), EffectLoggerError>
fn replace( &self, idx: usize, backend: Arc<dyn LogBackend>, ) -> Result<(), EffectLoggerError>
Swap the backend at idx without changing list length.