Class LiteralFolding
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.literal.LiteralFolding
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static DoublecomputeLiteral(double l, double r, ArithOp op) private static DoublecomputeLiteral(double l, ArithOp op) private static FloatcomputeLiteral(float l, float r, ArithOp op) private static FloatcomputeLiteral(float l, ArithOp op) private static IntegercomputeLiteral(int l, int r, ArithOp op) private static IntegercomputeLiteral(int l, ArithOp op) private static LongcomputeLiteral(long l, long r, ArithOp op) private static LongcomputeLiteral(long l, ArithOp op) private static TypedLiteralcomputeLiteral(RawJavaType type, TypedLiteral l, ArithOp op) private static TypedLiteralcomputeLiteral(RawJavaType type, TypedLiteral l, TypedLiteral r, ArithOp op) static LiteralfoldArithmetic(RawJavaType returnType, Literal l, ArithOp op) static LiteralfoldArithmetic(RawJavaType returnType, Literal l, Literal r, ArithOp op) Fold an arithmetic operations.static LiteralfoldCast(Literal val, RawJavaType returnType) private static TypedLiteralgetCast(TypedLiteral val, RawJavaType fromType, RawJavaType returnType) private static RawJavaType
-
Constructor Details
-
LiteralFolding
public LiteralFolding()
-
-
Method Details
-
foldArithmetic
Fold an arithmetic operations. Anything that may fail at runtime must return null. -
computeLiteral
private static TypedLiteral computeLiteral(RawJavaType type, TypedLiteral l, TypedLiteral r, ArithOp op) -
computeLiteral
-
computeLiteral
-
computeLiteral
-
computeLiteral
-
foldArithmetic
-
computeLiteral
-
computeLiteral
-
computeLiteral
-
computeLiteral
-
computeLiteral
-
foldCast
-
getCast
-
getRawType
-