File::Find::Match::Util - Some exportable utility functions for writing rulesets.


NAME

File::Find::Match::Util - Some exportable utility functions for writing rulesets.


SYNOPSIS

   use File::Find::Match::Util qw( filename );
   $pred = filename('foobar.pl');
   $pred->('foobar.pl')         == 1;
   $pred->('baz/foobar.pl')     == 1;
   $pred->('baz/bar/foobar.pl') == 1;
   $pred->('bazquux.pl')        == 0;
   $pred = ext('pm');
   $pred->('foo.pm')  == 1;
   $pred->('foo.png') == 0;
   $pred->('foo.pmg') == 0;
   $pred = wildcard('*.pod');
   $pred->('foo.pod')     == 1;
   $pred->('foo/bar.pod') == 1;
   $pred->('foo/.pod')    == 1;
   $pred->('Spoon')       == 0;

=head1 DESCRIPTION

This provides a few handy functions which create predicates for the File::Find::Match manpage.


FUNCTIONS

The following functions are available for export.

filename($basename)


This function returns a subroutine reference, which takes one argument $file
and returns true if C<File::Basename::basename($file) eq $basename>, false otherwise.
See C<File::Basename> for details.

Essentially, filename('foobar') is equivalent to:

  sub { File::Basename::basename($_[0]) eq 'foobar' }

ext($extension)

This function returns a subroutine reference, which takes argument $file and returns true if it ends with ".$extension".

wildcard($pattern)

Perform shell-like wildcard matching. Currently only * is supported. * is exactly equivelent to regexp .+, which is possibly incorrect.

Patches are welcome.


EXPORTS

None by default.

filename($basename), ext($extension), wildcard($pattern).


BUGS

None known. Bug reports are welcome.

Please use the CPAN bug ticketing system at http://rt.cpan.org/. You can also mail bugs, fixes and enhancements to <bug-file-find-match at rt.cpan.org>.


CREDITS

Thanks to Andy Wardly for the name, and the Template Toolkit list for inspiration.


AUTHOR

Dylan William Hardison <dhardison@cpan.org>

http://dylan.hardison.net/


SEE ALSO

the File::Find::Match manpage, the File::Find manpage, perl(1).


COPYRIGHT and LICENSE

Copyright (C) 2004 Dylan William Hardison. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

 File::Find::Match::Util - Some exportable utility functions for writing rulesets.