Specio::Constraint::Enum - A class for constraints which require a string matching one of a set of values
version 0.48
my $type = Specio::Constraint::Enum->new(...); print $_, "\n" for @{ $type->values };
This is a specialized type constraint class for types which require a string that matches one of a list of values.
This class provides all of the same methods as Specio::Constraint::Simple, with a few differences:
The parent parameter is ignored if it passed, as it is always set to the Str type.
parent
Str
The inline_generator and constraint parameters are also ignored. This class provides its own default inline generator subroutine reference.
inline_generator
constraint
Finally, this class requires an additional parameter, values. This must be a an arrayref of valid strings for the type.
values
Returns an array reference of valid values for the type.
This class does the Specio::Constraint::Role::Interface and Specio::Role::Inlinable roles.
Bugs may be submitted at https://github.com/houseabsolute/Specio/issues.
The source code repository for Specio can be found at https://github.com/houseabsolute/Specio.
Dave Rolsky <autarch@urth.org>
This software is Copyright (c) 2012 - 2022 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
The full text of the license can be found in the LICENSE file included with this distribution.
To install Specio, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Specio
CPAN shell
perl -MCPAN -e shell install Specio
For more information on module installation, please visit the detailed CPAN module installation guide.