Interface Expression
- All Superinterfaces:
ComparableUnderEC, DeepCloneable<Expression>, Dumpable, DumpableWithPrecedence, HasByteCodeLoc, TypeUsageCollectable
- All Known Subinterfaces:
ConditionalExpression
- All Known Implementing Classes:
AbstractAssignmentExpression, AbstractConstructorInvokation, AbstractExpression, AbstractFunctionInvokation, AbstractFunctionInvokationExplicit, AbstractMemberFunctionInvokation, AbstractMutatingAssignmentExpression, AbstractNewArray, ArithmeticMonOperation, ArithmeticMutationOperation, ArithmeticOperation, ArithmeticPostMutationOperation, ArithmeticPreMutationOperation, ArrayIndex, ArrayLength, AssignmentExpression, BooleanExpression, BooleanOperation, CastExpression, CommentStatement.StatementExpression, ComparisonOperation, ConstructorInvokationAnonymousInner, ConstructorInvokationExplicit, ConstructorInvokationSimple, DynamicConstExpression, DynamicInvokation, InstanceOfExpression, InstanceOfExpressionDefining, LambdaExpression, LambdaExpressionFallback, LambdaExpressionNewArray, Literal, LiteralHex, LValueExpression, MemberFunctionInvokation, MemberFunctionInvokationExplicit, MethodHandlePlaceholder, NewAnonymousArray, NewObject, NewObjectArray, NewPrimitiveArray, NotOperation, StackValue, StaticFunctionInvokation, StaticFunctionInvokationExplicit, StructuredStatementExpression, SuperFunctionInvokation, SwitchExpression, TernaryExpression, WildcardMatch.AbstractBaseExpressionWildcard, WildcardMatch.AnyOneOfExpression, WildcardMatch.ArithmeticMutationWildcard, WildcardMatch.CastExpressionWildcard, WildcardMatch.ConditionalExpressionWildcard, WildcardMatch.ConstructorInvokationAnonymousInnerWildcard, WildcardMatch.ConstructorInvokationSimpleWildcard, WildcardMatch.ExpressionWildcard, WildcardMatch.MemberFunctionInvokationWildcard, WildcardMatch.NewArrayWildcard, WildcardMatch.StaticFunctionInvokationWildcard, WildcardMatch.SuperFunctionInvokationWildcard
public interface Expression
extends DumpableWithPrecedence, DeepCloneable<Expression>, ComparableUnderEC, TypeUsageCollectable, HasByteCodeLoc
-
Method Summary
Modifier and TypeMethodDescriptionapplyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) booleanbooleancanThrow(ExceptionCheck caught) voidcollectUsedLValues(LValueUsageCollector lValueUsageCollector) booleanequivalentUnder(Object o, EquivalenceConstraint constraint) getComputedLiteral(Map<LValue, Literal> display) booleanisSimple()booleanpushDown(Expression toPush, Expression parent) replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) <T> Tvisit(ExpressionVisitor<T> visitor) Methods inherited from interface DeepCloneable
deepClone, outerDeepCloneMethods inherited from interface DumpableWithPrecedence
dumpWithOuterPrecedence, getPrecedenceMethods inherited from interface HasByteCodeLoc
addLoc, getCombinedLoc, getLocMethods inherited from interface TypeUsageCollectable
collectTypeUsages
-
Method Details
-
replaceSingleUsageLValues
Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) -
applyExpressionRewriter
Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) -
applyReverseExpressionRewriter
Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) -
isSimple
boolean isSimple() -
collectUsedLValues
-
canPushDownInto
boolean canPushDownInto() -
pushDown
-
getInferredJavaType
InferredJavaType getInferredJavaType() -
equivalentUnder
- Specified by:
equivalentUnderin interfaceComparableUnderEC
-
canThrow
-
getComputedLiteral
-
isValidStatement
boolean isValidStatement() -
visit
-
dump
-