NAME

Commandable::Finder::MethodAttributes - find commands stored as methods with attributes

SYNOPSIS

use Commandable::Finder::MethodAttributes;

my $object = SomeClass->new( ... );

my $finder = Commandable::Finder::MethodAttributes->new(
   object => $object,
);

my $help_command = $finder->find_command( "help" );

foreach my $command ( $finder->find_commands ) {
   ...
}

DESCRIPTION

This subclass of Commandable::Finder::SubAttributes looks for methods that define commands, where each command is provided by an individual method in a given class. It stores the object instance and arranges that each discovered command method will capture it, passing it as the first argument when invoked.

The attributes on each method are those given by Commandable::Finder::SubAttributes and are used in the same way here.

CONSTRUCTOR

new

$finder = Commandable::Finder::MethodAttributes->new( %args )

Constructs a new instance of Commandable::Finder::MethodAttributes.

Takes the following named arguments:

object => OBJ

An object reference. Its class will be used for searching for command methods. The instance itself is stored by the finder object and used to wrap each command method.

Any additional arguments are passed to the superclass constructor.

AUTHOR

Paul Evans <leonerd@leonerd.org.uk>