Types::UUID - type constraints for UUIDs
package FroobleStick; use Moo; use Types::UUID; has identifier => ( is => 'lazy', isa => Uuid, coerce => 1, builder => Uuid->generator, );
Types::UUID is a type constraint library suitable for use with Moo/Moose attributes, Kavorka sub signatures, and so forth.
Currently the module only provides one type constraint, which is exported by default.
Uuid
A valid UUID string, as judged by the is_uuid_string() function provided by UUID::Tiny.
is_uuid_string()
This constraint has coercions from Undef (generates a new UUID), Str (fixes slightly broken-looking UUIDs, adding missing dashes; also accepts base-64-encoded UUIDs) and URI objects using the urn:uuid: URI scheme.
Undef
Str
urn:uuid:
The Uuid type constraint is actually blessed into a subclass of Type::Tiny, and provides an aditional method:
Uuid->generate
Generates a new UUID. Uuid->coerce(undef) would also work, but looks a little odd.
Uuid->coerce(undef)
Uuid->generator
Returns a coderef which generates a new UUID. For an example usage, see the "SYNOPSIS".
Please report any bugs to http://rt.cpan.org/Dist/Display.html?Queue=Types-UUID.
Type::Tiny::Manual, UUID::Tiny.
Toby Inkster <tobyink@cpan.org>.
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.
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.
To install Types::UUID, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Types::UUID
CPAN shell
perl -MCPAN -e shell install Types::UUID
For more information on module installation, please visit the detailed CPAN module installation guide.