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.