App::Ack::Filter::IsGroup
The App::Ack::Filter::IsGroup class optimizes multiple
App::Ack::Filter::Is calls into one container.
Let's say you have 100 --type-add=is:... filters.
You could have
my @filters = map { make_is_filter($_) } 1..100;
and then do
if ( any { $_->filter($rsrc) } @filters ) { ... }
but that's slow, because of of method lookup overhead, function call
overhead, etc. So ::Is filters know how to organize themselves into an
::IsGroup filter.
|