Provided by: libcode-tidyall-perl_0.67-1_all
NAME
Code::TidyAll::CacheModel - Caching model for Code::TidyAll
VERSION
version 0.67
SYNOPSIS
my $cache_model = Cody::TidyAll::CacheModel->new( cache_engine => Code::TidyAll::Cache->new(...), path => '/path/to/file/to/cache', ); # check cache print 'Yes!' if $cache_model->is_cached; # update cache $cache_model->clear_file_contents; $cache_model->update; # update the cache when you know the file contents $cache_model->file_contents($new_content); $cache_model->update; # force removal from cache $cache_model->remove;
DESCRIPTION
A cache model for Code::TidyAll. Different subclasses can employ different caching techniques. The basic model implemented here is simple; It stores a hash key of the file contents keyed by a hash key of the file's path.
METHODS
This class has the following methods: Code::TidyAll::CacheModel->new(%params) The constructor accepts the following attributes: • full_path The full path to the cache file on disk. This is required. • path The local path to the file (i.e. what the cache system will consider the canonical name of the file). • cache_engine A "Code::TidyAll::Cache" compatible instance. This can be omitted if no caching is actually being done. • base_sig A base signature. This defaults to an empty string. • file_contents The contents of the file being cached. This can be omitted, in which case it will be loaded as needed. • is_cached A boolean indicating if this file is cached. By default this is computed by checking that the cache key and cache value match what is in the cache. $model->full_path The value passed to the constructor. $model->path The value passed to the constructor. $model->cache_engine The value passed to the constructor. $model->base_sig The value passed to the constructor or the default value, an empty string. $model->file_contents The file contents, which will be loaded from the file system if needed. $model->is_cached A boolean indicating whether the path is currently in the cache. $model->cache_key The computed cache key for the file. $model->cache_value The computed cache value for the file. $model->update Updates the cache. $model->remove Attempts to remove the value from the cache.
SUPPORT
Bugs may be submitted at <https://github.com/houseabsolute/perl-code-tidyall/issues>. I am also usually active on IRC as 'autarch' on "irc://irc.perl.org".
SOURCE
The source code repository for Code-TidyAll can be found at <https://github.com/houseabsolute/perl-code-tidyall>.
AUTHORS
• Jonathan Swartz <swartz@pobox.com> • Dave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 - 2017 by Jonathan Swartz. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. The full text of the license can be found in the LICENSE file included with this distribution.