pub struct Registry { /* private fields */ }Expand description
The converter registry from rules/converters.toml.
The registry is data. A rules bump is a visible versioned event, and the pinned entry version must match the implementation, so a code change cannot ship silently under an old version.
Implementations§
Source§impl Registry
impl Registry
Sourcepub fn builtin() -> Result<Self>
pub fn builtin() -> Result<Self>
The registry compiled into the binary from rules/converters.toml.
Sourcepub fn parse(text: &str, name: &str) -> Result<Self>
pub fn parse(text: &str, name: &str) -> Result<Self>
Parses a registry and binds entries to implementations.
Sourcepub fn converter_for(&self, format_id: &str) -> Option<&dyn Converter>
pub fn converter_for(&self, format_id: &str) -> Option<&dyn Converter>
The converter that claims a format id, if any.
Sourcepub fn container_limits(&self) -> &ContainerLimits
pub fn container_limits(&self) -> &ContainerLimits
The container expansion limits from the rules.
Sourcepub fn records_limits(&self) -> &RecordsLimits
pub fn records_limits(&self) -> &RecordsLimits
The records worker ceilings from the rules.
Sourcepub fn unsupported_reason(&self, format_id: &str) -> Option<&str>
pub fn unsupported_reason(&self, format_id: &str) -> Option<&str>
The reason a format is unsupported.
A declared entry from the registry wins, such as a spreadsheet
format with no visibility reader yet. Every other format no
converter claims gets the generic floor
NO_CONVERTER_REASON, so an unsupported record is never
reason-less. A format a converter claims returns None.
Auto Trait Implementations§
impl !RefUnwindSafe for Registry
impl !Send for Registry
impl !Sync for Registry
impl !UnwindSafe for Registry
impl Freeze for Registry
impl Unpin for Registry
impl UnsafeUnpin for Registry
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
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> ⓘ
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> ⓘ
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