NAME
Tie::CheckVariables - check/validate variables for their data type
VERSION
version 0.07
SYNOPSIS
use Tie::CheckVariables;
tie my $scalar,'Tie::CheckVariables','integer';
$scalar = 88; # is ok
$scalar = 'test'; # is not ok, throws error
untie $scalar;
DATA TYPES
You can use these data types by default:
integer
float
string
WHAT TO DO WHEN CHECK FAILS
on_error
You can specify a subroutine that is invoked on error:
use Tie::CheckVariables;
Tie::CheckVariables->on_error(sub{print "ERROR!"});
tie my $scalar,'Tie::CheckVariables','integer';
$scalar = 'a'; # ERROR! is printed
untie $scalar;
USE YOUR OWN DATA TYPE
register
If the built-in data types aren't enough, you can extend this module with your own data types:
use Tie::CheckVariables;
Tie::CheckVariables->register('url','^http://');
tie my $test_url,'Tie::CheckVariables','url';
$test_url = 'http://www.perl.org';
untie $test_url;
USING Type::Tiny
Since the very first version of this module, a lot has happened. Moose, Moo and other very nice modules were developed. And sometimes later Type::Tiny was written.
So I added support for Types::Standard now ;-)
use Tie::CheckVariables;
use Types::Standard qw(Int);
tie my $test_int,'Tie::CheckVariables', Int;
$test_int = 112;
$test_int = 'Test'; # throws error
untie $test_url;
AUTHOR
Renee Baecker <reneeb@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2006 by Renee Baecker.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)