NAME
Declare::Constraints::Simple::Library::OO - OO Constraints
SYNOPSIS
# accept objects or classes
my $object_or_class = Or( IsObject, IsClass );
# valid on objects with all methods
my $proper_object = And( IsObject,
HasMethods( qw(foo bar) ));
# validate against date objects
my $is_date_object = IsA('DateTime');
DESCRIPTION
This library contains the constraints for validating parameters in an object oriented manner.
CONSTRAINTS
HasMethods(@methods)
Returns true if the value is an object or class that can
all the specified @methods
.
The stack or path part of HasMethods
looks like HasMethods[$method]
where $method
is the first found missing method.
IsA(@classes)
Is true if the passed object or class is a subclass of one of the classes mentioned in @classes
.
IsClass()
Valid if value is a loaded class.
IsObject()
True if the value is blessed.
SEE ALSO
Declare::Constraints::Simple, Declare::Constraints::Simple::Library
AUTHOR
Robert 'phaylon' Sedlacek <phaylon@dunkelheit.at>
LICENSE AND COPYRIGHT
This module is free software, you can redistribute it and/or modify it under the same terms as perl itself.