pub struct Variant { /* private fields */ }Implementations§
Source§impl Variant
 
impl Variant
pub const INDEX_ATTRIBUTES: usize = 0usize
pub const INDEX_NAME: usize = 1usize
pub const INDEX_TYPE_CLAUSE: usize = 2usize
pub fn new_green( db: &dyn SyntaxGroup, attributes: AttributeListGreen, name: TerminalIdentifierGreen, type_clause: OptionTypeClauseGreen, ) -> VariantGreen
Source§impl Variant
 
impl Variant
pub fn attributes(&self, db: &dyn SyntaxGroup) -> AttributeList
pub fn name(&self, db: &dyn SyntaxGroup) -> TerminalIdentifier
pub fn type_clause(&self, db: &dyn SyntaxGroup) -> OptionTypeClause
Trait Implementations§
Source§impl From<&Variant> for SyntaxStablePtrId
 
impl From<&Variant> for SyntaxStablePtrId
Source§impl QueryAttrs for Variant
 
impl QueryAttrs for Variant
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 Variant
 
impl TypedSyntaxNode for Variant
Source§const OPTIONAL_KIND: Option<SyntaxKind>
 
const OPTIONAL_KIND: Option<SyntaxKind>
The relevant SyntaxKind. None for enums.
type StablePtr = VariantPtr
type Green = VariantGreen
fn missing(db: &dyn SyntaxGroup) -> Self::Green
fn from_syntax_node(db: &dyn SyntaxGroup, node: SyntaxNode) -> Self
fn cast(db: &dyn SyntaxGroup, node: SyntaxNode) -> Option<Self>
fn as_syntax_node(&self) -> SyntaxNode
fn stable_ptr(&self) -> Self::StablePtr
impl Eq for Variant
impl StructuralPartialEq for Variant
Auto Trait Implementations§
impl Freeze for Variant
impl RefUnwindSafe for Variant
impl Send for Variant
impl Sync for Variant
impl Unpin for Variant
impl UnwindSafe for Variant
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§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