class
InstanceSymbolBaseCommon functionality for module, interface, program, and primitive instances.
Base classes
- class Symbol
- Base class for all symbols (logical code constructs) such as modules, types, functions, variables, etc.
Derived classes
- class InstanceSymbol
- Represents an instance of a module, interface, or program.
Public functions
-
auto getArrayName() const -> std::
string_view - If this instance is part of an array, walk upward to find the array's name.
- void getArrayDimensions(SmallVectorBase<ConstantRange>& dimensions) const
- Gets the set of dimensions describing the instance array that contains this instance.
Public variables
Function documentation
std:: string_view slang:: ast:: InstanceSymbolBase:: getArrayName() const
If this instance is part of an array, walk upward to find the array's name.
Otherwise returns the name of the instance itself.
void slang:: ast:: InstanceSymbolBase:: getArrayDimensions(SmallVectorBase<ConstantRange>& dimensions) const
Gets the set of dimensions describing the instance array that contains this instance.
If this instance is not part of an array, does not add any dimensions to the given list.
Variable documentation
std:: span<const uint32_ t> slang:: ast:: InstanceSymbolBase:: arrayPath
The path to this instance, if it is contained within an array (or multiple nested arrays).
This is a list of indices that can be used to index into the arrays' elements list, always zero based. This is not necessarily what the user wrote in the source code; the array dimensions are needed to translate from this canonical space back to the source code indices.