pub struct ButtonComponent<IP: 'static + InterruptPin<'static>> { /* private fields */ }
Implementations§
Source§impl<IP: 'static + InterruptPin<'static>> ButtonComponent<IP>
impl<IP: 'static + InterruptPin<'static>> ButtonComponent<IP>
pub fn new( board_kernel: &'static Kernel, driver_num: usize, button_pins: &'static [(&'static InterruptValueWrapper<'static, IP>, ActivationMode, FloatingState)], ) -> Self
Trait Implementations§
Source§impl<IP: 'static + InterruptPin<'static>> Component for ButtonComponent<IP>
impl<IP: 'static + InterruptPin<'static>> Component for ButtonComponent<IP>
Source§type StaticInput = &'static mut MaybeUninit<Button<'static, IP>>
type StaticInput = &'static mut MaybeUninit<Button<'static, IP>>
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 Button<'static, IP>
type Output = &'static Button<'static, IP>
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<IP> Freeze for ButtonComponent<IP>
impl<IP> !RefUnwindSafe for ButtonComponent<IP>
impl<IP> !Send for ButtonComponent<IP>
impl<IP> !Sync for ButtonComponent<IP>
impl<IP> Unpin for ButtonComponent<IP>
impl<IP> !UnwindSafe for ButtonComponent<IP>
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