#[non_exhaustive]pub struct Init {
pub args: InitArgs,
pub attrs: Vec<Attribute>,
pub name: Ident,
pub context: Box<Pat>,
pub stmts: Vec<Stmt>,
pub user_shared_struct: Ident,
pub user_local_struct: Ident,
}
Expand description
The init
-ialization function
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: InitArgs
init
context metadata
attrs: Vec<Attribute>
Attributes that will apply to this init
function
name: Ident
The name of the #[init]
function
context: Box<Pat>
The context argument
stmts: Vec<Stmt>
The statements that make up this init
function
The name of the user provided shared resources struct
user_local_struct: Ident
The name of the user provided local resources struct
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Init
impl RefUnwindSafe for Init
impl !Send for Init
impl !Sync for Init
impl Unpin for Init
impl UnwindSafe for Init
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