[][src]Module moore_svlog::ast

An abstract syntax tree for SystemVerilog.

Structs

Arena

An arena.

Assertion
CallArg
ClassDeclData

A class declaration.

ClassItem
Constraint
ConstraintItem
ContAssignData

A continuous assignment statement.

CycleDelay
DelayControl
EnumData

An enum definition.

EnumNameData

A single entry in an enum.

EventControl
ForeachIndexData

A foreach-loop index variable.

FormatNodeDefinite

Format a node in definite form.

FormatNodeIndefinite

Format a node in indefinite form.

GenerateBlockData

A body of a generate construct.

GenerateCaseData

A case generate statement.

GenerateForData

A for generate statement.

GenerateIfData

An if generate statement.

GenvarDeclData

A generate variable declaration.

Identifier
ImplicitDataTypeData

An implicit data type.

ImportDeclData

An import declaration.

ImportItemData

A single import.

InstData

An instantiation of a module.

InstNameData

A single module instance.

InterfaceData

An interface.

ModportData

A modport declaration in an interface.

ModportNameData

A single modport declaration.

ModportSimplePortData

A single simple modport port.

ModuleData

A module.

NetDeclData

A net declaration.

Node

Common denominator across all AST nodes.

PackageData

A package.

ParamAssignment
ParamDeclData

A parameter or localparam declaration.

ParamTypeDeclData

A single type assignment within a parameter or localparam declaration.

ParamValueDeclData

A single value assignment within a parameter or localparam declaration.

PortDeclData

A port declaration in an item body.

ProcedureData

A procedure such as always*, initial, or final.

PropExpr
PropSpec
RootData

All things being compiled.

SeqExpr
SourceFileData

An entire source file.

StmtData

A statement.

StreamExpr
StructData

A struct definition.

StructMemberData

A struct field.

SubroutineDeclData

A function or task declaration.

SubroutinePortData

A function or task port.

SubroutinePortDecl
SubroutinePortName
SubroutinePrototypeData

A function or task prototype.

Timeunit

A time unit specification.

TypeData

A type.

TypedefData

A type definition.

VarDeclData

A variable declaration.

VarDeclNameData

A variable or net declaration name.

Enums

AllNode

An exhaustive list of all nodes.

AssertionActionBlock
AssertionData
AssertionDeferred
AssignOp
BlockingAssertion
CaseItem
CaseKind
CaseMode
ChargeStrength
ClassItemData
ClassItemQualifier
ConcurrentAssertion
ConstraintItemData
ConstraintKind
DataTypeData

A data type.

DataTypeOrImplicit

A possible implicit data type.

DpiDeclData

A DPI declaration such as import "DPI-C" or export "DPI-C".

DpiProperty

A DPI function/task property.

DriveStrength
EdgeIdent
EventControlData
EventExpr
ExprData

An expression.

IntType

An integer type.

ItemData

An item that may appear in a hierarchical scope.

JoinKind
Lifetime

Lifetime specifier for variables, tasks, and functions. Defaults to static.

ModportPortData

A modport ports declaration.

NetKind
NetStrength
NetType
PackedDimData

A packed dimension.

ParamKind
PathSegmentData

A segment of a type name.

PatternFieldData

A field in a '{...} pattern.

PortConnData

A port connection in an instantiation.

PortConnMode

How a named port connection is made.

PortData

A module or interface port as declared in the port list.

PortDir
ProcedureKind
PropBinOp
PropExprData
PropSeqBinOp
PropSeqOp
RandomQualifier
RangeMode
RealType

A real type.

SeqBinOp
SeqExprData
SeqRep
StmtKind

The different kinds of statement.

StreamConcatSlice
StructKind
SubroutineItem
SubroutineKind
SubroutinePortDir
TimingControl
TypeDim
TypeKindData

A type without sign and packed dimensions.

TypeOrExpr

An ambiguous node that can either be a type or and expression.

TypeSign
UniquePriority
UnpackedDimData

An unpacked dimension.

ValueRange
VarDimData

A variable dimension.

VarKind

Whether a declaration is a variable or a net.

Traits

AcceptVisitor

A node that accepts Visitors.

AnyNode

An AST node.

AnyNodeData

Common details of an AST node.

BasicNode

Basic attributes of an AST node.

ForEachChild

A node which allows iterating over each child node.

ForEachNode

A node which can pass itself as AnyNode to a callback.

Visitor

A visitor.

WalkVisitor

A node that walks a Visitor over itself.

Type Definitions

ClassDecl
ContAssign
DataType
DpiDecl
Enum
EnumName
Expr
ForeachIndex
GenerateBlock
GenerateCase
GenerateFor
GenerateIf
GenvarDecl
ImplicitDataType
ImportDecl
ImportItem
Inst
InstName
Interface
IntfDeclDeprecated
Item
ModDeclDeprecated
Modport
ModportDeclDeprecated
ModportName
ModportPort
ModportSimplePort
Module
NetDecl
Package
PackageDeclDeprecated
PackedDim
ParamDecl
ParamTypeDecl
ParamValueDecl
PathSegment
PatternField
Port
PortConn
PortDecl
Procedure
Root
SourceFile
Stmt
Struct
StructMember
SubroutineDecl
SubroutinePort
SubroutinePrototype
Type
TypeKind
Typedef
UnpackedDim
VarDecl
VarDeclName
VarDim