Rechercher une page de manuel
Perl::PrereqScanner.3pm
Langue: en
Version: 2010-05-28 (fedora - 01/12/10)
Section: 3 (Bibliothèques de fonctions)
Sommaire
NAME
Perl::PrereqScanner - a tool to scan your Perl code for its prerequisitesVERSION
version 0.101480SYNOPSIS
use Perl::PrereqScanner; my $scanner = Perl::PrereqScanner->new; my $prereqs = $scanner->scan_ppi_document( $ppi_doc ); my $prereqs = $scanner->scan_file( $file_path ); my $prereqs = $scanner->scan_string( $perl_code );
DESCRIPTION
The scanner will extract loosely your distribution prerequisites from your files.The extraction may not be perfect but tries to do its best. It will currently find the following prereqs:
- *
- plain lines beginning with "use" or "require" in your perl modules and scripts, including minimum perl version
- *
- regular inheritance declared with the "base" and "parent" pragmata
- *
- Moose inheritance declared with the "extends" keyword
- *
- Moose roles included with the "with" keyword
It will trim the following pragamata: "strict", "warnings", and "lib". "base" is trimmed unless a specific version is required. "parent" is kept, since it's only recently become a core library.
Scanner Plugins
Perl::PrereqScanner works by running a series of scanners over a PPI::Document representing the code to scan. By default the ``Perl5'' and ``Moose'' scanners are run. You can supply your own scanners when constructing your PrereqScanner:# Do not use the Moose scanner, only Perl5: my $scanner = Perl::PrereqScanner->new({ plugins => [ qw(Perl5) ] }); # Use any stock plugins, plus Example: my $scanner = Perl::PrereqScanner->new({ extra_plugins => [ qw(Example) ] });
METHODS
scan_string
my $prereqs = $scanner->scan_string( $perl_code );
Given a string containing Perl source code, this method returns a Version::Requirements object describing the modules it requires.
scan_file
my $prereqs = $scanner->scan_file( $path );
Given a file path to a Perl document, this method returns a Version::Requirements object describing the modules it requires.
scan_ppi_document
my $prereqs = $scanner->scan_ppi_document( $ppi_doc );
Given a PPI::Document, this method returns a Version::Requirements object describing the modules it requires.
AUTHORS
Jerome Quelin Ricardo Signes <rjbs@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2009 by Jerome Quelin.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre