Specio::Constraint::Structurable - Online Linux Manual PageSection : 3
Updated : 2022-01-21
Source : perl v5.34.0
Note : User Contributed Perl Documentation
NAMESpecio::Constraint::Structurable − A class which represents structurable constraints
VERSIONversion 0.47
SYNOPSIS my $tuple = t('Tuple');
my $tuple_of_str_int = $tuple−>parameterize( of => [ t('Str'), t('Int') ] );
DESCRIPTIONThis class implements the API for structurable types like Dict, Map< and Tuple.
APIThis class implements the same API as Specio::Constraint::Simple, with a few additions.
Specio::Constraint::Structurable−>new(...)This class's constructor accepts two additional parameters: • parameterization_args_builder This is a subroutine that takes the values passed to of and returns a hash of named arguments. These arguments will then be passed into the structured_constraint_generator or structured_inline_generator. This should also do argument checking to make sure that the argument passed are valid. For example, the Tuple type turns the arrayref passed to of into a hash, along the way checking that the caller did not do things like interleave optional and required elements or mix optional and slurpy together in the definition. This parameter is required. • name_builder This is a subroutine that is called to generate a name for the structured type when it is created. This will be called as a method on the Specio::Constraint::Structurable object. It will be passed the hash of arguments returned by the parameterization_args_builder. This parameter is required. • structured_constraint_generator This is a subroutine that generates a new constraint subroutine when the type is structured. It will be called as a method on the type and will be passed the hash of arguments returned by the parameterization_args_builder. This parameter is mutually exclusive with the structured_inline_generator parameter. This parameter or the structured_inline_generator parameter is required. • structured_inline_generator This is a subroutine that generates a new inline generator subroutine when the type is structured. It will be called as a method on the Specio::Constraint::Structured object when that object needs to generate an inline constraint. It will receive the type parameter as the first argument and the variable name as a string as the second. The remaining arguments will be the parameter hash returned by the parameterization_args_builder. This probably seems fairly confusing, so looking at the examples in the Specio::Library::Structured::* code may be helpful. This parameter is mutually exclusive with the structured_constraint_generator parameter. This parameter or the structured_constraint_generator parameter is required.
$type−>parameterize(...)This method takes two arguments. The of argument should be an object which does the Specio::Constraint::Role::Interface role, and is required. The other argument, declared_at, is optional. If it is not given, then a new Specio::DeclaredAt object is creating using a call stack depth of 1. This method returns a new Specio::Constraint::Structured object.
SUPPORTBugs may be submitted at <https://github.com/houseabsolute/Specio/issues>. I am also usually active on IRC as 'autarch' on irc://irc.perl.org.
SOURCEThe source code repository for Specio can be found at <https://github.com/houseabsolute/Specio>.
AUTHORDave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSEThis software is Copyright (c) 2012 − 2021 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. 0
Johanes Gumabo
Data Size : 12,227 byte
man-Specio::Constraint::Structurable.3pmBuild : 2024-12-05, 20:55 :
Visitor Screen : x
Visitor Counter ( page / site ) : 2 / 190,971
Visitor ID : :
Visitor IP : 3.144.4.50 :
Visitor Provider : AMAZON-02 :
Provider Position ( lat x lon ) : 39.962500 x -83.006100 : x
Provider Accuracy Radius ( km ) : 1000 :
Provider City : Columbus :
Provider Province : Ohio , : ,
Provider Country : United States :
Provider Continent : North America :
Visitor Recorder : Version :
Visitor Recorder : Library :
Online Linux Manual Page : Version : Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page : Library : lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page : Library : lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base : Version : Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base : Library : lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36
Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.
ERROR : Need New Coding : (parse_manual_page_|249|Specio::Constraint::Structurable.3pm|36/37|el══─{─══.|.el══─{─══. ds -- \|\(em\|
) (htmlprn|149|Specio::Constraint::Structurable.3pm|36/37|.el══─{─══. ds -- — |.el══─{─══. ds -- \|\(em\|
) (parse_manual_page_|249|Specio::Constraint::Structurable.3pm|43|br══─}─══|'br══─}─══
) (htmlprn|149|Specio::Constraint::Structurable.3pm|43|'br══─}─══ |'br══─}─══
)