Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

Specio::Constraint::ObjectCan

Name Specio::Constraint::ObjectCan
Version 0.42
Located at /usr/share/perl5/vendor_perl
File /usr/share/perl5/vendor_perl/Specio/Constraint/ObjectCan.pm
Is Core No
Search CPAN for this module Specio::Constraint::ObjectCan
Documentation Specio::Constraint::ObjectCan
Module Details Specio::Constraint::ObjectCan


NAME

Specio::Constraint::ObjectCan - A class for constraints which require an object with a set of methods


VERSION

version 0.42


SYNOPSIS

    my $type = Specio::Constraint::ObjectCan->new(...);
    print $_, "\n" for @{ $type->methods };


DESCRIPTION

This is a specialized type constraint class for types which require an object with a defined set of methods.


API

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

Specio::Constraint::ObjectCan->new( ... )

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.

$object_can->methods

Returns an array reference containing the methods this constraint requires.


ROLES

This class does the the Specio::Constraint::Role::CanType manpage, the Specio::Constraint::Role::Interface manpage, and the Specio::Role::Inlinable manpage roles.


SUPPORT

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.


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 - 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.

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024