use strict;
use warnings;
+use Class::Load qw( is_class_loaded );
use List::MoreUtils ();
use Scalar::Util qw( blessed looks_like_number reftype );
=> as 'Item'
=> where { !defined($_) }
=> inline_as {
- $_[0]->parent()->_inline_check($_[1])
- . ' && !defined(' . $_[1] . ')'
+ '!defined(' . $_[1] . ')'
};
subtype 'Defined'
=> as 'Item'
=> where { defined($_) }
=> inline_as {
- $_[0]->parent()->_inline_check($_[1])
- . ' && defined(' . $_[1] . ')'
+ 'defined(' . $_[1] . ')'
};
subtype 'Bool'
=> as 'Item'
=> where { !defined($_) || $_ eq "" || "$_" eq '1' || "$_" eq '0' }
=> inline_as {
- $_[0]->parent()->_inline_check($_[1])
- . ' && ('
+ '('
. '!defined(' . $_[1] . ') '
. '|| ' . $_[1] . ' eq "" '
. '|| (' . $_[1] . '."") eq "1" '
=> where { blessed($_) }
=> inline_as { 'Scalar::Util::blessed(' . $_[1] . ')' };
- # This type is deprecated.
- subtype 'Role'
- => as 'Object'
- => where { $_->can('does') };
-
subtype 'ClassName'
=> as 'Str'
- => where { Class::MOP::is_class_loaded($_) }
+ => where { is_class_loaded($_) }
# the long Str tests are redundant here
- => inline_as { 'Class::MOP::is_class_loaded(' . $_[1] . ')' };
+ => inline_as { 'Class::Load::is_class_loaded(' . $_[1] . ')' };
subtype 'RoleName'
=> as 'ClassName'