Enum cairo_lang_syntax::node::ast::Item
source · pub enum Item {
Show 14 variants
Constant(ItemConstant),
Module(ItemModule),
Use(ItemUse),
FreeFunction(FunctionWithBody),
ExternFunction(ItemExternFunction),
ExternType(ItemExternType),
Trait(ItemTrait),
Impl(ItemImpl),
ImplAlias(ItemImplAlias),
Struct(ItemStruct),
Enum(ItemEnum),
TypeAlias(ItemTypeAlias),
InlineMacro(ItemInlineMacro),
Missing(ItemMissing),
}
Variants§
Constant(ItemConstant)
Module(ItemModule)
Use(ItemUse)
FreeFunction(FunctionWithBody)
ExternFunction(ItemExternFunction)
ExternType(ItemExternType)
Trait(ItemTrait)
Impl(ItemImpl)
ImplAlias(ItemImplAlias)
Struct(ItemStruct)
Enum(ItemEnum)
TypeAlias(ItemTypeAlias)
InlineMacro(ItemInlineMacro)
Missing(ItemMissing)
Implementations§
source§impl Item
impl Item
pub fn is_variant(kind: SyntaxKind) -> bool
Trait Implementations§
source§impl PartialEq for Item
impl PartialEq for Item
source§impl QueryAttrs for Item
impl QueryAttrs for Item
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 Item
impl TypedSyntaxNode for Item
source§const OPTIONAL_KIND: Option<SyntaxKind> = None
const OPTIONAL_KIND: Option<SyntaxKind> = None
The relevant SyntaxKind. None for enums.
type StablePtr = ItemPtr
type Green = ItemGreen
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 Item
impl StructuralEq for Item
impl StructuralPartialEq for Item
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§
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<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.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.