slang::ast::GenerateBlockSymbol class final

Represents blocks that are instantiated by a loop generate or conditional generate construct.

Base classes

class Symbol
Base class for all symbols (logical code constructs) such as modules, types, functions, variables, etc.
class Scope
Base class for symbols that represent a name scope; that is, they contain children and can participate in name lookup.

Public functions

const SVInt* getArrayIndex() const
Returns the loop-iteration index, or nullptr if this block is not a loop iteration.
const Expression* getConditionExpression() const
Returns the bound if/case condition, or nullptr if this block is not a conditional branch.

Public variables

GenerateBranchKind branchKind
Indicates which branch of the originating generate construct produced this block.
union slang::ast::GenerateBlockSymbol::@261013156000060067253211274000261371067023340303 @241235255260174003274270251221323031300201143101
Storage for either the loop iteration index or the bound if/case condition.
std::span<const Expression*const > caseItemExpressions
Bound case-item label expressions for case-generate blocks.

Variable documentation

union slang::ast::GenerateBlockSymbol::@261013156000060067253211274000261371067023340303 slang::ast::GenerateBlockSymbol::@241235255260174003274270251221323031300201143101

Storage for either the loop iteration index or the bound if/case condition.

The active member is selected by branchKind.