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),
// some variants omitted
}
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
Const(ItemConst)
A constant item: const MAX: u16 = 65535
.
Enum(ItemEnum)
An enum definition: enum Foo<A, B> { A(A), B(B) }
.
ExternCrate(ItemExternCrate)
An extern crate
item: extern crate serde
.
Fn(ItemFn)
A free-standing function: fn process(n: usize) -> Result<()> { ... }
.
ForeignMod(ItemForeignMod)
A block of foreign items: extern "C" { ... }
.
Impl(ItemImpl)
An impl block providing trait or associated items: impl<A> Trait for Data<A> { ... }
.
Macro(ItemMacro)
A macro invocation, which includes macro_rules!
definitions.
Macro2(ItemMacro2)
A 2.0-style declarative macro introduced by the macro
keyword.
Mod(ItemMod)
A module or module declaration: mod m
or mod m { ... }
.
Static(ItemStatic)
A static item: static BIKE: Shed = Shed(42)
.
Struct(ItemStruct)
A struct definition: struct Foo<A> { x: A }
.
Trait(ItemTrait)
A trait definition: pub trait Iterator { ... }
.
TraitAlias(ItemTraitAlias)
A trait alias: pub trait SharableIterator = Iterator + Sync
.
Type(ItemType)
A type alias: type Result<T> = std::result::Result<T, MyError>
.
Union(ItemUnion)
A union definition: union Foo<A, B> { x: A, y: B }
.
Use(ItemUse)
A use declaration: use std::collections::HashMap
.
Verbatim(TokenStream)
Tokens forming an item not interpreted by Syn.
Trait Implementations
sourceimpl From<DeriveInput> for Item
impl From<DeriveInput> for Item
sourcefn from(input: DeriveInput) -> Item
fn from(input: DeriveInput) -> Item
Performs the conversion.
sourceimpl From<ItemExternCrate> for Item
impl From<ItemExternCrate> for Item
sourcefn from(e: ItemExternCrate) -> Item
fn from(e: ItemExternCrate) -> Item
Performs the conversion.
sourceimpl From<ItemForeignMod> for Item
impl From<ItemForeignMod> for Item
sourcefn from(e: ItemForeignMod) -> Item
fn from(e: ItemForeignMod) -> Item
Performs the conversion.
sourceimpl From<ItemMacro2> for Item
impl From<ItemMacro2> for Item
sourcefn from(e: ItemMacro2) -> Item
fn from(e: ItemMacro2) -> Item
Performs the conversion.
sourceimpl From<ItemStatic> for Item
impl From<ItemStatic> for Item
sourcefn from(e: ItemStatic) -> Item
fn from(e: ItemStatic) -> Item
Performs the conversion.
sourceimpl From<ItemStruct> for Item
impl From<ItemStruct> for Item
sourcefn from(e: ItemStruct) -> Item
fn from(e: ItemStruct) -> Item
Performs the conversion.
sourceimpl From<ItemTraitAlias> for Item
impl From<ItemTraitAlias> for Item
sourcefn from(e: ItemTraitAlias) -> Item
fn from(e: ItemTraitAlias) -> Item
Performs the conversion.
sourceimpl ToTokens for Item
impl ToTokens for Item
sourcefn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Write self
to the given TokenStream
. Read more
sourcefn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
Convert self
directly into a TokenStream
object. Read more
sourcefn into_token_stream(self) -> TokenStream
fn into_token_stream(self) -> TokenStream
Convert self
directly into a TokenStream
object. Read more
Auto Trait Implementations
impl RefUnwindSafe for Item
impl !Send for Item
impl !Sync for Item
impl Unpin for Item
impl UnwindSafe for Item
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Spanned for T where
T: Spanned + ?Sized,
impl<T> Spanned for T where
T: Spanned + ?Sized,
sourcefn span(&self) -> Span
fn span(&self) -> Span
Returns a Span
covering the complete contents of this syntax tree
node, or Span::call_site()
if this node is empty. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more