Enum rustc_ap_rustc_ast::ast::ItemKind [−][src]
pub enum ItemKind {}Show variants
ExternCrate(Option<Symbol>), Use(UseTree), Static(P<Ty>, Mutability, Option<P<Expr>>), Const(Defaultness, P<Ty>, Option<P<Expr>>), Fn(Box<FnKind>), Mod(Unsafe, ModKind), ForeignMod(ForeignMod), GlobalAsm(InlineAsm), TyAlias(Box<TyAliasKind>), Enum(EnumDef, Generics), Struct(VariantData, Generics), Union(VariantData, Generics), Trait(Box<TraitKind>), TraitAlias(Generics, GenericBounds), Impl(Box<ImplKind>), MacCall(MacCall), MacroDef(MacroDef),
Variants
An extern crate
item, with the optional original crate name if the crate was renamed.
E.g., extern crate foo
or extern crate foo_bar as foo
.
Use(UseTree)
A use declaration item (use
).
E.g., use foo;
, use foo::bar;
or use foo::bar as FooBar;
.
A static item (static
).
E.g., static FOO: i32 = 42;
or static FOO: &'static str = "bar";
.
A constant item (const
).
E.g., const FOO: i32 = 42;
.
A function declaration (fn
).
E.g., fn foo(bar: usize) -> usize { .. }
.
A module declaration (mod
).
E.g., mod foo;
or mod foo { .. }
.
unsafe
keyword on modules is accepted syntactically for macro DSLs, but not
semantically by Rust.
ForeignMod(ForeignMod)
An external module (extern
).
E.g., extern {}
or extern "C" {}
.
GlobalAsm(InlineAsm)
Module-level inline assembly (from global_asm!()
).
TyAlias(Box<TyAliasKind>)
A type alias (type
).
E.g., type Foo = Bar<u8>;
.
An enum definition (enum
).
E.g., enum Foo<A, B> { C<A>, D<B> }
.
Struct(VariantData, Generics)
A struct definition (struct
).
E.g., struct Foo<A> { x: A }
.
Union(VariantData, Generics)
A union definition (union
).
E.g., union Foo<A, B> { x: A, y: B }
.
A trait declaration (trait
).
E.g., trait Foo { .. }
, trait Foo<T> { .. }
or auto trait Foo {}
.
TraitAlias(Generics, GenericBounds)
Trait alias
E.g., trait Foo = Bar + Quux;
.
An implementation.
E.g., impl<A> Foo<A> { .. }
or impl<A> Trait for Foo<A> { .. }
.
MacCall(MacCall)
A macro invocation.
E.g., foo!(..)
.
MacroDef(MacroDef)
A macro definition.
Implementations
Trait Implementations
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl !RefUnwindSafe for ItemKind
impl !UnwindSafe for ItemKind
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V