Commit graph

118 commits

Author SHA1 Message Date
Paul Beckingham
ddf44de23d DOM: Converted to use CLI2 2015-06-14 20:45:25 -04:00
Paul Beckingham
7bbc794d3a C++11: N2672 Initializer lists
- Modified code to use the more compact and readable initializer lists.
2015-05-24 13:03:02 -04:00
Paul Beckingham
e74c6963a9 C++11: Cleaned up program framework with range-based for 2015-05-11 17:50:53 -04:00
Paul Beckingham
1371b6595e Build: Disambiguated Variant instantiation that causes 32-bit problems 2015-04-16 22:53:38 -04:00
Paul Beckingham
651ac3f174 Tw-1551
- TW-1551 Unable to get a UDA value from DOM (thanks to Tomas Babej).
2015-02-24 22:35:18 -05:00
Paul Beckingham
cdde747733 TW-1498
- TW-1498 Filtering for presence of UDA matches all tasks (thanks to Ralph Bean).
2015-01-10 14:36:21 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
d5c937ba8c Filter
- Diagnostics for filter eval were not enabled properly. Now rc.debug.parser=2
  will show all filter eval diagnostics.
2014-11-22 13:48:28 -05:00
Paul Beckingham
083b0cb0de CLI
- Implemented ::getBinary.
- Removed Context::program, and converted DOM and dom.t to call ::getBinary.
2014-11-02 21:49:42 -05:00
Paul Beckingham
283a1aa8ef DOM
- Converted DOM and unit test from Parser to CLI.
2014-10-25 22:55:31 -04:00
Paul Beckingham
5987594596 RX
- Removed mystery define that has been commented out for three years.
- Added explanatory comments.
2014-09-14 22:15:36 -04:00
Paul Beckingham
db6cecd2f3 DOM
- When attributes are accessed via DOM references, the value extracted is now
  imbued with the attribute type.
2014-06-24 22:16:57 -04:00
Paul Beckingham
4bf3364bb7 DOM
- Preserves more original types.
2014-06-11 23:13:37 -04:00
Paul Beckingham
456b982ced DOM
- Updated DOM to use Variant ovjects, which carry a type which improves
  expression evaluation.
2014-06-11 21:53:00 -04:00
Paul Beckingham
f969bcbe59 DOM
- Extended DOM support:
    <id|uuid>.<date>.year
    <id|uuid>.<date>.month
    <id|uuid>.<date>.day
    <id|uuid>.<date>.week
    <id|uuid>.<date>.weekday
    <id|uuid>.<date>.julian
    <id|uuid>.<date>.hour
    <id|uuid>.<date>.minute
    <id|uuid>.<date>.second
    <id|uuid>.tags.<literal>
    <id|uuid>.annotations.<N>.entry
    <id|uuid>.annotations.<N>.entry.year
    <id|uuid>.annotations.<N>.entry.month
    <id|uuid>.annotations.<N>.entry.day
    <id|uuid>.annotations.<N>.entry.week
    <id|uuid>.annotations.<N>.entry.weekday
    <id|uuid>.annotations.<N>.entry.julian
    <id|uuid>.annotations.<N>.entry.hour
    <id|uuid>.annotations.<N>.entry.minute
    <id|uuid>.annotations.<N>.entry.second
    <id|uuid>.annotations.<N>.description
2014-06-06 19:43:20 -04:00
Paul Beckingham
61dab3eeb9 DOM
- Extended DOM.
2014-06-05 17:55:24 -04:00
Paul Beckingham
e6df1b38e2 DOM
- Standardized DOM interface to return success/failure, with the possibility
  of blank values. This matches the Eval::source callback interface‥
- Added more unit tests.
2014-06-04 18:57:36 -04:00
Paul Beckingham
f59109cfab DOM
- Converted A3::is_attribute to Parser::canonicalize.
2014-05-25 21:33:05 -04:00
Paul Beckingham
4661cdf0b2 Build
- When A3.h is removed from Command.h, other include files need to be
  added elsewhere.  That means the dependencies were wrong.  Hmm.
2014-05-25 21:25:49 -04:00
Paul Beckingham
79abddd03d Parser
- Renamed A3t to Parser.
2014-05-25 09:44:22 -04:00
Paul Beckingham
b7d7646c28 Performance
- Moved DOM stack variable instantiation to immediately before first use, which
  is after more common use cases.
2014-05-24 13:01:53 -04:00
Paul Beckingham
6f611d07f1 DOM
- Converted from A3::is_attribute to A3t::canonicalize.
2014-04-27 12:51:02 -07:00
Paul Beckingham
0dc73d759b DOM
- Migrated DOM off A3, onto A3t.  First live use of new parser.
2014-04-24 11:48:43 -04:00
Paul Beckingham
501194abfa TW-1300
- TW-1300 _get could use return codes (thanks to Scott Kostyshak).
2014-04-12 13:32:35 -04:00
Paul Beckingham
523dce8f32 Code Cleanup
- Standardized headers.
2014-02-01 14:33:37 -05:00
Paul Beckingham
8ed92ca498 Copyright
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
8baaa1031c Code Cleanup
- Removed obsolete comments and code.
2013-11-03 10:43:39 -05:00
Paul Beckingham
6555811ca5 Bug
- Fixed bug in DOM access where the attribute name was not being properly used
  for UUID-based lookup.
2013-08-26 08:43:02 -07:00
Paul Beckingham
166723e632 Feature
- New '_get' is a DOM accessor helper command.
2013-08-25 23:35:32 -07:00
Paul Beckingham
d03c4cda8a Build Error
- Many files were missing an explicit cmake.h include.  Some were not including
  it at all.  Now it's used almost everywhere.

(cherry picked from commit 82ae86979c497e6d1d0c6b2b5a55aa379ec82c98)
2013-06-02 13:57:36 -04:00
Paul Beckingham
5cfd7b0cc6 Portability
- Added support for GNU/Hurd and GNU/kFreeBSD systems (thanks to Jakub Wilk).
2013-04-13 14:49:59 -04:00
Paul Beckingham
773b55d374 Code Cleanup
- Removed L10N define.  It served its purpose.
2013-04-07 23:50:51 -04:00
Federico Hernandez
7db5377d3b Removed the incomplete support for the Lua extensions. 2013-04-02 21:52:13 +02:00
Paul Beckingham
1dccd29643 Copyright 2013
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Paul Beckingham
76468f3ddd Code Cleanup
- Removed unused, untested DOM cache.
2013-01-12 14:47:34 -05:00
Owen Clarke
16bef4a29e Bug
- Fixed platform detection of OpenBSD and NetBSD
2012-07-22 20:15:11 +10:00
Paul Beckingham
52dfa8da1e Documentation
- Updated more documentation regarding 'scheduled' dates.
- Added color.scheduled to the rule.precedence.color setting.
- Added 'ready' report to the main man page.
2012-05-13 18:04:48 -04:00
Paul Beckingham
6580095002 Copyright
- Year change.
2012-01-02 23:32:10 -05:00
Paul Beckingham
bc12ac1ee6 DOM
- Fixed DOM bug that was performing the lookup '1.due' by locating task
  1, then attempting a get of the '1.due' attribute, instead of just 'due'.
2011-10-16 23:33:06 -04:00
Federico Hernandez
8116c6a103 License
- moving task from GPL to MIT license
  top level src directory
2011-10-08 00:04:01 +02:00
Paul Beckingham
4f0276c062 DOM
- Implemented lookup for <id>.<attr> and <uuid>.<attr>.
2011-08-25 22:19:25 -04:00
Paul Beckingham
ffa5bc43fe E9
- Working towards arg date/duration eval.
2011-08-06 00:59:14 -04:00
Paul Beckingham
e61e08c2ca Annotation Bug
- Fixed DOM lookup of special-case attributes: id and urgency are
  not stored in the usual manner, and must be handled differently.
- Removed the responsibility of DOM to evaluate literals, because
  they are handled more effectively in A3::tokenize.
- Fixed old code that assumed ".id" instead of "id".
- Removed unnecessary diag call from annotate.t.
2011-07-31 12:11:36 -04:00
Paul Beckingham
0c08b29e48 Code Cleanup
- Eliminated obsolete Arguments.h, Arguments.cpp.
2011-07-26 00:25:57 -04:00
Paul Beckingham
f174caccbc DOM
- Implemented DOM::get_references to return a list of all the
  fixed-string DOM references supported.
2011-07-24 13:11:49 -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
a6fadaee67 Expressions
- DOM lookups now canonicalize attribute names, and no longer return
  the unmodified name if the lookup yields nothing.
2011-07-19 22:34:29 -04:00
Paul Beckingham
09d94a0712 Expressions
- Eliminated the . prefix for DOM references to the current task - it is
  unnatural to state ".due < today".
- Prioritized parsing dates ahead of integers, which were masking all
  dates.
2011-07-19 00:25:26 -04:00
Paul Beckingham
ab6e230f10 Expressions
- Implemented Nibbler::getWord.
- Re-implemented Nibbler::getDOM.
- Modified DOM addressed for context-based attributes from "due" to ".due",
  the help disambiguate DOM references in expressions.  There is now a
  consistency:

      <id>.due         Task-specific
          .due         Contextual
    <uuid>.due         General

- Implemented associated unit tests.
2011-07-18 23:08:05 -04:00
Paul Beckingham
137b00a14a Expressions
- Commented out troublesome "distance_from_command" code.
- Commented out DOM diagnostics, for now.
- Commented out TDB2 diagnostics, for now.
- Category "seq" arguments are now assigned type "exp".
- All type "exp" arguments are now tokenized.
2011-07-17 13:52:55 -04:00