Mercurial > pub > Impl
comparison Lib/IMPL/declare.pm @ 211:2b9b55cfb79b
Completed IMPL::Web::AutoLocator, added tests
author | cin |
---|---|
date | Tue, 05 Jun 2012 07:45:21 +0400 |
parents | a8db61d0ed33 |
children | 431db7034a88 |
comparison
equal
deleted
inserted
replaced
210:6adaeb86945d | 211:2b9b55cfb79b |
---|---|
29 | 29 |
30 my %ctor; | 30 my %ctor; |
31 my @isa; | 31 my @isa; |
32 | 32 |
33 if (ref $base eq 'ARRAY') { | 33 if (ref $base eq 'ARRAY') { |
34 carp("will be changed in next version"); | 34 carp "Odd elements number in require" unless scalar(@$base)%2 == 0; |
35 @isa = map _require($_), @$base if @$base; | 35 while ( my ($class,$mapper) = splice @$base, 0, 2 ) { |
36 $class = $aliases->{$class} || _require($class); | |
37 | |
38 push @isa,$class; | |
39 $ctor{$class} = $mapper; | |
40 } | |
36 } elsif (ref $base eq 'HASH' ) { | 41 } elsif (ref $base eq 'HASH' ) { |
37 while ( my ($class,$mapper) = each %$base ) { | 42 while ( my ($class,$mapper) = each %$base ) { |
38 $class = $aliases->{$class} || _require($class); | 43 $class = $aliases->{$class} || _require($class); |
39 | 44 |
40 push @isa,$class; | 45 push @isa,$class; |