slang::ast::ModportPortSymbol class

Represents a single port specifier in a modport declaration.

Base classes

class ValueSymbol
A base class for symbols that represent a value (for example a variable or a parameter).

Public functions

auto getConnectionExpr() const -> const Expression*
Returns an expression that represents whatever this port connects to.

Public variables

ArgumentDirection direction
The direction of data flowing across the port.
const Symbol* internalSymbol
An instance-internal symbol that this port connects to, if any.
const Expression* explicitConnection
An optional explicit expression that defines how the port connects to members internal to the instance.

Function documentation

const Expression* slang::ast::ModportPortSymbol::getConnectionExpr() const

Returns an expression that represents whatever this port connects to.

For explicit connections, this just returns explicitConnection and for implicit connections this returns a NamedValueExpression that wraps the internalSymbol. Returns nullptr if there is no connection at all.

Variable documentation

const Symbol* slang::ast::ModportPortSymbol::internalSymbol

An instance-internal symbol that this port connects to, if any.

Ports that do not connect directly to an internal symbol will have this set to nullptr.