pub struct ConcentrationPipeline { /* private fields */ }Expand description
Ordered, deterministic execution of zero or more ConcentrationPass
instances. Each pass receives a dedicated ChaCha8 substream so adding or
removing a pass does not perturb the RNG state of any other pass.
Implementations§
Source§impl ConcentrationPipeline
impl ConcentrationPipeline
Sourcepub fn from_config(
cfg: &ConcentrationConfig,
) -> Result<Self, ConcentrationPipelineError>
pub fn from_config( cfg: &ConcentrationConfig, ) -> Result<Self, ConcentrationPipelineError>
Build a pipeline from config. Returns an empty pipeline if
cfg.enabled == false or no passes are configured. Returns
Err(ConcentrationPipelineError) if a configured pass fails to
construct (e.g. Phase-2 AccountPairSubstitutionPass can’t read its
PMF file).
Sourcepub fn run(
&self,
entries: &mut [JournalEntry],
seed: u64,
) -> Vec<ConcentrationStats>
pub fn run( &self, entries: &mut [JournalEntry], seed: u64, ) -> Vec<ConcentrationStats>
Execute every pass in order, each with its own ChaCha8 substream
derived deterministically from seed. Returns one ConcentrationStats
per pass in execution order.
Auto Trait Implementations§
impl !RefUnwindSafe for ConcentrationPipeline
impl !UnwindSafe for ConcentrationPipeline
impl Freeze for ConcentrationPipeline
impl Send for ConcentrationPipeline
impl Sync for ConcentrationPipeline
impl Unpin for ConcentrationPipeline
impl UnsafeUnpin for ConcentrationPipeline
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.