👤
Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

CentOS 7.0 - man page for perl::critic::policy::modules::requirefilenamematchespackage (centos section 3)

Perl::Critic::Policy::Modules::UsePerl::Critic::Policy::Modules::RequireFilenameMatchesPackage(3)

NAME
       Perl::Critic::Policy::Modules::RequireFilenameMatchesPackage - Package declaration must
       match filename.

AFFILIATION
       This Policy is part of the core Perl::Critic distribution.

DESCRIPTION
       The package declaration should always match the name of the file that contains it.  For
       example, "package Foo::Bar;" should be in a file called "Bar.pm".  This makes it easier
       for developers to figure out which file a symbol comes from when they see it in your code.
       For instance, when you see "Foo::Bar->new()", you should be able to find the class
       definition for a "Foo::Bar" in a file called Bar.pm

       Therefore, this Policy requires the last component of the first package name declared in
       the file to match the physical filename.  Or if "#line" directives are used, then it must
       match the logical filename defined by the prevailing "#line" directive at the point of the
       package declaration.  Here are some examples:

	 # Any of the following in file "Foo/Bar/Baz.pm":
	 package Foo::Bar::Baz;     # ok
	 package Baz;		    # ok
	 package Nuts;		    # not ok (doesn't match physical filename)

	 # using #line directives in file "Foo/Bar/Baz.pm":
	 #line 1 Nuts.pm
	 package Nuts;		   # ok
	 package Baz;		   # not ok (contradicts #line directive)

       If the file is not deemed to be a module, then this Policy does not apply.  Also, if the
       first package namespace found in the file is "main" then this Policy does not apply.

CONFIGURATION
       This Policy is not configurable except for the standard options.

AUTHOR
       Chris Dolan <cdolan@cpan.org>

COPYRIGHT
       Copyright (c) 2006-2011 Chris Dolan.

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

perl v5.16.3			  Perl::Critic::Policy::Modules::RequireFilenameMatchesPackage(3)


All times are GMT -4. The time now is 11:15 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
×
UNIX.COM Login
Username:
Password:  
Show Password