Modifier and Type | Class and Description |
---|---|
class |
InternalContextAdapterImpl
This adapter class is the container for all context types for internal
use.
|
class |
VMContext
This is a special, internal-use-only context implementation to be
used for the new Velocimacro implementation.
|
Modifier and Type | Field and Description |
---|---|
(package private) InternalContextAdapter |
VMContext.innerContext
the base context store.
|
(package private) InternalContextAdapter |
VMContext.wrappedContext
context that we are wrapping
|
Modifier and Type | Method and Description |
---|---|
InternalContextAdapter |
InternalContextAdapterImpl.getBaseContext()
Returns the base context that we are
wrapping.
|
InternalContextAdapter |
InternalWrapperContext.getBaseContext()
returns the base full context impl
|
InternalContextAdapter |
VMContext.getBaseContext() |
Constructor and Description |
---|
VMContext(InternalContextAdapter inner,
RuntimeServices rsvc)
CTOR, wraps an ICA
|
Modifier and Type | Method and Description |
---|---|
(package private) void |
VelocimacroManager.MacroEntry.parseTree(InternalContextAdapter ica) |
(package private) void |
VelocimacroManager.MacroEntry.setup(InternalContextAdapter ica) |
Modifier and Type | Field and Description |
---|---|
private InternalContextAdapter |
VMProxyArg.usercontext
not used in this impl : carries the appropriate user context
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
InputBase.getInputEncoding(InternalContextAdapter context)
Decides the encoding used during input processing of this
directive.
|
java.lang.Object |
VMProxyArg.getObject(InternalContextAdapter context)
returns the value of the reference.
|
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.
|
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
|
java.lang.Object |
VMProxyArg.setObject(InternalContextAdapter context,
java.lang.Object o)
Invoked by VMContext when Context.put() is called for a proxied reference.
|
Constructor and Description |
---|
VMProxyArg(VMProxyArg model,
InternalContextAdapter c)
not used in current impl
Constructor for alternate impl where VelProxy class would make new
VMProxyArg objects, and use this contructor to avoid reparsing the
reference args
that impl also had the VMProxyArg carry it's context
|
Modifier and Type | Method and Description |
---|---|
boolean |
ASTAndNode.evaluate(InternalContextAdapter context)
logical and :
null && right = false
left && null = false
null && null = false
|
boolean |
ASTEQNode.evaluate(InternalContextAdapter context)
Calculates the value of the logical expression
arg1 == arg2
All class types are supported.
|
boolean |
ASTElseIfStatement.evaluate(InternalContextAdapter context)
An ASTElseStatement is true if the expression
it contains evaluates to true.
|
boolean |
ASTElseStatement.evaluate(InternalContextAdapter context)
An ASTElseStatement always evaluates to
true.
|
boolean |
ASTExpression.evaluate(InternalContextAdapter context) |
boolean |
ASTFalse.evaluate(InternalContextAdapter context) |
boolean |
ASTGENode.evaluate(InternalContextAdapter context) |
boolean |
ASTGTNode.evaluate(InternalContextAdapter context) |
boolean |
ASTLENode.evaluate(InternalContextAdapter context) |
boolean |
ASTLTNode.evaluate(InternalContextAdapter context) |
boolean |
ASTNENode.evaluate(InternalContextAdapter context) |
boolean |
ASTNotNode.evaluate(InternalContextAdapter context) |
boolean |
ASTOrNode.evaluate(InternalContextAdapter context)
the logical or :
the rule :
left || null -> left
null || right -> right
null || null -> false
left || right -> left || right
|
boolean |
ASTReference.evaluate(InternalContextAdapter context)
Computes boolean value of this reference
Returns the actual value of reference return type
boolean, and 'true' if value is not null
|
boolean |
ASTTrue.evaluate(InternalContextAdapter context) |
boolean |
Node.evaluate(InternalContextAdapter context) |
boolean |
SimpleNode.evaluate(InternalContextAdapter context) |
java.lang.Object |
ASTIdentifier.execute(java.lang.Object o,
InternalContextAdapter context)
invokes the method on the object passed in
|
java.lang.Object |
ASTMethod.execute(java.lang.Object o,
InternalContextAdapter context)
invokes the method.
|
java.lang.Object |
ASTReference.execute(java.lang.Object o,
InternalContextAdapter context)
gets an Object that 'is' the value of the reference
|
java.lang.Object |
Node.execute(java.lang.Object o,
InternalContextAdapter context) |
java.lang.Object |
SimpleNode.execute(java.lang.Object o,
InternalContextAdapter context) |
java.lang.Object |
ASTComment.init(InternalContextAdapter context,
java.lang.Object data)
We need to make sure we catch any of the dreaded MORE tokens.
|
java.lang.Object |
ASTDirective.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
ASTEscape.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
ASTIdentifier.init(InternalContextAdapter context,
java.lang.Object data)
simple init - don't do anything that is context specific.
|
java.lang.Object |
ASTMethod.init(InternalContextAdapter context,
java.lang.Object data)
simple init - init our subtree and get what we can from
the AST
|
java.lang.Object |
ASTNumberLiteral.init(InternalContextAdapter context,
java.lang.Object data)
Initialization method - doesn't do much but do the object
creation.
|
java.lang.Object |
ASTReference.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
ASTSetDirective.init(InternalContextAdapter context,
java.lang.Object data)
simple init.
|
java.lang.Object |
ASTStringLiteral.init(InternalContextAdapter context,
java.lang.Object data)
init : we don't have to do much.
|
java.lang.Object |
ASTText.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
Node.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
SimpleNode.init(InternalContextAdapter context,
java.lang.Object data) |
java.lang.Object |
GetExecutor.OLDexecute(java.lang.Object o,
InternalContextAdapter context)
Execute method against context.
|
void |
ASTIfStatement.process(InternalContextAdapter context,
ParserVisitor visitor) |
boolean |
ASTBlock.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTComment.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTDirective.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTElseIfStatement.render(InternalContextAdapter context,
java.io.Writer writer)
renders the block
|
boolean |
ASTEscape.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTEscapedDirective.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTIfStatement.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTReference.render(InternalContextAdapter context,
java.io.Writer writer)
gets the value of the reference and outputs it to the
writer.
|
boolean |
ASTSetDirective.render(InternalContextAdapter context,
java.io.Writer writer)
puts the value of the RHS into the context under the key of the LHS
|
boolean |
ASTText.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
Node.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
SimpleNode.render(InternalContextAdapter context,
java.io.Writer writer) |
boolean |
ASTReference.setValue(InternalContextAdapter context,
java.lang.Object value)
Sets the value of a complex reference (something like $foo.bar)
Currently used by ASTSetReference()
|
java.lang.Object |
ASTAddNode.value(InternalContextAdapter context)
computes the sum of the two nodes.
|
java.lang.Object |
ASTAndNode.value(InternalContextAdapter context)
Returns the value of the expression.
|
java.lang.Object |
ASTDivNode.value(InternalContextAdapter context)
computes the result of the division.
|
java.lang.Object |
ASTEQNode.value(InternalContextAdapter context) |
java.lang.Object |
ASTExpression.value(InternalContextAdapter context) |
java.lang.Object |
ASTFalse.value(InternalContextAdapter context) |
java.lang.Object |
ASTGENode.value(InternalContextAdapter context) |
java.lang.Object |
ASTGTNode.value(InternalContextAdapter context) |
java.lang.Object |
ASTIntegerRange.value(InternalContextAdapter context)
does the real work.
|
java.lang.Object |
ASTLENode.value(InternalContextAdapter context) |
java.lang.Object |
ASTLTNode.value(InternalContextAdapter context) |
java.lang.Object |
ASTModNode.value(InternalContextAdapter context) |
java.lang.Object |
ASTMulNode.value(InternalContextAdapter context)
computes the product of the two args.
|
java.lang.Object |
ASTNENode.value(InternalContextAdapter context) |
java.lang.Object |
ASTNotNode.value(InternalContextAdapter context) |
java.lang.Object |
ASTNumberLiteral.value(InternalContextAdapter context) |
java.lang.Object |
ASTObjectArray.value(InternalContextAdapter context) |
java.lang.Object |
ASTOrNode.value(InternalContextAdapter context)
Returns the value of the expression.
|
java.lang.Object |
ASTReference.value(InternalContextAdapter context) |
java.lang.Object |
ASTStringLiteral.value(InternalContextAdapter context)
renders the value of the string literal
If the properties allow, and the string literal contains a $ or a #
the literal is rendered against the context
Otherwise, the stringlit is returned.
|
java.lang.Object |
ASTSubtractNode.value(InternalContextAdapter context)
computes the value of the subtraction.
|
java.lang.Object |
ASTTrue.value(InternalContextAdapter context) |
java.lang.Object |
Node.value(InternalContextAdapter context) |
java.lang.Object |
SimpleNode.value(InternalContextAdapter context) |
Modifier and Type | Field and Description |
---|---|
protected InternalContextAdapter |
BaseVisitor.context
Context used during traversal
|
Modifier and Type | Method and Description |
---|---|
void |
BaseVisitor.setContext(InternalContextAdapter context) |
Copyright ? 2002 Apache Software Foundation. All Rights Reserved.