pub struct ConfiguredCarverRegistry {
carvers_by_id: Vec<ConfiguredCarverRef>,
carvers_by_key: FxHashMap<Identifier, usize>,
allows_registering: bool,
}Expand description
Registry of configured carvers, keyed by namespaced identifier.
Fields§
§carvers_by_id: Vec<ConfiguredCarverRef>§carvers_by_key: FxHashMap<Identifier, usize>§allows_registering: boolImplementations§
Source§impl ConfiguredCarverRegistry
impl ConfiguredCarverRegistry
Sourcepub fn register(&mut self, entry: ConfiguredCarverRef) -> usize
pub fn register(&mut self, entry: ConfiguredCarverRef) -> usize
Registers a carver and returns its numeric ID.
Sourcepub fn iter(&self) -> impl Iterator<Item = (usize, ConfiguredCarverRef)> + '_
pub fn iter(&self) -> impl Iterator<Item = (usize, ConfiguredCarverRef)> + '_
Iterates over all registered carvers with their IDs.
Trait Implementations§
Source§impl Default for ConfiguredCarverRegistry
impl Default for ConfiguredCarverRegistry
Source§impl RegistryExt for ConfiguredCarverRegistry
impl RegistryExt for ConfiguredCarverRegistry
type Entry = ConfiguredCarver
fn freeze(&mut self)
fn by_id(&self, id: usize) -> Option<&'static ConfiguredCarver>
fn by_key(&self, key: &Identifier) -> Option<&'static ConfiguredCarver>
fn id_from_key(&self, key: &Identifier) -> Option<usize>
fn len(&self) -> usize
fn is_empty(&self) -> bool
Auto Trait Implementations§
impl Freeze for ConfiguredCarverRegistry
impl RefUnwindSafe for ConfiguredCarverRegistry
impl Send for ConfiguredCarverRegistry
impl Sync for ConfiguredCarverRegistry
impl Unpin for ConfiguredCarverRegistry
impl UnsafeUnpin for ConfiguredCarverRegistry
impl UnwindSafe for ConfiguredCarverRegistry
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 moreWraps this value in an
Arc<SyncMutex<>>