retdec
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
ProgramOptions Class Reference
Collaboration diagram for ProgramOptions:
Collaboration graph
[legend]

Public Member Functions

 ProgramOptions ()
 
 ProgramOptions (int argc, char *argv[])
 
std::string getParamOrDie (int argc, char *argv[], int &i)
 
cs_mode getDefaultBasicModeFromArch (cs_arch a)
 
void dump ()
 
void printHelpAndDie ()
 
 ProgramOptions (int argc, char *argv[], retdec::config::Config &c, retdec::config::Parameters &p)
 
void load ()
 
 ProgramOptions (int argc, char *argv[])
 
std::string getParamOrDie (int argc, char *argv[], int &i)
 
void dump ()
 
void printHelpAndDie ()
 

Public Attributes

cs_arch arch = CS_ARCH_X86
 
uint64_t base = 0x1000
 
std::vector< uint8_t > code = CODE
 
std::string text
 
cs_mode basicMode = CS_MODE_32
 
cs_mode extraMode = CS_MODE_LITTLE_ENDIAN
 
std::string outFile = "-"
 
std::string programName
 
retdec::config::Configconfig
 
retdec::config::Parametersparams
 
std::list< std::string > _argv
 
std::string mode = "bin"
 
uint64_t bitSize = 32
 
std::string arExtractPath
 
std::string arName
 
std::optional< uint64_t > arIdx
 
bool cleanup = false
 
std::set< std::string > toClean
 
std::string inputFile
 

Private Member Functions

void loadOption (std::list< std::string >::iterator &i)
 
bool isParam (std::list< std::string >::iterator i, const std::string &shortp, const std::string &longp=std::string())
 
std::string getParamOrDie (std::list< std::string >::iterator &i)
 
void printHelpAndDie ()
 
void afterLoad ()
 
std::string checkFile (const std::string &path, const std::string &errorMsgPrefix)
 

Private Attributes

std::string _programName = "capstone2llvmir"
 
std::string _arch
 
std::string _base
 
std::string _code
 
std::string _basicMode
 
std::string _extraMode
 
bool _useDefaultBasicMode = true
 

Constructor & Destructor Documentation

◆ ProgramOptions() [1/4]

ProgramOptions::ProgramOptions ( )
inline

◆ ProgramOptions() [2/4]

ProgramOptions::ProgramOptions ( int  argc,
char *  argv[] 
)
inline

◆ ProgramOptions() [3/4]

ProgramOptions::ProgramOptions ( int  argc,
char *  argv[],
retdec::config::Config c,
retdec::config::Parameters p 
)

◆ ProgramOptions() [4/4]

ProgramOptions::ProgramOptions ( int  argc,
char *  argv[] 
)
inline

Member Function Documentation

◆ afterLoad()

void ProgramOptions::afterLoad ( )
private

Some things can be set or checked only after all the arguments were loaded.

◆ checkFile()

std::string ProgramOptions::checkFile ( const std::string &  path,
const std::string &  errorMsgPrefix 
)
private

◆ dump() [1/2]

void ProgramOptions::dump ( void  )
inline

◆ dump() [2/2]

void ProgramOptions::dump ( void  )
inline

◆ getDefaultBasicModeFromArch()

cs_mode ProgramOptions::getDefaultBasicModeFromArch ( cs_arch  a)
inline

◆ getParamOrDie() [1/3]

std::string ProgramOptions::getParamOrDie ( int  argc,
char *  argv[],
int &  i 
)
inline

◆ getParamOrDie() [2/3]

std::string ProgramOptions::getParamOrDie ( int  argc,
char *  argv[],
int &  i 
)
inline

◆ getParamOrDie() [3/3]

std::string ProgramOptions::getParamOrDie ( std::list< std::string >::iterator &  i)
private

◆ isParam()

bool ProgramOptions::isParam ( std::list< std::string >::iterator  i,
const std::string &  shortp,
const std::string &  longp = std::string() 
)
private

◆ load()

void ProgramOptions::load ( )

◆ loadOption()

void ProgramOptions::loadOption ( std::list< std::string >::iterator &  i)
private

◆ printHelpAndDie() [1/3]

void ProgramOptions::printHelpAndDie ( )
inline

◆ printHelpAndDie() [2/3]

void ProgramOptions::printHelpAndDie ( )
private

◆ printHelpAndDie() [3/3]

void ProgramOptions::printHelpAndDie ( )
inline

Member Data Documentation

◆ _arch

std::string ProgramOptions::_arch
private

◆ _argv

std::list<std::string> ProgramOptions::_argv

◆ _base

std::string ProgramOptions::_base
private

◆ _basicMode

std::string ProgramOptions::_basicMode
private

◆ _code

std::string ProgramOptions::_code
private

◆ _extraMode

std::string ProgramOptions::_extraMode
private

◆ _programName

std::string ProgramOptions::_programName = "capstone2llvmir"
private

◆ _useDefaultBasicMode

bool ProgramOptions::_useDefaultBasicMode = true
private

◆ arch

cs_arch ProgramOptions::arch = CS_ARCH_X86

◆ arExtractPath

std::string ProgramOptions::arExtractPath

◆ arIdx

std::optional<uint64_t> ProgramOptions::arIdx

◆ arName

std::string ProgramOptions::arName

◆ base

uint64_t ProgramOptions::base = 0x1000

◆ basicMode

cs_mode ProgramOptions::basicMode = CS_MODE_32

◆ bitSize

uint64_t ProgramOptions::bitSize = 32

◆ cleanup

bool ProgramOptions::cleanup = false

◆ code

std::vector<uint8_t> ProgramOptions::code = CODE

◆ config

retdec::config::Config& ProgramOptions::config

◆ extraMode

cs_mode ProgramOptions::extraMode = CS_MODE_LITTLE_ENDIAN

◆ inputFile

std::string ProgramOptions::inputFile

◆ mode

std::string ProgramOptions::mode = "bin"

◆ outFile

std::string ProgramOptions::outFile = "-"

◆ params

retdec::config::Parameters& ProgramOptions::params

◆ programName

std::string ProgramOptions::programName

◆ text

std::string ProgramOptions::text

◆ toClean

std::set<std::string> ProgramOptions::toClean

The documentation for this class was generated from the following files: