Enum syn::Item [−][src]
#[non_exhaustive]
pub enum Item {
Show 17 variants
Const(ItemConst),
Enum(ItemEnum),
ExternCrate(ItemExternCrate),
Fn(ItemFn),
ForeignMod(ItemForeignMod),
Impl(ItemImpl),
Macro(ItemMacro),
Macro2(ItemMacro2),
Mod(ItemMod),
Static(ItemStatic),
Struct(ItemStruct),
Trait(ItemTrait),
TraitAlias(ItemTraitAlias),
Type(ItemType),
Union(ItemUnion),
Use(ItemUse),
Verbatim(TokenStream),
}Expand description
Things that can appear directly inside of a module or scope.
This type is available only if Syn is built with the "full" feature.
Syntax tree enum
This type is a syntax tree enum.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Const(ItemConst)
Tuple Fields
0: ItemConstA constant item: const MAX: u16 = 65535.
Enum(ItemEnum)
Tuple Fields
0: ItemEnumAn enum definition: enum Foo<A, B> { A(A), B(B) }.
ExternCrate(ItemExternCrate)
Tuple Fields
An extern crate item: extern crate serde.
Fn(ItemFn)
Tuple Fields
0: ItemFnA free-standing function: fn process(n: usize) -> Result<()> { ... }.
ForeignMod(ItemForeignMod)
Tuple Fields
A block of foreign items: extern "C" { ... }.
Impl(ItemImpl)
Tuple Fields
0: ItemImplAn impl block providing trait or associated items: impl<A> Trait for Data<A> { ... }.
Macro(ItemMacro)
Tuple Fields
0: ItemMacroA macro invocation, which includes macro_rules! definitions.
Macro2(ItemMacro2)
Tuple Fields
0: ItemMacro2A 2.0-style declarative macro introduced by the macro keyword.
Mod(ItemMod)
Tuple Fields
0: ItemModA module or module declaration: mod m or mod m { ... }.
Static(ItemStatic)
Tuple Fields
0: ItemStaticA static item: static BIKE: Shed = Shed(42).
Struct(ItemStruct)
Tuple Fields
0: ItemStructA struct definition: struct Foo<A> { x: A }.
Trait(ItemTrait)
Tuple Fields
0: ItemTraitA trait definition: pub trait Iterator { ... }.
TraitAlias(ItemTraitAlias)
Tuple Fields
A trait alias: pub trait SharableIterator = Iterator + Sync.
Type(ItemType)
Tuple Fields
0: ItemTypeA type alias: type Result<T> = std::result::Result<T, MyError>.
Union(ItemUnion)
Tuple Fields
0: ItemUnionA union definition: union Foo<A, B> { x: A, y: B }.
Use(ItemUse)
Tuple Fields
0: ItemUseA use declaration: use std::collections::HashMap.
Verbatim(TokenStream)
Tuple Fields
0: TokenStreamTokens forming an item not interpreted by Syn.
Trait Implementations
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for Item
impl UnwindSafe for Item
Blanket Implementations
Mutably borrows from an owned value. Read more
