[svn-upgrade] Integrating new upstream version, libany-moose-perl (0.08)
Ryan Niebur
14 years ago
|
0 |
0.08 Mon 18 May 2009
|
|
1 |
* Add moose_is_preferred and mouse_is_preferred functions for when you
|
|
2 |
need to care about which backend is in use (Sartak)
|
|
3 |
* Deprecate the internal is_moose_loaded in favor of moose_is_preferred
|
|
4 |
(Sartak)
|
|
5 |
|
0 | 6 |
0.07 Fri, 10 Apr 2009
|
1 | 7 |
* Depend on Mouse 0.20 for better compatibility with Moose >= 0.74 (rafl).
|
2 | 8 |
|
9 | 9 |
name: Any-Moose
|
10 | 10 |
requires:
|
11 | 11 |
Mouse: 0.20
|
12 | |
version: 0.07
|
|
12 |
version: 0.08
|
8 | 8 |
NAME => 'Any::Moose',
|
9 | 9 |
AUTHOR => 'Shawn\ M\ Moore\ \<sartak\@bestpractical\.com\>\,\ Florian\ Ragwitz\ \<rafl\@debian\.org\>\,\ Stevan\ Little\ \<stevan\@iinteractive\.com\>\,\ Tokuhiro\ Matsuno\ \<tokuhirom\@gmail\.com\>',
|
10 | 10 |
ABSTRACT => 'use Moose or Mouse modules',
|
11 | |
VERSION => '0.07',
|
|
11 |
VERSION => '0.08',
|
12 | 12 |
EXE_FILES => [ qw() ],
|
13 | 13 |
(eval { ExtUtils::MakeMaker->VERSION(6.21) } ? (LICENSE => 'perl') : ()),
|
14 | 14 |
PREREQ_PM => {
|
0 | 0 |
|
1 | 1 |
|
2 | 2 |
This archive contains the distribution Any-Moose, version
|
3 | |
0.07:
|
|
3 |
0.08:
|
4 | 4 |
|
5 | 5 |
use Moose or Mouse modules
|
6 | 6 |
|
0 | 0 |
name = Any-Moose
|
1 | |
version = 0.07
|
|
1 |
version = 0.08
|
2 | 2 |
author = Shawn M Moore <sartak@bestpractical.com>
|
3 | 3 |
author = Florian Ragwitz <rafl@debian.org>
|
4 | 4 |
author = Stevan Little <stevan@iinteractive.com>
|
0 | 0 |
package Any::Moose;
|
1 | |
our $VERSION = '0.07';
|
|
1 |
our $VERSION = '0.08';
|
2 | 2 |
|
3 | 3 |
# ABSTRACT: use Moose or Mouse modules
|
4 | 4 |
|
|
56 | 56 |
return 'Mouse::Role' if $INC{'Mouse/Role.pm'}
|
57 | 57 |
&& Mouse::Meta::Role->_metaclass_cache($pkg);
|
58 | 58 |
|
59 | |
if (is_moose_loaded()) {
|
|
59 |
if (_is_moose_loaded()) {
|
60 | 60 |
my $meta = Class::MOP::get_metaclass_by_name($pkg);
|
61 | 61 |
if ($meta) {
|
62 | 62 |
return 'Moose::Role' if $meta->isa('Moose::Meta::Role');
|
|
116 | 116 |
# If we're loading up the backing class...
|
117 | 117 |
if ($fragment eq 'Moose' || $fragment eq 'Moose::Role') {
|
118 | 118 |
if (!$PREFERRED) {
|
119 | |
$PREFERRED = is_moose_loaded() ? 'Moose' : 'Mouse';
|
|
119 |
$PREFERRED = _is_moose_loaded() ? 'Moose' : 'Mouse';
|
120 | 120 |
|
121 | 121 |
(my $file = $PREFERRED . '.pm') =~ s{::}{/}g;
|
122 | 122 |
require $file;
|
123 | 123 |
}
|
124 | 124 |
|
125 | |
$fragment =~ s/^Moose/Mouse/ if $PREFERRED eq 'Mouse';
|
|
125 |
$fragment =~ s/^Moose/Mouse/ if mouse_is_preferred();
|
126 | 126 |
return $fragment;
|
127 | 127 |
}
|
128 | 128 |
|
|
132 | 132 |
|
133 | 133 |
sub load_class {
|
134 | 134 |
my ($class_name) = @_;
|
135 | |
return Class::MOP::load_class($class_name)
|
136 | |
if is_moose_loaded();
|
|
135 |
return Class::MOP::load_class($class_name) if moose_is_preferred();
|
137 | 136 |
return Mouse::load_class($class_name);
|
138 | 137 |
}
|
139 | 138 |
|
140 | 139 |
sub is_class_loaded {
|
141 | 140 |
my ($class_name) = @_;
|
142 | |
return Class::MOP::is_class_loaded($class_name)
|
143 | |
if is_moose_loaded();
|
|
141 |
return Class::MOP::is_class_loaded($class_name) if moose_is_preferred();
|
144 | 142 |
return Mouse::is_class_loaded($class_name);
|
145 | 143 |
}
|
146 | 144 |
|
147 | |
sub is_moose_loaded { !!$INC{'Class/MOP.pm'} }
|
|
145 |
sub moose_is_preferred { $PREFERRED eq 'Moose' }
|
|
146 |
sub mouse_is_preferred { $PREFERRED eq 'Mouse' }
|
|
147 |
|
|
148 |
sub _is_moose_loaded { !!$INC{'Class/MOP.pm'} }
|
|
149 |
|
|
150 |
sub is_moose_loaded {
|
|
151 |
Carp::carp("Any::Moose::is_moose_loaded is deprecated. Please use Any::Moose::moose_is_preferred instead");
|
|
152 |
goto \&_is_moose_loaded;
|
|
153 |
}
|
148 | 154 |
|
149 | 155 |
sub _canonicalize_fragment {
|
150 | 156 |
my $fragment = shift;
|
|
179 | 185 |
|
180 | 186 |
=head1 VERSION
|
181 | 187 |
|
182 | |
version 0.07
|
|
188 |
version 0.08
|
183 | 189 |
|
184 | 190 |
=head1 SYNOPSIS
|
185 | 191 |
|
7 | 7 |
package Test;
|
8 | 8 |
BEGIN {
|
9 | 9 |
::use_ok('Any::Moose');
|
10 | |
::ok(!Any::Moose::is_moose_loaded(), '... Moose is not loaded');
|
|
10 |
::ok(!Any::Moose::_is_moose_loaded(), '... Moose is not loaded');
|
11 | 11 |
}
|
12 | 12 |
|
13 | 13 |
{
|
|
17 | 17 |
eval 'use Moose';
|
18 | 18 |
::skip 'Moose not installed', 1 if $@;
|
19 | 19 |
|
20 | |
::ok(Any::Moose::is_moose_loaded(), '... Moose is loaded');
|
|
20 |
::ok(Any::Moose::_is_moose_loaded(), '... Moose is loaded');
|
21 | 21 |
}
|
22 | 22 |
}
|
23 | 23 |
}
|