Data::Sah::Normalize(3pm) | User Contributed Perl Documentation | Data::Sah::Normalize(3pm) |
NAME¶
Data::Sah::Normalize - Normalize Sah schema
VERSION¶
This document describes version 0.050 of Data::Sah::Normalize (from Perl distribution Data-Sah-Normalize), released on 2018-09-10.
SYNOPSIS¶
use Data::Sah::Normalize qw(normalize_clset normalize_schema); my $nclset = normalize_clset({'!a'=>1}); # -> {a=>1, 'a.op'=>'not'} my $nsch = normalize_schema("int"); # -> ["int", {}, {}]
DESCRIPTION¶
This often-needed functionality is split from the main Data::Sah to keep it in a small and minimal-dependencies package.
FUNCTIONS¶
normalize_clset($clset) => HASH¶
Normalize a clause set (hash). Return a shallow copy of the original hash. Die on failure.
TODO: option to recursively normalize clause which contains sah clauses (e.g. "of").
normalize_schema($sch) => ARRAY¶
Normalize a Sah schema (scalar or array). Return an array. Produce a 2-level copy of schema, so it's safe to add/delete/modify the normalized schema's clause set and extras (but clause set's and extras' values are still references to the original). Die on failure.
TODO: recursively normalize clause which contains sah clauses (e.g. "of").
HOMEPAGE¶
Please visit the project's homepage at <https://metacpan.org/release/Data-Sah-Normalize>.
SOURCE¶
Source repository is at <https://github.com/perlancar/perl-Data-Sah-Normalize>.
BUGS¶
Please report any bugs or feature requests on the bugtracker website <https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Sah-Normalize>
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¶
Sah, Data::Sah
AUTHOR¶
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE¶
This software is copyright (c) 2018, 2015, 2014 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.
2018-11-25 | perl v5.28.0 |