my $instance = bless {}, $class;
- for my $attribute ($class->meta->compute_all_applicable_attributes) {
+ for my $attribute ($class->meta->get_all_attributes) {
my $from = $attribute->init_arg;
my $key = $attribute->name;
if ref($instance->{$key}) && $attribute->is_weak_ref;
if ($attribute->has_trigger) {
- $attribute->trigger->($instance, $args->{$from}, $attribute);
+ $attribute->trigger->($instance, $args->{$from});
}
}
else {
my $class = shift;
if (scalar @_ == 1) {
- if (defined $_[0]) {
- (ref($_[0]) eq 'HASH')
- || confess "Single parameters to new() must be a HASH ref";
- return {%{$_[0]}};
- } else {
- return {};
- }
+ (ref($_[0]) eq 'HASH')
+ || confess "Single parameters to new() must be a HASH ref";
+ return {%{$_[0]}};
}
else {
return {@_};