Modifier and Type | Method and Description |
---|---|
private static java.lang.String[] |
Macro.getArgArray(Node node)
creates an array containing the literal
strings in the macro arguement
|
private java.lang.String[] |
VelocimacroProxy.getArgArray(Node node)
gets the args to the VM from the instance-use AST
|
private static java.util.List |
Macro.getASTAsStringArray(Node rootNode)
Returns an array of the literal rep of the AST
|
void |
Directive.init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
How this directive is to be initialized.
|
void |
Foreach.init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
simple init - init the tree and get the elementKey from
the AST
|
void |
Include.init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
simple init - init the tree and get the elementKey from
the AST
|
void |
Literal.init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
Store the literal rendition of a node using
the Node.literal().
|
void |
Macro.init(RuntimeServices rs,
InternalContextAdapter context,
Node node) |
void |
VelocimacroProxy.init(RuntimeServices rs,
InternalContextAdapter context,
Node node)
The major meat of VelocimacroProxy, init() checks the # of arguments, patches the
macro body, renders the macro into an AST, and then inits the AST, so it is ready
for quick rendering.
|
static void |
Macro.processAndRegister(RuntimeServices rs,
Node node,
java.lang.String sourceTemplate)
Used by Parser.java to process VMs withing the parsing process
processAndRegister() doesn't actually render the macro to the output
Processes the macro body into the internal representation used by the
VelocimacroProxy objects, and if not currently used, adds it
to the macro Factory
|
abstract boolean |
Directive.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
How this directive is to be rendered
|
boolean |
Foreach.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
renders the #foreach() block
|
boolean |
Include.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
iterates through the argument list and renders every
argument that is appropriate.
|
boolean |
Literal.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
Throw the literal rendition of the block between
#literal()/#end into the writer.
|
boolean |
Macro.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
render() doesn't do anything in the final output rendering.
|
boolean |
Parse.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
iterates through the argument list and renders every
argument that is appropriate.
|
boolean |
VelocimacroProxy.render(InternalContextAdapter context,
java.io.Writer writer,
Node node)
Renders the macro using the context
|
private boolean |
Include.renderOutput(Node node,
InternalContextAdapter context,
java.io.Writer writer)
does the actual rendering of the included file
|
Constructor and Description |
---|
NodeException(java.lang.String exceptionMessage,
Node node) |
ReferenceException(java.lang.String exceptionMessage,
Node node) |
Modifier and Type | Method and Description |
---|---|
(package private) Node |
JJTParserState.peekNode() |
(package private) Node |
JJTParserState.popNode() |
(package private) Node |
JJTParserState.rootNode() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
JJTParserState.clearNodeScope(Node n) |
(package private) void |
JJTParserState.closeNodeScope(Node n,
boolean condition) |
(package private) void |
JJTParserState.closeNodeScope(Node n,
int num) |
(package private) void |
JJTParserState.openNodeScope(Node n) |
(package private) void |
JJTParserState.pushNode(Node n) |
Modifier and Type | Class and Description |
---|---|
class |
ASTAddNode |
class |
ASTAndNode
Please look at the Parser.jjt file which is
what controls the generation of this class.
|
class |
ASTAssignment |
class |
ASTBlock |
class |
ASTComment
Represents all comments...
|
class |
ASTDirective
This class is responsible for handling the pluggable
directives in VTL.
|
class |
ASTDivNode
Handles integer division of nodes
Please look at the Parser.jjt file which is
what controls the generation of this class.
|
class |
ASTElseIfStatement
This class is responsible for handling the ElseIf VTL control statement.
|
class |
ASTElseStatement
This class is responsible for handling the Else VTL control statement.
|
class |
ASTEQNode
Handles the equivalence operator
|
class |
ASTEscape
This class is responsible for handling Escapes
in VTL.
|
class |
ASTEscapedDirective
This class is responsible for handling EscapedDirectives
in VTL.
|
class |
ASTExpression |
class |
ASTFalse |
class |
ASTGENode |
class |
ASTGTNode |
class |
ASTIdentifier
ASTIdentifier.java
Method support for identifiers : $foo
mainly used by ASTRefrence
Introspection is now moved to 'just in time' or at render / execution
time.
|
class |
ASTIfStatement |
class |
ASTIncludeStatement |
class |
ASTIntegerRange |
class |
ASTLENode |
class |
ASTLTNode |
class |
ASTMethod
ASTMethod.java
Method support for references : $foo.method()
NOTE :
introspection is now done at render time.
|
class |
ASTModNode |
class |
ASTMulNode
Handles integer multiplication
Please look at the Parser.jjt file which is
what controls the generation of this class.
|
class |
ASTNENode |
class |
ASTNotNode |
class |
ASTNumberLiteral |
class |
ASTObjectArray |
class |
ASTOrNode
Please look at the Parser.jjt file which is
what controls the generation of this class.
|
class |
ASTParameters |
class |
ASTprocess |
class |
ASTReference
This class is responsible for handling the references in
VTL ($foo).
|
class |
ASTSetDirective
Node for the #set directive
|
class |
ASTStringLiteral
ASTStringLiteral support.
|
class |
ASTSubtractNode
Handles integer subtraction of nodes (in #set() )
Please look at the Parser.jjt file which is
what controls the generation of this class.
|
class |
ASTText |
class |
ASTTrue |
class |
ASTVariable |
class |
ASTWord |
class |
SimpleNode |
Modifier and Type | Field and Description |
---|---|
protected Node[] |
SimpleNode.children |
protected Node |
SimpleNode.parent |
private Node |
ASTSetDirective.right |
Modifier and Type | Method and Description |
---|---|
private Node |
ASTSetDirective.getRightHandSide()
returns the RHS Node of the set statement
|
Node |
Node.jjtGetChild(int i)
This method returns a child node.
|
Node |
SimpleNode.jjtGetChild(int i) |
Node |
Node.jjtGetParent() |
Node |
SimpleNode.jjtGetParent() |
Modifier and Type | Method and Description |
---|---|
void |
Node.jjtAddChild(Node n,
int i)
This method tells the node to add its argument to the node's
list of children.
|
void |
SimpleNode.jjtAddChild(Node n,
int i) |
void |
Node.jjtSetParent(Node n)
This pair of methods are used to inform the node of its
parent.
|
void |
SimpleNode.jjtSetParent(Node n) |
Modifier and Type | Method and Description |
---|---|
private java.lang.Object |
NodeViewMode.showNode(Node node,
java.lang.Object data)
Display the type of nodes and optionally the
first token.
|
Copyright ? 2002 Apache Software Foundation. All Rights Reserved.