| PPIx-EditorTools documentation | view source | Contained in the PPIx-EditorTools distribution. |
my $munged = PPIx::EditorTools::RenamePackageFromPath->new->rename(
code => "package TestPackage;\nuse strict;\nBEGIN {
$^W = 1;
}\n1;\n",
filename => './lib/Test/Code/Path.pm',
);
my $new_code_as_string = $munged->code;
my $package_ppi_element = $munged->element;
This module uses PPI to change the package name of code.
Constructor. Generally shouldn't be called with any arguments.
Accepts either a PPI::Document to process or a string containing
the code (which will be converted into a PPI::Document) to process.
Replaces the package name with that supplied in the filename
parameter and returns a PPIx::EditorTools::ReturnObject with the
new code available via the ppi or code accessors, as a
PPI::Document or string, respectively.
An attempt will be made to derive the package name from the filename passed
as a parameter. The filename's path will converted to an absolute path and
it will be searched for a lib directory which will be assumed the start
of the package name. If no lib directory can be found in the absolute
path, the relative path will be used.
Croaks with a "package name not found" exception if unable to find the package name.
This class inherits from PPIx::EditorTools.
Also see App::EditorTools, Padre, and PPI.
| PPIx-EditorTools documentation | view source | Contained in the PPIx-EditorTools distribution. |