org.gjt.sp.jedit.bsh

## Class ClassGeneratorImpl

- java.lang.Object
- - org.gjt.sp.jedit.bsh.ClassGenerator
  - - org.gjt.sp.jedit.bsh.ClassGeneratorImpl

    public class ClassGeneratorImpl
    extends ClassGenerator

### Constructor Summary

Constructors
Constructor and Description
`ClassGeneratorImpl()`

### Method Summary

Methods
`java.lang.Class` `generateClass(java.lang.String name, Modifiers modifiers, java.lang.Class[] interfaces, java.lang.Class superClass, org.gjt.sp.jedit.bsh.BSHBlock block, boolean isInterface, CallStack callstack, Interpreter interpreter)` Parse the BSHBlock for the class definition and generate the class.
`static java.lang.Class` `generateClassImpl(java.lang.String name, Modifiers modifiers, java.lang.Class[] interfaces, java.lang.Class superClass, org.gjt.sp.jedit.bsh.BSHBlock block, boolean isInterface, CallStack callstack, Interpreter interpreter)` Parse the BSHBlock for for the class definition and generate the class using ClassGenerator.
`java.lang.Object` `invokeSuperclassMethod(BshClassManager bcm, java.lang.Object instance, java.lang.String methodName, java.lang.Object[] args)` Invoke a super.method() style superclass method on an object instance.
`static java.lang.Object` `invokeSuperclassMethodImpl(BshClassManager bcm, java.lang.Object instance, java.lang.String methodName, java.lang.Object[] args)`
`void` `setInstanceNameSpaceParent(java.lang.Object instance, java.lang.String className, NameSpace parent)` Change the parent of the class instance namespace.

### Methods inherited from class org.gjt.sp.jedit.bsh.ClassGenerator

`getClassGenerator`

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

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

### Constructor Detail

#### ClassGeneratorImpl

    public ClassGeneratorImpl()

### Method Detail

#### generateClass

    public java.lang.Class generateClass(java.lang.String name,
                                Modifiers modifiers,
                                java.lang.Class[] interfaces,
                                java.lang.Class superClass,
                                org.gjt.sp.jedit.bsh.BSHBlock block,
                                boolean isInterface,
                                CallStack callstack,
                                Interpreter interpreter)
                                  throws EvalError

Description copied from class: `ClassGenerator`
Parse the BSHBlock for the class definition and generate the class.

Specified by:
  `generateClass` in class `ClassGenerator`
Throws:
  `EvalError`

#### invokeSuperclassMethod

    public java.lang.Object invokeSuperclassMethod(BshClassManager bcm,
                                          java.lang.Object instance,
                                          java.lang.String methodName,
                                          java.lang.Object[] args)
                                            throws UtilEvalError,
                                                   org.gjt.sp.jedit.bsh.ReflectError,
                                                   java.lang.reflect.InvocationTargetException

Description copied from class: `ClassGenerator`
Invoke a super.method() style superclass method on an object instance. This is not a normal function of the Java reflection API and is provided by generated class accessor methods.

Specified by:
  `invokeSuperclassMethod` in class `ClassGenerator`
Throws:
  `UtilEvalError`
  `org.gjt.sp.jedit.bsh.ReflectError`
  `java.lang.reflect.InvocationTargetException`

#### setInstanceNameSpaceParent

    public void setInstanceNameSpaceParent(java.lang.Object instance,
                                  java.lang.String className,
                                  NameSpace parent)

Change the parent of the class instance namespace. This is currently used for inner class support. Note: This method will likely be removed in the future.

Specified by:
  `setInstanceNameSpaceParent` in class `ClassGenerator`

#### generateClassImpl

    public static java.lang.Class generateClassImpl(java.lang.String name,
                                    Modifiers modifiers,
                                    java.lang.Class[] interfaces,
                                    java.lang.Class superClass,
                                    org.gjt.sp.jedit.bsh.BSHBlock block,
                                    boolean isInterface,
                                    CallStack callstack,
                                    Interpreter interpreter)
                                             throws EvalError

Parse the BSHBlock for for the class definition and generate the class using ClassGenerator.

Throws:
  `EvalError`

#### invokeSuperclassMethodImpl

    public static java.lang.Object invokeSuperclassMethodImpl(BshClassManager bcm,
                                              java.lang.Object instance,
                                              java.lang.String methodName,
                                              java.lang.Object[] args)
                                                       throws UtilEvalError,
                                                              org.gjt.sp.jedit.bsh.ReflectError,
                                                              java.lang.reflect.InvocationTargetException

Throws:
  `UtilEvalError`
  `org.gjt.sp.jedit.bsh.ReflectError`
  `java.lang.reflect.InvocationTargetException`