Paul Beckingham
d6f977e2dd
Lexer: Boosted precedence of UUID detection
2015-07-19 23:27:27 -04:00
Paul Beckingham
fed3b815a0
Lexer: Dead code removal
2015-07-17 14:59:42 -04:00
Paul Beckingham
76d3efe313
Lexer: Improved termination for UUID types
2015-07-16 16:15:07 -04:00
Paul Beckingham
1ec029be9b
Lexer: Relocated instantiation closer to first use
2015-07-13 16:44:55 -04:00
Paul Beckingham
d0e4f4ca10
Lexer: Implemented ::decomposePattern
2015-07-11 17:09:29 -04:00
Paul Beckingham
1bef45ff47
Lexer: Added ::decomposeSubstitution and more flexible ::dequote
...
- ::dequote can now be given a string of valid quote characters, which defaults
to '".
- ::decomposeSubstitution properly parses the /from/to/g construct allowing for
escaped characters (\/).
- The 'g' at the end of a substitution is now considered to be a string of flag
characters, which may contain 'g'. No other flag values are currently
supported.
2015-07-11 16:40:52 -04:00
Paul Beckingham
642f378462
Lexer:: Implemented ::isHardBoundary to detect filter tokens
2015-07-11 13:12:09 -04:00
Paul Beckingham
8afc7443e4
Lexer: Fixed bug that allowed unterminated quotes strings, again
2015-07-11 11:25:24 -04:00
Paul Beckingham
d3971d2384
Lexer: Replaced ::isString implementation with a call to ::readWord
2015-07-11 11:06:43 -04:00
Paul Beckingham
b7438edfd5
Lexer: Fixed bug that allowed unterminated quotes strings
2015-07-11 10:56:55 -04:00
Paul Beckingham
daba36860b
Lexer: Modified ::isSubstitution to use ::readWord
2015-07-11 10:27:23 -04:00
Paul Beckingham
096737bd02
Lexer: Modified ::isPattern to use ::readWord
2015-07-11 10:27:06 -04:00
Paul Beckingham
a86edaa6b2
Lexer: Converted ::isPair to use ::readWord
...
- With ::isPair using ::readWord, attribute values may now contain escaped
entities such as \t, \uNNNN, and U+NNNN.
- Removed distinct handling for <name><sep><value>, rc<sep><value> and
rc.<name><sep><value> - all generic now.
2015-07-10 11:24:57 -04:00
Paul Beckingham
45aaa530ac
Lexer: Skipping whitespace on ::readWord at SOL was a mistake
2015-07-10 11:23:57 -04:00
Paul Beckingham
e55528e21e
Lexer: ::readWord now skips leading whiteSpace
2015-07-08 11:24:46 -04:00
Paul Beckingham
e6c4f48a48
Lexer: readWords for quoted strings now retains the quotes
2015-07-08 09:03:48 -04:00
Paul Beckingham
1fed8c55f1
Lexer: Collapsed two ::isString calls into one
2015-07-06 16:40:18 -04:00
Paul Beckingham
7a6d546a0d
Lexer:: Added polymorphic ::readWord for quoteѕ and unquoted strings
2015-07-06 16:37:46 -04:00
Paul Beckingham
d82da280cb
Lexer: Implemented ::readWord
...
- Lexer::readWord is a general-purpose text parser, for finding plain words and
quoted strings. It supports \uNNNN and U+NNNN unicode sequences, and general
escapes, \t, \', \" etc.
2015-07-06 15:32:12 -04:00
Paul Beckingham
e36fb2f10c
Lexer: Switched argument order for ::decomposePair
2015-07-06 12:10:50 -04:00
Paul Beckingham
81599071e7
Lexer: Implemented ::decomposePair
2015-07-06 11:28:39 -04:00
Paul Beckingham
1836ac29e2
Lexer: Removed expermental code, didn't help
2015-07-04 15:03:28 -04:00
Paul Beckingham
3b99559216
Lexer: Added standalone token support
...
- Added default ctor.
- Added ::token method for classifying whole tokens.
- Stubbed token classifier methods.
2015-07-04 11:38:09 -04:00
Paul Beckingham
4141215d4b
Lexer: Clarified ::isTag lookbehind rules
2015-07-04 10:48:44 -04:00
Paul Beckingham
f33da18789
Lexer: Removed ::isList and Lexer::Type::list - not needed
2015-07-01 18:04:21 -04:00
Paul Beckingham
b090c6bccf
Lexer: Removed unnecessary ::ambiguity method
2015-07-01 16:18:28 -04:00
Paul Beckingham
86ed232348
Lexer: Added ::wasQuoted to determine original quote state
2015-06-28 12:35:06 -04:00
Paul Beckingham
de93c63535
Lexer: Not longer considers ( ) part of a contiguous token
2015-06-24 12:47:24 -04:00
Paul Beckingham
d9bcbdee0a
Lexer: Added ::isContiguous for word-like matching
2015-06-22 21:34:57 -04:00
Paul Beckingham
fd35190ab0
Lexer: Fixed bug that caused 'name=value' to not be a Lexer::Type::pair
2015-06-22 11:55:19 -04:00
Paul Beckingham
f4a7c50f1a
Lexer: Added ::isSet to recognize numerical sets
...
- A numerical set is a list of numbers: 1,2,3
Or a range of numbers: 5-10
Or a combination of both: 1,2,3,5-10
2015-06-19 18:28:58 -07:00
Paul Beckingham
7293de75b0
TW-1608: The recur/recurring report shows tasks without a recur interval
...
- Lexer needed additional lookbehind criteria for ::isTag (thanks to Brad
Collette).
2015-05-09 21:27:48 -04:00
Paul Beckingham
36e31811b0
TW-1606: scheduled.any filter
...
- The Lexer::dom type worked embedded, but not isolated (thanks to Peter Rochen).
2015-04-29 18:53:13 -04:00
Paul Beckingham
39fb45447b
Lexer: Migrated ispunct to Lexer::isPunctuation
2015-04-16 23:52:43 -04:00
Paul Beckingham
c6dbdf87a4
Lexer: Migrated isalpha to Lexer::isAlpha
2015-04-16 23:24:17 -04:00
Wilhelm Schuermann
2eea7805c6
Lexer: Fix "task calc now+3days" error
...
- Fix isDuration() consuming operators, leading to evaluation errors.
Previously only "task calc now + 3days" worked, now the spaces are
entirely optional.
2015-04-02 13:29:57 +02:00
Paul Beckingham
96c448ca1e
Lexer: Corrected off-by-one error in ::isTripleCharOperator
2015-03-29 23:07:18 -04:00
Paul Beckingham
5af3f71ac5
Lexer: Fixed /from/to/g detection at EOS
2015-03-29 22:56:34 -04:00
Paul Beckingham
8b863c9764
Lexer: Fixed /pattern/ detection at EOS
2015-03-29 22:53:38 -04:00
Paul Beckingham
9630b76990
Build: Resolve warnings from flod build
2015-03-29 18:21:33 -04:00
Paul Beckingham
289780c8cc
Lexer: Added comments
2015-03-20 17:16:00 -04:00
Paul Beckingham
d202691638
Lexer
...
- Improved comment.
2015-03-07 10:09:58 -05:00
Paul Beckingham
e11b333a0b
Lexer
...
- ::isPath was not observing the null character string terminator.
2015-03-05 21:22:40 -05:00
Paul Beckingham
53e9bd0cbd
Lexer
...
- Words cannot contain single-char operators.
2015-03-02 00:03:01 -05:00
Paul Beckingham
237d932ff9
Lexer
...
- Improved ::isIdentifier, ::isUUID and ::isDOM.
2015-03-01 23:54:45 -05:00
Paul Beckingham
2af470bb90
Lexer
...
- Lexer::Type::identifier now includes DOM references.
2015-03-01 22:08:19 -05:00
Paul Beckingham
309b607672
Lexer
...
- Number digits followed by non-whitespace, non-operators are not numbers, ie
"2nd" is not "2","nd".
2015-03-01 16:03:10 -05:00
Paul Beckingham
3f2d377fef
Lexer
...
- Allow '=' in rc.<name>[:=]<value>, but not in non-rc Lexer::Type::pair
combinations. That means 'name=value' is not a Lexer::Type::pair.
2015-02-28 12:05:24 -05:00
Paul Beckingham
e67c6c45cf
Lexer
...
- Strings now retain their quotes, for compatibility with 2.4.1.
2015-02-24 23:01:12 -05:00
Paul Beckingham
8791c0a921
Lexer
...
- Migrated old noSpaces() function into Lexer::isOneWord.
2015-02-22 18:23:26 -05:00