|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# Examples of provides
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
package Test;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
package TMP::tmp;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# Examples of requires
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# Simple 'use'
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use Test::Simple;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# Simple 'use' with whitespaces at the beginning
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use Use::WhiteSpace;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# 'use' with version
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use v5.6.1;
|
|
Packit |
745a47 |
use version 0.77;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
# TODO
|
|
Packit |
745a47 |
use Meow v1.2.3;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# 'use' with parameter
|
|
Packit |
745a47 |
# TODO
|
|
Packit |
745a47 |
# The extra parameters are found only for 'base' and 'parent'
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use overload
|
|
Packit |
745a47 |
+ = \+
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use POE qw(System::Wheel Client::HTTP);
|
|
Packit |
745a47 |
use Any::Moose 'Role';
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use aliased "Some::Crazy::Module";
|
|
Packit |
745a47 |
use aliased "Another::Crazy::Module" => "ShorterName";
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use Moose;
|
|
Packit |
745a47 |
# Is not find yet
|
|
Packit |
745a47 |
with 'Foo::Bar'; # => { -version => 0.01 },
|
|
Packit |
745a47 |
'Bar::Baz'; # => { -version => 0.03 };
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use Test::Requires qw(TestRequiresArray1 TestRequiresArray2);
|
|
Packit |
745a47 |
use Test::Requires {TestRequiresHash1 => 0.1, TestRequiresHash2 => 0.2};
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# 'use' with 'base' or 'parent
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
use base 'Exporter';
|
|
Packit |
745a47 |
use parent qw(DBI);
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
# TODO
|
|
Packit |
745a47 |
# It is not parse correctly yet, because it does not remove anything from list
|
|
Packit |
745a47 |
# of found modules.
|
|
Packit |
745a47 |
# use parent 'NotRequiredByParent1';
|
|
Packit |
745a47 |
# use parent -norequire, 'NotRequiredByParent1', 'NotRequiredByParent2';
|
|
Packit |
745a47 |
#
|
|
Packit |
745a47 |
# Do not process 'no' yet
|
|
Packit |
745a47 |
# no File::Path;
|
|
Packit |
745a47 |
#
|
|
Packit |
745a47 |
# use if $[ < 5.8.8, POE => qw(Client::TCP Server::TCP)
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# 'require'
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
require File::Copy ();
|
|
Packit |
745a47 |
require Carp;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
###################################################
|
|
Packit |
745a47 |
# 'require' with whitespaces at the beginning
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
# TODO
|
|
Packit |
745a47 |
require Require::WhiteSpace;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
# TODO
|
|
Packit |
745a47 |
# Does not find modules defined at 'eval'
|
|
Packit |
745a47 |
eval{ require File::Spec; 1} or die;
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
1
|
|
Packit |
745a47 |
|
|
Packit |
745a47 |
|