Initial Commit
This commit is contained in:
42
database/perl/vendor/lib/Moo/sification.pm
vendored
Normal file
42
database/perl/vendor/lib/Moo/sification.pm
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
package Moo::sification;
|
||||
|
||||
use Moo::_strictures;
|
||||
no warnings 'once';
|
||||
BEGIN {
|
||||
*_USE_DGD = "$]" < 5.014 ? sub(){1} : sub(){0};
|
||||
require Devel::GlobalDestruction
|
||||
if _USE_DGD();
|
||||
}
|
||||
use Carp qw(croak);
|
||||
BEGIN { our @CARP_NOT = qw(Moo::HandleMoose) }
|
||||
|
||||
sub unimport {
|
||||
croak "Can't disable Moo::sification after inflation has been done"
|
||||
if $Moo::HandleMoose::SETUP_DONE;
|
||||
our $disabled = 1;
|
||||
}
|
||||
|
||||
sub Moo::HandleMoose::AuthorityHack::DESTROY {
|
||||
unless (our $disabled or
|
||||
_USE_DGD
|
||||
? Devel::GlobalDestruction::in_global_destruction()
|
||||
: ${^GLOBAL_PHASE} eq 'DESTRUCT'
|
||||
) {
|
||||
require Moo::HandleMoose;
|
||||
Moo::HandleMoose->import;
|
||||
}
|
||||
}
|
||||
|
||||
sub import {
|
||||
return
|
||||
if our $setup_done;
|
||||
if ($INC{"Moose.pm"}) {
|
||||
require Moo::HandleMoose;
|
||||
Moo::HandleMoose->import;
|
||||
} else {
|
||||
$Moose::AUTHORITY = bless({}, 'Moo::HandleMoose::AuthorityHack');
|
||||
}
|
||||
$setup_done = 1;
|
||||
}
|
||||
|
||||
1;
|
||||
Reference in New Issue
Block a user