[Moose-commits] r7865 -
MooseX-Types-Dependent/trunk/lib/MooseX/Meta/TypeConstraint
jnapiorkowski at code2.0beta.co.uk
jnapiorkowski at code2.0beta.co.uk
Sun Mar 29 18:35:20 BST 2009
Author: jnapiorkowski
Date: 2009-03-29 10:35:20 -0700 (Sun, 29 Mar 2009)
New Revision: 7865
Modified:
MooseX-Types-Dependent/trunk/lib/MooseX/Meta/TypeConstraint/Dependent.pm
Log:
switch to ->check([arrayref]), its more to type but allows up to set a sane parent type
Modified: MooseX-Types-Dependent/trunk/lib/MooseX/Meta/TypeConstraint/Dependent.pm
===================================================================
--- MooseX-Types-Dependent/trunk/lib/MooseX/Meta/TypeConstraint/Dependent.pm 2009-03-29 17:18:24 UTC (rev 7864)
+++ MooseX-Types-Dependent/trunk/lib/MooseX/Meta/TypeConstraint/Dependent.pm 2009-03-29 17:35:20 UTC (rev 7865)
@@ -114,17 +114,8 @@
=cut
around 'check' => sub {
- my ($check, $self, $check_value, $constraining_value) = @_;
-
- unless($self->check_dependent($check_value)) {
- return;
- }
-
- unless($self->check_constraining($constraining_value)) {
- return;
- }
-
- return $self->$check($check_value, $constraining_value);
+ my ($check, $self, @args) = @_;
+ return $self->$check(@args);
};
=head2 generate_constraint_for ($type_constraints)
@@ -137,7 +128,18 @@
sub generate_constraint_for {
my ($self, $callback, $constraining) = @_;
return sub {
- my ($check_value, $constraining_value) = @_;
+ my ($dependent_pair) = @_;
+ my ($check_value, $constraining_value) = @$dependent_pair;
+
+ ## First need to test the bits
+ unless($self->check_dependent($check_value)) {
+ return;
+ }
+
+ unless($self->check_constraining($constraining_value)) {
+ return;
+ }
+
my $constraint_generator = $self->constraint_generator;
return $constraint_generator->(
$callback,
More information about the Moose-commits
mailing list