Config-Model-Itself

 view release on metacpan or  search on metacpan

lib/Config/Model/Itself.pm  view on Meta::CPAN

10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package Config::Model::Itself 2.025;
 
use Mouse ;
use Config::Model 2.141;
use 5.014; # for the /r modifier
 
use IO::File ;
use Log::Log4perl 1.11;
use Carp ;
use Scalar::Util qw/weaken/;
use Path::Tiny 0.125; # for mkdir
 
my $logger = Log::Log4perl::get_logger("Backend::Itself");
 
subtype 'ModelPathTiny' => as 'Object' => where { $_->isa('Path::Tiny') };

lib/Config/Model/Itself.pm  view on Meta::CPAN

148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
    my $self = shift;
    my $md = $self->cm_lib_dir->child('models');
    $md->mkdir;
    return $md;
}
 
sub BUILD {
    my $self = shift;
 
    # avoid memory cycle
    weaken($self);
 
    my $cb = sub {
        my %args = @_ ;
        my $p = $args{path} || '' ;
        return unless $p =~ /^class/ ;
        return unless $args{index}; # may be empty when class order is changed
        return if $self->class_was_changed($args{index}) ;
        $logger->info("class $args{index} was modified");
 
        $self->add_modified_class($args{index}) ;



( run in 0.251 second using v1.01-cache-2.11-cpan-cba739cd03b )