pub enum Extern {
None,
Implicit(Span),
Explicit(StrLit, Span),
}
Expand description
extern
qualifier on a function item or function type.
Variants§
None
No explicit extern keyword was used
E.g. fn foo() {}
Implicit(Span)
An explicit extern keyword was used, but with implicit ABI
E.g. extern fn foo() {}
This is just extern "C"
(see rustc_target::spec::abi::Abi::FALLBACK
)
Explicit(StrLit, Span)
An explicit extern keyword was used with an explicit ABI
E.g. extern "C" fn foo() {}
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for Extern
impl !Send for Extern
impl !Sync for Extern
impl Unpin for Extern
impl UnwindSafe for Extern
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
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes
Size for each variant:
None
: 0 bytesImplicit
: 12 bytesExplicit
: 32 bytes