| Interface | Description | 
|---|---|
| BshClassManager.Listener | |
| BshIterator | An interface implemented by classes wrapping instances of iterators,
    enumerations, collections, etc. | 
| ConsoleInterface | The capabilities of a minimal console for BeanShell. | 
| NameSource | This interface supports name completion, which is used primarily for
    command line tools, etc. | 
| NameSource.Listener | |
| ParserConstants | |
| ParserTreeConstants | 
| Class | Description | 
|---|---|
| BshClassManager | BshClassManager manages all classloading in BeanShell. | 
| BSHFormalComment | |
| BshMethod | This represents an instance of a bsh method declaration in a particular
        namespace. | 
| BSHPackageDeclaration | |
| CallStack | A stack of NameSpaces representing the call path. | 
| Capabilities | The map of extended features supported by the runtime in which we live. | 
| ClassGenerator | |
| ClassGeneratorImpl | |
| ClassGeneratorUtil | ClassGeneratorUtil utilizes the ASM (www.objectweb.org) bytecode generator 
        by Eric Bruneton in order to generate class "stubs" for BeanShell at
        runtime. | 
| ClassGeneratorUtil.ConstructorArgs | A ConstructorArgs object holds evaluated arguments for a constructor
                call as well as the index of a possible alternate selector to invoke. | 
| ClassIdentifier | |
| CollectionManager | The default CollectionManager (which remains Java 1.1 compatible)
    supports iteration over objects of type:
    Enumeration, Vector, String, StringBuffer and array. | 
| CollectionManager.BasicBshIterator | An implementation that works with JDK 1.1 | 
| DelayedEvalBshMethod | |
| ExternalNameSpace | A namespace which maintains an external map of values held in variables in
        its scope. | 
| Interpreter | The BeanShell script interpreter. | 
| JavaCharStream | An implementation of interface CharStream, where the stream is assumed to
 contain only ASCII characters (with java-like unicode escape processing). | 
| Modifiers | |
| NameSpace | A namespace     in which methods, variables, and imports (class names) live. | 
| Parser | This is the BeanShell parser. | 
| ParserTokenManager | |
| Primitive | Wrapper for primitive types in Bsh. | 
| ReflectManager | ReflectManager is a dynamically loaded extension that supports extended
        reflection features supported by JDK1.2 and greater. | 
| Remote | Remote executor class. | 
| StringUtil | |
| This | 'This' is the type of bsh scripted objects. | 
| Token | Describes the input token stream. | 
| Variable | |
| XThis | XThis is a dynamically loaded extension which extends This.java and adds
    support for the generalized interface proxy mechanism introduced in
    JDK1.3. | 
| Exception | Description | 
|---|---|
| Capabilities.Unavailable | An attempt was made to use an unavailable capability supported by
                an optional package. | 
| ClassPathException | |
| EvalError | EvalError indicates that we cannot continue evaluating the script
        or the script has thrown an exception. | 
| InterpreterError | An internal error in the interpreter has occurred. | 
| ParseException | This exception is thrown when parse errors are encountered. | 
| TargetError | TargetError is an EvalError that wraps an exception thrown by the script        
        (or by code called from the script). | 
| UtilEvalError | UtilEvalError is an error corresponding to an EvalError but thrown by a
    utility or other class that does not have the caller context (Node)
    available to it. | 
| UtilTargetError | UtilTargetError is an error corresponding to a TargetError but thrown by a 
        utility or other class that does not have the caller context (Node) 
        available to it. | 
| Error | Description | 
|---|---|
| TokenMgrError | 
Lightweight Scripting for Java. www.beanshell.org
This project has been dead since 2005, probably because JavaScript has been added to the JDK providing an alternate scripting language that is already built-in. Even though it is used in many parts of jEdit's code, we do not plan to maintain it or make any major changes to it beyond what has already been done.