The following module was proposed for inclusion in the Module List: modid: Module::Split DSLIP: Rdpfp description: Split multi-class modules into subclasses userid: BURAK (Burak Gürsoy) chapterid: 2 (Perl_Core_Modules) communities:
similar: rationale: Module::Split splits multi-class modules into its subclasses. Each file and folders for subclass will be generated if necessary. This can be good if you want to examine such huge modules like Perl::Tidy for example. The module will remove any pod documentation in the specified module before splitting. Actually it searches for 'package' declarations and uses the data under it as the class content untill it finds another 'package' declaration. And then creates it as a module file. It removes any pod data before parsing the module data to remove fake 'package' declarations. You can pass a file path or class name to the module function module_split($module,$output_dir). If you pass a class name, it will search @INC directories. I've searched cpan but couldn't find a similar module and I'm not sure about the "Name of the module" and "Module List Chapter" parts. Suggestions are welcome. Sample output with the debug enabled: split_module("Module::Split","out") or die "Error: $Module::Split::err"; ----------------------------------------------> Module::Split v1.0 initialization complete Debugging enabled on Sun Aug 24 19:47:56 2003 Running under MSWin32 and Perl 5.008 Searching Perl include directories File : C:\Perl\site\lib\Module\Split.pm Output dir: out Start processing 'Split.pm' Removing Pod (This can take a while) Attempting to create dir : out\Module Attempting to create file: out\Module\Split.pm Attempting to create file: out\RemovePod.pm I have found these classes: Module::Split RemovePod <---------------------------------------------- enteredby: BURAK (Burak Gürsoy) enteredon: Sun Aug 24 17:16:05 2003 GMT The resulting entry would be: Module:: ::Split Rdpfp Split multi-class modules into subclasses BURAK Thanks for registering, -- The PAUSE PS: The following links are only valid for module list maintainers: Registration form with editing capabilities: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=d1400000_615e3934aaeecd65&SUBMIT_pause99_add_mod_preview=1 Immediate (one click) registration: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=d1400000_615e3934aaeecd65&SUBMIT_pause99_add_mod_insertit=1