#[non_exhaustive]pub struct App {
pub args: AppArgs,
pub name: Ident,
pub init: Init,
pub idle: Option<Idle>,
pub monotonics: Map<Monotonic>,
pub shared_resources: Map<SharedResource>,
pub local_resources: Map<LocalResource>,
pub user_imports: Vec<ItemUse>,
pub user_code: Vec<Item>,
pub hardware_tasks: Map<HardwareTask>,
pub software_tasks: Map<SoftwareTask>,
}
Expand description
The #[app]
attribute
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.args: AppArgs
The arguments to the #[app]
attribute
name: Ident
The name of the const
item on which the #[app]
attribute has been placed
init: Init
The #[init]
function
idle: Option<Idle>
The #[idle]
function
monotonics: Map<Monotonic>
Monotonic clocks
Resources shared between tasks defined in #[shared]
local_resources: Map<LocalResource>
Task local resources defined in #[local]
user_imports: Vec<ItemUse>
User imports
user_code: Vec<Item>
User code
hardware_tasks: Map<HardwareTask>
Hardware tasks: #[task(binds = ..)]
s
software_tasks: Map<SoftwareTask>
Software tasks: #[task]
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for App
impl RefUnwindSafe for App
impl !Send for App
impl !Sync for App
impl Unpin for App
impl UnwindSafe for App
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