mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-08-18 15:33:08 +02:00
CLI2: A2 now stores Lexer::Type.
This commit is contained in:
parent
485899b0c5
commit
50cd2968b9
2 changed files with 14 additions and 10 deletions
|
@ -52,9 +52,10 @@ A2::A2 ()
|
|||
}
|
||||
*/
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
A2::A2 (const std::string& name, const std::string& raw)
|
||||
A2::A2 (const std::string& name, const std::string& raw, Lexer::Type lextype)
|
||||
{
|
||||
_name = name;
|
||||
_lextype = lextype;
|
||||
attribute ("raw", raw);
|
||||
}
|
||||
|
||||
|
@ -344,10 +345,12 @@ void CLI2::add (const std::string& argument)
|
|||
// Intended to be called after ::add() to perform the final analysis.
|
||||
void CLI2::analyze ()
|
||||
{
|
||||
_args.clear ();
|
||||
|
||||
for (unsigned int i = 0; i < _original_args.size (); ++i)
|
||||
{
|
||||
std::string raw = _original_args[i];
|
||||
A a ("arg", raw);
|
||||
A2 a ("arg", raw, Lexer::Type::word);
|
||||
/*
|
||||
a.tag ("ORIGINAL");
|
||||
|
||||
|
|
17
src/CLI2.h
17
src/CLI2.h
|
@ -30,22 +30,22 @@
|
|||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
*/
|
||||
#include <Lexer.h>
|
||||
#include <FS.h>
|
||||
*/
|
||||
|
||||
// Represents a single argument.
|
||||
class A2
|
||||
{
|
||||
public:
|
||||
A2 ();
|
||||
A2 (const std::string&, const std::string&);
|
||||
A2 (const std::string&, const std::string&, Lexer::Type);
|
||||
/*
|
||||
A (const std::string&, const int);
|
||||
A (const std::string&, const double);
|
||||
~A ();
|
||||
A (const A&);
|
||||
A& operator= (const A&);
|
||||
A2 (const std::string&, const int);
|
||||
A2 (const std::string&, const double);
|
||||
~A2 ();
|
||||
A2 (const A&);
|
||||
A2& operator= (const A2&);
|
||||
bool hasTag (const std::string&) const;
|
||||
void tag (const std::string&);
|
||||
void unTag (const std::string&);
|
||||
|
@ -61,6 +61,7 @@ public:
|
|||
*/
|
||||
public:
|
||||
std::string _name;
|
||||
Lexer::Type _lextype;
|
||||
/*
|
||||
std::vector <std::string> _tags;
|
||||
*/
|
||||
|
@ -150,7 +151,7 @@ public:
|
|||
std::multimap <std::string, std::string> _entities;
|
||||
std::map <std::string, std::string> _aliases;
|
||||
std::vector <std::string> _original_args;
|
||||
std::vector <A> _args;
|
||||
std::vector <A2> _args;
|
||||
|
||||
/*
|
||||
std::vector <std::pair <int, int>> _id_ranges;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue