Class RetroLambdaRewriter
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.rewriters.AbstractExpressionRewriter
org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.RetroLambdaRewriter
- All Implemented Interfaces:
ExpressionRewriter
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Stringprivate static final Stringprivate final ClassFileprivate final DCCommonState -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate StaticFunctionInvokationprivate Expressionprivate ExpressiongetFullLambdaBody(Method mainLambdaIndirect) private MethodgetMainLambdaIndirect(StaticFunctionInvokation m2callReal) static voidrewrite(ClassFile classFile, DCCommonState state) private static voidrewrite(Method m, ClassFile classFile, DCCommonState state) rewriteExpression(Expression expression, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) Methods inherited from class AbstractExpressionRewriter
handleStatement, rewriteExpression, rewriteExpression, rewriteExpression
-
Field Details
-
state
-
mainClazz
-
lambdaFactoryLabel
- See Also:
-
getLambdaName
- See Also:
-
-
Constructor Details
-
RetroLambdaRewriter
-
-
Method Details
-
rewrite
-
rewrite
-
rewriteExpression
public Expression rewriteExpression(Expression expression, SSAIdentifiers ssaIdentifiers, StatementContainer statementContainer, ExpressionRewriterFlags flags) - Specified by:
rewriteExpressionin interfaceExpressionRewriter- Overrides:
rewriteExpressionin classAbstractExpressionRewriter
-
considerCandidateInvokation
-
check3
-
getFullLambdaBody
-
getMainLambdaIndirect
-