=pod

=head1 NAME

Package::Autoloader::Path_Partition - partitions the search path for rules

=head1 SYNOPSIS

	package A::B::C;
	# default search:
	# 	A::B::C
	# 	A::B::
	# 	A::
	# 	''
	use Package::Autoloader sub{eval shift}, sub {
		$_[0]->search->first('D');	# D before A::B::C
		$_[0]->search->not_self;	# no A::B::C
		$_[0]->search->second('E');	# E after A::B::C
		$_[0]->search->not_hierarchy;	# no A::B::, A::
		$_[0]->search->third('F');	# F before ''
		$_[0]->search->not_globally;	# no ''
		$_[0]->search->last('G');	# G after ''
	};


=head1 DESCRIPTION

Use the above methods to customize the search path for rules. First and fourth are absolute, the rest are relative. Again, these features target very special requirements.

=head1 PUBLIC METHODS

The following methods belong to the  public interface of Package::Autoloader::Package.

=over 8

=item B<first('Na::me1', ...)>

Add the given names to the search path, so that they are searched first.

=item B<not_self>

Remove the requesting package from the search path.

=item B<second('Na::me1', ...)>

Add the given names to the search path, so that they are searched immediately after the requesting package itself.

=item B<not_hierarchy>

Remove the hierarchy packages from the search path.

=item B<third('Na::me1', ...)>

Add the given names to the search path, so that they are searched before the global rules are considered.

=item B<not_globally>

Remove the empty package (global rules) from the search path.

=item B<last('Na::me1', ...)>

Add the given names to the search path, so that they are searched last.

=back


=head1 ANYTHING ELSE

Please see the documentation of the upstream package L<Package::Autoloader>.

=cut
