pub enum PathSegmentData<'a> {
Unit,
Ident(Spanned<Name>),
Class(Spanned<Name>, Vec<ParamAssignment<'a>>),
}
Expand description
A segment of a type name.
Adapted from §A.2.2.1:
path_segment ::=
"$unit"
package_identifier
class_identifier (param_value_assignment)?
type_identifier
covergroup_identifier
Variants§
Unit
A $unit
.
Ident(Spanned<Name>)
A package, type, covergroup, or class identifier.
Class(Spanned<Name>, Vec<ParamAssignment<'a>>)
A class identifier with specializations.
Trait Implementations§
Source§impl<'a> AcceptVisitor<'a> for PathSegmentData<'a>
impl<'a> AcceptVisitor<'a> for PathSegmentData<'a>
Source§impl<'a> AnyNodeData for PathSegmentData<'a>
impl<'a> AnyNodeData for PathSegmentData<'a>
Source§fn get_name(&self) -> Option<Spanned<Name>>
fn get_name(&self) -> Option<Spanned<Name>>
Get this node’s name, or
None
if it does not have one.Source§fn fmt_indefinite(&self, fmt: &mut Formatter<'_>) -> Result
fn fmt_indefinite(&self, fmt: &mut Formatter<'_>) -> Result
Describe this node for diagnostics in indefinite form, e.g. “entity”. Read more
Source§fn fmt_definite(&self, fmt: &mut Formatter<'_>) -> Result
fn fmt_definite(&self, fmt: &mut Formatter<'_>) -> Result
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”. Read more
fn as_data(&self) -> &dyn AnyNodeDatawhere
Self: Sized,
Source§fn format_indefinite(&self) -> FormatNodeIndefinite<'_>where
Self: Sized,
fn format_indefinite(&self) -> FormatNodeIndefinite<'_>where
Self: Sized,
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Source§fn format_definite(&self) -> FormatNodeDefinite<'_>where
Self: Sized,
fn format_definite(&self) -> FormatNodeDefinite<'_>where
Self: Sized,
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”.
Source§fn to_indefinite_string(&self) -> Stringwhere
Self: Sized,
fn to_indefinite_string(&self) -> Stringwhere
Self: Sized,
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Source§fn to_definite_string(&self) -> Stringwhere
Self: Sized,
fn to_definite_string(&self) -> Stringwhere
Self: Sized,
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”.
Source§impl<'a> Clone for PathSegmentData<'a>
impl<'a> Clone for PathSegmentData<'a>
Source§fn clone(&self) -> PathSegmentData<'a>
fn clone(&self) -> PathSegmentData<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> Debug for PathSegmentData<'a>
impl<'a> Debug for PathSegmentData<'a>
Source§impl<'a> ForEachChild<'a> for PathSegmentData<'a>
impl<'a> ForEachChild<'a> for PathSegmentData<'a>
Source§fn for_each_child(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
fn for_each_child(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
Apply a function to each child node.
Source§impl<'a> ForEachNode<'a> for PathSegmentData<'a>
impl<'a> ForEachNode<'a> for PathSegmentData<'a>
Source§fn for_each_node(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
fn for_each_node(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
Apply a function to this node.
Source§impl<'a> PartialEq for PathSegmentData<'a>
impl<'a> PartialEq for PathSegmentData<'a>
impl<'a> Eq for PathSegmentData<'a>
impl<'a> StructuralPartialEq for PathSegmentData<'a>
Auto Trait Implementations§
impl<'a> Freeze for PathSegmentData<'a>
impl<'a> !RefUnwindSafe for PathSegmentData<'a>
impl<'a> Send for PathSegmentData<'a>
impl<'a> Sync for PathSegmentData<'a>
impl<'a> Unpin for PathSegmentData<'a>
impl<'a> !UnwindSafe for PathSegmentData<'a>
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