/usr/share/perl5/Kavorka/TraitFor/Sub/override.pm is in libkavorka-perl 0.036-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | use 5.014;
use strict;
use warnings;
package Kavorka::TraitFor::Sub::override;
our $AUTHORITY = 'cpan:TOBYINK';
our $VERSION = '0.036';
use Moo::Role;
use Types::Standard qw(Any);
use Carp qw(croak);
use namespace::sweep;
before install_sub => sub
{
my $self = shift;
croak("The 'override' trait cannot be applied to lexical methods")
if $self->is_lexical;
croak("The 'override' trait cannot be applied to anonymous methods")
if $self->is_anonymous;
croak("The 'override' trait may only be applied to methods")
if $self->invocation_style ne 'method';
my ($pkg, $name) = ($self->qualified_name =~ /^(.+)::(\w+)$/);
return if $pkg->can($name);
croak("Method '$name' does not exist in inheritance hierarchy; cannot override");
};
1;
|