Pootle::Client::Filters
Wrapper object for multiple filters. Use this to test a object against multiple filters conveniently.
Synopsis
For available language attributes to filter with, see. https://pootle.readthedocs.io/en/stable-2.5.1/api/api_language.html#get-a-language or Pootle::Resource::Language
To pick only the Galician language from all the languages the Pootle server supports
my $languages = $papi->findLanguages( Pootle::Filters->new({
fullname => qr/^Galician/,
code => qr/gl_?.*/,
}));
To find all English dialects
my $languages = $papi->findLanguages( Pootle::Filters->new({
code => qr/^en/, #All codes starting with 'en', such as en_GB, en_NZ, ...
}));
Filters can filter all Pootle::Resource::* -objects
new
my $ok = Pootle::Client::Filter->new({
fullname => qr/^Finnish/,
code => qr/^fi/,
})->matches($objects);
@PARAM1 ARRAYRef of {key => regexp}, {...} -pairs. Key selects the object's attribute to test against, and regexp matches against the attribute value
@RETURNS Pootle::Client::Filters
match
Apply filters to the given object and return if object matches them
@PARAM1 Pootle::Resource::*-object
@PARAM2 HASHRef of
@RETURNS Boolean, True when all filters match
intersect
Given two groups of Pootle::Resource::* -objects, finds an intersection of a given attribute.
@RETURNS ARRAYRef of Pootle::Filters::Intersection-objects