NAME
Types::URI - type constraints and coercions for URIs
SYNOPSIS
package FroobleDocument;
use Moose;
use Types::URI -all;
has source => (
is => 'ro',
isa => Uri,
coerce => 1,
);
DESCRIPTION
Types::URI is a type constraint library suitable for use with Moo/Moose attributes, Kavorka sub signatures, and so forth.
Types
This module provides some type constraints broadly compatible with those provided by MooseX::Types::URI, plus a couple of extra type constraints.
Uri
-
A class type for URI/URI::WithBase. Coercions from:
- from
Uuid
-
Coerces to a URI in the
urn:uuid:
schema. (See Types::UUID.) - from
Str
-
Uses "new" in URI.
- from
Path
-
Uses "new" in URI::file. (See Types::Path::Tiny.)
- from
ScalarRef
-
Uses "new" in URI::data.
- from
HashRef
-
Coerces using URI::FromHash.
- from
Iri
-
Uses "new" in URI.
- from RDF::Trine::Node::Resource, RDF::Trine::Namespace, XML::Namespace
-
Uses "new" in URI.
- from
FileUri
-
A subtype of
Uri
covering URI::file. Coercions from:- from
Str
-
Uses "new" in URI::file.
- from
Path
-
Uses "new" in URI::file. (See Types::Path::Tiny.)
- from
HashRef
-
Coerces using URI::FromHash.
- from
Iri
-
Uses "new" in URI.
- from RDF::Trine::Node::Resource, RDF::Trine::Namespace, XML::Namespace
-
Uses "new" in URI.
- from
DataUri
-
A subtype of
Uri
covering URI::data. Coercions from:- from
Str
-
Uses "new" in URI::data.
- from
ScalarRef
-
Uses "new" in URI::data.
- from
HashRef
-
Coerces using URI::FromHash.
- from
Iri
-
Uses "new" in URI.
- from RDF::Trine::Node::Resource, RDF::Trine::Namespace, XML::Namespace
-
Uses "new" in URI.
- from
Iri
-
A class type for IRI. Coercions as per
Uri
above, plus can coerce fromUri
.
BUGS
Please report any bugs to https://rt.cpan.org/Dist/Display.html?Queue=Types-URI.
SEE ALSO
MooseX::Types::URI, Type::Tiny::Manual, URI, URI::file, URI::data, URI::FromHash, RDF::Trine::Node::Resource, IRI.
Types::UUID, Types::Path::Tiny, Types::Standard.
AUTHOR
Toby Inkster <[email protected]>.
COPYRIGHT AND LICENCE
This software is copyright (c) 2014 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
DISCLAIMER OF WARRANTIES
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.