retdec
|
#include <calling_convention.h>
Public Types | |
enum class | eCC { CC_UNKNOWN = 0 , CC_VOIDARG , CC_CDECL , CC_ELLIPSIS , CC_STDCALL , CC_PASCAL , CC_FASTCALL , CC_THISCALL , CC_MANUAL , CC_SPOILED , CC_SPECIALE , CC_SPECIALP , CC_SPECIAL , CC_WATCOM , CC_X64 , CC_ARM , CC_ARM64 , CC_MIPS , CC_MIPS64 , CC_POWERPC , CC_POWERPC64 , CC_PIC32 , CC_ENDING } |
Public Member Functions | |
CallingConvention () | |
CallingConvention (eCC cc) | |
CallingConvention & | operator= (const eCC &cc) |
bool | operator< (const CallingConvention &cc) const |
Calling convention query methods. | |
bool | isUnknown () const |
bool | isKnown () const |
bool | isVoidarg () const |
bool | isCdecl () const |
bool | isEllipsis () const |
bool | isStdcall () const |
bool | isPascal () const |
bool | isFastcall () const |
bool | isThiscall () const |
bool | isManual () const |
bool | isSpoiled () const |
bool | isSpecialE () const |
bool | isSpecialP () const |
bool | isSpecial () const |
eCC | getID () const |
Calling convention set methods. | |
void | setIsUnknown () |
void | setIsVoidarg () |
void | setIsCdecl () |
void | setIsEllipsis () |
void | setIsStdcall () |
void | setIsPascal () |
void | setIsFastcall () |
void | setIsThiscall () |
void | setIsManual () |
void | setIsSpoiled () |
void | setIsSpecialE () |
void | setIsSpecialP () |
void | setIsSpecial () |
void | set (eCC cc) |
Static Public Member Functions | |
Calling convention named constructors. | |
static CallingConvention | initVoidarg () |
static CallingConvention | initCdecl () |
static CallingConvention | initEllipsis () |
static CallingConvention | initStdcall () |
static CallingConvention | initPascal () |
static CallingConvention | initFastcall () |
static CallingConvention | initThiscall () |
static CallingConvention | initManual () |
static CallingConvention | initSpoiled () |
static CallingConvention | initSpecialE () |
static CallingConvention | initSpecialP () |
static CallingConvention | initSpecial () |
Private Attributes | |
eCC | _cc = eCC::CC_UNKNOWN |
Friends | |
std::ostream & | operator<< (std::ostream &out, const eCC &cc) |
std::ostream & | operator<< (std::ostream &out, const CallingConvention &cc) |
Represents functions' calling conventions. It supports the same calling convention types as IDA Pro. Convenient query methods are provided to get and set all conventions.
|
strong |
retdec::common::CallingConvention::CallingConvention | ( | ) |
Unknown calling convention is created.
retdec::common::CallingConvention::CallingConvention | ( | eCC | cc | ) |
CallingConventionID retdec::common::CallingConvention::getID | ( | ) | const |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
bool retdec::common::CallingConvention::isCdecl | ( | ) | const |
bool retdec::common::CallingConvention::isEllipsis | ( | ) | const |
bool retdec::common::CallingConvention::isFastcall | ( | ) | const |
bool retdec::common::CallingConvention::isKnown | ( | ) | const |
bool retdec::common::CallingConvention::isManual | ( | ) | const |
bool retdec::common::CallingConvention::isPascal | ( | ) | const |
bool retdec::common::CallingConvention::isSpecial | ( | ) | const |
bool retdec::common::CallingConvention::isSpecialE | ( | ) | const |
bool retdec::common::CallingConvention::isSpecialP | ( | ) | const |
bool retdec::common::CallingConvention::isSpoiled | ( | ) | const |
bool retdec::common::CallingConvention::isStdcall | ( | ) | const |
bool retdec::common::CallingConvention::isThiscall | ( | ) | const |
bool retdec::common::CallingConvention::isUnknown | ( | ) | const |
bool retdec::common::CallingConvention::isVoidarg | ( | ) | const |
bool retdec::common::CallingConvention::operator< | ( | const CallingConvention & | cc | ) | const |
CallingConvention & retdec::common::CallingConvention::operator= | ( | const eCC & | cc | ) |
void retdec::common::CallingConvention::set | ( | eCC | cc | ) |
void retdec::common::CallingConvention::setIsCdecl | ( | ) |
void retdec::common::CallingConvention::setIsEllipsis | ( | ) |
void retdec::common::CallingConvention::setIsFastcall | ( | ) |
void retdec::common::CallingConvention::setIsManual | ( | ) |
void retdec::common::CallingConvention::setIsPascal | ( | ) |
void retdec::common::CallingConvention::setIsSpecial | ( | ) |
void retdec::common::CallingConvention::setIsSpecialE | ( | ) |
void retdec::common::CallingConvention::setIsSpecialP | ( | ) |
void retdec::common::CallingConvention::setIsSpoiled | ( | ) |
void retdec::common::CallingConvention::setIsStdcall | ( | ) |
void retdec::common::CallingConvention::setIsThiscall | ( | ) |
void retdec::common::CallingConvention::setIsUnknown | ( | ) |
void retdec::common::CallingConvention::setIsVoidarg | ( | ) |
|
friend |
|
friend |
|
private |