P4C
The P4 Compiler
|
A simple event that stores the provided expression. More...
#include <trace_event_types.h>
Public Member Functions | |
Expression (const Expression &)=default | |
Expression (const IR::Expression *value, cstring label) | |
Expression (Expression &&)=default | |
const Expression * | apply (Transform &visitor) const override |
Applies the given IR transform to the expressions in this trace event. | |
const Expression * | evaluate (const Model &model, bool doComplete) const override |
Expression & | operator= (const Expression &)=default |
Expression & | operator= (Expression &&)=default |
const Expression * | subst (const SymbolicEnv &env) const override |
Public Member Functions inherited from P4::P4Tools::TraceEvents::Generic | |
Generic (const Generic &)=default | |
Generic (cstring label) | |
Generic (Generic &&)=default | |
DECLARE_TYPEINFO (Generic, TraceEvent) | |
Generic & | operator= (const Generic &)=default |
Generic & | operator= (Generic &&)=default |
Public Member Functions inherited from P4::P4Tools::TraceEvent | |
Public Member Functions inherited from P4::ICastable | |
template<typename T > | |
T & | as () |
Tries to convert the class to type T. A BUG occurs if the cast fails. | |
template<typename T > | |
const T & | as () const |
Tries to convert the class to type T. A BUG occurs if the cast fails. | |
template<typename T > | |
T * | checkedTo () |
Performs a checked cast. A BUG occurs if the cast fails. | |
template<typename T > | |
const T * | checkedTo () const |
Performs a checked cast. A BUG occurs if the cast fails. | |
Public Member Functions inherited from P4::RTTI::Base | |
template<typename T > | |
bool | is () const noexcept |
virtual bool | isA (TypeId typeId) const noexcept=0 |
template<typename T > | |
const T * | to () const noexcept |
Same as to , but returns const pointer to T. | |
template<typename T > | |
T * | to () noexcept |
virtual TypeId | typeId () const noexcept=0 |
Protected Member Functions | |
DECLARE_TYPEINFO (Expression, Generic) | |
void | print (std::ostream &os) const override |
Prints this trace event to the given ostream. | |
Protected Member Functions inherited from P4::P4Tools::TraceEvents::Generic | |
void | print (std::ostream &os) const override |
Prints this trace event to the given ostream. | |
Protected Member Functions inherited from P4::P4Tools::TraceEvent | |
DECLARE_TYPEINFO (TraceEvent) | |
Protected Member Functions inherited from P4::RTTI::Base | |
virtual const void * | toImpl (TypeId typeId) const noexcept=0 |
Additional Inherited Members | |
Protected Attributes inherited from P4::P4Tools::TraceEvents::Generic | |
cstring | label |
A simple event that stores the provided expression.
|
overridevirtual |
Applies the given IR transform to the expressions in this trace event.
Reimplemented from P4::P4Tools::TraceEvent.
|
nodiscardoverridevirtual |
Evaluates expressions in the body of this trace event for their concrete value in the given model. A BUG occurs if there are any variables that are unbound by the given model.
Reimplemented from P4::P4Tools::TraceEvent.
|
overrideprotectedvirtual |
Prints this trace event to the given ostream.
Implements P4::P4Tools::TraceEvent.
|
nodiscardoverridevirtual |
Substitutes state variables in the body of this trace event for their symbolic value in the given symbolic environment. Variables that are unbound by the given environment are left untouched.
Reimplemented from P4::P4Tools::TraceEvent.