1 #ifndef ROSE_BinaryAnalysis_Partitioner2_Reference_H
2 #define ROSE_BinaryAnalysis_Partitioner2_Reference_H
3 #include <featureTests.h>
4 #ifdef ROSE_ENABLE_BINARY_ANALYSIS
5 #include <Rose/BinaryAnalysis/Partitioner2/BasicTypes.h>
10 namespace BinaryAnalysis {
11 namespace Partitioner2 {
bool hasBasicBlock() const
Predicate for having a basic block.
bool isEmpty() const
Predicate for emptiness.
SgAsmInstruction * instruction() const
Optional instruction pointer.
Reference points to a basic block but not an instruction or a stored address.
Reference to a function, basic block, instruction, or address.
Base class for machine instructions.
Reference points to nothing and has no address.
bool operator==(const Reference &other) const
Whether two references are equal.
Main namespace for the ROSE library.
Reference points to nothing but has an address.
rose_addr_t address() const
Address.
bool hasInstruction() const
Predicate for having an instruction.
Reference points to an instruction but no stored address.
BasicBlockPtr basicBlock() const
Optional basic block pointer.
bool hasExplicitAddress() const
Predicate for having a stored address.
bool operator<(const Reference &other) const
Compare two references.
Granularity granularity() const
Reference granularity.
Reference points to a function but not a basic block or instruction, and has no stored address...
bool hasFunction() const
Predicate for having a function.