Task: Remove std::map inheritance, clean up interface

- Make the Task object's interface more explicit by removing the
  std::map inheritance.
- Using this more explicit interface, remove unneeded ctors in order to
  allow the compiler to "Do The Right Thing"(tm).
  This leads to a performance improvement of 12% in the "add"
  performance test, and 7% for "import".
This commit is contained in:
Wilhelm Schuermann 2015-11-04 20:33:52 +01:00
parent c248a32cab
commit 8f8ad813cd
12 changed files with 64 additions and 92 deletions

View file

@ -76,7 +76,7 @@ int CmdModify::execute (std::string&)
Task before (task);
task.modify (Task::modReplace);
if (before != task)
if (before.data != task.data)
{
// Abort if change introduces inconsistencies.
checkConsistency(before, task);