mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-07-07 20:06:36 +02:00
Parser
- Added static method to scan argv[] for overrides without a parse tree, so that any rc:<file> arguments can be used to locate the rc file, load it, and proceed with command line parsing which relies on things like rc.dateformat.
This commit is contained in:
parent
4077c4d605
commit
3f519785d8
2 changed files with 23 additions and 0 deletions
|
@ -62,6 +62,26 @@ Parser::~Parser ()
|
|||
delete _tree;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Static method.
|
||||
void Parser::getOverrides (
|
||||
int argc,
|
||||
const char** argv,
|
||||
std::string& rc_file)
|
||||
{
|
||||
for (int i = 0; i < argc; ++i)
|
||||
{
|
||||
std::string raw = argv[i];
|
||||
if (raw.length () > 3 &&
|
||||
raw.substr (0, 3) == "rc:")
|
||||
{
|
||||
rc_file = raw.substr (3);
|
||||
}
|
||||
|
||||
// Keep looping, so we capture the last one.
|
||||
}
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// char** argv --> std::vector <std::string> _args
|
||||
void Parser::initialize (int argc, const char** argv)
|
||||
|
|
|
@ -37,6 +37,9 @@ class Parser
|
|||
public:
|
||||
Parser ();
|
||||
~Parser ();
|
||||
|
||||
static void getOverrides (int, const char**, std::string&);
|
||||
|
||||
void initialize (int, const char**);
|
||||
void clear ();
|
||||
void appendStdin ();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue