[][src]Struct r3::kernel::cfg::CfgInterruptHandlerBuilder

pub struct CfgInterruptHandlerBuilder<System> { /* fields omitted */ }

Configuration builder type for InterruptHandler.

Implementations

impl<System: Port> CfgInterruptHandlerBuilder<System>[src]

pub const fn start(self, start: fn(_: usize)) -> Self[src]

[Required] Specify the entry point.

pub const fn param(self, param: usize) -> Self[src]

Specify the parameter to start. Defaults to 0.

pub const fn line(self, line: InterruptNum) -> Self[src]

[Required] Specify the interrupt line to attach the interrupt handler to.

pub const fn priority(self, priority: i32) -> Self[src]

Specify the priority. Defaults to 0 when unspecified.

When multiple handlers are registered to a single interrupt line, those with smaller priority values will execute earlier.

This should not be confused with an interrupt line's priority.

pub const unsafe fn unmanaged(self) -> Self[src]

Indicate that the entry point function is unmanaged-safe (designed to execute as an unmanaged interrupt handler).

If an interrupt line is not configured with an initial priority value that falls within a managed range, configuration will fail unless all of its attached interrupt handlers are marked as unmanaged-safe.

Safety

The behavior of system calls is undefined in an unmanaged interrupt handler.

pub const fn finish(
    self,
    cfg: &mut CfgBuilder<System>
) -> InterruptHandler<System>
[src]

Complete the registration of an interrupt handler, returning an InterruptHandler object.

Auto Trait Implementations

impl<System> Send for CfgInterruptHandlerBuilder<System> where
    System: Send

impl<System> Sync for CfgInterruptHandlerBuilder<System> where
    System: Sync

impl<System> Unpin for CfgInterruptHandlerBuilder<System> where
    System: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.