public class Literal extends AbstractExpression
Modifier and Type | Field and Description |
---|---|
static Literal |
DOUBLE_MINUS_ONE |
static Literal |
DOUBLE_ONE |
static Literal |
DOUBLE_ZERO |
static Literal |
FALSE |
static Literal |
FLOAT_MINUS_ONE |
static Literal |
FLOAT_ONE |
static Literal |
FLOAT_ZERO |
static Literal |
INT_ONE |
static Literal |
INT_ZERO |
private static Literal |
LONG_ONE |
static Literal |
MINUS_ONE |
static Literal |
NULL |
static Literal |
TRUE |
protected TypedLiteral |
value |
Constructor and Description |
---|
Literal(TypedLiteral value) |
addLoc, canPushDownInto, dump, dumpWithOuterPrecedence, getInferredJavaType, getLoc, isValidStatement, outerDeepClone, pushDown, toString
public static final Literal FALSE
public static final Literal TRUE
public static final Literal MINUS_ONE
public static final Literal NULL
public static final Literal INT_ZERO
public static final Literal INT_ONE
private static final Literal LONG_ONE
public static final Literal DOUBLE_ZERO
public static final Literal DOUBLE_ONE
public static final Literal DOUBLE_MINUS_ONE
public static final Literal FLOAT_ZERO
public static final Literal FLOAT_ONE
public static final Literal FLOAT_MINUS_ONE
protected final TypedLiteral value
public Literal(TypedLiteral value)
public BytecodeLoc getCombinedLoc()
public static Expression getLiteralOrNull(RawJavaType rawCastType, InferredJavaType inferredCastType, int intValue)
public Precedence getPrecedence()
getPrecedence
in interface DumpableWithPrecedence
getPrecedence
in class AbstractExpression
public Dumper dumpInner(Dumper d)
dumpInner
in class AbstractExpression
public void collectTypeUsages(TypeUsageCollector collector)
collectTypeUsages
in interface TypeUsageCollectable
collectTypeUsages
in class AbstractExpression
public boolean isSimple()
isSimple
in interface Expression
isSimple
in class AbstractExpression
public Expression deepClone(CloneHelper cloneHelper)
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer)
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags)
public <T> T visit(ExpressionVisitor<T> visitor)
visit
in interface Expression
visit
in class AbstractExpression
public void collectUsedLValues(LValueUsageCollector lValueUsageCollector)
public Expression appropriatelyCasted(InferredJavaType expected)
public TypedLiteral getValue()
public boolean canThrow(ExceptionCheck caught)
canThrow
in interface Expression
canThrow
in class AbstractExpression
public boolean equals(java.lang.Object o)
equals
in class AbstractExpression
public boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
public Literal getComputedLiteral(java.util.Map<LValue,Literal> display)
getComputedLiteral
in interface Expression
getComputedLiteral
in class AbstractExpression
public static boolean equalsAnyOne(Expression expression)