pub struct Car { /* private fields */ }Implementations§
Source§impl Car
impl Car
pub fn entries(&self) -> Vec<AssetEntry>
pub fn entry(&self, id: AssetId) -> Option<AssetEntry>
pub fn variants_for(&self, id: AssetId) -> Option<Vec<AssetVariant>>
pub fn variants_for_name(&self, name: &str) -> Option<Vec<AssetVariant>>
pub fn best_variant_for_name( &self, name: &str, query: &VariantQuery, ) -> Result<AssetVariant, VariantMatchError>
Source§impl Car
impl Car
pub fn new<P: AsRef<Path>>(file: P) -> CarResult<Self>
pub fn from_reader<R>(reader: R) -> CarResult<Self>where
R: Read,
pub fn from_bytes(bytes: Vec<u8>) -> CarResult<Self>
pub fn header(&self) -> &Header
pub fn appearance_keys(&self) -> &HashMap<String, BOMBytes>
pub fn extended_metadata(&self) -> &ExtendedMetadata
pub fn key_format(&self) -> &KeyFmt
pub fn item_with_key_values(&self, key_values: &[u16]) -> Option<&CSIItem>
pub fn resolved_source_bytes(&self, item: &CSIItem) -> CarResult<Vec<u8>>
pub fn facets(&self) -> Vec<&KeyToken>
pub fn named_facets(&self) -> Vec<(&str, &KeyToken)>
pub fn facet(&self, name: &str) -> Option<&KeyToken>
pub fn facet_with_name(&self, name: &str) -> Option<&KeyToken>
pub fn items_for_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
pub fn rendtions_with_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
Sourcepub fn renditions_with_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
pub fn renditions_with_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
Correctly-spelled alias for Car::rendtions_with_facet.
The historical misspelled method remains available for compatibility.
Sourcepub fn renditions_for_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
pub fn renditions_for_facet(&self, facet: &KeyToken) -> Option<&[CSIItem]>
Alias for Car::items_for_facet using the public rendition terminology.
pub fn items_for_name(&self, name: &str) -> Option<&[CSIItem]>
pub fn rendtions_with_name(&self, name: &str) -> Option<&[CSIItem]>
Sourcepub fn renditions_with_name(&self, name: &str) -> Option<&[CSIItem]>
pub fn renditions_with_name(&self, name: &str) -> Option<&[CSIItem]>
Correctly-spelled alias for Car::rendtions_with_name.
The historical misspelled method remains available for compatibility.
Sourcepub fn renditions_for_name(&self, name: &str) -> Option<&[CSIItem]>
pub fn renditions_for_name(&self, name: &str) -> Option<&[CSIItem]>
Alias for Car::items_for_name using the public rendition terminology.
pub fn face_item_with_name(&self, name: &str) -> Option<FacetItem<'_>>
Sourcepub fn facet_item_with_name(&self, name: &str) -> Option<FacetItem<'_>>
pub fn facet_item_with_name(&self, name: &str) -> Option<FacetItem<'_>>
Correctly-spelled alias for Car::face_item_with_name.
The historical misspelled method remains available for compatibility.
Sourcepub fn resolve_internal_reference<'a>(
&'a self,
item: &'a CSIItem,
) -> Option<ResolvedInternalReference<'a>>
pub fn resolve_internal_reference<'a>( &'a self, item: &'a CSIItem, ) -> Option<ResolvedInternalReference<'a>>
Resolve an InternalReference rendition to its final source rendition.
Searches ALL entries in the RENDITIONS tree using exact key matching, not just
facet-accessible items. Recursion depth is capped at 16; cycles return None.
Returns None if item is not an InternalReference, if the reference cannot
be parsed, or if the source cannot be located.
Sourcepub fn try_resolve_internal_reference<'a>(
&'a self,
item: &'a CSIItem,
) -> Result<ResolvedInternalReference<'a>, ReferenceResolveError>
pub fn try_resolve_internal_reference<'a>( &'a self, item: &'a CSIItem, ) -> Result<ResolvedInternalReference<'a>, ReferenceResolveError>
Resolve an InternalReference rendition and report typed failure reasons.
The compatibility method Car::resolve_internal_reference maps all errors
to None.
Source§impl Car
impl Car
pub fn diagnostics(&self) -> DiagnosticsReport
Source§impl Car
impl Car
pub fn output_identity_for_payload<'a>( &'a self, logical_facet_name: &str, logical_item: &'a CSIItem, payload_item: &'a CSIItem, ) -> Option<OutputIdentity<'a>>
Source§impl Car
impl Car
pub fn document_info(&self) -> DocumentInfo
pub fn rendition_infos(&self) -> Vec<RenditionInfo>
Auto Trait Implementations§
impl Freeze for Car
impl RefUnwindSafe for Car
impl Send for Car
impl Sync for Car
impl Unpin for Car
impl UnsafeUnpin for Car
impl UnwindSafe for Car
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> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.