App::TimeTracker::Proto
sub run {
my $self = shift;
my $config = $self->load_config;
my $class = Moose::Meta::Class->create_anon_class(
superclasses => ['App::TimeTracker'],
roles => [
map { 'App::TimeTracker::Command::' . $_ }
'Core', @{ $config->{plugins} }
],
);
$class->name->new_with_options( {
home => $self->home,
config => $config,
_currentproject => $self->project,
} )->run;
}
We'll take a close look at load_config
later.
For now it's enough to know that it returns a hash containing a list of plugins