Paul Beckingham
c2c53fa668
CLI2: Tags args 'UNKNOWN' to help spot an worthless use case
2015-07-12 17:56:59 -04:00
Paul Beckingham
f09a39f043
CLI2: Cleaned up formatting
2015-07-12 17:56:40 -04:00
Paul Beckingham
b7c1658a6e
CLI2: Trim incoming raw args
2015-07-12 17:32:10 -04:00
Paul Beckingham
6b78abced2
CLI2: Tightened selection of MODIFICATION Lexer::Type::number upgrade to ID
...
- When a write command contains no ID/UUID, looking for Lexer::Type::number
arguments that are tagged as MODIFICATIONS is now limited to only positive
integers that are found.
2015-07-12 16:12:32 -04:00
Paul Beckingham
81fc158dc9
CLI2: Better algorithm for ::desugarFilterPlainArgs which appears to work well
2015-07-12 14:07:48 -04:00
Paul Beckingham
29d6eceda1
CLI2: ::desugarFilterAttributes now relies on earlier parsing
2015-07-11 17:13:18 -04:00
Paul Beckingham
3f3d698a28
CLI2: Integrated Lexer::decomposePattern
2015-07-11 17:10:10 -04:00
Paul Beckingham
1f8a66b7f3
CLI2: Integrated Lexer::decomposeSubstitution
...
- Task::modify now considers the 'g' at the end of a substitution to be a
string of characters, which may contain 'g'. No other flags are currently
supported.
2015-07-11 16:44:13 -04:00
Paul Beckingham
d6d01ee1bf
CLI2: Fixed bug where only the first lexeme was used
...
- For quoted Lexer::Type::pair arguments, use the whole quoted arg, not merely
the first lexeme.
2015-07-11 14:31:09 -04:00
Paul Beckingham
6d9d896a37
CLI2: ::lexArguments auto-quotes orignally quoted args, but didn't dequote after
2015-07-11 13:47:26 -04:00
Paul Beckingham
21be6862db
CLI2: ::lexArguments now uses ::readWord to expand escapes
2015-07-10 13:15:16 -04:00
Paul Beckingham
5a21945a0d
CLI2: Integrated Lexer::decomposePair
2015-07-08 09:48:15 -04:00
Paul Beckingham
abaf326855
CLI2: Added note about path exclusion
2015-07-06 16:03:24 -04:00
Paul Beckingham
0ee26a0cae
CLI2: No longer attempts to canonicalize rc:<file> and rc.<name>:<value>
2015-07-06 12:14:52 -04:00
Paul Beckingham
dcb13bd2b4
CLI2: Integrated Lexer::decomposePair into A2::decompose
2015-07-06 12:13:46 -04:00
Paul Beckingham
023fd9d38a
CLI2: Removed obsolete ::decomposeModSubstitutions
2015-07-05 16:31:30 -04:00
Paul Beckingham
af71af1085
CLI2: Removed obsolete ::decomposeModTags
2015-07-05 16:30:59 -04:00
Paul Beckingham
f5ece63ec0
CLI2: Removed obsolete ::decomposeModAttributes
2015-07-05 16:29:54 -04:00
Paul Beckingham
460f2aeea5
CLI2: Refactoring
...
- Whenever A2::attribute sees 'raw' being set, it automaticall decomposes the
arg, which can now be removed from other methods.
- New ::canonicalizeNames method means that the ::decomposeMod* methods are no
longer needed.
- Removed ::findOverrides which now does nothing.
2015-07-05 16:13:56 -04:00
Paul Beckingham
0c568580b3
CLI2: Removed obsolete ::isUUIDList
...
- Removed unsupported UUID lists, which shoudl have been removed earlier when
Lexer::Type::list was dropped.
- Reversed logic in 'if' statements to perform the lowest cost comparison first.
2015-07-05 10:39:34 -04:00
Paul Beckingham
184fde0f5f
CLI2: Skips first terminator, --, but not others
2015-07-04 16:39:15 -04:00
Paul Beckingham
a7982e434a
CLI2: Quoted Lexer::Type::pair args are maximal
2015-07-04 15:33:44 -04:00
Paul Beckingham
796a26cad8
CLI2: Simplified ::lexArguments
...
- ::lexArguments no longer lexes arguments into multiple tokens, instead it
simply assigns the type, if the argument is a single token.
2015-07-01 21:49:31 -04:00
Paul Beckingham
bce24da6a5
CLI2: Eliminated unnecessary ::findTerminator
2015-07-01 21:47:19 -04:00
Paul Beckingham
a2874f7f10
CLI2: Added more logic to ::lexArguments
2015-07-01 18:03:43 -04:00
Paul Beckingham
1b83734392
CLI2: Added ::demoteDOM to demote unrecognized DOM args to words
2015-07-01 18:02:48 -04:00
Paul Beckingham
b090c6bccf
Lexer: Removed unnecessary ::ambiguity method
2015-07-01 16:18:28 -04:00
Paul Beckingham
ba65fa67b1
CLI2: ::aliasExpansion now properly observes and propagates TERMINATED args
2015-06-28 00:33:17 -04:00
Paul Beckingham
8cc75693a0
CLI2: Some args must avoid lexing
...
- This now include rc:xxx and rc.xxx.
2015-06-27 23:34:03 -04:00
Paul Beckingham
1824a542f6
CLI2: Obey the terminator and skip Lexing
2015-06-27 17:35:15 -04:00
Paul Beckingham
b67b2ccc96
CLI2: Added ::addContextFilter, and supporting processing
2015-06-27 15:53:24 -04:00
Paul Beckingham
88b1707b58
CLI2: Commented out implementation of ::desugarFilterPlainArgs
...
- The algorithm is wrong, and it misidentfies solitary search patterns.
2015-06-24 21:29:56 -04:00
Paul Beckingham
9dcd52fc5b
CLI2: Inhibit the identification of IDs if preceeded by an operator
2015-06-24 20:59:27 -04:00
Paul Beckingham
183550a190
CLI2: Unrecognized Lexer::Type::pair args are now downgraded to Lexer::Type::word
2015-06-24 13:06:20 -04:00
Paul Beckingham
449d577cca
CLI2: Moved all the ::desugar* methods after the single-arg manipulations
2015-06-22 21:21:26 -04:00
Paul Beckingham
1cf07cd6fb
CLI2: Fixed bug in UUID filtering
...
- When filtering by UUID, the expression listed the 'uuid' attribute as a type
Lexer::Type::string, which should have been Lexer::Type::dom.
2015-06-22 16:20:22 -04:00
Paul Beckingham
4b68fea674
CLI2: Fixed bug in ::findCommand
...
- If an argument is an exact match for a command ('projects'), it is a command.
- If an argument is not an exact match for command ('project'), but is an exact
match for an attribute, it is not a command.
- If an argument fails the above tests, but canonicalizes to a command, it is a
command.
2015-06-22 16:01:01 -04:00
Paul Beckingham
a541156cec
CLI2: Added support for write commands specifїgin ID/UUID *after* CMD
2015-06-22 14:48:17 -04:00
Paul Beckingham
3d19bffd55
CLI2: Raised the precedence of ::desugarPlainArgs
2015-06-22 14:12:05 -04:00
Paul Beckingham
076b2aaa95
CLI2: Fix bug where a second terminator (--) was stripped
2015-06-22 14:11:28 -04:00
Paul Beckingham
02b91a94fc
CLI2: Fixed bug recognizing command names
...
- If a command is found via canonicalization, but that command is also an exact
match for an attribute, then it is not a command.
2015-06-22 11:55:55 -04:00
Paul Beckingham
b573a0ddcc
CLI2: Added missing ::analyze call after ::add for ::addFilter
2015-06-22 11:34:02 -04:00
Paul Beckingham
fcc1bb3ef2
CLI2: Fixed bug where ::desugarFilterAttributes set 'name' instead of 'canonical'
2015-06-22 11:09:49 -04:00
Paul Beckingham
633d07f75b
CLI2: Added disqualifier list to ::addContextFilter stub
2015-06-22 10:46:42 -04:00
Paul Beckingham
82c5d019a3
CLI2: Added ::addFilter method
2015-06-22 10:30:29 -04:00
Paul Beckingham
c8fd51bd27
CLI2: Removed unused tag MODIFIABLE
2015-06-22 10:20:24 -04:00
Paul Beckingham
0cfa873776
CLI2: Fixed bug where a reference was being copied over
2015-06-22 10:19:47 -04:00
Paul Beckingham
30ad00fb7f
CLI2: Removed unused default constructor A::A
2015-06-22 10:18:43 -04:00
Paul Beckingham
7432c0aead
CLI2: Added ::getToken method for obtaining the canonical form, if possible
2015-06-22 00:35:35 -04:00
Paul Beckingham
ad18d13c29
CLI2: Removed unnecessary CLI2::dump call
2015-06-21 23:47:34 -04:00