CLI2: Eliminated CLI

- This is a large commit, as all the changes are centered around the elimination
  of CLI.
- CLI is no longer compiled.
- Context no longer maintains CLI + CLI2.
- Filter now walks the parse tree and sends to Eval a
  std::vector <std::pair <std::string, Lexer::Type>> containing only args tagged
  with FILTER.
- Filter more efficiently sets/unsets Eval::debug, by doing it less often.
- The filterExpr.length() check is no longer meaningful, and instead the size of
  the std::vector above is used.
- Filter::pendingOnly performs better analysis.
- Filter::safety makes use of the std::vector size also.
- Task::modify makes use of 'canonical' rather than 'name', which is a policy
  change, not a fix.
This commit is contained in:
Paul Beckingham 2015-06-24 13:12:24 -04:00
parent 183550a190
commit 737cb23546
7 changed files with 61 additions and 96 deletions

View file

@ -35,7 +35,6 @@
#include <Hooks.h>
#include <DOM.h>
#include <FS.h>
#include <CLI.h>
#include <CLI2.h>
#include <Timer.h>
#include <set>
@ -80,7 +79,6 @@ private:
void propagateDebug ();
public:
CLI cli;
CLI2 cli2;
std::string home_dir;
File rc_file;