MouseX::Types::URI - A URI type library for Mouse
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, );
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, );
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.
Str
ScalarRef
HashRef
Either URI or URI::WithBase.
Coerces from Str via "new" in URI.
Coerces from Path::Class::File and Path::Class::Dir via "new" in URI::file.
Coerces from ScalarRef via "new" in URI::data.
Coerces from HashRef using URI::FromHash.
A URI whose scheme is data.
data
Coerces from Str and ScalarRef via "new" in URI::data.
A URI::file class type.
Coerces from Str, Path::Class::File and Path::Class::Dir via "new" in URI::file
NAKAGAWA Masaki <masaki@cpan.org>
Yuval Kogman, "AUTHOR" in MooseX::Types::URI
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Mouse, MouseX::Types,
URI, URI::data, URI::file, URI::WithBase, URI::FromHash,
MooseX::Types::URI
To install MouseX::Types::URI, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MouseX::Types::URI
CPAN shell
perl -MCPAN -e shell install MouseX::Types::URI
For more information on module installation, please visit the detailed CPAN module installation guide.