SQL::Translator::Types - Type checking functions
package Foo; use Moo; use SQL::Translator::Types qw(schema_obj enum); has foo => ( is => 'rw', isa => schema_obj('Trigger') ); has bar => ( is => 'rw', isa => enum([qw(baz quux quuz)], { msg => "Invalid value for bar: '%s'", icase => 1, });
This module exports functions that return coderefs suitable for Moo isa type checks. Errors are reported using "throw" in SQL::Translator::Utils.
isa
Returns a coderef that checks that its arguments is an object of the class SQL::Translator::Schema::$type.
SQL::Translator::Schema::$type
Returns a coderef that checks that the argument is one of the provided @strings.
@strings
sprintf string for the error message. If no other parameters are needed, this can be provided on its own, instead of the %parameters hashref. The invalid value is passed as the only argument. Defaults to Invalid value: '%s'.
%parameters
Invalid value: '%s'
If true, folds the values to lower case before checking for equality.
If true, allow undef in addition to the specified strings.
undef
If true, allow any false value in addition to the specified strings.
To install SQL::Translator, copy and paste the appropriate command in to your terminal.
cpanm
cpanm SQL::Translator
CPAN shell
perl -MCPAN -e shell install SQL::Translator
For more information on module installation, please visit the detailed CPAN module installation guide.