public void popmethod() { method().endMethod(); methodStack.pop(); } public ClassVisitor cls;
public IRBytecodeAdapter method() { return methodData().method; }
public void popmethod() { clsData().popmethod(); }
public void pushmethod(String name, IRScope scope, Signature signature, boolean specificArity) { clsData().pushmethod(name, scope, signature, specificArity); method().startMethod(); }
public void pushclass(String clsName) { PrintWriter pw = new PrintWriter(System.out); clsStack.push(new ClassData(clsName, new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS))); pw.flush(); }
public void pushmethod(String name, IRScope scope, Signature signature, boolean specificArity) { clsData().pushmethod(name, scope, signature, specificArity); method().startMethod(); }
public void pushclass(String clsName) { PrintWriter pw = new PrintWriter(System.out); clsStack.push(new ClassData(clsName, new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS))); pw.flush(); }
public void popmethod() { method().endMethod(); methodStack.pop(); } public ClassVisitor cls;
public IRBytecodeAdapter method() { return methodData().method; }
public void pushmethod(String name, int arity) { clsData().pushmethod(name, arity); method().startMethod(); // locals for ThreadContext and self methodData().local("$context", JVM.THREADCONTEXT_TYPE); methodData().local("$scope", JVM.STATICSCOPE_TYPE); methodData().local("$self");//, JVM.OBJECT_TYPE); for (int i = 0; i < arity; i++) { // incoming arguments methodData().local("$argument" + i); } methodData().local("$block", Type.getType(Block.class)); // TODO: this should go into the PushBinding instruction methodData().local("$dynamicScope"); }
public void popmethod() { clsData().popmethod(); }
public void pushscript(String clsName, String filename) { PrintWriter pw = new PrintWriter(System.out); writer = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS); clsStack.push(new ClassData(clsName, writer)); cls().visit(RubyInstanceConfig.JAVA_VERSION, ACC_PUBLIC + ACC_SUPER, clsName, null, p(Object.class), null); cls().visitSource(filename, null); pw.flush(); }
public void popmethod() { method().endMethod(); methodStack.pop(); }
public IRBytecodeAdapter method() { return methodData().method; }
public void pushmethod(String name, int arity) { clsData().pushmethod(name, arity); method().startMethod(); // locals for ThreadContext and self methodData().local("$context", JVM.THREADCONTEXT_TYPE); methodData().local("$scope", JVM.STATICSCOPE_TYPE); methodData().local("$self");//, JVM.OBJECT_TYPE); for (int i = 0; i < arity; i++) { // incoming arguments methodData().local("$argument" + i); } methodData().local("$block", Type.getType(Block.class)); // TODO: this should go into the PushBinding instruction methodData().local("$dynamicScope"); }
public void popmethod() { clsData().popmethod(); }
public void pushscript(String clsName, String filename) { PrintWriter pw = new PrintWriter(System.out); writer = new ClassWriter(ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS); clsStack.push(new ClassData(clsName, writer)); cls().visit(RubyInstanceConfig.JAVA_VERSION, ACC_PUBLIC + ACC_SUPER, clsName, null, p(Object.class), null); cls().visitSource(filename, null); pw.flush(); }
public IRBytecodeAdapter method() { return clsData().method(); }
public IRBytecodeAdapter method() { return methodData().method; }
public void popmethod() { clsData().popmethod(); }