Class ObjectTypeUsageRewriter
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.rewriters.AbstractExpressionRewriter
org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.transformers.ObjectTypeUsageRewriter
- All Implemented Interfaces:
StructuredStatementTransformer, ExpressionRewriter
public class ObjectTypeUsageRewriter
extends AbstractExpressionRewriter
implements StructuredStatementTransformer
Detect potential invalid usages of fields - where the class we expect to be calling them with doesn't
match the class needed to access the fields in question.
-
Constructor Summary
ConstructorsConstructorDescriptionObjectTypeUsageRewriter(AnonymousClassUsage anonymousClassUsage, ClassFile classFile) -
Method Summary
Modifier and TypeMethodDescriptionrewriteExpression(Expression expression, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) rewriteExpression(LValue lValue, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) voidtransform(StructuredStatement in, StructuredScope scope) Methods inherited from class AbstractExpressionRewriter
handleStatement, rewriteExpression, rewriteExpression
-
Constructor Details
-
ObjectTypeUsageRewriter
-
-
Method Details
-
transform
-
transform
- Specified by:
transformin interfaceStructuredStatementTransformer
-
rewriteExpression
public Expression rewriteExpression(Expression expression, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
rewriteExpressionin interfaceExpressionRewriter- Overrides:
rewriteExpressionin classAbstractExpressionRewriter
-
rewriteExpression
public LValue rewriteExpression(LValue lValue, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
rewriteExpressionin interfaceExpressionRewriter- Overrides:
rewriteExpressionin classAbstractExpressionRewriter
-