Package jaitools.jiffle.parser

Jiffle parser and support classes.

See:
          Description

Interface Summary
ParsingErrorReporter Defines methods to intercept parsing error messages.
SourceGenerator Defines methods for classes that generate runtime Java source from compiled Jiffle scripts.
 

Class Summary
AbstractSourceGenerator Base class for tree parsers that generate Jiffle runtime source.
CheckAssignments Checks for valid use of image variables.
CheckAssignments.assignmentOp_return  
CheckAssignments.identifier_return  
CheckAssignments.userVar_return  
CheckFunctionCalls Checks function calls in the primary AST.
ConstantLookup A lookup for named constants used by the Jiffle compiler.
DeferredErrorReporter Used by the Jiffle compiler to accumulate ANTLR parsing error messages.
ErrorHandlingTreeParser A base class for Jiffle tree parsers that want to intercept ANTLR error and warning messages.
FunctionInfo Used by the FunctionLookup class when servicing lookup requests from the Jiffle compiler.
FunctionLookup A lookup service used by the Jiffle compiler when parsing function calls in scripts.
JiffleLexer  
JiffleParser Jiffle language parser grammar.
JiffleParser.addExpression_return  
JiffleParser.andExpression_return  
JiffleParser.arguments_return  
JiffleParser.assignmentExpression_return  
JiffleParser.assignmentOp_return  
JiffleParser.atom_return  
JiffleParser.bandSpecifier_return  
JiffleParser.block_return  
JiffleParser.blockStatement_return  
JiffleParser.compExpression_return  
JiffleParser.conditionalExpression_return  
JiffleParser.delimitedStatement_return  
JiffleParser.eqExpression_return  
JiffleParser.expression_return  
JiffleParser.expressionList_return  
JiffleParser.identifiedAtom_return  
JiffleParser.ifCall_return  
JiffleParser.imagePos_return  
JiffleParser.incdecOp_return  
JiffleParser.initBlock_return  
JiffleParser.listLiteral_return  
JiffleParser.literal_return  
JiffleParser.loopCondition_return  
JiffleParser.loopSet_return  
JiffleParser.multExpression_return  
JiffleParser.option_return  
JiffleParser.optionsBlock_return  
JiffleParser.optionValue_return  
JiffleParser.orExpression_return  
JiffleParser.pixelPos_return  
JiffleParser.pixelSpecifier_return  
JiffleParser.powerExpression_return  
JiffleParser.prefixOp_return  
JiffleParser.primaryExpression_return  
JiffleParser.prog_return  
JiffleParser.sequence_return  
JiffleParser.statement_return  
JiffleParser.unaryExpression_return  
JiffleParser.varDeclaration_return  
JiffleParser.xorExpression_return  
MessageTable Used by Jiffle parsers to record errors and warnings.
MultiChannelTokenStream A TokenStream that can work with multiple active channels.
NullErrorReporter Used by the Jiffle compiler to intercept and discard ANTLR parsing error messages.
OptionLookup A lookup service used by the Jiffle compiler when parsing script options.
OptionsBlockReader Transforms tokens representing variables into specific token types.
OptionsBlockReader.literal_return  
OptionsBlockReader.optionValue_return  
RuntimeSourceGenerator Generates Java sources for the runtime class from the final AST.
RuntimeSourceGenerator.arithmeticOp_return  
RuntimeSourceGenerator.assignmentOp_return  
RuntimeSourceGenerator.bandSpecifier_return  
RuntimeSourceGenerator.binaryExpression_return  
RuntimeSourceGenerator.block_return  
RuntimeSourceGenerator.blockStatement_return  
RuntimeSourceGenerator.conditionalLoop_return  
RuntimeSourceGenerator.expression_return  
RuntimeSourceGenerator.expressionList_return  
RuntimeSourceGenerator.foreachLoop_return  
RuntimeSourceGenerator.generate_return  
RuntimeSourceGenerator.imagePos_return  
RuntimeSourceGenerator.imageWrite_return  
RuntimeSourceGenerator.incdecOp_return  
RuntimeSourceGenerator.jiffleOption_return  
RuntimeSourceGenerator.listAssignment_return  
RuntimeSourceGenerator.listAssignment_scope  
RuntimeSourceGenerator.listLiteral_return  
RuntimeSourceGenerator.listOperation_return  
RuntimeSourceGenerator.literal_return  
RuntimeSourceGenerator.loop_return  
RuntimeSourceGenerator.optionValue_return  
RuntimeSourceGenerator.pixelPos_return  
RuntimeSourceGenerator.pixelSpecifier_return  
RuntimeSourceGenerator.postfixOp_return  
RuntimeSourceGenerator.prefixOp_return  
RuntimeSourceGenerator.scalar_return  
RuntimeSourceGenerator.scalarAssignment_return  
RuntimeSourceGenerator.simpleStatement_return  
RuntimeSourceGenerator.statement_return  
RuntimeSourceGenerator.STAttrMap allows convenient multi-value initialization: "new STAttrMap().put(...).put(...)"
RuntimeSourceGenerator.var_return  
RuntimeSourceGenerator.varDeclaration_return  
Symbol Represents a symbol in a Jiffle script.
SymbolScope Stores symbols in a Jiffle script at a single scope level.
SymbolScopeStack Used in the Jiffle tree parser grammars to track symbols defined at different scopes in a script.
TagVars Transforms tokens representing variables into specific token types.
TagVars.args_return  
TagVars.arithmeticOp_return  
TagVars.assignmentExpression_return  
TagVars.assignmentOp_return  
TagVars.bandSpecifier_return  
TagVars.block_return  
TagVars.blockStatement_return  
TagVars.expression_return  
TagVars.expressionList_return  
TagVars.foreachLoop_return  
TagVars.identifier_return  
TagVars.incdecOp_return  
TagVars.jiffleOption_return  
TagVars.listLiteral_return  
TagVars.listOperation_return  
TagVars.literal_return  
TagVars.logicalOp_return  
TagVars.loopCondition_return  
TagVars.loopSet_return  
TagVars.optionValue_return  
TagVars.pixelPos_return  
TagVars.pixelSpecifier_return  
TagVars.prefixOp_return  
TagVars.scalarExpression_return  
TagVars.start_return  
TagVars.statement_return  
TagVars.varDeclaration_return  
TransformExpressions Converts calls to proxy functions into the associated variables and converts ternary conditional expressions to if calls.
TransformExpressions.arithmeticOp_return  
TransformExpressions.assignmentExpression_return  
TransformExpressions.assignmentOp_return  
TransformExpressions.bandSpecifier_return  
TransformExpressions.block_return  
TransformExpressions.blockStatement_return  
TransformExpressions.expression_return  
TransformExpressions.expressionList_return  
TransformExpressions.identifier_return  
TransformExpressions.incdecOp_return  
TransformExpressions.jiffleOption_return  
TransformExpressions.listLiteral_return  
TransformExpressions.listOperation_return  
TransformExpressions.literal_return  
TransformExpressions.logicalOp_return  
TransformExpressions.loopCondition_return  
TransformExpressions.loopSet_return  
TransformExpressions.pixelPos_return  
TransformExpressions.pixelSpecifier_return  
TransformExpressions.prefixOp_return  
TransformExpressions.start_return  
TransformExpressions.statement_return  
TransformExpressions.varDeclaration_return  
 

Enum Summary
FunctionInfo.Provider Constants to indicate the runtime provider of a function
Level Constants used by the Jiffle script and tree parsers to identify the level of a parser message (error or warning).
Message Constants used by the Jiffle script and tree parsers to report errors and warnings.
ScopeType Constants for variable scope type.
SymbolType Constants representing the type of symbols tracked through scopes during JIffle script compilation.
 

Exception Summary
CompilerExitException Used by the Jiffle compiler to force early exit from one of its parsers.
JiffleParserException An exception thrown when the Jiffle parser aborts due to errors.
UndefinedFunctionException An exception thrown by FunctionLookup when the Jiffle compiler is attempting to parse a call to an undefined function.
UndefinedOptionException An exception thrown by OptionLookup when the Jiffle compiler is attempting to parse a call to an undefined option.
UnexpectedInputException Used by Jiffle parsers to complain about unexpected input in a acript.
 

Package jaitools.jiffle.parser Description

Jiffle parser and support classes. In addition to the hand-written classes in this package, further parser classes are generated from the ANTLR grammars that define the language syntax and steps in Abstract Syntax Tree (AST) construction.

The Jiffle compiler works by first creating an AST from the input Jiffle script. Next, a number of tree parsers check the AST for semantic errors. This is followed by tree rewriting, in which the AST is re-structured to make it more suitable for the final step: runtime class source code generation. The resulting source code can be retrieved by the client and/or compiled into executable bytecode by Jiffle's embedded Janino compiler.



Copyright © 2009-2011. All Rights Reserved.