File-KDBX
view release on metacpan or search on metacpan
lib/File/KDBX/IO.pm view on Meta::CPAN
while (my ($attr, $default) = each %ATTRS) {
no strict 'refs'; ## no critic (ProhibitNoStrict)
*$attr = sub {
my $self = shift;
*$self->{$attr} = shift if @_;
*$self->{$attr} //= (ref $default eq 'CODE') ? $default->($self) : $default;
};
}
sub new {
my $class = shift || (caller)[0];
my $self = bless gensym, ref($class) || $class;
tie *$self, $self if 5.005 <= $];
return $self;
}
sub DESTROY {
return if in_global_destruction;
local ($., $@, $!, $^E, $?);
my $self = shift;
$self->close;
( run in 0.372 second using v1.01-cache-2.11-cpan-a3c8064c92c )