NAME

Test::Smoke::Policy - OO interface to handle the Policy.sh stuff.

SYNOPSIS

use Test::Smoke::Policy;

my $srcpath = File::Spec->updir;
my $policy = Test::Smoke::Policy->new( $srcpath );

$policy->substitute( [] );
$policy->write;

DESCRIPTION

I wish I understood what Merijn is doeing in the original code.

METHODS

Test::Smoke::Policy->new( $srcpath )

Create a new instance of the Policy object. Read the file or take data from the DATA section.

$policy->verbose

Get verbosity.

$policy->set_rules( $rules )

Set the rules for substitutions.

$policy->reset_rules( )

Reset the _rules property.

$policy->_do_subst( )

_do_subst() does the substitutions and stores the substituted version as the _new_policy attribute.

$policy->write( )

$policy->_read_Policy( $srcpath[, $verbose[, @ccflags]] )

_read_Policy() checks the $srcpath for these conditions:

Reference to a SCALAR Policy is in $$srcpath
Reference to an ARRAY Policy is in @$srcpath
Reference to a GLOB Policy is read from the filehandle
Other values are taken as the base path for Policy.sh

The @ccflags are passed to $self->default_Policy()

$policy->default_Policy( [@ccflags] )

Generate the default Policy.sh from a set of ccflags, but be backward compatible.

COPYRIGHT

(c) 2001-2015, All rights reserved.

* H.Merijn Brand <hmbrand@hccnet.nl>
* Nicholas Clark <nick@unfortu.net>
* Abe Timmerman <abeltje@cpan.org>

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

See:

* <http://www.perl.com/perl/misc/Artistic.html>,
* <http://www.gnu.org/copyleft/gpl.html>

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