AnalyzedProcedure class
#include <slang/analysis/AnalyzedProcedure.h>
Represents 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
-
const ast::
TimingControl* getInferredClock() const - Returns the inferred clocking block for the procedure, if available.
-
std::
span<const AnalyzedAssertion> getAssertions() const - Gets the list of analyzed assertions in the procedure.
-
std::
span<const SymbolDriverListPair> getDrivers() const - Gets all of the drivers in the procedure.
-
std::
span<const ast:: CallExpression*const> getCallExpressions() const - Gets all of the subroutine calls in the procedure.
-
std::
span<const ast:: Statement*const> getTimingControls() const - Gets all of the timing control statements directly 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.