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 org.benf.cfr.reader.bytecode.analysis.parse.rewriters.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
-