retdec
|
#include <object.h>
Public Member Functions | |
Object () | |
Object (const std::string &name, const common::Storage &storage) | |
bool | operator== (const Object &o) const |
bool | operator< (const Object &o) const |
Object query methods. | |
bool | isFromDebug () const |
Object set methods. | |
void | setName (const std::string &n) |
void | setRealName (const std::string &n) |
void | setCryptoDescription (const std::string &d) |
void | setIsFromDebug (bool b) |
void | setStorage (const common::Storage &s) |
Object get methods. | |
const std::string & | getId () const |
const std::string & | getName () const |
const std::string & | getRealName () const |
const std::string & | getCryptoDescription () const |
const common::Storage & | getStorage () const |
Public Attributes | |
common::Type | type |
Protected Attributes | |
std::string | _name |
Unique ID – name used in LLVM IR. More... | |
common::Storage | _storage |
std::string | _realName |
std::string | _cryptoDescription |
bool | _fromDebug = false |
Represents object (i.e. register, stack, global, parameter).
Object's name is its unique ID.
Besides common members like name and type, objects may also have additional information meaningful only to their particular flavour (storage type). Global objects have addresses they are located on. Register objects have names of registers they are stored in. Stack objects have their stack frame offset. Parameters have no additional information.
retdec::common::Object::Object | ( | ) |
retdec::common::Object::Object | ( | const std::string & | name, |
const common::Storage & | storage | ||
) |
const std::string & retdec::common::Object::getCryptoDescription | ( | ) | const |
const std::string & retdec::common::Object::getId | ( | ) | const |
const std::string & retdec::common::Object::getName | ( | ) | const |
const std::string & retdec::common::Object::getRealName | ( | ) | const |
name
. const common::Storage & retdec::common::Object::getStorage | ( | ) | const |
bool retdec::common::Object::isFromDebug | ( | ) | const |
bool retdec::common::Object::operator< | ( | const Object & | o | ) | const |
Objects are compared by their uniqie IDs (i.e. names).
bool retdec::common::Object::operator== | ( | const Object & | o | ) | const |
Object are equal if their names are equal.
o | Other object. |
void retdec::common::Object::setCryptoDescription | ( | const std::string & | d | ) |
void retdec::common::Object::setIsFromDebug | ( | bool | b | ) |
void retdec::common::Object::setName | ( | const std::string & | n | ) |
void retdec::common::Object::setRealName | ( | const std::string & | n | ) |
void retdec::common::Object::setStorage | ( | const common::Storage & | s | ) |
|
protected |
|
protected |
|
protected |
Unique ID – name used in LLVM IR.
|
protected |
Real name of this object to appear in output C. This may or may not differ from name
.
|
protected |
common::Type retdec::common::Object::type |