The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MooseX::Types::Util - Common utility functions for the module

DESCRIPTION

This package the exportable functions that many parts in MooseX::Types might need.

FUNCTIONS

filter_tags

Takes a list and returns two references. The first is a hash reference containing the tags as keys and the number of their appearance as values. The second is an array reference containing all other elements.

has_available_type_export

  TypeConstraint | Undef = has_available_type_export($package, $name);

This function allows you to introspect if a given type export is available at this point in time. This means that the $package must have imported a typeconstraint with the name $name, and it must be still in its symbol table.

Two arguments are expected:

$package

The name of the package to introspect.

$name

The name of the type export to introspect.

Note that the $name is the exported name of the type, not the declared one. This means that if you use Sub::Exporters functionality to rename an import like this:

  use MyTypes Str => { -as => 'MyStr' };

you would have to introspect this type like this:

  has_available_type_export $package, 'MyStr';

The return value will be either the type constraint that belongs to the export or an undefined value.

SEE ALSO

MooseX::Types::Moose, Exporter

AUTHOR AND COPYRIGHT

Robert 'phaylon' Sedlacek <rs@474.at>, with many thanks to the #moose cabal on irc.perl.org.

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as perl itself.