# Because Mouse::Util is loaded first in all the Mouse sub-modules,
# XS loader is placed here, not in Mouse.pm.
- our $VERSION = '0.42';
+ our $VERSION = '0.4501';
my $xs = !(exists $INC{'Mouse/PurePerl.pm'} || $ENV{MOUSE_PUREPERL});
Mouse::Util->import({ into => 'Mouse::Meta::Method::Destructor::XS' }, ':meta');
Mouse::Util->import({ into => 'Mouse::Meta::Method::Accessor::XS' }, ':meta');
return 1;
- };
+ } || 0;
#warn $@ if $@;
}
*get_all_metaclass_names = \&Mouse::Meta::Module::_get_all_metaclass_names;
# is-a predicates
- generate_isa_predicate_for('Mouse::Meta::TypeConstraint' => 'is_a_type_constraint');
- generate_isa_predicate_for('Mouse::Meta::Class' => 'is_a_metaclass');
- generate_isa_predicate_for('Mouse::Meta::Role' => 'is_a_metarole');
+ #generate_isa_predicate_for('Mouse::Meta::TypeConstraint' => 'is_a_type_constraint');
+ #generate_isa_predicate_for('Mouse::Meta::Class' => 'is_a_metaclass');
+ #generate_isa_predicate_for('Mouse::Meta::Role' => 'is_a_metarole');
+
+ # duck type predicates
+ generate_can_predicate_for(['_compiled_type_constraint'] => 'is_a_type_constraint');
+ generate_can_predicate_for(['create_anon_class'] => 'is_a_metaclass');
+ generate_can_predicate_for(['create_anon_role'] => 'is_a_metarole');
}
our $in_global_destruction = 0;
=head1 VERSION
-This document describes Mouse version 0.42
+This document describes Mouse version 0.4501
=head1 IMPLEMENTATIONS FOR