NAME

Util::Medley::Module::Overview

VERSION

version 0.052

SYNOPSIS

my $mo = Util::Medley::Module::Overview->new(
    moduleName  => 'My::Module',
    hideModules => [ 'Moose::Object' ],
);

foreach my $pm ($mo->getPublicMethods) {
    say $pm;	
}
  

DESCRIPTION

This is simply a wrapper for Module::Overview with enhancements.

ATTRIBUTES

moduleName (required)

The module you want an overview for.

type: Str

hideModules (optional)

List of modules you want to exclude.

type: ArrayRef[Str]

METHODS

getImportedModules

Returns a list of modules used by the module.

getParents

Returns a list of parent modules.

getConstants

Returns a list of constants.

getAllPublicAttributes

Combines and sorts the results from getPublicAttributes() and getInheritedPublicAttributes().

getPublicAttributes

Returns a list of public attributes. Each item in the list is an ArrayRef of [ name, src ].

getInheritedPublicAttributes

Returns a list of inherited public attributes. Each item in the list is an ArrayRef of [ name, src ].

getPrivateAttributes

Returns a list of private attributes. Each item in the list is an ArrayRef of [ name, src ].

getInheritedPrivateAttributes

Returns a list of inherited private attributes. Each item in the list is an ArrayRef of [ name, src ].

getAllPublicMethods

Combines and sorts the results from getPublicMethods() and getInheritedPublicMethods().

getPublicMethods

Returns a list of public methods. Each item in the list is an ArrayRef of [ name, src ].

getInheritedPublicMethods

Returns a list of inherited public methods. Each item in the list is an ArrayRef of [ name, src ].

getPrivateMethods

Returns a list of private methods. Each item in the list is an ArrayRef of [ name, src ].

getInheritedPrivateMethods

Returns a list of inherited private methods. Each item in the list is an ArrayRef of [ name, src ].

method _buildMyMethodsAndAttributes {

	my $mo = $self->_moduleOverview;

	my @methods;
	push @methods, @{ $mo->{methods} }          if $mo->{methods};
    push @methods, @{ $mo->{methods_imported} } if $mo->{methods_imported};

	my @sorted = $self->List->nsort(@methods);
	my @parsed = $self->_parseMethods( \@sorted );

	my @mine;
	foreach my $aref (@parsed) {
		my ( $name, $from ) = @$aref;
		if ( !$from ) {
			push @mine, $name;
		}
	}

	return \@mine;
}