org.apache.xalan.xsltc.compiler.util

## Class ClassGenerator

- java.lang.Object
- - org.apache.bcel.classfile.AccessFlags
  - - org.apache.bcel.generic.ClassGen
    - - org.apache.xalan.xsltc.compiler.util.ClassGenerator

All Implemented Interfaces:
  java.lang.Cloneable

Direct Known Subclasses:
  FilterGenerator, NodeCounterGenerator, NodeSortRecordFactGenerator, NodeSortRecordGenerator

    public class ClassGenerator
    extends org.apache.bcel.generic.ClassGen

The class that implements any class that inherits from `AbstractTranslet`, i.e. any translet. Methods in this class may be of the following kinds: 1. Main method: applyTemplates, implemented by intances of `MethodGenerator`. 2. Named methods: for named templates, implemented by instances of `NamedMethodGenerator`. 3. Rt methods: for result tree fragments, implemented by instances of `RtMethodGenerator`.

Author:
  Jacek Ambroziak, Santiago Pericas-Geertsen

### Constructor Summary

Constructors
Constructor and Description
`ClassGenerator(java.lang.String class_name, java.lang.String super_class_name, java.lang.String file_name, int access_flags, java.lang.String[] interfaces, Stylesheet stylesheet)`

### Method Summary

Methods
`void` `addMethod(MethodGenerator methodGen)`
`java.lang.String` `getApplyTemplatesSig()`
`java.lang.String` `getApplyTemplatesSigForImport()`
`java.lang.String` `getClassName()` Pretend this is the stylesheet class.
`java.lang.String` `getDOMClass()`
`java.lang.String` `getDOMClassSig()`
`Parser` `getParser()`
`Stylesheet` `getStylesheet()`
`boolean` `isExternal()` Returns `true` or `false` depending on whether this class inherits from `AbstractTranslet` or not.
`org.apache.bcel.generic.Instruction` `loadTranslet()`

### Methods inherited from class org.apache.bcel.generic.ClassGen

`addAttribute, addEmptyConstructor, addField, addInterface, addMethod, addObserver, clone, containsField, containsField, containsMethod, getAttributes, getClassNameIndex, getConstantPool, getFields, getFileName, getInterfaceNames, getInterfaces, getJavaClass, getMajor, getMethodAt, getMethods, getMinor, getSuperclassName, getSuperclassNameIndex, removeAttribute, removeField, removeInterface, removeMethod, removeObserver, replaceField, replaceMethod, setClassName, setClassNameIndex, setConstantPool, setMajor, setMethodAt, setMethods, setMinor, setSuperclassName, setSuperclassNameIndex, update`

### Methods inherited from class org.apache.bcel.classfile.AccessFlags

`getAccessFlags, isAbstract, isAbstract, isFinal, isFinal, isInterface, isInterface, isNative, isNative, isPrivate, isPrivate, isProtected, isProtected, isPublic, isPublic, isStatic, isStatic, isStrictfp, isStrictfp, isSynchronized, isSynchronized, isTransient, isTransient, isVolatile, isVolatile, setAccessFlags`

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

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

### Constructor Detail

#### ClassGenerator

    public ClassGenerator(java.lang.String class_name,
                  java.lang.String super_class_name,
                  java.lang.String file_name,
                  int access_flags,
                  java.lang.String[] interfaces,
                  Stylesheet stylesheet)

### Method Detail

#### getParser

    public final Parser getParser()

#### getStylesheet

    public final Stylesheet getStylesheet()

#### getClassName

    public final java.lang.String getClassName()

Pretend this is the stylesheet class. Useful when compiling references to global variables inside a predicate.

Overrides:
  `getClassName` in class `org.apache.bcel.generic.ClassGen`

#### loadTranslet

    public org.apache.bcel.generic.Instruction loadTranslet()

#### getDOMClass

    public final java.lang.String getDOMClass()

#### getDOMClassSig

    public final java.lang.String getDOMClassSig()

#### getApplyTemplatesSig

    public final java.lang.String getApplyTemplatesSig()

#### getApplyTemplatesSigForImport

    public final java.lang.String getApplyTemplatesSigForImport()

#### isExternal

    public boolean isExternal()

Returns `true` or `false` depending on whether this class inherits from `AbstractTranslet` or not.

#### addMethod

    public void addMethod(MethodGenerator methodGen)