Struct moore_svlog_syntax::ast::Node [−][src]
pub struct Node<'a, T> {
pub id: NodeId,
pub span: Span,
pub parent: Cell<Option<&'a dyn AnyNode<'a>>>,
pub order: Cell<usize>,
pub data: T,
}Expand description
Common denominator across all AST nodes.
Fields
id: NodeIdUnique ID assigned to the node.
span: SpanFull span the node covers in the input.
parent: Cell<Option<&'a dyn AnyNode<'a>>>Parent node.
order: Cell<usize>Lexical order of the node.
data: TPer-node data.
Implementations
Check if this is an implicit type.
Check if this is an implicit type.
Trait Implementations
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ClassDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ClassDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ContAssignData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ContAssignData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, DataTypeData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, DataTypeData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, DpiDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, DpiDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, EnumNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, EnumNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ForeachIndexData>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ForeachIndexData>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateBlockData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateBlockData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateCaseData>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateCaseData>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateForData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateForData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateIfData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenerateIfData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenvarDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, GenvarDeclData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImplicitDataTypeData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImplicitDataTypeData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImportDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImportDeclData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImportItemData>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ImportItemData>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, InstNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, InstNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, InterfaceData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, InterfaceData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportNameData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportPortData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportPortData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportSimplePortData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModportSimplePortData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModuleData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ModuleData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, NetDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, NetDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PackageData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PackageData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PackedDimData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PackedDimData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamTypeDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamTypeDeclData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamValueDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ParamValueDeclData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PathSegmentData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PathSegmentData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PatternFieldData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PatternFieldData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PortConnData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PortConnData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PortDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, PortDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ProcedureData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, ProcedureData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SourceFileData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SourceFileData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, StructData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, StructData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, StructMemberData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, StructMemberData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutineDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutineDeclData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutinePortData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutinePortData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutinePrototypeData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, SubroutinePrototypeData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, TypeKindData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, TypeKindData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, TypedefData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, TypedefData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, UnpackedDimData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, UnpackedDimData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDeclData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDeclNameData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDeclNameData<'a>>> for Arena<'a> where
'a: 'arena,
Allocate a value of type T.
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDimData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'arena, 'a> Alloc<'arena, 'arena, Node<'a, VarDimData<'a>>> for Arena<'a> where
'a: 'arena,
impl<'a, T> AnyNode<'a> for Node<'a, T> where
Self: BasicNode<'a> + Display + AnyNodeData,
T: Debug + ForEachChild<'a> + Send + Sync,
impl<'a, T> AnyNode<'a> for Node<'a, T> where
Self: BasicNode<'a> + Display + AnyNodeData,
T: Debug + ForEachChild<'a> + Send + Sync,
Automatically implement AnyNode for Node<T> if enough information is
present.
Get this node’s parent.
Link up this node as an expansion of another node. Read more
Get a span that is terse and suitable to pinpoint the node for a human.
Automatically implement AnyNodeData for Node<T> if the inner node
implements it.
Get this node’s name, or None if it does not have one.
Describe this node for diagnostics in indefinite form, e.g. “entity”. Read more
Describe this node for diagnostics in definite form, e.g. “entity ‘top’”. Read more
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Describe this node for diagnostics in definite form, e.g. “entity ‘top’”. Read more
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Describe this node for diagnostics in definite form, e.g. “entity ‘top’”. Read more
Allow any node to be debug-formatted.
Allow any node to be printed in diagnostics in a human-friendly form.
Apply a function to each child node.
Apply a function to this node.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl<'a, T> !RefUnwindSafe for Node<'a, T>
impl<'a, T> !UnwindSafe for Node<'a, T>
Blanket Implementations
Mutably borrows from an owned value. Read more