예제 #1
0
  @Override
  public Value evaluate(Scope scope, Object left) throws Exception { // this is rubbish
    Value reference = evaluation.evaluate(scope, left);
    Number number = reference.getNumber();
    NumericConverter converter = NumericConverter.resolveConverter(number);
    Value value = converter.increment(number);
    Number result = value.getNumber();

    reference.setValue(result);

    return ValueType.getTransient(number);
  }
예제 #2
0
 @Override
 public Value convert(Number reference) {
   Short value = reference.shortValue();
   return ValueType.getTransient(value);
 }
예제 #3
0
 @Override
 public Value decrement(Number reference) {
   Short value = reference.shortValue();
   return ValueType.getTransient(value - 1);
 }
예제 #4
0
 @Override
 public Value convert(Number reference) {
   Double value = reference.doubleValue();
   return ValueType.getTransient(value);
 }
예제 #5
0
 @Override
 public Value decrement(Number reference) {
   Integer value = reference.intValue();
   return ValueType.getTransient(value - 1);
 }
예제 #6
0
 @Override
 public Value decrement(Number reference) {
   Float value = reference.floatValue();
   return ValueType.getTransient(value - 1.0f);
 }
예제 #7
0
 @Override
 public Value decrement(Number reference) {
   Long value = reference.longValue();
   return ValueType.getTransient(value - 1L);
 }
예제 #8
0
 @Override
 public Value convert(Number reference) {
   Long value = reference.longValue();
   return ValueType.getTransient(value);
 }
예제 #9
0
 @Override
 public Value decrement(Number reference) {
   Double value = reference.doubleValue();
   return ValueType.getTransient(value - 1.0d);
 }
예제 #10
0
 @Override
 public Value decrement(Number reference) {
   Byte value = reference.byteValue();
   return ValueType.getTransient(value - 1);
 }