File-DataClass
view release on metacpan or search on metacpan
lib/File/DataClass/IO.pm view on Meta::CPAN
sub sibling {
my $self = shift; return $self->parent->child( @_ );
}
sub slurp {
my $self = shift; my $slurp = $self->all;
wantarray or return $slurp; local $RS = $self->_separator;
$self->_chomp or return split m{ (?<=\Q$RS\E) }mx, $slurp;
return map { CORE::chomp; $_ } split m{ (?<=\Q$RS\E) }mx, $slurp;
}
sub splitdir {
return File::Spec->splitdir( $_[ 0 ]->name );
}
sub splitpath {
return File::Spec->splitpath( $_[ 0 ]->name );
}
lib/File/DataClass/Storage/Any.pm view on Meta::CPAN
ensure_class_loaded $class;
return $stores->{ $extn } = $class->new
( { %{ $self->storage_attributes }, schema => $self->schema } );
};
my $_get_store_from_path = sub {
my ($self, $path) = @_; my $file = basename( "${path}" );
my $extn = (split m{ \. }mx, $file)[ -1 ]
or throw 'File [_1] has no extension', [ $file ];
my $store = $self->$_get_store_from_extension( ".${extn}" )
or throw 'Extension [_1] has no store', [ $extn ];
return $store;
};
# Public methods
sub create_or_update {
( run in 0.486 second using v1.01-cache-2.11-cpan-71847e10f99 )