SYNOPSIS
package Catmandu::Fix::Condition::is_even
use Catmandu::Sane;
use Moo;
use Catmandu::Fix::Has;
has path => (fix_arg => 1);
with 'Catmandu::Fix::Condition::SimpleAllTest';
sub emit_test {
my ($self, $var) = @_;
"is_value(${var}) && ${var} % 2 == 0";
}
1;
# Now you can write in your fixes
is_even('my_field') # True when my_field is 0,2,4,6,...
is_even('my_field.*') # True when all my_field's are 0,2,4,6,...
DESCRIPTION
The is a base class to ease the construction of Catmandu::Fix::Conditional-s. An 'all' test matches when all node on a path match a condition. E.g.
all_match('title','abc') # true when the title field contains 'abc' all_match('title.*','abc') # true when all title fields contain 'abc'