7 #ifndef RETDEC_COMMON_FUNCTION_H
8 #define RETDEC_COMMON_FUNCTION_H
62 Function(
const std::string& name = std::string());
66 const std::string& name = std::string());
88 void setName(
const std::string& n);
116 const std::string&
getId()
const;
117 const std::string&
getName()
const;
222 retdec::common::Function,
223 retdec::common::FunctionAddressCompare>
Definition: calling_convention.h:21
Definition: function.h:206
const Function * getFunctionByName(const std::string &name) const
Definition: function.cpp:138
const Function * getFunctionByRealName(const std::string &name) const
Definition: function.cpp:162
const Function * getFunctionByStartAddress(const retdec::common::Address &addr) const
Definition: function.cpp:148
bool hasFunction(const std::string &name)
Definition: function.cpp:133
Definition: function.h:224
const retdec::common::Function * getRange(const retdec::common::Address &a) const
Definition: function.cpp:185
Definition: function.h:36
bool isIdiom() const
Definition: function.cpp:42
bool isUserDefined() const
Definition: function.cpp:38
bool isFromDebug() const
Definition: function.cpp:43
void setIsThumb(bool f)
Definition: function.cpp:81
void setIsVariadic(bool f)
Definition: function.cpp:80
void setIsVirtual(bool f)
Definition: function.cpp:78
LineNumber _endLine
Definition: function.h:155
void addComment(const std::string &c)
Definition: function.cpp:63
bool _destructor
Definition: function.h:158
eLinkType _linkType
Definition: function.h:153
std::string getDemangledName() const
Definition: function.cpp:87
std::string getWrappedFunctionName() const
Definition: function.cpp:91
void setStartLine(const retdec::common::Address &l)
Definition: function.cpp:67
bool isSyscall() const
Definition: function.cpp:41
void setName(const std::string &n)
Definition: function.cpp:59
void setIsDestructor(bool f)
Definition: function.cpp:77
std::set< common::Address > codeReferences
Addresses of instructions which reference (use) this function.
Definition: function.h:143
bool _variadic
Definition: function.h:161
eLinkType getLinkType() const
Definition: function.cpp:94
bool _thumb
Definition: function.h:162
bool isDecompilerDefined() const
Definition: function.cpp:37
LineNumber getEndLine() const
Definition: function.cpp:93
common::Storage frameBaseStorage
Definition: function.h:136
eLinkType
Definition: function.h:52
@ SYSCALL
Definition: function.h:57
@ USER_DEFINED
Definition: function.h:54
@ DECOMPILER_DEFINED
Definition: function.h:53
@ IDIOM
Definition: function.h:58
@ DYNAMICALLY_LINKED
Definition: function.h:56
@ STATICALLY_LINKED
Definition: function.h:55
void setIsConstructor(bool f)
Definition: function.cpp:76
bool _virtualFunction
Definition: function.h:159
bool operator==(const Function &o) const
Definition: function.cpp:110
bool isVariadic() const
Definition: function.cpp:48
void setIsFromDebug(bool d)
Definition: function.cpp:75
void setEndLine(const retdec::common::Address &l)
Definition: function.cpp:68
bool _exported
Definition: function.h:160
Function(const std::string &name=std::string())
Definition: function.cpp:20
void setIsUserDefined()
Definition: function.cpp:70
bool isDynamicallyLinked() const
Definition: function.cpp:40
bool isDestructor() const
Definition: function.cpp:45
const std::string & getName() const
Definition: function.cpp:85
void setComment(const std::string &c)
Definition: function.cpp:62
common::Storage returnStorage
Definition: function.h:135
void setDeclarationString(const std::string &s)
Definition: function.cpp:64
bool _constructor
Definition: function.h:157
bool isWrapper() const
Definition: function.cpp:57
std::string _realName
Definition: function.h:147
common::ObjectSetContainer locals
Definition: function.h:139
common::CallingConvention callingConvention
Definition: function.h:134
std::string _declarationString
Definition: function.h:150
void setLinkType(eLinkType lt)
Definition: function.cpp:82
const std::string & getId() const
Definition: function.cpp:84
void setRealName(const std::string &n)
Definition: function.cpp:60
void setWrappedFunctionName(const std::string &n)
Definition: function.cpp:66
bool isVirtual() const
Definition: function.cpp:46
std::string _wrapperdFunctionName
Definition: function.h:152
void setIsStaticallyLinked() const
Definition: function.cpp:71
void setIsDynamicallyLinked() const
Definition: function.cpp:72
common::Type returnType
Definition: function.h:137
void setSourceFileName(const std::string &n)
Definition: function.cpp:65
common::ObjectSequentialContainer parameters
Definition: function.h:138
std::string getComment() const
Definition: function.cpp:88
void setIsSyscall()
Definition: function.cpp:73
bool operator!=(const Function &o) const
Definition: function.cpp:119
std::string getSourceFileName() const
Definition: function.cpp:90
std::string _demangledName
Definition: function.h:148
bool _fromDebug
Definition: function.h:156
std::string _name
This is objects unique ID.
Definition: function.h:146
void setIsIdiom()
Definition: function.cpp:74
LineNumber _startLine
Definition: function.h:154
bool isStaticallyLinked() const
Definition: function.cpp:39
std::set< std::string > usedCryptoConstants
Definition: function.h:140
void setIsExported(bool f)
Definition: function.cpp:79
std::string _comment
Definition: function.h:149
bool isThumb() const
Definition: function.cpp:49
bool operator<(const Function &o) const
Definition: function.cpp:101
void setIsDecompilerDefined()
Definition: function.cpp:69
void setDemangledName(const std::string &n)
Definition: function.cpp:61
std::string _sourceFileName
Definition: function.h:151
std::string getDeclarationString() const
Definition: function.cpp:89
LineNumber getStartLine() const
Definition: function.cpp:92
const std::string & getRealName() const
Definition: function.cpp:86
bool isExported() const
Definition: function.cpp:47
bool isConstructor() const
Definition: function.cpp:44
std::set< common::BasicBlock > basicBlocks
Definition: function.h:141
const RangeType & getStart() const
Definition: range.h:119
Common basic block representation.
Calling convention representation.
Common object representation.
Common object storage representation.
Common data type representation.
retdec::common::Address Address
Address.
Definition: types.h:36
T & id(T &object)
Returns object.
Definition: debug.h:208
Definition: archive_wrapper.h:19
Definition: function.h:184
bool operator()(const Function &f1, const Function &f2) const
Definition: function.h:187
bool operator()(const retdec::common::Address &id, Function const &f) const
Definition: function.h:191
bool operator()(const Function &f, const retdec::common::Address &id) const
Definition: function.h:195
void is_transparent
Definition: function.h:185
Definition: function.h:166
bool operator()(const Function &f1, const Function &f2) const
Definition: function.h:169
void is_transparent
Definition: function.h:167
bool operator()(const std::string &id, Function const &f) const
Definition: function.h:173
bool operator()(const Function &f, const std::string &id) const
Definition: function.h:177