view release on metacpan or search on metacpan
Makefile.PL view on Meta::CPAN
$meta->{prereqs}{runtime}{requires}{'Devel::GlobalDestruction'} = 0;
}
};
my %WriteMakefileArgs = (
ABSTRACT => $meta->{abstract},
AUTHOR => ($EUMM >= 6.5702 ? $meta->{author} : $meta->{author}[0]),
DISTNAME => $meta->{name},
VERSION => $meta->{version},
EXE_FILES => [ map $_->{file}, values %{ $meta->{x_provides_scripts} || {} } ],
NAME => do { my $n = $meta->{name}; $n =~ s/-/::/g; $n },
test => { TESTS => "t/*.t" },
%dynamic_config,
);
$WriteMakefileArgs{LICENSE} = $meta->{license}[0] if $EUMM >= 6.3001;
sub deps
{
my %r;
Makefile.PL view on Meta::CPAN
$WriteMakefileArgs{PREREQ_PM} ||= deps('runtime', 'build', 'test');
}
else
{
$WriteMakefileArgs{PREREQ_PM} ||= deps('configure', 'build', 'test', 'runtime');
}
{
my ($minperl) = reverse sort(
grep defined && /^[0-9]+(\.[0-9]+)?$/,
map $meta->{prereqs}{$_}{requires}{perl},
qw( configure build runtime )
);
if (defined($minperl))
{
die "Installing $meta->{name} requires Perl >= $minperl"
unless $] >= $minperl;
$WriteMakefileArgs{MIN_PERL_VERSION} ||= $minperl
if $EUMM >= 6.48;
lib/Acme/Mitey/Cards/Card.pm.mite.pm view on Meta::CPAN
}
# Gather metadata for constructor and destructor
sub __META__ {
no strict 'refs';
my $class = shift;
$class = ref($class) || $class;
my $linear_isa = mro::get_linear_isa($class);
return {
BUILD => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::BUILD" } reverse @$linear_isa
],
DEMOLISH => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::DEMOLISH" } @$linear_isa
],
HAS_BUILDARGS => $class->can('BUILDARGS'),
HAS_FOREIGNBUILDARGS => $class->can('FOREIGNBUILDARGS'),
};
}
# Moose-compatibility method
sub meta {
require Acme::Mitey::Cards::MOP;
Moose::Util::find_meta( ref $_[0] or $_[0] );
lib/Acme/Mitey/Cards/MOP.pm view on Meta::CPAN
my ( $next, $self, $method_name ) = ( shift, shift, @_ );
return if $method_name =~ $built_ins;
return $self->$next( @_ );
};
around get_method_list => sub {
my ( $next, $self ) = ( shift, shift );
return grep !/$built_ins/, $self->$next( @_ );
};
around _get_local_methods => sub {
my ( $next, $self ) = ( shift, shift );
my %map = %{ $self->_full_method_map };
return map $map{$_}, $self->get_method_list;
};
__PACKAGE__->meta->make_immutable;
__PACKAGE__;
};
require "Acme/Mitey/Cards/Card.pm";
{
my $PACKAGE = $META_CLASS->initialize( "Acme::Mitey::Cards::Card", package => "Acme::Mitey::Cards::Card" );
lib/Acme/Mitey/Cards/Mite.pm view on Meta::CPAN
*STRICT = $bool[ 0+!! ( $ENV{PERL_STRICT} || $ENV{EXTENDED_TESTING} || $ENV{AUTHOR_TESTING} || $ENV{RELEASE_TESTING} ) ];
};
# Exportable error handlers
sub _error_handler {
my ( $func, $message, @args ) = @_;
if ( @args ) {
require Data::Dumper;
local $Data::Dumper::Terse = 1;
local $Data::Dumper::Indent = 0;
$message = sprintf $message, map {
ref($_) ? Data::Dumper::Dumper($_) : defined($_) ? $_ : '(undef)'
} @args;
}
my $next = do { require Carp; \&{"Carp::$func"} };
@_ = ( $message );
goto $next;
}
sub carp { unshift @_, 'carp' ; goto \&_error_handler }
sub croak { unshift @_, 'croak' ; goto \&_error_handler }
lib/Acme/Mitey/Cards/Mite.pm view on Meta::CPAN
_lul( 0 , $ref );
&guard( sub { _lul( 1, $ref ) } );
}
sub _is_compiling {
defined $Mite::COMPILING and $Mite::COMPILING eq __PACKAGE__;
}
sub import {
my $me = shift;
my %arg = map +( lc($_) => true ), @_;
my ( $caller, $file ) = caller;
if( _is_compiling() ) {
require Mite::Project;
'Mite::Project'->default->inject_mite_functions(
'package' => $caller,
'file' => $file,
'arg' => \%arg,
'shim' => $me,
);
lib/Acme/Mitey/Cards/Mite.pm view on Meta::CPAN
sub _get_orig_method {
my ( $caller, $name ) = @_;
my $orig = $caller->can( $name );
return $orig if $orig;
croak "Cannot modify method $name in $caller: no such method";
}
sub _parse_mm_args {
my $coderef = pop;
my $names = [ map { ref($_) ? @$_ : $_ } @_ ];
( $names, $coderef );
}
# Usage: $me, $caller, $caller_kind, @before_args
sub HANDLE_before {
my ( $me, $caller, $kind ) = ( shift, shift, shift );
my ( $names, $coderef ) = &_parse_mm_args;
$kind ||= $caller->$_kind;
if ( $kind eq 'role' ) {
push @{"$caller\::METHOD_MODIFIERS"},
lib/Acme/Mitey/Cards/Set.pm view on Meta::CPAN
return [];
}
signature_for to_string => (
pos => [],
);
sub to_string {
my $self = shift;
return join " ", map $_->to_string, @{ $self->cards };
}
signature_for count => (
pos => [],
);
sub count {
my $self = shift;
scalar @{ $self->cards };
lib/Acme/Mitey/Cards/Set.pm.mite.pm view on Meta::CPAN
}
# Gather metadata for constructor and destructor
sub __META__ {
no strict 'refs';
my $class = shift;
$class = ref($class) || $class;
my $linear_isa = mro::get_linear_isa($class);
return {
BUILD => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::BUILD" } reverse @$linear_isa
],
DEMOLISH => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::DEMOLISH" } @$linear_isa
],
HAS_BUILDARGS => $class->can('BUILDARGS'),
HAS_FOREIGNBUILDARGS => $class->can('FOREIGNBUILDARGS'),
};
}
# Moose-compatibility method
sub meta {
require Acme::Mitey::Cards::MOP;
Moose::Util::find_meta( ref $_[0] or $_[0] );
lib/Acme/Mitey/Cards/Suit.pm.mite.pm view on Meta::CPAN
}
# Gather metadata for constructor and destructor
sub __META__ {
no strict 'refs';
my $class = shift;
$class = ref($class) || $class;
my $linear_isa = mro::get_linear_isa($class);
return {
BUILD => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::BUILD" } reverse @$linear_isa
],
DEMOLISH => [
map { ( *{$_}{CODE} ) ? ( *{$_}{CODE} ) : () }
map { "$_\::DEMOLISH" } @$linear_isa
],
HAS_BUILDARGS => $class->can('BUILDARGS'),
HAS_FOREIGNBUILDARGS => $class->can('FOREIGNBUILDARGS'),
};
}
# Moose-compatibility method
sub meta {
require Acme::Mitey::Cards::MOP;
Moose::Util::find_meta( ref $_[0] or $_[0] );
lib/Acme/Mitey/Cards/Types.pm view on Meta::CPAN
bool => sub { !! 1 },
'""' => sub { shift->{name} },
'&{}' => sub {
my $self = shift;
return sub { $self->assert_return( @_ ) };
},
);
sub union {
my @types = grep ref( $_ ), @_;
my @checks = map $_->{check}, @types;
bless {
check => sub { for ( @checks ) { return 1 if $_->(@_) } return 0 },
name => join( '|', map $_->{name}, @types ),
union => \@types,
}, __PACKAGE__;
}
sub check {
$_[0]{check}->( $_[1] );
}
sub get_message {
sprintf '%s did not pass type constraint "%s"',
lib/Acme/Mitey/Cards/Types.pm view on Meta::CPAN
$_[0]{check}->( $_[1] )
? $_[1]
: Carp::croak( $_[0]->get_message( $_[1] ) );
}
sub to_TypeTiny {
if ( $_[0]{union} ) {
require Type::Tiny::Union;
return 'Type::Tiny::Union'->new(
display_name => $_[0]{name},
type_constraints => [ map $_->to_TypeTiny, @{ $_[0]{union} } ],
);
}
if ( my $library = $_[0]{library} ) {
local $@;
eval "require $library; 1" or die $@;
my $type = $library->get_type( $_[0]{library_name} );
return $type if $type;
}
require Type::Tiny;
my $check = $_[0]{check};