Specio::Constraint::Intersection(3)

NAME
Specio::Constraint::Intersection - A class for intersection constraints

VERSION
version 0.53

SYNOPSIS
    my $type = Specio::Constraint::Untion->new(...);

DESCRIPTION
This is a specialized type constraint class for intersections, which will allow a value which matches each one of several distinct types.

API
This class provides all of the same methods as Specio::Constraint::Simple, with a few differences:

  Specio::Constraint::Intersection->new( ... )
The "parent" parameter is ignored if it passed, as it is always "undef"

The "inline_generator" and "constraint" parameters are also ignored. This class provides its own default inline generator subroutine reference.

Finally, this class requires an additional parameter, "of". This must be an arrayref of type objects.

  $union->of
Returns an array reference of the individual types which makes up this intersection.

ROLES
This class does the Specio::Constraint::Role::Interface and Specio::Role::Inlinable roles.

SUPPORT
Bugs may be submitted at <https://github.com/houseabsolute/Specio/issues>.

SOURCE
The source code repository for Specio can be found at <https://github.com/houseabsolute/Specio>.

AUTHOR
Dave Rolsky <autarch@urth.org>

COPYRIGHT AND LICENSE
This software is Copyright (c) 2012 - 2025 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.