## MooseX::Declare role POC::TestAnnouncer { use mro; method test ($project) { announce-start-of('test', $project{name}); my $result = $self->maybe::next::method($project); # callsame[^1] announce-end-of('test', $result); return $ret; } } [^1]: I'm unsure if callsame is implicitly a method dispatch or not. masak's example makes it seem like it is but the documentation is spares and semantically it seems like it should at *least* be `.callsame` if it's got an invocant.