You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2018/03/01 07:06:45 UTC

groovy git commit: Cleanup code of `StaticTypesLambdaWriter`

Repository: groovy
Updated Branches:
  refs/heads/master bfa17ba0f -> fd979347e


Cleanup code of `StaticTypesLambdaWriter`


Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/fd979347
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/fd979347
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/fd979347

Branch: refs/heads/master
Commit: fd979347ec666fe0d12bbc92ad2b363f51555eeb
Parents: bfa17ba
Author: sunlan <su...@apache.org>
Authored: Thu Mar 1 15:06:07 2018 +0800
Committer: sunlan <su...@apache.org>
Committed: Thu Mar 1 15:06:07 2018 +0800

----------------------------------------------------------------------
 .../classgen/asm/sc/StaticTypesLambdaWriter.java     | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/groovy/blob/fd979347/src/main/java/org/codehaus/groovy/classgen/asm/sc/StaticTypesLambdaWriter.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/codehaus/groovy/classgen/asm/sc/StaticTypesLambdaWriter.java b/src/main/java/org/codehaus/groovy/classgen/asm/sc/StaticTypesLambdaWriter.java
index 7f3b345..d9453ae 100644
--- a/src/main/java/org/codehaus/groovy/classgen/asm/sc/StaticTypesLambdaWriter.java
+++ b/src/main/java/org/codehaus/groovy/classgen/asm/sc/StaticTypesLambdaWriter.java
@@ -34,7 +34,6 @@ import org.codehaus.groovy.ast.expr.LambdaExpression;
 import org.codehaus.groovy.ast.expr.MethodCallExpression;
 import org.codehaus.groovy.ast.expr.VariableExpression;
 import org.codehaus.groovy.classgen.asm.BytecodeHelper;
-import org.codehaus.groovy.classgen.asm.BytecodeVariable;
 import org.codehaus.groovy.classgen.asm.CompileStack;
 import org.codehaus.groovy.classgen.asm.LambdaWriter;
 import org.codehaus.groovy.classgen.asm.OperandStack;
@@ -73,9 +72,8 @@ public class StaticTypesLambdaWriter extends LambdaWriter {
     private static final String LAMBDA_SHARED_VARIABLES = "__LAMBDA_SHARED_VARIABLES";
     private static final String ENCLOSING_THIS = "__enclosing_this";
     private static final String LAMBDA_THIS = "__lambda_this";
-    public static final String INIT = "<init>";
-    public static final String IS_GENERATED_CONSTRUCTOR = "__IS_GENERATED_CONSTRUCTOR";
-    public static final String LAMBDA_WRAPPER = "__lambda_wrapper";
+    private static final String INIT = "<init>";
+    private static final String IS_GENERATED_CONSTRUCTOR = "__IS_GENERATED_CONSTRUCTOR";
     private StaticTypesClosureWriter staticTypesClosureWriter;
     private WriterController controller;
     private WriterControllerFactory factory;
@@ -190,7 +188,7 @@ public class StaticTypesLambdaWriter extends LambdaWriter {
         }
     }
 
-    private BytecodeVariable newGroovyLambdaWrapperAndLoad(ClassNode lambdaWrapperClassNode, MethodNode syntheticLambdaMethodNode) {
+    private void newGroovyLambdaWrapperAndLoad(ClassNode lambdaWrapperClassNode, MethodNode syntheticLambdaMethodNode) {
         MethodVisitor mv = controller.getMethodVisitor();
         String lambdaWrapperClassInternalName = BytecodeHelper.getClassInternalName(lambdaWrapperClassNode);
         mv.visitTypeInsn(NEW, lambdaWrapperClassInternalName);
@@ -215,13 +213,6 @@ public class StaticTypesLambdaWriter extends LambdaWriter {
         mv.visitMethodInsn(INVOKESPECIAL, lambdaWrapperClassInternalName, INIT, BytecodeHelper.getMethodDescriptor(ClassHelper.VOID_TYPE, lambdaWrapperClassConstructorParameters), lambdaWrapperClassNode.isInterface());
         OperandStack operandStack = controller.getOperandStack();
         operandStack.replace(ClassHelper.CLOSURE_TYPE, lambdaWrapperClassConstructorParameters.length);
-
-        BytecodeVariable variable = controller.getCompileStack().defineVariable(new VariableExpression(LAMBDA_WRAPPER, ClassHelper.CLOSURE_TYPE), false);
-        operandStack.storeVar(variable);
-
-        operandStack.loadOrStoreVariable(variable, false);
-
-        return variable;
     }
 
     private Parameter[] loadSharedVariables(MethodNode syntheticLambdaMethodNode) {