[][src]Struct syntax::ast::Attribute

pub struct Attribute {
    pub id: AttrId,
    pub style: AttrStyle,
    pub path: Path,
    pub tokens: TokenStream,
    pub is_sugared_doc: bool,
    pub span: Span,
}

Metadata associated with an item. Doc-comments are promoted to attributes that have is_sugared_doc = true.

Fields

id: AttrIdstyle: AttrStylepath: Pathtokens: TokenStreamis_sugared_doc: boolspan: Span

Methods

impl Attribute[src]

pub fn check_name(&self, name: Symbol) -> bool[src]

Returns true if the attribute's path matches the argument. If it matches, then the attribute is marked as used.

To check the attribute name without marking it used, use the path field directly.

pub fn ident(&self) -> Option<Ident>[src]

For a single-segment attribute returns its name, otherwise returns None.

pub fn name_or_empty(&self) -> Symbol[src]

pub fn value_str(&self) -> Option<Symbol>[src]

pub fn meta_item_list(&self) -> Option<Vec<NestedMetaItem>>[src]

pub fn is_word(&self) -> bool[src]

pub fn is_meta_item_list(&self) -> bool[src]

pub fn is_value_str(&self) -> bool[src]

Indicates if the attribute is a Value String.

impl Attribute[src]

pub fn meta(&self) -> Option<MetaItem>[src]

Extracts the MetaItem from inside this Attribute.

pub fn parse<'a, T, F>(&self, sess: &'a ParseSess, f: F) -> PResult<'a, T> where
    F: FnMut(&mut Parser<'a>) -> PResult<'a, T>, 
[src]

pub fn parse_list<'a, T, F>(
    &self,
    sess: &'a ParseSess,
    f: F
) -> PResult<'a, Vec<T>> where
    F: FnMut(&mut Parser<'a>) -> PResult<'a, T>, 
[src]

pub fn parse_meta<'a>(&self, sess: &'a ParseSess) -> PResult<'a, MetaItem>[src]

pub fn with_desugared_doc<T, F>(&self, f: F) -> T where
    F: FnOnce(&Attribute) -> T, 
[src]

Converts self to a normal #[doc="foo"] comment, if it is a comment like /// or /** */. (Returns self unchanged for non-sugared doc attributes.)

Trait Implementations

impl Clone for Attribute[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Attribute[src]

impl Encodable for Attribute[src]

impl Decodable for Attribute[src]

Auto Trait Implementations

impl !Send for Attribute

impl !Sync for Attribute

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Encodable for T where
    T: UseSpecializedEncodable + ?Sized
[src]

impl<T> Decodable for T where
    T: UseSpecializedDecodable
[src]

impl<E> SpecializationError for E[src]

impl<T> Send for T where
    T: ?Sized
[src]

impl<T> Sync for T where
    T: ?Sized
[src]

impl<T> Erased for T[src]