AnalyzedAssertion class
#include <slang/analysis/AnalyzedAssertion.h>
Represents an analyzed assertion (or procedural checker).
Constructors, destructors, conversion operators
-
AnalyzedAssertion(AnalysisContext& context,
const AnalyzedProcedure& procedure,
const ast::
ConcurrentAssertionStatement& stmt) - Constructs a new AnalyzedAssertion object.
-
AnalyzedAssertion(AnalysisContext& context,
const AnalyzedProcedure& procedure,
const ast::
AssertionInstanceExpression& expr) - Constructs a new AnalyzedAssertion object.
-
AnalyzedAssertion(AnalysisContext& context,
const ast::
TimingControl* contextualClock, const ast:: Symbol& parentSymbol, const ast:: AssertionInstanceExpression& expr) - Constructs a new AnalyzedAssertion object.
Public functions
-
const ast::
AssertionExpr& getRoot() const - Gets the root of the assertion expression tree.
-
const ast::
TimingControl* getSemanticLeadingClock() const - Gets the semantic leading clock of the assertion.
-
const ast::
TimingControl* getClock(const ast:: AssertionExpr& expr) const - Gets the clock that applies to the given sub-expression of this assertion.
Public variables
-
not_
null<const ast:: Symbol*> containingSymbol - The symbol that contains this assertion.
- const AnalyzedProcedure* procedure
- The procedure that contains this assertion, if any.
-
std::
variant<const ast:: ConcurrentAssertionStatement*, const ast:: AssertionInstanceExpression*> astNode - The AST node that describes the assertion.
- bool bad
- Set to true if there was an error analyzing the assertion.
Function documentation
const ast:: TimingControl* slang:: analysis:: AnalyzedAssertion:: getClock(const ast:: AssertionExpr& expr) const
Gets the clock that applies to the given sub-expression of this assertion.