pub struct ConversionPath {
pub source: FormatType,
pub target: FormatType,
pub intermediates: Vec<FormatType>,
}Expand description
Describes a conversion path between formats
Fields§
§source: FormatTypeSource format
target: FormatTypeTarget format
intermediates: Vec<FormatType>Intermediate formats (for multi-step chains)
Implementations§
Source§impl ConversionPath
impl ConversionPath
Sourcepub const fn direct(source: FormatType, target: FormatType) -> ConversionPath
pub const fn direct(source: FormatType, target: FormatType) -> ConversionPath
Create a direct conversion path
Sourcepub fn chain(
source: FormatType,
intermediates: Vec<FormatType>,
target: FormatType,
) -> ConversionPath
pub fn chain( source: FormatType, intermediates: Vec<FormatType>, target: FormatType, ) -> ConversionPath
Create a multi-step conversion chain
Sourcepub fn steps(&self) -> Vec<FormatType>
pub fn steps(&self) -> Vec<FormatType>
Get all steps in the conversion (including source and target)
Sourcepub fn is_roundtrip(&self) -> bool
pub fn is_roundtrip(&self) -> bool
Check if this is a round-trip (ends where it started)
Trait Implementations§
Source§impl Clone for ConversionPath
impl Clone for ConversionPath
Source§fn clone(&self) -> ConversionPath
fn clone(&self) -> ConversionPath
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 moreSource§impl Debug for ConversionPath
impl Debug for ConversionPath
Source§impl Display for ConversionPath
impl Display for ConversionPath
impl Eq for ConversionPath
Source§impl PartialEq for ConversionPath
impl PartialEq for ConversionPath
impl StructuralPartialEq for ConversionPath
Auto Trait Implementations§
impl Freeze for ConversionPath
impl RefUnwindSafe for ConversionPath
impl Send for ConversionPath
impl Sync for ConversionPath
impl Unpin for ConversionPath
impl UnsafeUnpin for ConversionPath
impl UnwindSafe for ConversionPath
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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