Bread-Board

 view release on metacpan or  search on metacpan

lib/Bread/Board/Service/Deferred.pm  view on Meta::CPAN

            return $_[0]->$func($_[1]);
        }
        return $_[0]; # if all else fails, just return the object
    },
;

sub new {
    my ($class, %params) = @_;
    (Scalar::Util::blessed($params{service}) && $params{service}->does('Bread::Board::Service'))
        || Carp::confess "You can only defer Bread::Board::Service instances";
    bless { service => $params{service} } => $class;
}

sub meta {
    if ($_[0]->{service}->can('class')) {
        my $class = $_[0]->{service}->class;
        return $class->meta;
    }
    $_[0] = $_[0]->{service}->get;
    (shift)->meta;
}

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 0.962 second using v1.00-cache-2.02-grep-82fe00e-cpan-1925d2aa809 )