org.cojen.classfile.attribute
Class InnerClassesAttr

java.lang.Object
  extended by org.cojen.classfile.Attribute
      extended by org.cojen.classfile.attribute.InnerClassesAttr

public class InnerClassesAttr
extends Attribute

This class corresponds to the InnerClasses_attribute structure introduced in JDK1.1. It is not defined in the first edition of The Java Virual Machine Specification.

Author:
Brian S O'Neill

Nested Class Summary
static class InnerClassesAttr.Info
           
 
Field Summary
 
Fields inherited from class org.cojen.classfile.Attribute
CODE, CONSTANT_VALUE, DEPRECATED, ENCLOSING_METHOD, EXCEPTIONS, INNER_CLASSES, LINE_NUMBER_TABLE, LOCAL_VARIABLE_TABLE, RUNTIME_INVISIBLE_ANNOTATIONS, RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS, RUNTIME_VISIBLE_ANNOTATIONS, RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS, SIGNATURE, SOURCE_FILE, SYNTHETIC
 
Constructor Summary
InnerClassesAttr(ConstantPool cp)
           
InnerClassesAttr(ConstantPool cp, String name)
           
InnerClassesAttr(ConstantPool cp, String name, int length, DataInput din)
           
 
Method Summary
 void addInnerClass(String inner, String outer, String name, Modifiers modifiers)
           
 InnerClassesAttr.Info[] getInnerClassesInfo()
           
 int getLength()
          Returns the length (in bytes) of this attribute in the class file.
 void writeDataTo(DataOutput dout)
          Write just the attribute specific data.
 
Methods inherited from class org.cojen.classfile.Attribute
getAttributes, getConstantPool, getName, getNameConstant, readFrom, writeTo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InnerClassesAttr

public InnerClassesAttr(ConstantPool cp)

InnerClassesAttr

public InnerClassesAttr(ConstantPool cp,
                        String name)

InnerClassesAttr

public InnerClassesAttr(ConstantPool cp,
                        String name,
                        int length,
                        DataInput din)
                 throws IOException
Throws:
IOException
Method Detail

addInnerClass

public void addInnerClass(String inner,
                          String outer,
                          String name,
                          Modifiers modifiers)
Parameters:
inner - The full inner class name
outer - The full outer class name
name - The simple name of the inner class, or null if anonymous
modifiers - Modifiers for the inner class

getInnerClassesInfo

public InnerClassesAttr.Info[] getInnerClassesInfo()

getLength

public int getLength()
Description copied from class: Attribute
Returns the length (in bytes) of this attribute in the class file.

Specified by:
getLength in class Attribute

writeDataTo

public void writeDataTo(DataOutput dout)
                 throws IOException
Description copied from class: Attribute
Write just the attribute specific data. The default implementation writes nothing.

Overrides:
writeDataTo in class Attribute
Throws:
IOException


Copyright © 2004-2011 Brian S O'Neill. All Rights Reserved.