# NAME

Data::Object::Library - Data::Object Type Library for Perl 5

# VERSION

version 0.05

# SYNOPSIS

    use Data::Object::Library;

# DESCRIPTION

Data::Object::Library is a [Type::Tiny](https://metacpan.org/pod/Type::Tiny) library that extends the
[Types::Standard](https://metacpan.org/pod/Types::Standard), [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric), and [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
libraries and adds type constraints and coercions for [Data::Object](https://metacpan.org/pod/Data::Object) objects.

# TYPES

## Any

The Any type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## AnyObj

The AnyObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Universal](https://metacpan.org/pod/Data::Object::Universal) object.

## AnyObject

The AnyObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Universal](https://metacpan.org/pod/Data::Object::Universal) object.

## ArrayObj

The ArrayObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Array](https://metacpan.org/pod/Data::Object::Array) object.

## ArrayObject

The ArrayObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Array](https://metacpan.org/pod/Data::Object::Array) object.

## ArrayRef

The ArrayRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Bool

The Bool type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## ClassName

The ClassName type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## CodeObj

The CodeObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Code](https://metacpan.org/pod/Data::Object::Code) object.

## CodeObject

The CodeObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Code](https://metacpan.org/pod/Data::Object::Code) object.

## CodeRef

The CodeRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## ConsumerOf

The ConsumerOf type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Defined

The Defined type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Dict

The Dict type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## Enum

The Enum type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## FileHandle

The FileHandle type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## FloatObj

The FloatObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Float](https://metacpan.org/pod/Data::Object::Float) object.

## FloatObject

The FloatObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Float](https://metacpan.org/pod/Data::Object::Float) object.

## GlobRef

The GlobRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## HasMethods

The HasMethods type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## HashObj

The HashObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Hash](https://metacpan.org/pod/Data::Object::Hash) object.

## HashObject

The HashObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Hash](https://metacpan.org/pod/Data::Object::Hash) object.

## HashRef

The HashRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## InstanceOf

The InstanceOf type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Int

The Int type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## IntObj

The IntObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Integer](https://metacpan.org/pod/Data::Object::Integer) object.

## IntObject

The IntObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Integer](https://metacpan.org/pod/Data::Object::Integer) object.

## IntegerObj

The IntegerObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Integer](https://metacpan.org/pod/Data::Object::Integer) object.

## IntegerObject

The IntegerObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Integer](https://metacpan.org/pod/Data::Object::Integer) object.

## Item

The Item type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## LaxNum

The LaxNum type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## LowerCaseSimpleStr

The LowerCaseSimpleStr type constraint is provided by the
[Types::Common::String](https://metacpan.org/pod/Types::Common::String) library. Please see that documentation for more
information.

## LowerCaseStr

The LowerCaseStr type constraint is provided by the [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
library. Please see that documentation for more information.

## Map

The Map type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## Maybe

The Maybe type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## NegativeInt

The NegativeInt type constraint is provided by the [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric)
library. Please see that documentation for more information.

## NegativeNum

The NegativeNum type constraint is provided by the [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric)
library. Please see that documentation for more information.

## NegativeOrZeroInt

The NegativeOrZeroInt type constraint is provided by the
[Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric) library. Please see that documentation for more
information.

## NegativeOrZeroNum

The NegativeOrZeroNum type constraint is provided by the
[Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric) library. Please see that documentation for more
information.

## NonEmptySimpleStr

The NonEmptySimpleStr type constraint is provided by the
[Types::Common::String](https://metacpan.org/pod/Types::Common::String) library. Please see that documentation for more
information.

## NonEmptyStr

The NonEmptyStr type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Num

The Num type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## NumObj

The NumObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Number](https://metacpan.org/pod/Data::Object::Number) object.

## NumObject

The NumObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Number](https://metacpan.org/pod/Data::Object::Number) object.

## NumberObj

The NumberObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Number](https://metacpan.org/pod/Data::Object::Number) object.

## NumberObject

The NumberObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Number](https://metacpan.org/pod/Data::Object::Number) object.

## NumericCode

The NumericCode type constraint is provided by the [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
library. Please see that documentation for more information.

## Object

The Object type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## OptList

The OptList type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Optional

The Optional type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Overload

The Overload type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## Password

The Password type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## PositiveInt

The PositiveInt type constraint is provided by the [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric)
library. Please see that documentation for more information.

## PositiveNum

The PositiveNum type constraint is provided by the [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric)
library. Please see that documentation for more information.

## PositiveOrZeroInt

The PositiveOrZeroInt type constraint is provided by the
[Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric) library. Please see that documentation for more
information.

## PositiveOrZeroNum

The PositiveOrZeroNum type constraint is provided by the
[Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric) library. Please see that documentation for more
information.

## Ref

The Ref type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## RegexpObj

The RegexpObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Regexp](https://metacpan.org/pod/Data::Object::Regexp) object.

## RegexpObject

The RegexpObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Regexp](https://metacpan.org/pod/Data::Object::Regexp) object.

## RegexpRef

The RegexpRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## RoleName

The RoleName type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## ScalarObj

The ScalarObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Scalar](https://metacpan.org/pod/Data::Object::Scalar) object.

## ScalarObject

The ScalarObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Scalar](https://metacpan.org/pod/Data::Object::Scalar) object.

## ScalarRef

The ScalarRef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## SimpleStr

The SimpleStr type constraint is provided by the [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
library. Please see that documentation for more information.

## SingleDigit

The SingleDigit type constraint is provided by the [Types::Common::Numeric](https://metacpan.org/pod/Types::Common::Numeric)
library. Please see that documentation for more information.

## Str

The Str type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## StrMatch

The StrMatch type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## StrObj

The StrObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::String](https://metacpan.org/pod/Data::Object::String) object.

## StrObject

The StrObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::String](https://metacpan.org/pod/Data::Object::String) object.

## StrictNum

The StrictNum type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library.
Please see that documentation for more information.

## StringObj

The StringObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::String](https://metacpan.org/pod/Data::Object::String) object.

## StringObject

The StringObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::String](https://metacpan.org/pod/Data::Object::String) object.

## StrongPassword

The StrongPassword type constraint is provided by the [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
library. Please see that documentation for more information.

## Tied

The Tied type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## Tuple

The Tuple type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## Undef

The Undef type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

## UndefObj

The UndefObj type constraint is provided by this library and accepts any object
that is, or is derived from, a [Data::Object::Undef](https://metacpan.org/pod/Data::Object::Undef) object.

## UndefObject

The UndefObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Undef](https://metacpan.org/pod/Data::Object::Undef) object.

## UniversalObj

The UniversalObj type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Universal](https://metacpan.org/pod/Data::Object::Universal) object.

## UniversalObject

The UniversalObject type constraint is provided by this library and accepts any
object that is, or is derived from, a [Data::Object::Universal](https://metacpan.org/pod/Data::Object::Universal) object.

## UpperCaseSimpleStr

The UpperCaseSimpleStr type constraint is provided by the
[Types::Common::String](https://metacpan.org/pod/Types::Common::String) library. Please see that documentation for more
information.

## UpperCaseStr

The UpperCaseStr type constraint is provided by the [Types::Common::String](https://metacpan.org/pod/Types::Common::String)
library. Please see that documentation for more information.

## Value

The Value type constraint is provided by the [Types::Standard](https://metacpan.org/pod/Types::Standard) library. Please
see that documentation for more information.

# AUTHOR

Al Newkirk <anewkirk@ana.io>

# COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Al Newkirk.

This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
