Query: cpan::distroprefs
OS: debian
Section: 3perl
Links: debian man pages all man pages
Forums: unix linux community forum categories
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
CPAN::Distroprefs(3perl) Perl Programmers Reference Guide CPAN::Distroprefs(3perl)NAMECPAN::Distroprefs -- read and match distroprefsSYNOPSISuse CPAN::Distroprefs; my %info = (... distribution/environment info ...); my $finder = CPAN::Distroprefs->find($prefs_dir, \%ext_map); while (my $result = $finder->next) { die $result->as_string if $result->is_fatal; warn($result->as_string), next if $result->is_warning; for my $pref (@{ $result->prefs }) { if ($pref->matches(\%info)) { return $pref; } } }DESCRIPTIONThis module encapsulates reading Distroprefs and matching them against CPAN distributions.INTERFACEmy $finder = CPAN::Distroprefs->find($dir, \%ext_map); while (my $result = $finder->next) { ... } Build an iterator which finds distroprefs files in the given directory. %ext_map is a hashref whose keys are file extensions and whose values are modules used to load matching files: { 'yml' => 'YAML::Syck', 'dd' => 'Data::Dumper', ... } Each time "$finder->next" is called, the iterator returns one of two possible values: o a CPAN::Distroprefs::Result object o "undef", indicating that no prefs files remain to be foundRESULTS"find()" returns CPAN::Distroprefs::Result objects to indicate success or failure when reading a prefs file. Common All results share some common attributes: type "success", "warning", or "fatal" file the file from which these prefs were read, or to which this error refers (relative filename) ext the file's extension, which determines how to load it dir the directory the file was read from abs the absolute path to the file Errors Error results (warning and fatal) contain: msg the error message (usually either $! or a YAML error) Successes Success results contain: prefs an arrayref of CPAN::Distroprefs::Pref objectsPREFSCPAN::Distroprefs::Pref objects represent individual distroprefs documents. They are constructed automatically as part of "success" results from "find()". data the pref information as a hashref, suitable for e.g. passing to Kwalify match_attributes returns a list of the valid match attributes (see the Distroprefs section in CPAN) currently: "env perl perlconfig distribution module" has_any_match true if this pref has a 'match' attribute at all has_valid_subkeys true if this pref has a 'match' attribute and at least one valid match attribute matches if ($pref->matches(\%arg)) { ... } true if this pref matches the passed-in hashref, which must have a value for each of the "match_attributes" (above)LICENSEThis program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2011-09-26 CPAN::Distroprefs(3perl)