![]() |
![]()
| ![]() |
![]()
NAMEData::Sah::Util::Role - Sah utility routines for roles VERSIONThis document describes version 0.917 of Data::Sah::Util::Role (from Perl distribution Data-Sah), released on 2024-02-16. DESCRIPTIONThis module provides some utility routines to be used in roles, e.g. "Data::Sah::Type::*" and "Data::Sah::FuncSet::*". FUNCTIONShas_clause($name, %opts)Define a clause. Used in type roles ("Data::Sah::Type::*"). Internally it adds a Moo "requires" for "clause_$name". Options:
Example: has_clause minimum => (arg => 'int*', aliases => 'min'); has_clause_alias TARGET => ALIAS | [ALIAS1, ...]Specify that clause named ALIAS is an alias for TARGET. You have to define TARGET clause first (see has_clause above). Example: has_clause max_length => ...; has_clause_alias max_length => "max_len"; has_func($name, %opts)Define a Sah function. Used in function set roles ("Data::Sah::FuncSet::*"). Internally it adds a Moo "requires" for "func_$name". Options:
Example: has_func abs => (args => 'num'); has_func_alias TARGET => ALIAS | [ALIASES...]Specify that function named ALIAS is an alias for TARGET. You have to specify TARGET function first (see has_func above). Example: has_func_alias 'atan' => 'arctan'; HOMEPAGEPlease visit the project's homepage at <https://metacpan.org/release/Data-Sah>. SOURCESource repository is at <https://github.com/perlancar/perl-Data-Sah>. AUTHORperlancar <perlancar@cpan.org> CONTRIBUTINGTo contribute, you can send patches by email/via RT, or send pull requests on GitHub. Most of the time, you don't need to build the distribution yourself. You can simply modify the code, then test via: % prove -l If you want to build the distribution (e.g. to try to install it locally on your system), you can install Dist::Zilla, Dist::Zilla::PluginBundle::Author::PERLANCAR, Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps required beyond that are considered a bug and can be reported to me. COPYRIGHT AND LICENSEThis software is copyright (c) 2024, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012 by perlancar <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. BUGSPlease report any bugs or feature requests on the bugtracker website <https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Sah> 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.
|