Travis CI Badge Coverage Badge CPAN Badge Kwalitee Badge


File::DataClass - Structured data file IO with caching and searching


This document describes version v0.73.$Rev: 1 $ of File::DataClass


   use File::DataClass::Schema;

   $schema = File::DataClass::Schema->new
      ( path    => [ 'path to a file' ],
        result_source_attributes => { source_name => {}, },
        tempdir => [ 'path to a directory' ] );

   $schema->source( 'source_name' )->attributes( [ qw( list of attr names ) ] );
   $rs = $schema->resultset( 'source_name' );
   $result = $rs->find( { name => 'id of field element to find' } );
   $result->$attr_name( $some_new_value );
   @result = $rs->search( { 'attr name' => 'some value' } );


Provides methods for manipulating structured data stored in files of different formats

The documentation for this distribution starts in the class File::DataClass::Schema

File::DataClass::IO is a Moo based implementation of IO::Alls API. It implements the file and directory methods only

Configuration and Environment

Defines the distributions VERSION number using a polyglot interpreted by both Perl and hooks in the VCS








On mswin32 and cygwin it is assumed that NTFS is being used and that it does not support mtime so caching on those platforms is disabled

Due to the absence of an mswin32 environment for testing purposes that platform is not supported

Bugs and Limitations

There are no known bugs in this module. Please report problems to Patches are welcome


Larry Wall - For the Perl programming language

The class structure and API where taken from DBIx::Class

The API for the file IO was taken from IO::All


Peter Flanigan, <>

License and Copyright

Copyright (c) 2017 Peter Flanigan. All rights reserved

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic

This program is distributed in the hope that it will be useful, but WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE