NAME Code::TidyAll - Engine for tidyall, your all-in-one code tidier and validator VERSION version 0.02 SYNOPSIS use Code::TidyAll; my $ct = Code::TidyAll->new( conf_file => '/path/to/conf/file' ); # or my $ct = Code::TidyAll->new( root_dir => '/path/to/root', plugins => { perltidy => { select => qr/\.(pl|pm|t)$/, options => { argv => '-noll -it=2' }, }, ... } ); # then... $ct->process_files($file1, $file2); # or $ct->process_all(); DESCRIPTION This is the engine used by tidyall - read that first to get an overview. You can call this API from your own program instead of executing `tidyall'. CONSTRUCTOR OPTIONS You must either pass `conf_file', or both `plugins' and `root_dir'. plugins Specify a hash of plugins, each of which is itself a hash of options. This is equivalent to what would be parsed out of the sections in `tidyall.ini'. prefilter A code reference that will be applied to code before processing. It is expected to take the full content as a string in its input, and output the transformed content. postfilter A code reference that will be applied to code after processing. It is expected to take the full content as a string in its input, and output the transformed content. backup_ttl check_only conf_file data_dir mode no_backups no_cache root_dir quiet verbose These options are the same as the equivalent `tidyall' command-line options, replacing dashes with underscore (e.g. the `backup-ttl' option becomes `backup_ttl' here). METHODS process_all Process all files; this implements the `tidyall -a' option. process_files (file, ...) Calls process_file on each file. Return a list of Code::TidyAll::Result objects, one for each file. process_file (file) Process the file, meaning * Check the cache and return immediately if file has not changed * Apply prefilters, appropriate matching plugins, and postfilters * Print success or failure result to STDOUT, depending on quiet/verbose settings * Write the cache if enabled * Return a Code::TidyAll::Result object find_conf_file (start_dir) Start in the *start_dir* and work upwards, looking for a `tidyall.ini'. Return the pathname if found or throw an error if not found. SEE ALSO Code::TidyAll AUTHOR Jonathan Swartz COPYRIGHT AND LICENSE This software is copyright (c) 2011 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.