The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Package::Transporter::Path_Partition - Partitions the search path for rules

SYNOPSIS

        package A::B::C;
        # default search:
        #       A::B::C
        #       A::B::
        #       A::
        #       ''
        use Package::Transporter 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 ''
        };

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.

PUBLIC METHODS

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

first('Na::me1', ...)

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

not_self

Remove the requesting package from the search path.

second('Na::me1', ...)

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

not_hierarchy

Remove the hierarchy packages from the search path.

third('Na::me1', ...)

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

not_globally

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

last('Na::me1', ...)

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

ANYTHING ELSE

Please see the documentation of the upstream package Package::Transporter.