pub struct DaemonSourceRegistry { /* private fields */ }Expand description
Daemon-scoped registry of all dynamic sources across both external
--source files and pipeline-embedded sources: blocks.
Construction enforces collision-error semantics: a source ID declared in two different sites (or twice in external files) is a hard startup error with the offending file paths quoted in the message.
Implementations§
Source§impl DaemonSourceRegistry
impl DaemonSourceRegistry
Sourcepub fn new(
external: Vec<(DynamicSource, PathBuf)>,
pipeline_sources: Vec<(DynamicSource, String)>,
) -> Result<Self, SourceCollisionError>
pub fn new( external: Vec<(DynamicSource, PathBuf)>, pipeline_sources: Vec<(DynamicSource, String)>, ) -> Result<Self, SourceCollisionError>
Build a registry from external sources and pipeline-declared sources.
Returns Err if any source ID appears more than once across all
declaration sites.
Sourcepub fn from_external(
external: Vec<(DynamicSource, PathBuf)>,
) -> Result<Self, SourceCollisionError>
pub fn from_external( external: Vec<(DynamicSource, PathBuf)>, ) -> Result<Self, SourceCollisionError>
Build a registry from only external sources (no pipeline sources).
Sourcepub fn sources(&self) -> Vec<&DynamicSource>
pub fn sources(&self) -> Vec<&DynamicSource>
All sources in the registry.
Sourcepub fn into_sources(self) -> Vec<DynamicSource>
pub fn into_sources(self) -> Vec<DynamicSource>
All owned sources in the registry.
Sourcepub fn entries(&self) -> &[RegistryEntry]
pub fn entries(&self) -> &[RegistryEntry]
All entries (source + origin) in the registry.
Sourcepub fn get(&self, id: &str) -> Option<&RegistryEntry>
pub fn get(&self, id: &str) -> Option<&RegistryEntry>
Look up a source by ID.
Trait Implementations§
Source§impl Clone for DaemonSourceRegistry
impl Clone for DaemonSourceRegistry
Source§fn clone(&self) -> DaemonSourceRegistry
fn clone(&self) -> DaemonSourceRegistry
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DaemonSourceRegistry
impl RefUnwindSafe for DaemonSourceRegistry
impl Send for DaemonSourceRegistry
impl Sync for DaemonSourceRegistry
impl Unpin for DaemonSourceRegistry
impl UnsafeUnpin for DaemonSourceRegistry
impl UnwindSafe for DaemonSourceRegistry
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T behind Arc pointerSource§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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more