1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.expreval.expr.literal;
22
23 import org.apache.expreval.expr.node.DoubleValue;
24 import org.apache.expreval.expr.node.GenericValue;
25
26 public class DoubleLiteral extends GenericLiteral<Double> implements DoubleValue {
27
28 public static GenericValue valueOf(final String value) {
29 final String upper = (value != null) ? value.toUpperCase() : "0";
30 return upper.endsWith("F") ? new FloatLiteral(upper) : new DoubleLiteral(upper);
31 }
32
33 public DoubleLiteral(final String value) {
34 super(Double.valueOf(value.endsWith("D") ? value.substring(0, value.length() - 1) : value));
35 }
36
37 public DoubleLiteral(final Double value) {
38 super(value);
39 }
40
41 protected Class<? extends GenericValue> getReturnType() {
42 return DoubleValue.class;
43 }
44 }