Log Message:
-----------
Allow object classes to override their own precedence values.
Modified Files:
--------------
pg/lib:
Value.pm
Revision Data
-------------
Index: Value.pm
===================================================================
RCS file: /webwork/cvs/system/pg/lib/Value.pm,v
retrieving revision 1.89
retrieving revision 1.90
diff -Llib/Value.pm -Llib/Value.pm -u -r1.89 -r1.90
--- lib/Value.pm
+++ lib/Value.pm
@@ -669,11 +669,12 @@
sub promotePrecedence {
my $self = shift; my $other = shift; my $context = $self->context;
return 0 unless Value::isValue($other);
- my $sprec = $context->{precedence}{class($self)};
- my $oprec = $context->{precedence}{class($other)};
+ my $sprec = $self->precedence; my $oprec = $other->precedence;
return (defined($sprec) && defined($oprec) && $sprec < $oprec);
}
+sub precedence {my $self = shift; return $self->context->{precedence}{$self->class}}
+
sub promote {
my $self = shift; my $class = ref($self) || $self;
my $context = (Value::isContext($_[0]) ? shift : $self->context);
|