1File::Find::Rule::Perl(U3s)er Contributed Perl DocumentatFiiolne::Find::Rule::Perl(3)
2
3
4

NAME

6       File::Find::Rule::Perl - Common rules for searching for Perl things
7

SYNOPSIS

9         use File::Find::Rule       ();
10         use File::Find::Rule::Perl ();
11
12         # Find all Perl files smaller than 10k
13         my @files = File::Find::Rule->perl_file
14                                     ->size('<10Ki')
15                                     ->in('dir');
16
17         # Locate all the modules that PAUSE will index
18         my @mod = File::Find::Rule->no_index
19                                   ->perl_module
20                                   ->in('My-Distribution');
21

DESCRIPTION

23       I write a lot of things that muck with Perl files. And it always
24       annoyed me that finding "perl files" requires a moderately complex
25       File::Find::Rule pattern.
26
27       File::Find::Rule::Perl provides methods for finding various types Perl-
28       related files, or replicating search queries run on a distribution in
29       various parts of the CPAN ecosystem.
30

METHODS

32   perl_module
33       The "perl_module" rule locates perl modules. That is, files that are
34       named "*.pm".
35
36       This rule is equivalent to "->"file->name( '*.pm' )> and is included
37       primarily for completeness.
38
39   perl_test
40       The "perl_test" rule locates perl test scripts. That is, files that are
41       named "*.t".
42
43       This rule is equivalent to "->"file->name( '*.t' )> and is included
44       primarily for completeness.
45
46   perl_installer
47       The "perl_installer" rule locates perl distribution installers. That
48       is, it locates "Makefile.PL" and "Build.PL" files.
49
50   perl_script
51       The "perl_script" rule locates perl scripts.
52
53       This is any file that ends in .pl, or any files without extensions that
54       have a perl "hash-bang" line.
55
56   perl_file
57       The "perl_file" rule locates all files containing Perl code.
58
59       This includes all the files matching the above "perl_module",
60       "perl_test", "perl_installer" and "perl_script" rules.
61
62   no_index
63         # Provide the rules directly
64         $rule->no_index(
65             directory => [ 'inc', 't', 'examples' ],
66             file      => [ 'Foo.pm', 'lib/Foo.pm' ],
67         );
68
69         # Provide a META.yml to use
70         $rule->no_index( 'META.yml' );
71
72         # Provide a dist root directory to look for a META.yml in
73         $rule->no_index( 'My-Distribution' );
74
75         # Automatically pick up a META.yml from the target directory
76         $rule->no_index->in( 'My-Distribution' );
77
78       The "no_index" method applies a set of rules as per the no_index
79       section in a "META.yml" file.
80

SUPPORT

82       Bugs should always be submitted via the CPAN bug tracker
83
84       http://rt.cpan.org/NoAuth/ReportBug.html?Queue=File-Find-Rule-Perl
85       <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=File-Find-Rule-Perl>
86
87       For other issues, contact the maintainer
88

AUTHOR

90       Adam Kennedy <adamk@cpan.org>
91

SEE ALSO

93       <http://ali.as/>, File::Find::Rule, File::Find::Rule::PPI
94
96       Copyright 2006 - 2010 Adam Kennedy.
97
98       This program is free software; you can redistribute it and/or modify it
99       under the same terms as Perl itself.
100
101       The full text of the license can be found in the LICENSE file included
102       with this module.
103
104
105
106perl v5.12.2                      2010-10-06         File::Find::Rule::Perl(3)
Impressum