App-Basis
view release on metacpan or search on metacpan
lib/App/Basis/Config.pm view on Meta::CPAN
# ABSTRACT: Manage config YAML files in a simple manner
package App::Basis::Config;
$App::Basis::Config::VERSION = '1.2';
use 5.010;
use warnings;
use strict;
use Moo;
use YAML::XS qw( Load Dump);
use Path::Tiny;
use Try::Tiny;
use App::Basis;
# ----------------------------------------------------------------------------
# the raw config data hash
has raw => (
is => 'ro',
lazy => 1,
# builder => '_load',
init_arg => undef, # dont allow setting in constructor
default => sub { {} },
writer => '_set_raw'
);
has filename => (
is => 'ro',
required => 0,
writer => '_set_filename'
);
has nostore => (
is => 'ro',
default => sub {0}
);
has die_on_error => (
is => 'ro',
default => sub {0}
);
has has_data => (
is => 'ro',
default => sub {0},
init_arg => undef, # dont allow setting in constructor
writer => '_set_has_data'
);
has changed => (
is => 'rw',
default => sub {0},
init_arg => undef, # dont allow setting in constructor
# writer => '_set_changed'
);
has error => (
is => 'ro',
default => sub {undef},
init_arg => undef, # dont allow setting in constructor
writer => '_set_error'
);
# ----------------------------------------------------------------------------
sub BUILD {
( run in 1.276 second using v1.01-cache-2.11-cpan-39bf76dae61 )