private void generateObjectLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitObjectLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateObjectLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitObjectLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateObjectLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitObjectLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateArrayLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitArrayLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateArrayLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitArrayLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateArrayLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitArrayLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateArrayLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitArrayLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
private void generateObjectLiteralFactory(Node node, int count) { String methodName = codegen.getBodyMethodName(scriptOrFn) + "_literal" + count; initBodyGeneration(); argsLocal = firstFreeLocal++; localsMax = firstFreeLocal; cfw.startMethod(methodName, "(Lorg/mozilla/javascript/Context;" +"Lorg/mozilla/javascript/Scriptable;" +"Lorg/mozilla/javascript/Scriptable;" +"[Ljava/lang/Object;" +")Lorg/mozilla/javascript/Scriptable;", ACC_PRIVATE); visitObjectLiteral(node, node.getFirstChild(), true); cfw.add(ByteCode.ARETURN); cfw.stopMethod((short)(localsMax + 1)); }
"Ljava/lang/Object;" + "Ljava/lang/Object;I)Ljava/lang/Object;"; cfw.startMethod(codegen.getBodyMethodName(scriptOrFn) + "_gen", type, (short)(ClassFileWriter.ACC_STATIC | ClassFileWriter.ACC_PRIVATE)); } else { cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ClassFileWriter.ACC_STATIC
void generateBodyCode() { initBodyGeneration(); cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ClassFileWriter.ACC_STATIC | ClassFileWriter.ACC_PRIVATE)); generatePrologue(); Node treeTop; if (fnCurrent != null) { treeTop = scriptOrFn.getLastChild(); } else { treeTop = scriptOrFn; } generateStatement(treeTop); generateEpilogue(); cfw.stopMethod((short)(localsMax + 1)); }
"Ljava/lang/Object;" + "Ljava/lang/Object;I)Ljava/lang/Object;"; cfw.startMethod(codegen.getBodyMethodName(scriptOrFn) + "_gen", type, (short)(ACC_STATIC | ACC_PRIVATE)); } else { cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ACC_STATIC | ACC_PRIVATE));
"Ljava/lang/Object;" + "Ljava/lang/Object;I)Ljava/lang/Object;"; cfw.startMethod(codegen.getBodyMethodName(scriptOrFn) + "_gen", type, (short)(ACC_STATIC | ACC_PRIVATE)); } else { cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ACC_STATIC | ACC_PRIVATE));
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(n) + "_gen", type); cfw.add(ByteCode.ARETURN);
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(n) + "_gen", type); cfw.add(ByteCode.ARETURN);
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(n) + "_gen", type); cfw.add(ByteCode.ARETURN);
private void generateGenerator() cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ACC_STATIC | ACC_PRIVATE));
private void generateGenerator() cfw.startMethod(codegen.getBodyMethodName(scriptOrFn), codegen.getBodyMethodSignature(scriptOrFn), (short)(ACC_STATIC | ACC_PRIVATE));
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(ofn.fnode), getBodyMethodSignature(ofn.fnode)); int exitLabel = cfw.acquireLabel();
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(ofn.fnode), getBodyMethodSignature(ofn.fnode)); int exitLabel = cfw.acquireLabel();
cfw.addInvoke(ByteCode.INVOKESTATIC, mainClassName, getBodyMethodName(ofn.fnode), getBodyMethodSignature(ofn.fnode)); int exitLabel = cfw.acquireLabel();