#include <LocIdxSubSet.hpp>
Public Member Functions | |
LocIdxSubSet (OA_ptr< Location > loc, int idx) | |
LocIdxSubSet (LocIdxSubSet &other) | |
copy constructor | |
~LocIdxSubSet () | |
void | acceptVisitor (LocationVisitor &pVisitor) |
bool | isaIdxSubSet () |
bool | isFull () |
something useful to have for all LocSubSet's | |
int | getIdx () |
bool | operator< (Location &other) |
bool | operator== (Location &other) |
indicate whether this location is semantically equivalent | |
bool | mayOverlap (Location &other) |
bool | mustOverlap (Location &other) |
bool | subSetOf (Location &other) |
Indicate whether this location is a subset of the given location. | |
void | output (IRHandlesIRInterface &ir) |
void | dump (std::ostream &os) |
void | dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > pIR) |
std::string | toString (OA_ptr< IRHandlesIRInterface > pIR) |
virtual int | getOrder () |
Private Attributes | |
int | mIdx |
Static Private Attributes | |
static const int | sOrder = 400 |
Definition at line 24 of file LocIdxSubSet.hpp.
OA::LocIdxSubSet::LocIdxSubSet | ( | LocIdxSubSet & | other | ) | [inline] |
OA::LocIdxSubSet::~LocIdxSubSet | ( | ) | [inline] |
Definition at line 31 of file LocIdxSubSet.hpp.
void OA::LocIdxSubSet::acceptVisitor | ( | LocationVisitor & | pVisitor | ) | [virtual] |
Reimplemented from OA::LocSubSet.
Definition at line 28 of file LocIdxSubSet.cpp.
References OA::LocationVisitor::visitLocIdxSubSet().
bool OA::LocIdxSubSet::isaIdxSubSet | ( | ) | [inline, virtual] |
bool OA::LocIdxSubSet::isFull | ( | ) | [inline, virtual] |
something useful to have for all LocSubSet's
Reimplemented from OA::LocSubSet.
Definition at line 43 of file LocIdxSubSet.hpp.
int OA::LocIdxSubSet::getIdx | ( | ) | [inline] |
Definition at line 50 of file LocIdxSubSet.hpp.
References mIdx.
Referenced by dump(), operator<(), operator==(), toString(), and OA::LocIdxSubSetMustOverlapVisitor::visitLocIdxSubSet().
bool OA::LocIdxSubSet::operator< | ( | Location & | other | ) | [virtual] |
Locations are ordered first between Location subclasses based on their sOrder value. Then there is an ordering within each subclass.
When comparing between LocIdxSubSet's will first compare base locations and will then will compare indices.
Reimplemented from OA::LocSubSet.
Definition at line 42 of file LocIdxSubSet.cpp.
References getIdx(), OA::LocSubSet::getLoc(), OA::Location::getOrder(), and getOrder().
bool OA::LocIdxSubSet::operator== | ( | Location & | other | ) | [virtual] |
indicate whether this location is semantically equivalent
Reimplemented from OA::LocSubSet.
Definition at line 57 of file LocIdxSubSet.cpp.
References getIdx(), OA::LocSubSet::getLoc(), OA::Location::getOrder(), and getOrder().
bool OA::LocIdxSubSet::mayOverlap | ( | Location & | other | ) | [virtual] |
Indicate whether this location may overlap with the given location either fully or partially.
Reimplemented from OA::LocSubSet.
Definition at line 71 of file LocIdxSubSet.cpp.
References OA::LocSubSet::getLoc().
bool OA::LocIdxSubSet::mustOverlap | ( | Location & | other | ) | [virtual] |
Indicate whether this location must overlap fully with the given location.
Reimplemented from OA::LocSubSet.
Definition at line 105 of file LocIdxSubSet.cpp.
References OA::Location::acceptVisitor(), and OA::LocIdxSubSetMustOverlapVisitor::mMustOverlap.
Referenced by subSetOf().
bool OA::LocIdxSubSet::subSetOf | ( | Location & | other | ) | [virtual] |
Indicate whether this location is a subset of the given location.
Reimplemented from OA::LocSubSet.
Definition at line 114 of file LocIdxSubSet.cpp.
References OA::LocSubSet::getLoc(), and mustOverlap().
void OA::LocIdxSubSet::output | ( | IRHandlesIRInterface & | ir | ) | [virtual] |
Reimplemented from OA::LocSubSet.
Definition at line 125 of file LocIdxSubSet.cpp.
References OA::int2string(), mIdx, OA::LocSubSet::output(), and OA::Annotation::sOutBuild.
void OA::LocIdxSubSet::dump | ( | std::ostream & | os | ) |
Reimplemented from OA::LocSubSet.
Definition at line 136 of file LocIdxSubSet.cpp.
References getIdx(), and OA::LocSubSet::getLoc().
void OA::LocIdxSubSet::dump | ( | std::ostream & | os, | |
OA_ptr< IRHandlesIRInterface > | pIR | |||
) |
Reimplemented from OA::LocSubSet.
Definition at line 144 of file LocIdxSubSet.cpp.
References getIdx(), and OA::LocSubSet::getLoc().
std::string OA::LocIdxSubSet::toString | ( | OA_ptr< IRHandlesIRInterface > | pIR | ) | [virtual] |
Reimplemented from OA::LocSubSet.
Definition at line 152 of file LocIdxSubSet.cpp.
References getIdx(), and OA::LocSubSet::getLoc().
virtual int OA::LocIdxSubSet::getOrder | ( | ) | [inline, virtual] |
Reimplemented from OA::LocSubSet.
Definition at line 77 of file LocIdxSubSet.hpp.
References sOrder.
Referenced by operator<(), and operator==().
int OA::LocIdxSubSet::mIdx [private] |
const int OA::LocIdxSubSet::sOrder = 400 [static, private] |
Reimplemented from OA::LocSubSet.
Definition at line 81 of file LocIdxSubSet.hpp.
Referenced by getOrder().