Event-Wrappable
view release on metacpan or search on metacpan
lib/Event/Wrappable.pm view on Meta::CPAN
bless $event, $class;
my $storage = $INSTANCES{refaddr $event} = {};
weaken( $storage->{'wrapped'} = $event );
weaken( $storage->{'base'} = $raw_event );
$storage->{'wrappers'} = [ @EVENT_WRAPPERS ];
$storage->{'id'} = ++ $LAST_ID;
return $event;
}
sub event(&) {
my( $raw_event ) = @_;
my $event = clone_sub $raw_event;
if ( @EVENT_WRAPPERS ) {
for (reverse @EVENT_WRAPPERS) {
$event = $_->($event);
}
}
return __PACKAGE__->_new( $event, $raw_event );
}
( run in 0.874 second using v1.01-cache-2.11-cpan-49f99fa48dc )