mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-08-21 07:43:08 +02:00
Filter
- Diagnostics for filter eval were not enabled properly. Now rc.debug.parser=2 will show all filter eval diagnostics.
This commit is contained in:
parent
85518c646f
commit
d5c937ba8c
3 changed files with 8 additions and 4 deletions
|
@ -1565,7 +1565,7 @@ void CLI::insertIDExpr ()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Combine the ID and UUID sections wiþh 'or'.
|
// Combine the ID and UUID sections with 'or'.
|
||||||
if (_id_ranges.size () &&
|
if (_id_ranges.size () &&
|
||||||
_uuid_list.size ())
|
_uuid_list.size ())
|
||||||
reconstructed.push_back (opOr);
|
reconstructed.push_back (opOr);
|
||||||
|
|
|
@ -242,7 +242,7 @@ bool DOM::get (const std::string& name, const Task& task, Variant& value)
|
||||||
{
|
{
|
||||||
if (column->type () == "date")
|
if (column->type () == "date")
|
||||||
value = Variant (task.get_date (canonical), Variant::type_date);
|
value = Variant (task.get_date (canonical), Variant::type_date);
|
||||||
else if (column->type () == "duration")
|
else if (column->type () == "duration" || canonical == "recur")
|
||||||
value = Variant ((time_t) Duration (task.get (canonical)), Variant::type_duration);
|
value = Variant ((time_t) Duration (task.get (canonical)), Variant::type_duration);
|
||||||
else if (column->type () == "numeric")
|
else if (column->type () == "numeric")
|
||||||
value = Variant (task.get_float (canonical));
|
value = Variant (task.get_float (canonical));
|
||||||
|
|
|
@ -85,7 +85,7 @@ void Filter::subset (const std::vector <Task>& input, std::vector <Task>& output
|
||||||
|
|
||||||
// Debug output from Eval during compilation is useful. During evaluation
|
// Debug output from Eval during compilation is useful. During evaluation
|
||||||
// it is mostly noise.
|
// it is mostly noise.
|
||||||
eval.debug (context.config.getInteger ("debug.parser") >= 1 ? true : false);
|
eval.debug (context.config.getInteger ("debug.parser") >= 2 ? true : false);
|
||||||
eval.compileExpression (filterExpr);
|
eval.compileExpression (filterExpr);
|
||||||
eval.debug (false);
|
eval.debug (false);
|
||||||
|
|
||||||
|
@ -147,7 +147,9 @@ void Filter::subset (std::vector <Task>& output)
|
||||||
contextTask = *task;
|
contextTask = *task;
|
||||||
|
|
||||||
Variant var;
|
Variant var;
|
||||||
|
eval.debug (context.config.getInteger ("debug.parser") >= 2 ? true : false);
|
||||||
eval.evaluateCompiledExpression (var);
|
eval.evaluateCompiledExpression (var);
|
||||||
|
eval.debug (false);
|
||||||
if (var.get_bool ())
|
if (var.get_bool ())
|
||||||
output.push_back (*task);
|
output.push_back (*task);
|
||||||
}
|
}
|
||||||
|
@ -156,7 +158,7 @@ void Filter::subset (std::vector <Task>& output)
|
||||||
if (! shortcut)
|
if (! shortcut)
|
||||||
{
|
{
|
||||||
context.timer_filter.stop ();
|
context.timer_filter.stop ();
|
||||||
const std::vector <Task>& completed = context.tdb2.completed.get_tasks (); // TODO Optional
|
const std::vector <Task>& completed = context.tdb2.completed.get_tasks ();
|
||||||
context.timer_filter.start ();
|
context.timer_filter.start ();
|
||||||
_startCount += (int) completed.size ();
|
_startCount += (int) completed.size ();
|
||||||
|
|
||||||
|
@ -166,7 +168,9 @@ void Filter::subset (std::vector <Task>& output)
|
||||||
contextTask = *task;
|
contextTask = *task;
|
||||||
|
|
||||||
Variant var;
|
Variant var;
|
||||||
|
eval.debug (context.config.getInteger ("debug.parser") >= 2 ? true : false);
|
||||||
eval.evaluateCompiledExpression (var);
|
eval.evaluateCompiledExpression (var);
|
||||||
|
eval.debug (false);
|
||||||
if (var.get_bool ())
|
if (var.get_bool ())
|
||||||
output.push_back (*task);
|
output.push_back (*task);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue