Package org.objectweb.asm

Examples of org.objectweb.asm.ClassWriter.visitEnd()


            methodVisitor.visitMaxs(0, 0);
            methodVisitor.visitEnd();
            // END public <type> <method>() { return helper.<method>(); }
        }

        visitor.visitEnd();

        byte[] bytecode = visitor.toByteArray();
        return (Class<T>) ReflectionUtil.invoke(type.getClassLoader(), "defineClass", new Object[]{
                typeName, bytecode, 0, bytecode.length
        });
View Full Code Here


        methodVisitor.visitInsn(Opcodes.ARETURN);
        methodVisitor.visitMaxs(0, 0);
        methodVisitor.visitEnd();

        visitor.visitEnd();

        byte[] bytecode = visitor.toByteArray();
        return (Class<T>) ReflectionUtil.invoke(type.getClassLoader(), "defineClass", new Object[]{
                typeName, bytecode, 0, bytecode.length
        });
View Full Code Here

        // finish class initializer
        clazzInit.returnValue();
        clazzInit.endMethod();

        // end class
        cw.visitEnd();

        byte[] data = cw.toByteArray();

        /*
         * try { FileOutputStream o = new
View Full Code Here

        method.start();
        method.aload(1);
        method.athrow();
        method.end();
       
        cw.visitEnd();
       
        byte[] bytecode = cw.toByteArray();
       
        try {
            FileOutputStream fos = new FileOutputStream(classpath);
View Full Code Here

        // end setup method
        setupMethod.voidreturn();
        setupMethod.end();
       
        // end class
        cw.visitEnd();
       
        // create the class
        byte[] bytes = cw.toByteArray();
        Class newClass = ruby.getJRubyClassLoader().defineClass(name, cw.toByteArray());
       
View Full Code Here

        // end setup method
        setupMethod.voidreturn();
        setupMethod.end();
       
        // end class
        cw.visitEnd();
       
        // create the class
        byte[] bytes = cw.toByteArray();
        Class newClass;
        synchronized (ruby.getJRubyClassLoader()) {
View Full Code Here

            if ((methods[i].getModifiers() & (Modifier.STATIC | Modifier.FINAL)) == 0) {
                generateDelegator(cw, methods[i], className, internalClassName);
            }
        }       
       
        cw.visitEnd();
       
        return cw.toByteArray();
       
    }
View Full Code Here

        mv.visitMaxs(1, 1);
        mv.visitEnd();

        make_cast_method(cw, arity);

        cw.visitEnd();

        byte[] data = cw.toByteArray();
        return data;
    }
View Full Code Here

            //CompilerVisitor.make_invoketail_method(cw, self_type, arity, 0);
            make_invoke_method(cw, self_type, arity);
            make_go_method(cw, self_type, arity);
            make_encode_method(cw, self_type, arity);

            cw.visitEnd();
            byte[] data = cw.toByteArray();

            data = weave(data);

            Class<? extends EFun> clazz = ERT.defineClass(loader, self_type.replace('/', '.'), data);
View Full Code Here

        mv.visitMaxs(3, 3);
        mv.visitEnd();

        make_encode_method_for_exported(cw, self_type, arity);

        cw.visitEnd();

        byte[] data = cw.toByteArray();
        return data;
    }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.