Revision history for MooseX-Types
- - fix coercions on parameterized types (Rafael Kitover)
++0.18 Sat Aug 22 12:50:42 EDT 2009
++ - fix coercions on parameterized types (Hans Dieter Pearcey).
+
0.17 Tue Aug 18 02:32:31 EDT 2009
- Documentation typo fix (Dave Rolsky).
- Stop blowing up in has_available_type_export if the introspected code
use namespace::clean -except => [qw( meta )];
use 5.008;
--our $VERSION = '0.17';
++our $VERSION = '0.18';
my $UndefMsg = q{Action for type '%s' not yet defined in library '%s'};
=head1 SYNOPSIS
rafl: Florian Ragwitz <rafl@debian.org>
++hdp: Hans Dieter Pearcey <hdp@cpan.org>
++
=head1 COPYRIGHT & LICENSE
Copyright (c) 2007-2009 Robert Sedlacek
BEGIN {
package TypeLib;
- use MooseX::Types -declare => [qw/MyChar MyDigit ArrayRefOfMyCharOrDigit/];
- use MooseX::Types -declare => [qw/MyType ArrayRefOfMyType/];
- use MooseX::Types::Moose qw/ArrayRef Str/;
++ use MooseX::Types -declare => [qw/
++ MyChar MyDigit ArrayRefOfMyCharOrDigit
++ /];
+ use MooseX::Types::Moose qw/ArrayRef Str Int/;
- subtype MyType, as Str, where {
+ subtype MyChar, as Str, where {
length == 1
};
{
package AClass;
use Moose;
- BEGIN { TypeLib->import(qw/MyChar MyDigit ArrayRefOfMyCharOrDigit/) };
- BEGIN { TypeLib->import(qw/MyType ArrayRefOfMyType/) };
++ BEGIN { TypeLib->import(qw/
++ MyChar MyDigit ArrayRefOfMyCharOrDigit/
++ ) };
use MooseX::Types::Moose 'ArrayRef';
- has parameterized => (is => 'rw', isa => ArrayRef[MyType], coerce => 1);
- has subtype => (is => 'rw', isa => ArrayRefOfMyType, coerce => 1);
+ has parameterized => (is => 'rw', isa => ArrayRef[MyChar|MyDigit], coerce => 1);
- has subtype => (is => 'rw', isa => ArrayRefOfMyCharOrDigit, coerce => 1);
++ has subtype_parameterized => (is => 'rw', isa => ArrayRefOfMyCharOrDigit, coerce => 1);
}
my $instance = AClass->new;
lives_ok { $instance->parameterized('foo') }
'coercion applied to parameterized type';
--lives_ok { $instance->subtype('foo') } 'coercion applied to subtype';
++lives_ok { $instance->subtype_parameterized('foo') }
++ 'coercion applied to subtype';