Thanks to Sartak for finding this ;)
- added tests for this (Sartak again)
+ * Moose::Meta::Method::Accessor
+ Moose::Meta::Method::Constructor
+ Moose::Meta::Method::Attribute
+ - cleanup of some of the generated methods
+ (thanks to nothingmuch)
+
+ * Moose::Util::TypeConstraints
+ - all optimized type constraint subs are now
+ pulled from the Moose::Util::TypeConstraints::OptimizedConstraints
+ module (thanks to nothingmuch)
+
+ * Moose::Util::TypeConstraints::OptimizedConstraints
+ - added this module (see above)
+
0.33 Fri. Dec. 14, 2007
!! Moose now loads 2 x faster !!
!! with new Class::MOP 0.49 !!
}
else {
Moose::Meta::Role->combine(
- map { $_->[0]->meta } @$roles
+ @$roles
)->apply($meta);
}
has 'parent' => (
is => 'rw',
isa => 'Tree',
- is_weak_ref => 1,
+ weak_ref => 1,
handles => {
parent_node => 'node',
siblings => 'children',
As with B<Point>'s C<x> and C<y> attributes, this attribute has a
type constraint of C<Int>, but it differs in that it does B<not>
ask for any autogenerated accessors. The result being (aside from
-broken object encapsulation) that C<x> is a private attribute.
+broken object encapsulation) that C<z> is a private attribute.
Next comes another Moose feature which we call method "modifiers"
(or method "advice" for the AOP inclined). The modifier used here
use Sub::Name 'subname';
use overload ();
-our $VERSION = '0.16';
+our $VERSION = '0.17';
our $AUTHORITY = 'cpan:STEVAN';
use Moose::Meta::Method::Accessor;
use Carp 'confess';
-our $VERSION = '0.09';
+our $VERSION = '0.10';
our $AUTHORITY = 'cpan:STEVAN';
use base 'Moose::Meta::Method',
use Carp 'confess';
use Scalar::Util 'blessed', 'weaken', 'looks_like_number';
-our $VERSION = '0.03';
+our $VERSION = '0.04';
our $AUTHORITY = 'cpan:STEVAN';
use base 'Moose::Meta::Method',
}
sub combine {
- my ($class, @roles) = @_;
+ my ($class, @role_specs) = @_;
require Moose::Meta::Role::Application::RoleSummation;
- require Moose::Meta::Role::Composite;
+ require Moose::Meta::Role::Composite;
+
+ my @roles = map { $_->[0]->meta } @role_specs;
+
+ my %params;
+ # how do I do this ...
my $c = Moose::Meta::Role::Composite->new(roles => \@roles);
- Moose::Meta::Role::Application::RoleSummation->new->apply($c);
+ Moose::Meta::Role::Application::RoleSummation->new(
+ %params
+ )->apply($c);
return $c;
}
}
else {
Moose::Meta::Role->combine(
- map { $_->[0]->meta } @$roles
+ @$roles
)->apply($meta);
}
};
use Scalar::Util 'blessed', 'reftype';
use Sub::Exporter;
-our $VERSION = '0.18';
+our $VERSION = '0.19';
our $AUTHORITY = 'cpan:STEVAN';
## --------------------------------------------------------