Package org.apache.harmony.unpack200.bytecode

Examples of org.apache.harmony.unpack200.bytecode.NewAttribute


     * @param index
     * @param elements
     * @return
     */
    private Attribute getOneAttribute(int index, List elements) {
        NewAttribute attribute = new NewAttribute(segment.getCpBands()
                .cpUTF8Value(attributeLayout.getName()),
                attributeLayout.getIndex());
        for(int i = 0; i < elements.size(); i++) {
            AttributeLayoutElement element = (AttributeLayoutElement) elements.get(i);
            element.addToAttribute(index, attribute);
View Full Code Here


     * @param index
     * @param elements
     * @return
     */
    private Attribute getOneAttribute(int index, List elements) {
        NewAttribute attribute = new NewAttribute(segment.getCpBands()
                .cpUTF8Value(attributeLayout.getName()),
                attributeLayout.getIndex());
        for(int i = 0; i < elements.size(); i++) {
            AttributeLayoutElement element = (AttributeLayoutElement) elements.get(i);
            element.addToAttribute(index, attribute);
View Full Code Here

     * @param index
     * @param elements
     * @return
     */
    private Attribute getOneAttribute(int index, List elements) {
        NewAttribute attribute = new NewAttribute(segment.getCpBands()
                .cpUTF8Value(attributeLayout.getName()),
                attributeLayout.getIndex());
        for(int i = 0; i < elements.size(); i++) {
            AttributeLayoutElement element = (AttributeLayoutElement) elements.get(i);
            element.addToAttribute(index, attribute);
View Full Code Here

     * @param index
     * @param elements
     * @return
     */
    private Attribute getOneAttribute(int index, List elements) {
        NewAttribute attribute = new NewAttribute(segment.getCpBands()
                .cpUTF8Value(attributeLayout.getName()),
                attributeLayout.getIndex());
        for(int i = 0; i < elements.size(); i++) {
            AttributeLayoutElement element = (AttributeLayoutElement) elements.get(i);
            element.addToAttribute(index, attribute);
View Full Code Here

     * @param index
     * @param elements
     * @return
     */
    private Attribute getOneAttribute(int index, List elements) {
        NewAttribute attribute = new NewAttribute(segment.getCpBands()
                .cpUTF8Value(attributeLayout.getName(),
                        ClassConstantPool.DOMAIN_ATTRIBUTEASCIIZ));
        for (Iterator iter = elements.iterator(); iter.hasNext();) {
            AttributeLayoutElement element = (AttributeLayoutElement) iter
                    .next();
View Full Code Here

            18, // ldc 2
            -49, // return 4
    };

    public void testLength() {
        OperandManager operandManager = new MockOperandManager();
        operandManager.setSegment(segment);
        operandManager.setCurrentClass("java/lang/Foo");

        MockCodeAttribute attribute = new MockCodeAttribute(3, // maxStack
                2, // maxLocals
                mixedByteArray, // codePacked
                segment, // segment
View Full Code Here

                null, null, null));
        assertEquals(37, attribute.getLength());
    }

    public void testMixedByteCodes() {
        OperandManager operandManager = new MockOperandManager();
        operandManager.setSegment(segment);
        operandManager.setCurrentClass("java/lang/Foo");

        CodeAttribute attribute = new CodeAttribute(3, // maxStack
                2, // maxLocals
                mixedByteArray, // codePacked
                segment, // segment
View Full Code Here

                    ((Integer) attribute.byteCodeOffsets.get(index)).intValue());
        }
    }

    public void testSingleByteCodes() {
        OperandManager operandManager = new MockOperandManager();
        operandManager.setSegment(segment);
        operandManager.setCurrentClass("java/lang/Foo");

        CodeAttribute attribute = new CodeAttribute(4, // maxStack
                3, // maxLocals
                singleByteArray, // codePacked
                segment, // segment
View Full Code Here

        // -1+1=0, so str.substring(0)
        // == str

        // Get the source file attribute
        ArrayList classAttributes = classBands.getClassAttributes()[classNum];
        SourceFileAttribute sourceFileAttribute = null;
        for (int index = 0; index < classAttributes.size(); index++) {
            if (((Attribute) classAttributes.get(index))
                    .isSourceFileAttribute()) {
                sourceFileAttribute = ((SourceFileAttribute) classAttributes
                        .get(index));
            }
        }

        if (sourceFileAttribute == null) {
            // If we don't have a source file attribute yet, we need
            // to infer it from the class.
            AttributeLayout SOURCE_FILE = attrDefinitionBands
                    .getAttributeDefinitionMap().getAttributeLayout(
                            AttributeLayout.ATTRIBUTE_SOURCE_FILE,
                            AttributeLayout.CONTEXT_CLASS);
            if (SOURCE_FILE.matches(classBands.getRawClassFlags()[classNum])) {
                int firstDollar = SegmentUtils.indexOfFirstDollar(fullName);
                String fileName = null;

                if (firstDollar > -1 && (i <= firstDollar)) {
                    fileName = fullName.substring(i, firstDollar) + ".java";
                } else {
                    fileName = fullName.substring(i) + ".java";
                }
                sourceFileAttribute = new SourceFileAttribute(cpBands
                        .cpUTF8Value(fileName, false));
                classFile.attributes = new Attribute[] { (Attribute) cp
                        .add(sourceFileAttribute) };
            } else {
                classFile.attributes = new Attribute[] {};
View Full Code Here

        assertFalse(unequal.equals(equal1));
        assertFalse(unequal.equals(equal2));
    }

    public void testSourceAttribute() {
        SourceFileAttribute sfa1 = new SourceFileAttribute(new CPUTF8(
                new String("Thing.java"), 1)); //$NON-NLS-1$
        SourceFileAttribute sfa2 = new SourceFileAttribute(new CPUTF8(
                new String("Thing.java"), 1)); //$NON-NLS-1$
        SourceFileAttribute sfa3 = new SourceFileAttribute(new CPUTF8(
                new String("OtherThing.java"), 2)); //$NON-NLS-1$
        checkEquality(sfa1, sfa2, "Thing.java", sfa3); //$NON-NLS-1$
    }
View Full Code Here

TOP

Related Classes of org.apache.harmony.unpack200.bytecode.NewAttribute

Copyright © 2018 www.massapicom. 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.