pub struct MappedExtra<T, M = ()>(pub M, pub T);Tuple Fields§
§0: M§1: TTrait Implementations§
Source§impl<T: Clone, M: Clone> Clone for MappedExtra<T, M>
impl<T: Clone, M: Clone> Clone for MappedExtra<T, M>
Source§fn clone(&self) -> MappedExtra<T, M>
fn clone(&self) -> MappedExtra<T, M>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<T, M> Deref for MappedExtra<T, M>
impl<T, M> Deref for MappedExtra<T, M>
Source§impl<T, M> DerefMut for MappedExtra<T, M>
impl<T, M> DerefMut for MappedExtra<T, M>
Source§impl<T, M> InlineOutput for MappedExtra<T, M>where
M: InlineOutput,
T: InlineOutput,
impl<T, M> InlineOutput for MappedExtra<T, M>where
M: InlineOutput,
T: InlineOutput,
fn slice_to_output(slice: &[Self], output: &mut dyn Output)where
Self: Sized,
Source§impl<T, M> ListHashes for MappedExtra<T, M>where
M: ListHashes,
T: ListHashes,
impl<T, M> ListHashes for MappedExtra<T, M>where
M: ListHashes,
T: ListHashes,
fn list_hashes(&self, visitor: &mut impl FnMut(Hash))
fn topology_hash(&self) -> Hash
fn point_count(&self) -> usize
Source§impl<Extra: 'static + Clone, __T: MapExtra<Extra>, __M> MapExtra<Extra> for MappedExtra<__T, __M>
impl<Extra: 'static + Clone, __T: MapExtra<Extra>, __M> MapExtra<Extra> for MappedExtra<__T, __M>
Source§impl<T, M> MaybeHasNiche for MappedExtra<T, M>where
M: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,
T: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,
impl<T, M> MaybeHasNiche for MappedExtra<T, M>where
M: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,
T: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,
Source§type MnArray = TArr<<<M as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, TArr<<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, ATerm>>
type MnArray = TArr<<<M as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, TArr<<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, ATerm>>
Should implement [
MnArray]. Not constraint explicitly, because that breaks things.Source§impl<M: 'static + Send + Sync + Clone + ParseInline<I> + MapExtra<X, Mapped = E>, E: 'static + Send + Sync + Clone, X: 'static + Send + Sync + Clone, T: Parse<J>, I: PointInput<Extra = X, WithExtra<E> = J>, J: ParseInput> Parse<I> for MappedExtra<T, M>
impl<M: 'static + Send + Sync + Clone + ParseInline<I> + MapExtra<X, Mapped = E>, E: 'static + Send + Sync + Clone, X: 'static + Send + Sync + Clone, T: Parse<J>, I: PointInput<Extra = X, WithExtra<E> = J>, J: ParseInput> Parse<I> for MappedExtra<T, M>
Source§impl<M: 'static + Send + Sync + Clone + ParseInline<I> + MapExtra<X, Mapped = E>, E: 'static + Send + Sync + Clone, X: 'static + Send + Sync + Clone, T: ParseInline<J>, I: PointInput<Extra = X, WithExtra<E> = J>, J: ParseInput> ParseInline<I> for MappedExtra<T, M>
impl<M: 'static + Send + Sync + Clone + ParseInline<I> + MapExtra<X, Mapped = E>, E: 'static + Send + Sync + Clone, X: 'static + Send + Sync + Clone, T: ParseInline<J>, I: PointInput<Extra = X, WithExtra<E> = J>, J: ParseInput> ParseInline<I> for MappedExtra<T, M>
Source§fn parse_inline(input: &mut I) -> Result<Self>
fn parse_inline(input: &mut I) -> Result<Self>
Parse without consuming the whole stream. Errors on unexpected EOF.
Source§fn parse_as_inline(input: I) -> Result<Self>
fn parse_as_inline(input: I) -> Result<Self>
For implementing
Parse::parse.Source§fn parse_vec(input: I) -> Result<Vec<Self>>
fn parse_vec(input: I) -> Result<Vec<Self>>
Parse a
Vec of Self. Customisable for optimisations.Source§fn parse_vec_n(input: &mut I, n: usize) -> Result<Vec<Self>>
fn parse_vec_n(input: &mut I, n: usize) -> Result<Vec<Self>>
Parse a
Vec of Self of length n. Customisable for optimisations.Source§fn parse_array<const N: usize>(input: &mut I) -> Result<[Self; N]>
fn parse_array<const N: usize>(input: &mut I) -> Result<[Self; N]>
Parse an array of
Self. Customisable for optimisations.Source§fn parse_generic_array<N: ArrayLength>(
input: &mut I,
) -> Result<GenericArray<Self, N>>
fn parse_generic_array<N: ArrayLength>( input: &mut I, ) -> Result<GenericArray<Self, N>>
Parse a
GenericArray of Self. Customisable for optimisations.Source§impl<T, M> Size for MappedExtra<T, M>
impl<T, M> Size for MappedExtra<T, M>
Source§impl<T, M> Tagged for MappedExtra<T, M>
impl<T, M> Tagged for MappedExtra<T, M>
Source§impl<T, M> ToOutput for MappedExtra<T, M>where
M: InlineOutput,
T: ToOutput,
impl<T, M> ToOutput for MappedExtra<T, M>where
M: InlineOutput,
T: ToOutput,
Source§impl<T, M> Topological for MappedExtra<T, M>where
M: Topological,
T: Topological,
impl<T, M> Topological for MappedExtra<T, M>where
M: Topological,
T: Topological,
impl<T: Copy, M: Copy> Copy for MappedExtra<T, M>
Auto Trait Implementations§
impl<T, M> Freeze for MappedExtra<T, M>
impl<T, M> RefUnwindSafe for MappedExtra<T, M>where
M: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, M> Send for MappedExtra<T, M>
impl<T, M> Sync for MappedExtra<T, M>
impl<T, M> Unpin for MappedExtra<T, M>
impl<T, M> UnsafeUnpin for MappedExtra<T, M>where
M: UnsafeUnpin,
T: UnsafeUnpin,
impl<T, M> UnwindSafe for MappedExtra<T, M>where
M: UnwindSafe,
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> AsAny for T
impl<T> AsAny for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, Extra> ExtraFor<T> for Extra
impl<T, Extra> ExtraFor<T> for Extra
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> FullHash for T
impl<T> FullHash for T
fn diff_hashes(&self) -> DiffHashes
fn hashes(&self) -> ObjectHashes
fn full_hash(&self) -> Hash
Source§impl<T> ParseSlice for T
impl<T> ParseSlice for T
Source§impl<T, Extra> ParseSliceExtra<Extra> for T
impl<T, Extra> ParseSliceExtra<Extra> for T
fn parse_slice_extra( data: &[u8], resolve: &Arc<dyn Resolve>, extra: &Extra, ) -> Result<Self>
fn reparse_extra(&self, extra: &Extra) -> Result<Self>where
Self: Traversible,
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,
Pipes by value. This is generally the method you want to use. Read more
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,
Borrows
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,
Mutably borrows
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
Borrows
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
Mutably borrows
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
Borrows
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
Immutable access to the
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
Mutable access to the
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
Immutable access to the
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
Mutable access to the
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
Immutable access to the
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
Mutable access to the
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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.tap_deref() only in debug builds, and is erased in release
builds.