pub struct SequentialBinaryStorageComponent<F: 'static + Flash + HasClient<'static, NonvolatileToPages<'static, F>>, C: Chip + 'static, D: ProcessStandardDebug + 'static> { /* private fields */ }
Implementations§
Source§impl<F: 'static + Flash + HasClient<'static, NonvolatileToPages<'static, F>>, C: 'static + Chip, D: 'static + ProcessStandardDebug> SequentialBinaryStorageComponent<F, C, D>
impl<F: 'static + Flash + HasClient<'static, NonvolatileToPages<'static, F>>, C: 'static + Chip, D: 'static + ProcessStandardDebug> SequentialBinaryStorageComponent<F, C, D>
pub fn new( nv_flash: &'static F, loader_driver: &'static SequentialProcessLoaderMachine<'static, C, D>, ) -> Self
Trait Implementations§
Source§impl<F: 'static + Flash + HasClient<'static, NonvolatileToPages<'static, F>>, C: 'static + Chip, D: 'static + ProcessStandardDebug> Component for SequentialBinaryStorageComponent<F, C, D>
impl<F: 'static + Flash + HasClient<'static, NonvolatileToPages<'static, F>>, C: 'static + Chip, D: 'static + ProcessStandardDebug> Component for SequentialBinaryStorageComponent<F, C, D>
Source§type StaticInput = (&'static mut MaybeUninit<<F as Flash>::Page>, &'static mut MaybeUninit<NonvolatileToPages<'static, F>>, &'static mut MaybeUninit<SequentialDynamicBinaryStorage<'static, 'static, C, D, NonvolatileToPages<'static, F>>>, &'static mut MaybeUninit<[u8; 512]>)
type StaticInput = (&'static mut MaybeUninit<<F as Flash>::Page>, &'static mut MaybeUninit<NonvolatileToPages<'static, F>>, &'static mut MaybeUninit<SequentialDynamicBinaryStorage<'static, 'static, C, D, NonvolatileToPages<'static, F>>>, &'static mut MaybeUninit<[u8; 512]>)
An optional type to specify the chip or board specific static memory
that a component needs to setup the output object(s). This is the memory
that
crate::static_buf!()
would normally setup, but generic
components cannot setup static buffers for types which are
chip-dependent, so those buffers have to be passed in manually, and the
Component::StaticInput
type makes this possible.Source§type Output = &'static SequentialDynamicBinaryStorage<'static, 'static, C, D, NonvolatileToPages<'static, F>>
type Output = &'static SequentialDynamicBinaryStorage<'static, 'static, C, D, NonvolatileToPages<'static, F>>
The type (e.g., capsule, peripheral) that this implementation of
Component
produces via Component::finalize()
. This is typically
a static reference (&'static
).Source§fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
Auto Trait Implementations§
impl<F, C, D> Freeze for SequentialBinaryStorageComponent<F, C, D>
impl<F, C, D> !RefUnwindSafe for SequentialBinaryStorageComponent<F, C, D>
impl<F, C, D> !Send for SequentialBinaryStorageComponent<F, C, D>
impl<F, C, D> !Sync for SequentialBinaryStorageComponent<F, C, D>
impl<F, C, D> Unpin for SequentialBinaryStorageComponent<F, C, D>
impl<F, C, D> !UnwindSafe for SequentialBinaryStorageComponent<F, C, D>
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