ROSE 0.11.145.147
|
Virtual base class for expanding operators.
Definition at line 266 of file SymbolicExpressionParser.h.
#include <Rose/BinaryAnalysis/SymbolicExpressionParser.h>
Public Types | |
typedef Sawyer::SharedPointer< OperatorExpansion > | Ptr |
Shared-ownership pointer. | |
Public Types inherited from Rose::BinaryAnalysis::SymbolicExpressionParser::Expansion | |
typedef Sawyer::SharedPointer< Expansion > | Ptr |
Shared-ownership pointer to an Expansion. | |
Public Member Functions | |
virtual SymbolicExpression::Ptr | immediateExpansion (const Token &name, const SymbolicExpression::Nodes &operands)=0 |
Operator to expand a list into an expression tree. | |
Public Member Functions inherited from Rose::BinaryAnalysis::SymbolicExpressionParser::Expansion | |
virtual SymbolicExpression::Ptr | delayedExpansion (const SymbolicExpression::Ptr &src, const SymbolicExpressionParser *) |
Substitute one expression with another. | |
const std::string & | title () const |
Property: Title to use for documentation. | |
void | title (const std::string &s) |
Property: Title to use for documentation. | |
const std::string & | docString () const |
Property: Documentation string. | |
void | docString (const std::string &s) |
Property: Documentation string. | |
Public Member Functions inherited from Sawyer::SharedObject | |
SharedObject () | |
Default constructor. | |
SharedObject (const SharedObject &) | |
Copy constructor. | |
virtual | ~SharedObject () |
Virtual destructor. | |
SharedObject & | operator= (const SharedObject &) |
Assignment. | |
Protected Member Functions | |
OperatorExpansion (const SmtSolverPtr &solver) | |
Protected Attributes | |
SmtSolverPtr | solver |
typedef Sawyer::SharedPointer<OperatorExpansion> Rose::BinaryAnalysis::SymbolicExpressionParser::OperatorExpansion::Ptr |
Shared-ownership pointer.
See Shared ownership.
Definition at line 269 of file SymbolicExpressionParser.h.
|
pure virtual |
Operator to expand a list into an expression tree.
The width in bits is either the width specified in square brackets for the function symbol, or zero. Functors are all called for each symbol, and the first one to return non-null is the one that's used to generate the symbolic expression.
Implemented in Rose::BinaryAnalysis::SymbolicExpressionParser::MemorySubstituter.
|
protected |
Definition at line 272 of file SymbolicExpressionParser.h.