NAME Parrot::Distribution refactoring notes ANALYSIS OF PACKAGE * used by: * packages: * Parrot::Docs::POD2HTML * Parrot::Docs::Section::C * Parrot::Docs::Section::Compilers * Parrot::Docs::Section::Config * Parrot::Docs::Section::Parrot * Parrot::Docs::Section::PMCs * tests: * t/codingstd/c_code_coda.t * t/codingstd/c_indent.t * t/codingstd/c_parens.t * t/codingstd/c_struct.t * t/codingstd/cppcomments.t * t/codingstd/cuddled_else.t * t/codingstd/fixme.t * t/codingstd/perlcritic.t * t/codingstd/tabs.t * t/codingstd/trailing_space.t * t/distro/manifest_skip.t * t/perl/Parrot_Distribution.t * tools * tools/dev/gen_manifest_skip.pl ANALYSIS OF PACKAGES IN INHERITANCE TREE Parrot::Docs::Directory * inherits from: * Parrot::IO::Directory * uses: * Parrot::Docs::File There are no current calls to this package. It's only mentioned inside the currently unused file_class() subroutine. * used by: * packages: * Parrot::Distribution * Parrot::Docs::Item * Parrot::Docs::Section * tests: * t/perl/Parrot_Distribution.t * t/perl/Parrot_Docs.t * tools * tools/docs/pod_errors.pl * comments: * Has two apparently unused subroutines: file_class() and directory_class(). These are not methods, are not listed in any @EXPORT (there is none), and are not called elsewhere within the package. Why retain them? * Has no constructor of its own, so it must use Parrot::IO::Directory (or one of that package's ancestors). * Has only one method: files_of_type(), which takes one argument. This method calls methods from other packages, including: * files() * is_of_type() * directories() * name() * directories() * files_of_type() Parrot::Docs::File * inherits from: * Parrot::IO::File * uses: * Pod::Simple::Checker One fully qualified call to Pod::Simple::Checker::new inside check_pod(). * Parrot::Docs::POD2HTML One fully qualified call to Parrot::Docs::POD2HTML::new inside pod_as_html(). * methods: * type_for_suffix() * type_for_name() * type() * is_of_type() * check_pod() * contains_pod() * num_pod_errors() * pod_errors() * pod_as_html() * is_docs_link() * title() * short_description() * used by * packages: * Parrot::Docs::Directory * tests: * t/perl/Parrot_Docs.t Parrot::Docs::POD2HTML * inherits from: * Pod::Simple::HTML * uses: * Parrot::Docs::HTMLPage One fully qualified call to each of Parrot::Docs::HTMLPage::header and ::footer. * methods: * type_for_suffix() * type_for_name() * type() * is_of_type() * check_pod() * contains_pod() * num_pod_errors() * pod_errors() * pod_as_html() * is_docs_link() * title() * short_description() * used by: * packages: * Parrot::Docs::File * Parrot::Docs::HTMLPage * Parrot::Docs::Item * tests * t/perl/Parrot_Docs.t Parrot::Docs::HTMLPage * inherits from: Does not inherit -- but doesn't have its own constructor, either! * methods * header() * footer() * used by: * packages: * Parrot::Docs::POD2HTML * Parrot::Docs::Section * comment There is no current rationale for these functions to be methods. They could simply be functions exported by this package and imported by other packages on request. Parrot::IO::Directory * inherits from: * Parrot::IO::Path * uses: * Parrot::IO::File Imports_unspecified, but file_with_class calls Parrot::IO::File::new(). * methods: * directory_with_path() * file_with_path() * tmp_directory() * instance methods: * create_path() * relative_path() * parent() * file_and_directory_names() * file_and_directory_paths() * file_paths() * directory_paths() * file_exists_with_name() * directory_exists_with_name() * files() * directories() * file_suffixes() * files_with_suffix() * path_for_directory_with_name() * path_for_file_with_name() * directory_with_name() * file_with_name() * existing_directory_with_name() * existing_file_with_name() * path_for_directory_with_relative_path() * path_for_file_with_relative_path() * relative_path_is_directory() * relative_path_is_file() * directory_with_relative_path() * file_with_relative_path() * delete() * delete_contents() * used by: * packages: * Parrot::Docs::Directory * Parrot::IO::File * tests: * t/perl/Parrot_IO.t * comments: * Two subroutines used internally for on-the-fly generation of new methods: * directory_class() * file_class() * Has constructor, which takes one argument ($path). The constructor calls SUPER::new. Parrot::IO::Path * inherits from: does not inherit; uses some Perl 5 core modules * methods: * new() * create_path() * path() * name() * name_without_suffix() * suffix() * has_suffix() * parent_path() * stat() * delete() * used by: * packages: * Parrot::IO::Directory * Parrot::IO::File * tests: * t/perl/Parrot_IO.t Parrot::IO::File * inherits from: * Parrot::IO::Path * uses: * Parrot::IO::Directory one fully qualified call to Parrot::IO::Directory::new() inside parent() * comments: * has constructor, which takes one argument ($path); the constructor calls SUPER::new * methods: * tmp_file() * new() * create_path() * parent() * read() * write() * append() * is_executable() * modified_since() * svn_id() * has_svn_id() * svn_version() * is_hidden() * is_generated() * delete() * used by: * packages: * Parrot::Docs::File * Parrot::IO::Directory * tests: * t/perl/Parrot_IO.t