Skip to content

Instantly share code, notes, and snippets.

@stevan
Forked from jjn1056/gist:460088
Created July 1, 2010 15:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stevan/460089 to your computer and use it in GitHub Desktop.
Save stevan/460089 to your computer and use it in GitHub Desktop.
use MooseX::Declare;
class MyClass {
method mymethod(Str $aaa) {
return $aaa;
}
}
my $aaa = MyClass->new;
warn $aaa->mymethod(['aaa']);
## Old MXT:S
Validation failed for 'MooseX::Types::Structured::Tuple[MooseX::Types::Structured::Tuple[Object,Str],MooseX::Types::Structured::Dict[]]' with value [ [ MyClass=HASH(0x100e5f2e8), ARRAY(0x1008332a0) ], { } ], Internal Validation Error is: Validation failed for 'MooseX::Types::Structured::Tuple[Object,Str]' with value [ MyClass{ }, [ "aaa" ] ] at /Users/johnn/local-freestock/lib/perl5/MooseX/Method/Signatures/Meta/Method.pm line 429
MooseX::Method::Signatures::Meta::Method::validate('MooseX::Method::Signatures::Meta::Method=HASH(0x100e58998)', 'ARRAY(0x100e60120)') called at /Users/johnn/local-freestock/lib/perl5/MooseX/Method/Signatures/Meta/Method.pm line 145
MyClass::mymethod('MyClass=HASH(0x100e5f2e8)', 'ARRAY(0x1008332a0)') called at MyClass.pm line 9
require MyClass.pm called at -e line 1
main::BEGIN() called at MyClass.pm line 0
eval {...} called at MyClass.pm line 0
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
## New MX:ST
Validation failed for 'MooseX::Types::Structured::Tuple[MooseX::Types::Structured::Tuple[Object,Str],MooseX::Types::Structured::Dict[]]' with value [ [ MyClass=HASH(0x100e7d5b8), ARRAY(0x100d4bf58) ], { } ], Internal Validation Error is:
[+] Validation failed for 'Tuple[Object,Str]' with value [ MyClass{ }, [ "aaa" ] ]
[+] Validation failed for 'Str' with value ARRAY(0x100d4bf58) at /Users/johnn/local-freestock/lib/perl5/MooseX/Method/Signatures/Meta/Method.pm line 429
MooseX::Method::Signatures::Meta::Method::validate('MooseX::Method::Signatures::Meta::Method=HASH(0x1014e7620)', 'ARRAY(0x100e803f0)') called at /Users/johnn/local-freestock/lib/perl5/MooseX/Method/Signatures/Meta/Method.pm line 145
MyClass::mymethod('MyClass=HASH(0x100e7d5b8)', 'ARRAY(0x100d4bf58)') called at MyClass.pm line 9
require MyClass.pm called at -e line 1
main::BEGIN() called at MyClass.pm line 0
eval {...} called at MyClass.pm line 0
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment