Provided by: libppix-editortools-perl_0.21-1_all bug


       PPIx::EditorTools::RenamePackageFromPath - Change the package name based on the files path


       version 0.21


           my $munged = PPIx::EditorTools::RenamePackageFromPath->new->rename(
               code        => "package TestPackage;\nuse strict;\nBEGIN {
               $^W = 1;
               filename => './lib/Test/Code/',

           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.

       rename( ppi => PPI::Document $ppi, filename => Str )
       rename( code => Str $code, filename => Str )
           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.


       ·   Steffen Mueller ""

       ·   Mark Grimes ""

       ·   Ahmad M. Zawawi <>

       ·   Gabor Szabo  <>

       ·   Yanick Champoux <>


       This software is copyright (c) 2017, 2014, 2012 by The Padre development team as listed in

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

perl v5.26.1                                2017-12-PPIx::EditorTools::RenamePackageFromPath(3pm)