All Classes and Interfaces

Class
Description
 
 
 
 
 
This class is extended by the operator classes that implement an operation that evaluates both operand.
 
 
 
 
 
 
 
 
 
 
Part of select command Part can be select declaration or case declaration
 
 
 
 
An abstract class to analyze a list of something.
 
 
 
Left value is defined as
 
 
 
 
 
 
 
Abstract class to be extended by source provider implementations that include a single file only once and use source path.
An abstract class to be extended by the source provider implementations that do not want to include one source more than once.
An abstract source provider extended by all the source provider implementations that rely on a SourcePath implementation.
An abstract source provider to be extended by the source provider implementations.
 
 
Generates a string concatenation of two expressions.
 
Anything that can be the result of an analysis be it either syntax or lexical analysis implements this interface.
Classes that analyze something implement this interface.
 
 
 
 
 
 
 
 
 
 
 
 
This annotation interface can be used in classes that define static methods to be called from BASIC code.
 
 
 
This class recognizes a reserved keyword.
 
 
Factory to create a new BasicLexicalElement initializing some fields from the reader.
 
 
 
Handle the local variable in a hierarchical stack of Maps
 
 
 
This is the exception that the BASIC program throws when there is some error during the execution.
Utility class to register the functions implemented in Java and that are available to BASIC programs.
Simple Left value is defined as
 
A very simple (thus basic) single include checker implementation.
A simple SourcePath implementation.
 
 
 
 
Analyze a tag.
 
 
 
A BuildableProgram is a Program that also provides methods needed to build up the program code during the BASIC source code analysis.
 
 
Provide a set of classes.
Classes that provide methods to execute a command implement this interface.
Classes that analyze BASIC program lines and result Commands.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
One condition in the case statement Single case statement can contain multiple conditions.
 
 
 
 
 
 
 
A CommandFactory analyzes a BASIC program line and creates a Command that is the result of the analysis.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Manage the configuration of the interpreter.
Implementing classes should be able to build configuration from some textual source, or programatically.
Functions that let the BASIC program to access some special constant values should be annotated using this interface as classification parameter.
 
 
 
 
 
Functions that let the BASIC program to perform date manipulation have to be annotated with this classification.
 
 
 
 
 
 
 
 
 
Evaluator evaluates something (probably an Expression and result a value.
 
An expression is a numeric expression, with function calls, object method calls, operators, parenthesis and so on.
 
 
 
 
 
Functions that let the BASIC program to access file handling function should use this class as a classification parameter.
 
This class implements static methods, which can be used from BASIC programs to access the file system.
A source provider that reads the sources from files.
 
 
 
 
 
 
This version just does not nothing special to recover from error.
 
 
 
A hierarchical reader can include sources into the string of characters read returned by another reader.
A variable map interface that handles the global and local variables.
 
 
 
An interpreter instance executes a program.
An interpreter instance executes a program.
An interpreter hook can be registered into an interpreter and the methods of the hook are called by the interpreter when executing the the BASIC program.
This is the highest priority operator (priority 1) that is used to access a field of an object.
 
Implementing class should recognize a string as a keyword or should tell that the string is not a keyword.
 
A LeftValue is a value that can stand on the left hand side of an assignment command.
 
 
 
 
 
A generic lexical analyzer that reads the characters from a reader and returns the LexicalElements one after the other.
A single lexical element that was created by the LexicalAnalyer
A Lexical Element Analyzer analyzes the characters coming from a reader and create a LexicalElement from it.
Exception to throw when there is some error during the lexical analysis related to the analysis itself and not the reading of the source.
 
A lexical analyzer that supports syntax analyzers that analyze line oriented language.
 
A variable map structure that can manage many maps in a stack structure.
 
 
 
 
When a BASIC program has a reference to an object that is an instance of a class that implements Magic.Bean setting a field and getting the value of a field is done through the "magic" methods defined in this interface instead of setting the field or getting the value of the field through the getters/setters or accessing the fields directly.
 
 
 
 
Functions that let the BASIC program to perform mathematical calculation have to be annotated with this classification.
This class contains static methods that are place holders to register the methods of the class java.lang.Math for the BASIC programs.
 
Keep a registry of methods.
 
Handle the global and the local variable maps.
 
 
 
Every object that represents a structure that is nested in the source code should implement this interface.
Object implementing this interface keep track of the programming structures that can be nested into each other.
 
 
When a BASIC extension function implemented in Java returns an object for the sole purpose that it can be passed as argument to other extension functions implemented in Java (and probably in the same class), but it does not want the BASIC program to get or set any field or invoke any method from this object then the return value can be of a type that implements this interface.
When a BASIC extension function implemented in Java returns an object for the sole purpose that it can be passed as argument to other extension functions implemented in Java (and probably in the same class), but it does not want the BASIC program to get or set any field or invoke any method from this object then the return value can be embedded in a NoAccessProxy.
 
 
The simplest implementation of the InterfaceHook interface.
Utility class to compare Number variables, Long or Double.
 
 
 
The program that was created by the syntax analyzer.
 
Functions that let the BASIC program to perform regular expression manipulation have to be annotated with this classification.
 
 
 
 
 
This hook can be configured to limit the execution resources for a given program.
ScriptBasic for Java embedding interface.
 
 
 
 
 
 
 
A simple implementation of the InterpreterHook.
 
 
Checks that a file is included only once.
Abstract class to be extended by source path implementations that include a file only once and which include file only using full path.
Abstract class to be extended by source path implementations that include a file only once and which include file only using full path and use source path to find the file.
Any object that is some way bound to a location of the BASIC program.
Source path is similar to Java class path.
This interface is usually implemented some SourceProvider implementations.
A source provider gives a reader for a source based upon the name of the source.
Source code reader.
Functions that let the BASIC program to perform string manipulation have to be annotated with this classification.
This class implements string functions for the BASIC interpreter.
This implementation provides the source from strings.
Interface to manage a BASIC subroutine.
A syntax analyzer analyzes a program source using the result of the lexical analyzer and create an executable program.
Exception to throw when there is some error during the syntax analysis related to the analysis itself and not the reading of the source.
 
Functions that let the BASIC program to access System resources have to be annotated with this classification.
 
 
 
 
 
 
 
Functions that let the BASIC program to perform utility actions have to be annotated with this classification.
Static methods in this class are registered in the interpreter when the interpreter starts.
 
 
Manage local or global variables.