BytecodeVariable answer; ClassNode type = para.getType(); if (para.isClosureSharedVariable()) { boolean useExistingReference = para.getNodeMetaData(ClosureWriter.UseExistingReference.class) != null; answer = defineVar(name, para.getOriginType(), true, useExistingReference);
private void defineMethodVariables(Parameter[] paras,boolean isInStaticContext) { Label startLabel = new Label(); thisStartLabel = startLabel; mv.visitLabel(startLabel); makeLocalVariablesOffset(paras,isInStaticContext); boolean hasHolder = false; for (int i = 0; i < paras.length; i++) { String name = paras[i].getName(); Variable answer; ClassNode type = paras[i].getType(); if (paras[i].isClosureSharedVariable()) { answer = defineVar(name, type, true); helper.load(type,currentVariableIndex); helper.box(type); createReference(answer); hasHolder = true; } else { answer = defineVar(name,type,false); } answer.setStartLabel(startLabel); stackVariables.put(name, answer); } if (hasHolder) { nextVariableIndex = localVariableOffset; } }
private void defineMethodVariables(Parameter[] paras,boolean isInStaticContext) { Label startLabel = new Label(); thisStartLabel = startLabel; mv.visitLabel(startLabel); makeLocalVariablesOffset(paras,isInStaticContext); boolean hasHolder = false; for (int i = 0; i < paras.length; i++) { String name = paras[i].getName(); Variable answer; ClassNode type = paras[i].getType(); if (paras[i].isClosureSharedVariable()) { answer = defineVar(name, type, true); helper.load(type,currentVariableIndex); helper.box(type); createReference(answer); hasHolder = true; } else { answer = defineVar(name,type,false); } answer.setStartLabel(startLabel); stackVariables.put(name, answer); } if (hasHolder) { nextVariableIndex = localVariableOffset; } }
private void defineMethodVariables(Parameter[] paras,boolean isInStaticContext) { Label startLabel = new Label(); thisStartLabel = startLabel; mv.visitLabel(startLabel); makeLocalVariablesOffset(paras,isInStaticContext); boolean hasHolder = false; for (int i = 0; i < paras.length; i++) { String name = paras[i].getName(); Variable answer; ClassNode type = paras[i].getType(); if (paras[i].isClosureSharedVariable()) { answer = defineVar(name, type, true); helper.load(type,currentVariableIndex); helper.box(type); createReference(answer); hasHolder = true; } else { answer = defineVar(name,type,false); } answer.setStartLabel(startLabel); stackVariables.put(name, answer); } if (hasHolder) { nextVariableIndex = localVariableOffset; } }
BytecodeVariable answer; ClassNode type = paras[i].getType(); if (paras[i].isClosureSharedVariable()) { boolean useExistingReference = paras[i].getNodeMetaData(ClosureWriter.UseExistingReference.class) != null; answer = defineVar(name, paras[i].getOriginType(), true, useExistingReference);