Plack-App-MCCS
view release on metacpan or search on metacpan
local/lib/perl5/Eval/TypeTiny.pm view on Meta::CPAN
383940414243444546474849505152535455565758sub
IMPLEMENTATION_PADWALKER () {
'PadWalker'
}
sub
IMPLEMENTATION_TIE () {
'tie'
}
sub
IMPLEMENTATION_NATIVE () {
'perl'
}
my
$implementation
;
#<<<
# uncoverable subroutine
sub
ALIAS_IMPLEMENTATION () {
$implementation
||= _pick_alternative(
if
=> ( $] ge
'5.022'
) => IMPLEMENTATION_NATIVE,
needs
=>
'Devel::LexAlias'
=> IMPLEMENTATION_DEVEL_LEXALIAS,
needs
=>
'PadWalker'
=> IMPLEMENTATION_PADWALKER,
if
=> !!
1
=> IMPLEMENTATION_TIE,
);
}
#>>>
sub
_force_implementation {
$implementation
=
shift
;
}
local/lib/perl5/Exporter/Tiny.pm view on Meta::CPAN
2345678910111213141516171819202122232425use
5.006001;
use
strict;
our
$AUTHORITY
=
'cpan:TOBYINK'
;
our
$VERSION
=
'1.006002'
;
our
@EXPORT_OK
=
qw< mkopt mkopt_hash _croak _carp >
;
BEGIN {
*_HAS_NATIVE_LEXICAL_SUB
= ( $] ge
'5.037002'
)
?
sub
() { !!1 }
:
sub
() { !!0 };
*_HAS_MODULE_LEXICAL_SUB
= ( $] ge
'5.011002'
and
eval
(
'require Lexical::Sub'
) )
?
sub
() { !!1 }
:
sub
() { !!0 };
};
my
$_process_optlist
=
sub
{
my
$class
=
shift
;
local/lib/perl5/Exporter/Tiny.pm view on Meta::CPAN
127128129130131132133134135136137138139140141142143144145146147
$class
->_exporter_uninstall_sub(
$_
,
$wanted
->[1],
$global_opts
)
for
keys
%symbols
;
}
}
# Returns a coderef suitable to be used as a sub installer for lexical imports.
#
sub
_exporter_lexical_installer {
_HAS_NATIVE_LEXICAL_SUB and
return
sub
{
my
(
$sigilname
,
$sym
) = @{
$_
[1] };
no
warnings ( $] ge
'5.037002'
?
'experimental::builtin'
: () );
builtin::export_lexically(
$sigilname
,
$sym
);
};
_HAS_MODULE_LEXICAL_SUB and
return
sub
{
my
(
$sigilname
,
$sym
) = @{
$_
[1] };
(
$sigilname
=~ /^\w/ )
?
'Lexical::Sub'
->
import
(
$sigilname
,
$sym
)
:
'Lexical::Var'
->
import
(
$sigilname
,
$sym
);
};
_croak(
'Lexical export requires Perl 5.37.2+ for native support, or Perl 5.11.2+ with the Lexical::Sub module'
);
}
local/lib/perl5/Type/Tiny/Enum.pm view on Meta::CPAN
327328329330331332333334335336337338339340341342343344345346347sub
closest_match {
my
(
$self
,
$given
) = (
shift
,
@_
);
return
unless
Types::Standard::is_Str
$given
;
return
$given
if
$self
->check(
$given
);
$canon
||=
eval
(
$] lt
'5.016'
?
q< sub { ( my $var = lc($_[0]) ) =~ s/(^\s+)|(\s+$)//g; $var } >
:
q< sub { CORE::fc($_[0]) =~ s/(^\s+)|(\s+$)//gr; } >
);
$self
->{_lookups} ||=
do
{
my
%lookups
;
for
( @{
$self
->
values
} ) {
my
$key
=
$canon
->(
$_
);
next
if
exists
$lookups
{
$key
};
$lookups
{
$key
} =
$_
;
local/lib/perl5/Types/TypeTiny.pm view on Meta::CPAN
389390391392393394395396397398399400401402403404405406407408409
);
_reinstall_subs
$cache
{ArrayLike};
}
#/ if ( __XS )
else
{
$cache
{ArrayLike} =
"Type::Tiny"
->new(
%common
);
}
@_
?
$cache
{ArrayLike}->parameterize( @{
$_
[0] } ) :
$cache
{ArrayLike};
}
#/ sub ArrayLike (;@)
if
( $] ge
'5.014'
) {
&Scalar::Util::set_prototype
(
$_
,
';$'
)
for
\
&HashLike
, \
&ArrayLike
;
}
sub
CodeLike () {
return
$cache
{CodeLike}
if
$cache
{CodeLike};
my
%common
= (
name
=>
"CodeLike"
,
constraint
=>
sub
{
ref
(
$_
) eq
q[CODE]
( run in 0.357 second using v1.01-cache-2.11-cpan-e5176c747c2 )