class
AnalyzedProcedureRepresents an analyzed procedure.
Note that this can include continuous assignments, which are not technically procedures but are treated as such for analysis purposes.
Constructors, destructors, conversion operators
-
AnalyzedProcedure(AnalysisContext& context,
const ast::
Symbol& symbol, const AnalyzedProcedure* parentProcedure = nullptr) - Constructs a new AnalyzedProcedure object.
Public functions
-
auto getInferredClock() const -> const ast::
TimingControl* - Returns the inferred clocking block for the procedure, if available.
-
auto getAssertions() const -> std::
span<const AnalyzedAssertion> - Gets the list of analyzed assertions in the procedure.
-
auto getDrivers() const -> std::
span<const SymbolDriverListPair> - Gets all of the drivers in the procedure.
-
auto getCallExpressions() const -> std::
span<const ast:: CallExpression*const> - Gets all of the subroutine calls in the procedure.
Public variables
-
not_
null<const ast:: Symbol*> analyzedSymbol - The symbol that was analyzed.
- const AnalyzedProcedure* parentProcedure
- The procedure that contains this one, if any.
Function documentation
const ast:: TimingControl* slang:: analysis:: AnalyzedProcedure:: getInferredClock() const
Returns the inferred clocking block for the procedure, if available.
std:: span<const AnalyzedAssertion> slang:: analysis:: AnalyzedProcedure:: getAssertions() const
Gets the list of analyzed assertions in the procedure.
Variable documentation
const AnalyzedProcedure* slang:: analysis:: AnalyzedProcedure:: parentProcedure
The procedure that contains this one, if any.
Only possible for procedural checker instances.