pub struct ItemImpl { /* private fields */ }
Implementations§
source§impl ItemImpl
impl ItemImpl
pub const INDEX_ATTRIBUTES: usize = 0usize
pub const INDEX_VISIBILITY: usize = 1usize
pub const INDEX_IMPL_KW: usize = 2usize
pub const INDEX_NAME: usize = 3usize
pub const INDEX_GENERIC_PARAMS: usize = 4usize
pub const INDEX_OF_KW: usize = 5usize
pub const INDEX_TRAIT_PATH: usize = 6usize
pub const INDEX_BODY: usize = 7usize
pub fn new_green( db: &dyn SyntaxGroup, attributes: AttributeListGreen, visibility: VisibilityGreen, impl_kw: TerminalImplGreen, name: TerminalIdentifierGreen, generic_params: OptionWrappedGenericParamListGreen, of_kw: TerminalOfGreen, trait_path: ExprPathGreen, body: MaybeImplBodyGreen, ) -> ItemImplGreen
source§impl ItemImpl
impl ItemImpl
pub fn attributes(&self, db: &dyn SyntaxGroup) -> AttributeList
pub fn visibility(&self, db: &dyn SyntaxGroup) -> Visibility
pub fn impl_kw(&self, db: &dyn SyntaxGroup) -> TerminalImpl
pub fn name(&self, db: &dyn SyntaxGroup) -> TerminalIdentifier
pub fn generic_params( &self, db: &dyn SyntaxGroup, ) -> OptionWrappedGenericParamList
pub fn of_kw(&self, db: &dyn SyntaxGroup) -> TerminalOf
pub fn trait_path(&self, db: &dyn SyntaxGroup) -> ExprPath
pub fn body(&self, db: &dyn SyntaxGroup) -> MaybeImplBody
Trait Implementations§
source§impl From<&ItemImpl> for SyntaxStablePtrId
impl From<&ItemImpl> for SyntaxStablePtrId
source§impl QueryAttrs for ItemImpl
impl QueryAttrs for ItemImpl
source§fn query_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> Vec<Attribute>
fn query_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> Vec<Attribute>
Collect all attributes named exactly
attr
attached to this node.source§fn find_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> Option<Attribute>
fn find_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> Option<Attribute>
Find first attribute named exactly
attr
attached do this node.source§fn has_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> bool
fn has_attr(&self, db: &dyn SyntaxGroup, attr: &str) -> bool
Check if this node has an attribute named exactly
attr
.source§fn has_attr_with_arg(
&self,
db: &dyn SyntaxGroup,
attr_name: &str,
arg_name: &str,
) -> bool
fn has_attr_with_arg( &self, db: &dyn SyntaxGroup, attr_name: &str, arg_name: &str, ) -> bool
Checks if the given object has an attribute with the given name and argument.
source§impl TypedSyntaxNode for ItemImpl
impl TypedSyntaxNode for ItemImpl
source§const OPTIONAL_KIND: Option<SyntaxKind> = _
const OPTIONAL_KIND: Option<SyntaxKind> = _
The relevant SyntaxKind. None for enums.
type StablePtr = ItemImplPtr
type Green = ItemImplGreen
fn missing(db: &dyn SyntaxGroup) -> Self::Green
fn from_syntax_node(db: &dyn SyntaxGroup, node: SyntaxNode) -> Self
fn as_syntax_node(&self) -> SyntaxNode
fn stable_ptr(&self) -> Self::StablePtr
impl Eq for ItemImpl
impl StructuralPartialEq for ItemImpl
Auto Trait Implementations§
impl Freeze for ItemImpl
impl RefUnwindSafe for ItemImpl
impl Send for ItemImpl
impl Sync for ItemImpl
impl Unpin for ItemImpl
impl UnwindSafe for ItemImpl
Blanket Implementations§
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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