NAME
MouseX::Types::URI - A URI type library for Mouse
SYNOPSIS
CLASS TYPES
package MyApp; use Mouse; use MouseX::Types::URI;
has 'uri' => ( is => 'rw', isa => 'URI', coerce => 1, );
has 'data' => ( is => 'rw', isa => 'URI::data', coerce => 1, );
has 'file' => ( is => 'rw', isa => 'URI::file', coerce => 1, );
CUSTOM TYPES
package MyApp; use Mouse; use MouseX::Types::URI qw(Uri DataUri FileUri);
has 'uri' => ( is => 'rw', isa => Uri, coerce => 1, );
has 'data' => ( is => 'rw', isa => DataUri, coerce => 1, );
has 'file' => ( is => 'rw', isa => FileUri, coerce => 1, );
DESCRIPTION
MouseX::Types::URI creates common Mouse types, coercions and option specifications useful for dealing with URIs as Mouse attributes.
Coercions (see Mouse::Util::TypeConstraints) are made from
Str, ScalarRef, HashRef,
Path::Class::Dir and Path::Class::File to
URI, URI::data and URI::file objects.
TYPES
Uri
Either URI or URI::WithBase.
Coerces from Str via L<URI/new>.
Coerces from Path::Class::File and Path::Class::Dir via LURI::file/new.
Coerces from ScalarRef via LURI::data/new.
Coerces from HashRef using URI::FromHash.
DataUri
A URI whose scheme is data.
Coerces from Str and ScalarRef via LURI::data/new.
FileUri
A URI::file class type.
Coerces from Str, Path::Class::File and Path::Class::Dir via LURI::file/new
AUTHOR
NAKAGAWA Masaki masaki@cpan.org
THANKS TO
Yuval Kogman, LMooseX::Types::URI/AUTHOR
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.