com.sun.tools.javap
Class AttributeWriter

java.lang.Object
  extended by com.sun.tools.javap.BasicWriter
      extended by com.sun.tools.javap.AttributeWriter
All Implemented Interfaces:
Attribute.Visitor<java.lang.Void,java.lang.Void>

public class AttributeWriter
extends BasicWriter
implements Attribute.Visitor<java.lang.Void,java.lang.Void>


Nested Class Summary
(package private)  class AttributeWriter.StackMapTableWriter
           
 
Field Summary
private  AnnotationWriter annotationWriter
           
private  CodeWriter codeWriter
           
private  ConstantPool constant_pool
           
private  ConstantWriter constantWriter
           
private  Options options
           
private  java.lang.Object owner
           
 
Constructor Summary
protected AttributeWriter(Context context)
           
 
Method Summary
(package private)  java.lang.String getExportTypeName(ModuleExportTable_attribute attr, int index)
           
(package private)  java.lang.String getInnerName(ConstantPool constant_pool, InnerClasses_attribute.Info info)
           
private  java.lang.String getJavaClassName(EnclosingMethod_attribute a)
           
private  java.lang.String getJavaException(Exceptions_attribute attr, int index)
           
(package private) static java.lang.String getJavaName(java.lang.String name)
           
private  java.lang.String getMethodName(EnclosingMethod_attribute a)
           
(package private)  java.lang.String getModuleName(Module_attribute attr)
           
(package private)  java.lang.String getPackageMemberName(ModuleMemberTable_attribute attr, int index)
           
(package private)  java.lang.String getSignature(Signature_attribute info)
           
private  java.lang.String getSourceFile(SourceFile_attribute attr)
           
(package private) static AttributeWriter instance(Context context)
           
(package private)  java.lang.String toHex(byte b, int w)
           
(package private) static java.lang.String toHex(int i)
           
(package private) static java.lang.String toHex(int i, int w)
           
 java.lang.Void visitAnnotationDefault(AnnotationDefault_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitCharacterRangeTable(CharacterRangeTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitCode(Code_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitCompilationID(CompilationID_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitConstantValue(ConstantValue_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitDefault(DefaultAttribute attr, java.lang.Void ignore)
           
 java.lang.Void visitDeprecated(Deprecated_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitEnclosingMethod(EnclosingMethod_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitExceptions(Exceptions_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitInnerClasses(InnerClasses_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitLineNumberTable(LineNumberTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitLocalVariableTable(LocalVariableTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitLocalVariableTypeTable(LocalVariableTypeTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitModule(Module_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitModuleExportTable(ModuleExportTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitModuleMemberTable(ModuleMemberTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitRuntimeInvisibleAnnotations(RuntimeInvisibleAnnotations_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitRuntimeInvisibleParameterAnnotations(RuntimeInvisibleParameterAnnotations_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitRuntimeVisibleParameterAnnotations(RuntimeVisibleParameterAnnotations_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitSignature(Signature_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitSourceDebugExtension(SourceDebugExtension_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitSourceFile(SourceFile_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitSourceID(SourceID_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitStackMap(StackMap_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitStackMapTable(StackMapTable_attribute attr, java.lang.Void ignore)
           
 java.lang.Void visitSynthetic(Synthetic_attribute attr, java.lang.Void ignore)
           
 void write(java.lang.Object owner, Attribute attr, ConstantPool constant_pool)
           
 void write(java.lang.Object owner, Attributes attrs, ConstantPool constant_pool)
           
private  void writeInnerClassHeader()
           
 
Methods inherited from class com.sun.tools.javap.BasicWriter
print, print, println, println, println, report, report, report, report
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

annotationWriter

private AnnotationWriter annotationWriter

codeWriter

private CodeWriter codeWriter

constantWriter

private ConstantWriter constantWriter

options

private Options options

constant_pool

private ConstantPool constant_pool

owner

private java.lang.Object owner
Constructor Detail

AttributeWriter

protected AttributeWriter(Context context)
Method Detail

instance

static AttributeWriter instance(Context context)

write

public void write(java.lang.Object owner,
                  Attribute attr,
                  ConstantPool constant_pool)

write

public void write(java.lang.Object owner,
                  Attributes attrs,
                  ConstantPool constant_pool)

visitDefault

public java.lang.Void visitDefault(DefaultAttribute attr,
                                   java.lang.Void ignore)
Specified by:
visitDefault in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitAnnotationDefault

public java.lang.Void visitAnnotationDefault(AnnotationDefault_attribute attr,
                                             java.lang.Void ignore)
Specified by:
visitAnnotationDefault in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitCharacterRangeTable

public java.lang.Void visitCharacterRangeTable(CharacterRangeTable_attribute attr,
                                               java.lang.Void ignore)
Specified by:
visitCharacterRangeTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitCode

public java.lang.Void visitCode(Code_attribute attr,
                                java.lang.Void ignore)
Specified by:
visitCode in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitCompilationID

public java.lang.Void visitCompilationID(CompilationID_attribute attr,
                                         java.lang.Void ignore)
Specified by:
visitCompilationID in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitConstantValue

public java.lang.Void visitConstantValue(ConstantValue_attribute attr,
                                         java.lang.Void ignore)
Specified by:
visitConstantValue in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitDeprecated

public java.lang.Void visitDeprecated(Deprecated_attribute attr,
                                      java.lang.Void ignore)
Specified by:
visitDeprecated in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitEnclosingMethod

public java.lang.Void visitEnclosingMethod(EnclosingMethod_attribute attr,
                                           java.lang.Void ignore)
Specified by:
visitEnclosingMethod in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getJavaClassName

private java.lang.String getJavaClassName(EnclosingMethod_attribute a)

getMethodName

private java.lang.String getMethodName(EnclosingMethod_attribute a)

visitExceptions

public java.lang.Void visitExceptions(Exceptions_attribute attr,
                                      java.lang.Void ignore)
Specified by:
visitExceptions in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getJavaException

private java.lang.String getJavaException(Exceptions_attribute attr,
                                          int index)

visitInnerClasses

public java.lang.Void visitInnerClasses(InnerClasses_attribute attr,
                                        java.lang.Void ignore)
Specified by:
visitInnerClasses in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getInnerName

java.lang.String getInnerName(ConstantPool constant_pool,
                              InnerClasses_attribute.Info info)

writeInnerClassHeader

private void writeInnerClassHeader()

visitLineNumberTable

public java.lang.Void visitLineNumberTable(LineNumberTable_attribute attr,
                                           java.lang.Void ignore)
Specified by:
visitLineNumberTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitLocalVariableTable

public java.lang.Void visitLocalVariableTable(LocalVariableTable_attribute attr,
                                              java.lang.Void ignore)
Specified by:
visitLocalVariableTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitLocalVariableTypeTable

public java.lang.Void visitLocalVariableTypeTable(LocalVariableTypeTable_attribute attr,
                                                  java.lang.Void ignore)
Specified by:
visitLocalVariableTypeTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitModule

public java.lang.Void visitModule(Module_attribute attr,
                                  java.lang.Void ignore)
Specified by:
visitModule in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getModuleName

java.lang.String getModuleName(Module_attribute attr)

visitModuleExportTable

public java.lang.Void visitModuleExportTable(ModuleExportTable_attribute attr,
                                             java.lang.Void ignore)
Specified by:
visitModuleExportTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getExportTypeName

java.lang.String getExportTypeName(ModuleExportTable_attribute attr,
                                   int index)

visitModuleMemberTable

public java.lang.Void visitModuleMemberTable(ModuleMemberTable_attribute attr,
                                             java.lang.Void ignore)
Specified by:
visitModuleMemberTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getPackageMemberName

java.lang.String getPackageMemberName(ModuleMemberTable_attribute attr,
                                      int index)

visitRuntimeVisibleAnnotations

public java.lang.Void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations_attribute attr,
                                                     java.lang.Void ignore)
Specified by:
visitRuntimeVisibleAnnotations in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitRuntimeInvisibleAnnotations

public java.lang.Void visitRuntimeInvisibleAnnotations(RuntimeInvisibleAnnotations_attribute attr,
                                                       java.lang.Void ignore)
Specified by:
visitRuntimeInvisibleAnnotations in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitRuntimeVisibleParameterAnnotations

public java.lang.Void visitRuntimeVisibleParameterAnnotations(RuntimeVisibleParameterAnnotations_attribute attr,
                                                              java.lang.Void ignore)
Specified by:
visitRuntimeVisibleParameterAnnotations in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitRuntimeInvisibleParameterAnnotations

public java.lang.Void visitRuntimeInvisibleParameterAnnotations(RuntimeInvisibleParameterAnnotations_attribute attr,
                                                                java.lang.Void ignore)
Specified by:
visitRuntimeInvisibleParameterAnnotations in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitSignature

public java.lang.Void visitSignature(Signature_attribute attr,
                                     java.lang.Void ignore)
Specified by:
visitSignature in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getSignature

java.lang.String getSignature(Signature_attribute info)

visitSourceDebugExtension

public java.lang.Void visitSourceDebugExtension(SourceDebugExtension_attribute attr,
                                                java.lang.Void ignore)
Specified by:
visitSourceDebugExtension in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitSourceFile

public java.lang.Void visitSourceFile(SourceFile_attribute attr,
                                      java.lang.Void ignore)
Specified by:
visitSourceFile in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getSourceFile

private java.lang.String getSourceFile(SourceFile_attribute attr)

visitSourceID

public java.lang.Void visitSourceID(SourceID_attribute attr,
                                    java.lang.Void ignore)
Specified by:
visitSourceID in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitStackMap

public java.lang.Void visitStackMap(StackMap_attribute attr,
                                    java.lang.Void ignore)
Specified by:
visitStackMap in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitStackMapTable

public java.lang.Void visitStackMapTable(StackMapTable_attribute attr,
                                         java.lang.Void ignore)
Specified by:
visitStackMapTable in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

visitSynthetic

public java.lang.Void visitSynthetic(Synthetic_attribute attr,
                                     java.lang.Void ignore)
Specified by:
visitSynthetic in interface Attribute.Visitor<java.lang.Void,java.lang.Void>

getJavaName

static java.lang.String getJavaName(java.lang.String name)

toHex

java.lang.String toHex(byte b,
                       int w)

toHex

static java.lang.String toHex(int i)

toHex

static java.lang.String toHex(int i,
                              int w)