NAME
Data::Sah::JS - Some functions to use JavaScript Sah validator code from Perl
VERSION
This document describes version 0.87 of Data::Sah::JS (from Perl distribution Data-Sah-JS), released on 2016-09-14.
SYNOPSIS
use Data::Sah::JS qw(gen_validator);
my $v = gen_validator(["int*", min=>1, max=>10]);
# validate your data using the generated validator
say "valid" if $v->(5); # valid
say "valid" if $v->(11); # invalid
say "valid" if $v->(undef); # invalid
say "valid" if $v->("x"); # invalid
# generate validator which reports error message string, in Indonesian
my $v = gen_validator(["int*", min=>1, max=>10],
{return_type=>'str', lang=>'id_ID'});
say $v->(5); # ''
say $v->(12); # 'Data tidak boleh lebih besar dari 10'
# (in English: 'Data must not be larger than 10')
DESCRIPTION
FUNCTIONS
None exported by default.
gen_validator($schema, \%opts) => CODE (or STR)
Generate validator code for $schema
. This is currently used for testing purposes only, as this will first generate JavaScript validator code, then generate a Perl coderef that will feed generated JavaScript validator code to a JavaScript engine (currently node.js) via command-line. Not exactly efficient.
Known options (unknown options will be passed to JS schema compiler):
source => BOOL (default: 0)
If set to 1, return JavaScript source code string instead of Perl coderef. Usually only needed for debugging (but see also
$Data::Sah::Log_Validator_Code
andLOG_SAH_VALIDATOR_CODE
if you want to log validator source code).
ENVIRONMENT
HOMEPAGE
Please visit the project's homepage at https://metacpan.org/release/Data-Sah-JS.
SOURCE
Source repository is at https://github.com/perlancar/perl-Data-Sah-JS.
BUGS
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Sah-JS
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
SEE ALSO
Data::Sah, Data::Sah::Compiler::js.
AUTHOR
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.