Class BooleanExpression
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.expression.AbstractExpression
org.benf.cfr.reader.bytecode.analysis.parse.expression.BooleanExpression
- All Implemented Interfaces:
HasByteCodeLoc, Expression, ConditionalExpression, DeepCloneable<Expression>, ComparableUnderEC, Dumpable, DumpableWithPrecedence, TypeUsageCollectable
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ConditionalExpressionprivate Expressionstatic final ConditionalExpression -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddIfLValue(Expression expression, Set<LValue> res) applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) voidcollectTypeUsages(TypeUsageCollector collector) voidcollectUsedLValues(LValueUsageCollector lValueUsageCollector) deepClone(CloneHelper cloneHelper) booleanfinal booleanequivalentUnder(Object o, EquivalenceConstraint constraint) getComputedLiteral(Map<LValue, Literal> display) getDemorganApplied(boolean amNegating) getInner()intgetSize(Precedence outer) replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) simplify()Methods inherited from class AbstractExpression
addLoc, canPushDownInto, canThrow, dump, dumpWithOuterPrecedence, getInferredJavaType, getLoc, isSimple, isValidStatement, outerDeepClone, pushDown, toString, visitMethods inherited from class Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface DeepCloneable
outerDeepCloneMethods inherited from interface DumpableWithPrecedence
dumpWithOuterPrecedenceMethods inherited from interface Expression
canPushDownInto, canThrow, dump, getInferredJavaType, isSimple, isValidStatement, pushDown, visitMethods inherited from interface HasByteCodeLoc
addLoc, getLoc
-
Field Details
-
inner
-
TRUE
-
FALSE
-
-
Constructor Details
-
BooleanExpression
-
-
Method Details
-
getCombinedLoc
- Specified by:
getCombinedLocin interfaceHasByteCodeLoc
-
getSize
- Specified by:
getSizein interfaceConditionalExpression
-
getInner
-
collectTypeUsages
- Specified by:
collectTypeUsagesin interfaceTypeUsageCollectable- Overrides:
collectTypeUsagesin classAbstractExpression
-
deepClone
- Specified by:
deepClonein interfaceDeepCloneable<Expression>
-
replaceSingleUsageLValues
public Expression replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer) - Specified by:
replaceSingleUsageLValuesin interfaceExpression
-
applyExpressionRewriter
public Expression applyExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyExpressionRewriterin interfaceExpression
-
applyReverseExpressionRewriter
public Expression applyReverseExpressionRewriter(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
applyReverseExpressionRewriterin interfaceExpression
-
getPrecedence
- Specified by:
getPrecedencein interfaceDumpableWithPrecedence- Specified by:
getPrecedencein classAbstractExpression
-
dumpInner
- Specified by:
dumpInnerin classAbstractExpression
-
getNegated
- Specified by:
getNegatedin interfaceConditionalExpression
-
getDemorganApplied
- Specified by:
getDemorganAppliedin interfaceConditionalExpression
-
getRightDeep
- Specified by:
getRightDeepin interfaceConditionalExpression
-
addIfLValue
-
getLoopLValues
- Specified by:
getLoopLValuesin interfaceConditionalExpression
-
collectUsedLValues
- Specified by:
collectUsedLValuesin interfaceExpression
-
optimiseForType
- Specified by:
optimiseForTypein interfaceConditionalExpression
-
simplify
- Specified by:
simplifyin interfaceConditionalExpression
-
equals
- Specified by:
equalsin classAbstractExpression
-
equivalentUnder
- Specified by:
equivalentUnderin interfaceComparableUnderEC- Specified by:
equivalentUnderin interfaceExpression
-
getComputedLiteral
- Specified by:
getComputedLiteralin interfaceExpression- Overrides:
getComputedLiteralin classAbstractExpression
-