org.apache.tomcat.util.bcel.classfile

## Class ClassParser

- java.lang.Object
- - org.apache.tomcat.util.bcel.classfile.ClassParser

    public final class ClassParser
    extends Object

Wrapper class that parses a given Java .class file. The method parse returns a JavaClass object on success. When an I/O error or an inconsistency occurs an appropiate exception is propagated back to the caller. The structure and the names comply, except for a few conveniences, exactly with the JVM specification 1.0. See this paper for further details about the structure of a bytecode file.

Author:
  M. Dahm

### Constructor Summary

Constructors
Constructor and Description
`ClassParser(InputStream file, String file_name)` Parse class from the given stream.

### Method Summary

Methods
`JavaClass` `parse()` Parse the given Java class file and return an object that represents the contained data, i.e., constants, methods, fields and commands.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ClassParser

    public ClassParser(InputStream file,
               String file_name)

Parse class from the given stream.

Parameters:
  `file` - Input stream
  `file_name` - File name

### Method Detail

#### parse

    public JavaClass parse()
                    throws IOException,
                           ClassFormatException

Parse the given Java class file and return an object that represents the contained data, i.e., constants, methods, fields and commands. A ClassFormatException is raised, if the file is not a valid .class file. (This does not include verification of the byte code as it is performed by the java interpreter).

Returns:
  Class object representing the parsed class file
Throws:
  `IOException`
  `ClassFormatException`