Enum rustc_hir::hir::ForeignItemKind
source · pub enum ForeignItemKind<'hir> {
Fn(&'hir FnDecl<'hir>, &'hir [Ident], &'hir Generics<'hir>),
Static(&'hir Ty<'hir>, Mutability),
Type,
}
Expand description
An item within an extern
block.
Variants§
Fn(&'hir FnDecl<'hir>, &'hir [Ident], &'hir Generics<'hir>)
A foreign function.
Static(&'hir Ty<'hir>, Mutability)
A foreign static item (static ext: u8
).
Type
A foreign type.
Trait Implementations§
source§impl<'hir> Clone for ForeignItemKind<'hir>
impl<'hir> Clone for ForeignItemKind<'hir>
source§fn clone(&self) -> ForeignItemKind<'hir>
fn clone(&self) -> ForeignItemKind<'hir>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<'hir> Debug for ForeignItemKind<'hir>
impl<'hir> Debug for ForeignItemKind<'hir>
source§impl<'hir, __CTX> HashStable<__CTX> for ForeignItemKind<'hir>where
__CTX: HashStableContext,
impl<'hir, __CTX> HashStable<__CTX> for ForeignItemKind<'hir>where __CTX: HashStableContext,
fn hash_stable(&self, __hcx: &mut __CTX, __hasher: &mut StableHasher)
impl<'hir> Copy for ForeignItemKind<'hir>
Auto Trait Implementations§
impl<'hir> RefUnwindSafe for ForeignItemKind<'hir>
impl<'hir> !Send for ForeignItemKind<'hir>
impl<'hir> !Sync for ForeignItemKind<'hir>
impl<'hir> Unpin for ForeignItemKind<'hir>
impl<'hir> UnwindSafe for ForeignItemKind<'hir>
Blanket Implementations§
source§impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere
T: Copy,
impl<'tcx, T> ArenaAllocatable<'tcx, IsCopy> for Twhere T: Copy,
fn allocate_on<'a>(self, arena: &'a Arena<'tcx>) -> &'a mut T
fn allocate_from_iter<'a>( arena: &'a Arena<'tcx>, iter: impl IntoIterator<Item = T> ) -> &'a mut [T]
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: 40 bytes
Size for each variant:
Fn
: 39 bytesStatic
: 15 bytesType
: 0 bytes