pub struct FactoryFuncCodeReader<E: Endianness, CRF: CodesReaderFactoryHelper<E> + ?Sized>(/* private fields */);Expand description
A newtype depending on a CodesReaderFactory and containing a function
pointer dispatching the read method for a code.
It is essentially a version of FuncCodeReader that depends on a
CodesReaderFactory and its associated
CodesReaderFactory::CodesReader instead of a generic CodesRead.
Implementations§
Source§impl<E: Endianness, CRF: CodesReaderFactoryHelper<E> + ?Sized> FactoryFuncCodeReader<E, CRF>
impl<E: Endianness, CRF: CodesReaderFactoryHelper<E> + ?Sized> FactoryFuncCodeReader<E, CRF>
Sourcepub const fn new(code: Codes) -> Result<Self, DispatchError>
pub const fn new(code: Codes) -> Result<Self, DispatchError>
Returns a new FactoryFuncCodeReader for the given code.
The code is canonicalized before the lookup, so equivalent codes yield the same reader.
§Errors
The method will return an error if there is no constant
for the given code in FactoryFuncCodeReader.
Sourcepub const fn new_with_func(
read_func: for<'a> fn(&mut <CRF as CodesReaderFactory<E>>::CodesReader<'a>) -> Result<u64, <CRF as CodesReaderFactoryHelper<E>>::Error>,
) -> Self
pub const fn new_with_func( read_func: for<'a> fn(&mut <CRF as CodesReaderFactory<E>>::CodesReader<'a>) -> Result<u64, <CRF as CodesReaderFactoryHelper<E>>::Error>, ) -> Self
Returns a new FactoryFuncCodeReader for the given function.
Sourcepub const fn get_func(
&self,
) -> for<'a> fn(&mut <CRF as CodesReaderFactory<E>>::CodesReader<'a>) -> Result<u64, <CRF as CodesReaderFactoryHelper<E>>::Error>
pub const fn get_func( &self, ) -> for<'a> fn(&mut <CRF as CodesReaderFactory<E>>::CodesReader<'a>) -> Result<u64, <CRF as CodesReaderFactoryHelper<E>>::Error>
Returns the function pointer for the code.
Sourcepub const fn get<'a>(
&self,
) -> FuncCodeReader<E, <CRF as CodesReaderFactory<E>>::CodesReader<'a>>
pub const fn get<'a>( &self, ) -> FuncCodeReader<E, <CRF as CodesReaderFactory<E>>::CodesReader<'a>>
Returns a FuncCodeReader compatible with CRF’s
CodesReaderFactory::CodesReader for a given lifetime 'a.
Trait Implementations§
Source§impl<E: Endianness, CRF: CodesReaderFactoryHelper<E> + ?Sized> Clone for FactoryFuncCodeReader<E, CRF>
impl<E: Endianness, CRF: CodesReaderFactoryHelper<E> + ?Sized> Clone for FactoryFuncCodeReader<E, CRF>
Source§impl<E: Debug + Endianness, CRF: Debug + CodesReaderFactoryHelper<E> + ?Sized> Debug for FactoryFuncCodeReader<E, CRF>
impl<E: Debug + Endianness, CRF: Debug + CodesReaderFactoryHelper<E> + ?Sized> Debug for FactoryFuncCodeReader<E, CRF>
impl<E: Copy + Endianness, CRF: Copy + CodesReaderFactoryHelper<E> + ?Sized> Copy for FactoryFuncCodeReader<E, CRF>
Auto Trait Implementations§
impl<E, CRF> Freeze for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> RefUnwindSafe for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> Send for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> Sync for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> Unpin for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> UnsafeUnpin for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
impl<E, CRF> UnwindSafe for FactoryFuncCodeReader<E, CRF>where
CRF: ?Sized,
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