com.jasml.decompiler
Class JavaClassParser

java.lang.Object
  extended bycom.jasml.decompiler.JavaClassParser

public class JavaClassParser
extends java.lang.Object


Field Summary
(package private)  short access_flags
           
(package private)  Attribute[] attributes
           
(package private)  int attributes_count
           
(package private)  short constant_Pool_Count
           
(package private)  ConstantPool constantPool
           
(package private)  Field[] fields
           
(package private)  int fields_count
           
(package private)  java.io.DataInputStream in
           
(package private)  int[] interfaces
           
(package private)  int interfaces_count
           
(package private)  int magic
           
(package private)  int major_Version
           
(package private)  Method[] methods
           
(package private)  int methods_count
           
(package private)  int minor_Version
           
(package private)  int super_class
           
(package private)  int this_class
           
 
Constructor Summary
JavaClassParser()
           
 
Method Summary
 JavaClass parseClass(java.io.File classFile)
           
private  Attribute_Code.Opcode[] parseOpcodes(byte[] bytes)
           
private static void prt(java.lang.Object s)
           
private  void readAccess_flags()
           
private  Attribute readAttribute(java.io.DataInputStream in)
           
private  void readAttributes()
           
private  void readConstant_Pool_Count()
           
private  void readConstantPool()
           
private  Attribute_Code.ExceptionTableItem readExceptionTableItem(java.io.DataInputStream in)
           
private  Field readField(java.io.DataInputStream in)
           
private  void readFields()
           
private  Attribute_InnerClasses.InnerClass readInnerClass(java.io.DataInputStream in)
           
private  void readInterfaces()
           
private  Attribute_LineNumberTable.LineNumber readLineNumber(java.io.DataInputStream in)
           
private  Attribute_LocalVariableTable.LocalVariable readLocalVariable(java.io.DataInputStream in)
           
private  void readMagic()
           
private  Method readMethod(java.io.DataInputStream in)
           
private  void readMethods()
           
private  void readSuper_class()
           
private  void readThis_class()
           
private  void readVersion()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

in

java.io.DataInputStream in

magic

int magic

minor_Version

int minor_Version

major_Version

int major_Version

constant_Pool_Count

short constant_Pool_Count

constantPool

ConstantPool constantPool

access_flags

short access_flags

this_class

int this_class

super_class

int super_class

interfaces_count

int interfaces_count

interfaces

int[] interfaces

fields_count

int fields_count

fields

Field[] fields

methods_count

int methods_count

methods

Method[] methods

attributes_count

int attributes_count

attributes

Attribute[] attributes
Constructor Detail

JavaClassParser

public JavaClassParser()
Method Detail

parseClass

public JavaClass parseClass(java.io.File classFile)
                     throws java.io.IOException
Throws:
java.io.IOException

readMagic

private void readMagic()
                throws java.io.IOException
Throws:
java.io.IOException

readVersion

private void readVersion()
                  throws java.io.IOException
Throws:
java.io.IOException

readConstant_Pool_Count

private void readConstant_Pool_Count()
                              throws java.io.IOException
Throws:
java.io.IOException

readConstantPool

private void readConstantPool()
                       throws java.io.IOException
Throws:
java.io.IOException

readAccess_flags

private void readAccess_flags()
                       throws java.io.IOException
Throws:
java.io.IOException

readThis_class

private void readThis_class()
                     throws java.io.IOException
Throws:
java.io.IOException

readSuper_class

private void readSuper_class()
                      throws java.io.IOException
Throws:
java.io.IOException

readInterfaces

private void readInterfaces()
                     throws java.io.IOException
Throws:
java.io.IOException

readFields

private void readFields()
                 throws java.io.IOException
Throws:
java.io.IOException

readMethods

private void readMethods()
                  throws java.io.IOException
Throws:
java.io.IOException

readAttributes

private void readAttributes()
                     throws java.io.IOException
Throws:
java.io.IOException

readField

private Field readField(java.io.DataInputStream in)
                 throws java.io.IOException
Throws:
java.io.IOException

readMethod

private Method readMethod(java.io.DataInputStream in)
                   throws java.io.IOException
Throws:
java.io.IOException

readAttribute

private Attribute readAttribute(java.io.DataInputStream in)
                         throws java.io.IOException
Throws:
java.io.IOException

readExceptionTableItem

private Attribute_Code.ExceptionTableItem readExceptionTableItem(java.io.DataInputStream in)
                                                          throws java.io.IOException
Throws:
java.io.IOException

readInnerClass

private Attribute_InnerClasses.InnerClass readInnerClass(java.io.DataInputStream in)
                                                  throws java.io.IOException
Throws:
java.io.IOException

readLineNumber

private Attribute_LineNumberTable.LineNumber readLineNumber(java.io.DataInputStream in)
                                                     throws java.io.IOException
Throws:
java.io.IOException

readLocalVariable

private Attribute_LocalVariableTable.LocalVariable readLocalVariable(java.io.DataInputStream in)
                                                              throws java.io.IOException
Throws:
java.io.IOException

parseOpcodes

private Attribute_Code.Opcode[] parseOpcodes(byte[] bytes)

prt

private static void prt(java.lang.Object s)