Public Member Functions | List of all members
Rose::BinaryAnalysis::SymbolicExpr::AddSimplifier Struct Reference


Definition at line 584 of file BinarySymbolicExpr.h.

Inheritance diagram for Rose::BinaryAnalysis::SymbolicExpr::AddSimplifier:
Inheritance graph
Collaboration diagram for Rose::BinaryAnalysis::SymbolicExpr::AddSimplifier:
Collaboration graph

Public Member Functions

virtual Ptr fold (Nodes::const_iterator, Nodes::const_iterator) const ROSE_OVERRIDE
 Constant folding. More...
virtual Ptr rewrite (Interior *) const ROSE_OVERRIDE
 Rewrite the entire expression to something simpler. More...

Member Function Documentation

virtual Ptr Rose::BinaryAnalysis::SymbolicExpr::AddSimplifier::fold ( Nodes::const_iterator  begin,
Nodes::const_iterator  end 
) const

Constant folding.

The range begin (inclusive) to end (exclusive) must contain at least two nodes and all of the nodes must be leaf nodes with known values. This method returns a new folded node if folding is possible, or the null pointer if folding is not possible.

Reimplemented from Rose::BinaryAnalysis::SymbolicExpr::Simplifier.

virtual Ptr Rose::BinaryAnalysis::SymbolicExpr::AddSimplifier::rewrite ( Interior ) const

Rewrite the entire expression to something simpler.

Returns the new node if the node can be simplified, otherwise returns null.

Reimplemented from Rose::BinaryAnalysis::SymbolicExpr::Simplifier.

The documentation for this struct was generated from the following file: