Specio::Constraint::ObjectCan - A class for constraints which require an object with a set of methods
version 0.42
my $type = Specio::Constraint::ObjectCan->new(...);
print $_, "\n" for @{ $type->methods };
This is a specialized type constraint class for types which require an object
with a defined set of methods.
This class provides all of the same methods as the Specio::Constraint::Simple manpage,
with a few differences:
The parent parameter is ignored if it passed, as it is always set to the
Object type.
The inline_generator and constraint parameters are also ignored. This
class provides its own default inline generator subroutine reference.
This class overrides the message_generator default if none is provided.
Finally, this class requires an additional parameter, methods. This must be
an array reference of method names which the constraint requires. You can also
pass a single string and it will be converted to an array reference
internally.
Returns an array reference containing the methods this constraint requires.
This class does the the Specio::Constraint::Role::CanType manpage,
the Specio::Constraint::Role::Interface manpage, and the Specio::Role::Inlinable manpage roles.
Bugs may be submitted at https://github.com/houseabsolute/Specio/issues.
I am also usually active on IRC as 'autarch' on irc://irc.perl.org.
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 - 2017 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.
|