use namespace::clean;
use Devel::InnerPackage;
use Moose::Util;
+use Ref::Util qw(is_plain_hashref);
=head1 NAME
my %merged = %$lefthash;
for my $key ( keys %$righthash ) {
- my $right_ref = ( ref $righthash->{ $key } || '' ) eq 'HASH';
- my $left_ref = ( ( exists $lefthash->{ $key } && ref $lefthash->{ $key } ) || '' ) eq 'HASH';
+ my $right_ref = is_plain_hashref( $righthash->{ $key } );
+ my $left_ref = exists $lefthash->{ $key } && is_plain_hashref( $lefthash->{ $key } );
if( $right_ref and $left_ref ) {
$merged{ $key } = merge_hashes(
$lefthash->{ $key }, $righthash->{ $key }
my $_setup_component = sub {
my $into = shift;
my $component_package = shift;
- $into->components->{$component_package} = $into->setup_component( $component_package );
+ $into->components->{$component_package} = $into->delayed_setup_component( $component_package );
};
$_setup_component->( $into, $component_package );
- # for my $inner_component_package ( Devel::InnerPackage::list_packages( $component_package ) ) {
- # $_setup_component->( $into, $inner_component_package );
- # }
}
=head1 PSGI Helpers