Commit graph

89 commits

Author SHA1 Message Date
Paul Beckingham
5dbbca882f Variant
- Updated operator-= to handle trivial values.
2014-06-16 18:42:31 -04:00
Paul Beckingham
e0bca6c4ad Variant
- Updated operator_partial to handle trivial values.
2014-06-16 18:42:11 -04:00
Paul Beckingham
c1a9e1e452 Variant
- Updated operator== to handle trivial values.
2014-06-16 18:41:36 -04:00
Paul Beckingham
5e9229db76 Variant
- Updated operator>= to handle trivial values.
2014-06-16 18:41:04 -04:00
Paul Beckingham
fc3688ea70 Variant
- Updated operator> to handle trivial values.
2014-06-16 18:40:34 -04:00
Paul Beckingham
78a748e865 Variant
- Updated operator<= to handle trivial values.
2014-06-16 18:40:00 -04:00
Paul Beckingham
7484b5a22f Variant
- Updated operator< to handle trivial values.
2014-06-16 18:38:43 -04:00
Paul Beckingham
8e16a3e0e4 Variant
- Implemented ::trivial to faclitate operator shortcuts.
2014-06-16 17:25:48 -04:00
Paul Beckingham
9a74fbe4a9 Variant
- ISO8601 periods contain uppercase characters.
2014-06-10 23:09:41 -04:00
Paul Beckingham
bd53dd2aeb Variant
- Rewrite ::operator std::string to yield more accurate duration renditions.
2014-06-10 22:34:52 -04:00
Paul Beckingham
512fe2f6c7 Variant
- ::operator_match and ::operator_nomatch now take a 'const Task&' argument to
  use for description/annotation matching.
- Updated unit tests.
2014-06-03 01:27:02 -04:00
Paul Beckingham
ca6940ba2e Variant
::operator_hastag now uses contextTask for resolution.
2014-06-03 01:10:58 -04:00
Paul Beckingham
a470e50ee6 Variant
- Attempts legacy date conversion ahead of ISO.
2014-06-02 23:30:40 -04:00
Paul Beckingham
7196ac8554 Variant
- ::operator_match disobeyed rc.search.case.sensitive.
2014-06-02 23:15:25 -04:00
Paul Beckingham
6706d1b955 Date/ISO8601
- Changed the order of parsing from ISO, Date to Date, ISO. This favors the
  old dateformat mechanism more than the new one. One day this will flip.
2014-06-01 00:10:16 -04:00
Paul Beckingham
4f8d6c877d Variant
- Implemented an (unused) operator_nopartial for the sake of symmetry.
2014-05-31 17:54:43 -04:00
Paul Beckingham
4694cfe0fe Variant
- Added specialized handling for 'priority' attributes when compared using the
  <, <=, > or >= operators.
2014-05-31 10:02:50 -04:00
Paul Beckingham
3bc44681a5 Variant
- A variant now contains a source reference, which indicates where it came
  from.  This is used to determine whether 'H' is a priority or just a word.
2014-05-31 09:59:18 -04:00
Paul Beckingham
52eaf3f9c2 Variant
- Can now convert type_string to type_date via legacy dateformat, provided
  that Context transmits the format.
2014-05-29 00:43:39 -04:00
Paul Beckingham
7f56187748 Variant
- The partial match operator now expects length(left) > length(right).
2014-05-27 15:33:58 -04:00
Paul Beckingham
1f253f7fc8 Variant
- ::operator_partial should fail for strings if either operand is of zero
  length.
2014-05-27 00:16:40 -04:00
Paul Beckingham
0b160292c0 Variant
- Implemented partial match for strings.
2014-05-27 00:08:07 -04:00
Paul Beckingham
ae356a1d32 Variant
- Implemented ::operator_hastag and ::operator_notag.
2014-05-26 21:04:47 -04:00
Paul Beckingham
c74d45b15a Variant
- Added ::operator_partial.
2014-05-19 20:12:38 -04:00
Paul Beckingham
5706cca207 TW-115
- TW-115 allow "0day" durations for UDAs.
2014-04-12 14:12:59 -04:00
Paul Beckingham
9b13fadba1 Variant
- Merged libexpr changes.
2014-01-02 01:15:15 -05:00
Paul Beckingham
a7f694386a Code Cleanup
- Eliminated obsolete Variant code.
2011-08-01 01:26:59 -04:00
Paul Beckingham
197524a5fc Expression
- Added configurable 'abbreviation.minimum' (default:2) setting to
  control how auto-completion works.
2011-07-20 10:51:13 -04:00
Paul Beckingham
2b135ed3c2 Expressions
- Variants can now construct dates and duration from std::string.
2011-07-09 09:03:15 -04:00
Paul Beckingham
b70f4e8528 Variant
- Cleaned up some operator implementations.
- Added Date, Duration formatting.
2011-07-04 13:51:36 -04:00
Paul Beckingham
1bf6c8a9fa Expressions
- DOM::get now returns the input name by default, rather than "", which
  was the cause of many filter elements not working.
- Modified Variant to have no private data, which means fewer copies of
  Variants and less code.
- Eliminated Variant::operator^ - not needed.
2011-06-19 18:15:09 -04:00
Paul Beckingham
db17536266 Expressions
- Filter processing short-circuits if there is no filter.
- Variant code was not only incomplete, but very broken.  It should not have
  been used.  It still doesn't handle dates and durations.
- Converted all logical and relational Variant operators to return Boolean
  values.
- Stack size is now checked for every operator.
- All operators implemented (without any advanced special case handling) except
  %, ~ and !~.
- Added lazy DOM expansion at the last possible moment.
- Implemented Expression::create_variant to create appropriate Variant instances
  based on categorized and inferred type.
- Removed Variant math functions.  No point.
- Debug code left in place for now.
2011-06-19 09:49:43 -04:00
Paul Beckingham
4fca40fc69 Expressions
- Added Expression::eval short-circuit.
- Added int/number exlclusions for Nibbler::getDOM.
- Added Variant::boolean for exatracting filter results.
2011-06-16 20:30:48 -04:00
Paul Beckingham
f971fcd110 Code Cleanup
- Obsoleted Filter.{h,cpp}.
- Obsoleted Sequence.{h,cpp}.
- Eliminated Context::autoFilter.
- Stubbed Expression::eval.
2011-06-15 23:45:50 -04:00
Paul Beckingham
0260aff441 Build
- Enabled compiler warnings, which were off.  Yikes.
- Fixed all compiler warnings on OSX.
2011-05-28 23:59:43 -04:00
Paul Beckingham
d892a0cbd2 Code Cleanup
- Fixed comments, compilation warnings.
- Decomposed Context::initialize into several, single-purpose methods.
- Replaced Context::initialize with Context::initialize2.
2011-05-24 19:37:03 -04:00
Paul Beckingham
0471c17f12 Build System
- Added new src/commands and src/columns intermediate libs.
- Began implementation of the first Command object.
- Began implementation of the first Column object.
- TDB2, Variant updates.
2011-04-23 16:41:37 -04:00
Paul Beckingham
14b184089d Code Cleanup
- Fixed broken build on tt.
2011-04-07 18:27:03 -04:00
Paul Beckingham
d9b2ac0f33 Variant
- Salvaged Variant code from older project, for use in expression
  evaluation.
2011-04-05 23:47:09 -04:00