pub struct Attr { /* private fields */ }Implementations§
Source§impl Attr
impl Attr
pub fn meta(&self) -> Option<Meta>
pub fn excl_token(&self) -> Option<SyntaxToken<RustLanguage>>
pub fn pound_token(&self) -> Option<SyntaxToken<RustLanguage>>
pub fn l_brack_token(&self) -> Option<SyntaxToken<RustLanguage>>
pub fn r_brack_token(&self) -> Option<SyntaxToken<RustLanguage>>
Source§impl Attr
impl Attr
pub fn as_simple_atom(&self) -> Option<SmolStr>
pub fn as_simple_call(&self) -> Option<(SmolStr, TokenTree)>
pub fn as_simple_path(&self) -> Option<Path>
pub fn simple_name(&self) -> Option<SmolStr>
pub fn path(&self) -> Option<Path>
pub fn kind(&self) -> AttrKind
Sourcepub fn skip_cfg_attrs(&self) -> SmallVec<[Meta; 1]>
pub fn skip_cfg_attrs(&self) -> SmallVec<[Meta; 1]>
Includes cfg_attr() inner metas (without considering the predicate).
Trait Implementations§
Source§impl AstNode for Attr
impl AstNode for Attr
Source§fn kind() -> SyntaxKind
fn kind() -> SyntaxKind
This panics if the
SyntaxKind is not statically known.fn can_cast(kind: SyntaxKind) -> bool
fn cast(syntax: SyntaxNode<RustLanguage>) -> Option<Attr>
fn syntax(&self) -> &SyntaxNode<RustLanguage>
fn clone_for_update(&self) -> Selfwhere
Self: Sized,
fn clone_subtree(&self) -> Selfwhere
Self: Sized,
impl Eq for Attr
Auto Trait Implementations§
impl !RefUnwindSafe for Attr
impl !Send for Attr
impl !Sync for Attr
impl !UnwindSafe for Attr
impl Freeze for Attr
impl Unpin for Attr
impl UnsafeUnpin for Attr
Blanket Implementations§
Source§impl<N> AstNodeEdit for N
impl<N> AstNodeEdit for N
fn indent_level(&self) -> IndentLevel
fn indent(&self, level: IndentLevel) -> Self
fn indent_with_mapping(&self, level: IndentLevel, make: &SyntaxFactory) -> Self
fn dedent(&self, level: IndentLevel) -> Self
fn reset_indent(&self) -> Self
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more