mirror of https://github.com/PurpleI2P/i2pd.git
orignal
11 years ago
5 changed files with 72 additions and 4 deletions
@ -0,0 +1,45 @@
@@ -0,0 +1,45 @@
|
||||
#include "util.h" |
||||
|
||||
namespace i2p |
||||
{ |
||||
namespace util |
||||
{ |
||||
std::map<std::string, std::string> mapArgs; |
||||
|
||||
void ParseArguments(int argc, const char* const argv[]) |
||||
{ |
||||
mapArgs.clear(); |
||||
for (int i = 1; i < argc; i++) |
||||
{ |
||||
std::string strKey (argv[i]); |
||||
std::string strValue; |
||||
size_t has_data = strKey.find('='); |
||||
if (has_data != std::string::npos) |
||||
{ |
||||
strValue = strKey.substr(has_data+1); |
||||
strKey = strKey.substr(0, has_data); |
||||
} |
||||
if (strKey[0] != '-') |
||||
break; |
||||
|
||||
mapArgs[strKey] = strValue; |
||||
} |
||||
} |
||||
|
||||
int GetIntArg(const std::string& strArg, int nDefault) |
||||
{ |
||||
if (mapArgs.count(strArg)) |
||||
return atoi(mapArgs[strArg].c_str()); |
||||
return nDefault; |
||||
} |
||||
|
||||
std::string GetStringArg(const std::string& strArg, std::string nDefault) |
||||
{ |
||||
if (mapArgs.count(strArg)) |
||||
return mapArgs[strArg]; |
||||
return nDefault; |
||||
} |
||||
|
||||
|
||||
} // Namespace end
|
||||
} |
@ -0,0 +1,19 @@
@@ -0,0 +1,19 @@
|
||||
#ifndef UTIL_H |
||||
#define UTIL_H |
||||
|
||||
#include <map> |
||||
#include <string> |
||||
|
||||
namespace i2p |
||||
{ |
||||
namespace util |
||||
{ |
||||
extern std::map<std::string, std::string> mapArgs; |
||||
void ParseArguments(int argc, const char* const argv[]); |
||||
int GetIntArg(const std::string& strArg, int nDefault); |
||||
|
||||
} |
||||
} |
||||
|
||||
|
||||
#endif |
Loading…
Reference in new issue