org.antlr.stringtemplate.language
Class ActionEvaluator

java.lang.Object
  extended by antlr.TreeParser
      extended by org.antlr.stringtemplate.language.ActionEvaluator
All Implemented Interfaces:
ActionEvaluatorTokenTypes

public class ActionEvaluator
extends antlr.TreeParser
implements ActionEvaluatorTokenTypes


Nested Class Summary
static class ActionEvaluator.NameValuePair
           
 
Field Summary
static java.lang.String[] _tokenNames
           
static antlr.collections.impl.BitSet _tokenSet_0
           
protected  ASTExpr chunk
           
protected  StringTemplateWriter out
           
protected  StringTemplate self
           
 
Fields inherited from class antlr.TreeParser
_retTree, astFactory, ASTNULL, inputState, returnAST, tokenNames, traceDepth
 
Fields inherited from interface org.antlr.stringtemplate.language.ActionEvaluatorTokenTypes
ANONYMOUS_TEMPLATE, APPLY, ARGS, ASSIGN, COLON, COMMA, CONDITIONAL, DOT, DOTDOTDOT, EOF, ESC_CHAR, FUNCTION, ID, INCLUDE, INT, LBRACK, LIST, LITERAL_elseif, LITERAL_first, LITERAL_last, LITERAL_length, LITERAL_rest, LITERAL_strip, LITERAL_super, LITERAL_trunc, LPAREN, MULTI_APPLY, NESTED_ANONYMOUS_TEMPLATE, NOT, NOTHING, NULL_TREE_LOOKAHEAD, PLUS, RBRACK, RPAREN, SEMI, SINGLEVALUEARG, STRING, TEMPLATE, TEMPLATE_ARGS, VALUE, WS, WS_CHAR
 
Constructor Summary
ActionEvaluator()
           
ActionEvaluator(StringTemplate self, ASTExpr chunk, StringTemplateWriter out)
          Create an evaluator using attributes from self
 
Method Summary
 int action(antlr.collections.AST _t)
           
 java.util.Map argList(antlr.collections.AST _t, StringTemplate embedded, java.util.Map initialContext)
          self is assumed to be the enclosing context as foo(x=y) must find y in the template that encloses the ref to foo(x=y).
 void argumentAssignment(antlr.collections.AST _t, StringTemplate embedded, java.util.Map argumentContext)
           
 java.lang.Object attribute(antlr.collections.AST _t)
           
 java.lang.Object expr(antlr.collections.AST _t)
           
 java.lang.Object function(antlr.collections.AST _t)
           
 java.lang.Object ifAtom(antlr.collections.AST _t)
           
 boolean ifCondition(antlr.collections.AST _t)
           
 java.lang.Object list(antlr.collections.AST _t)
          create a new list of expressions as a new multi-value attribute
 void reportError(antlr.RecognitionException e)
           
 java.lang.Object singleFunctionArg(antlr.collections.AST _t)
           
 void singleTemplateArg(antlr.collections.AST _t, StringTemplate embedded, java.util.Map argumentContext)
           
 void template(antlr.collections.AST _t, java.util.Vector templatesToApply)
           
 java.lang.Object templateApplication(antlr.collections.AST _t)
          Apply template(s) to an attribute; can be applied to another apply result.
 java.lang.Object templateInclude(antlr.collections.AST _t)
           
 
Methods inherited from class antlr.TreeParser
getAST, getASTFactory, getTokenName, getTokenNames, match, match, matchNot, panic, reportError, reportWarning, setASTFactory, setASTNodeClass, setASTNodeType, traceIn, traceIndent, traceOut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

self

protected StringTemplate self

out

protected StringTemplateWriter out

chunk

protected ASTExpr chunk

_tokenNames

public static final java.lang.String[] _tokenNames

_tokenSet_0

public static final antlr.collections.impl.BitSet _tokenSet_0
Constructor Detail

ActionEvaluator

public ActionEvaluator(StringTemplate self,
                       ASTExpr chunk,
                       StringTemplateWriter out)
Create an evaluator using attributes from self


ActionEvaluator

public ActionEvaluator()
Method Detail

reportError

public void reportError(antlr.RecognitionException e)
Overrides:
reportError in class antlr.TreeParser

action

public final int action(antlr.collections.AST _t)
                 throws antlr.RecognitionException
Throws:
antlr.RecognitionException

expr

public final java.lang.Object expr(antlr.collections.AST _t)
                            throws antlr.RecognitionException
Throws:
antlr.RecognitionException

templateApplication

public final java.lang.Object templateApplication(antlr.collections.AST _t)
                                           throws antlr.RecognitionException
Apply template(s) to an attribute; can be applied to another apply result.

Throws:
antlr.RecognitionException

attribute

public final java.lang.Object attribute(antlr.collections.AST _t)
                                 throws antlr.RecognitionException
Throws:
antlr.RecognitionException

templateInclude

public final java.lang.Object templateInclude(antlr.collections.AST _t)
                                       throws antlr.RecognitionException
Throws:
antlr.RecognitionException

function

public final java.lang.Object function(antlr.collections.AST _t)
                                throws antlr.RecognitionException
Throws:
antlr.RecognitionException

list

public final java.lang.Object list(antlr.collections.AST _t)
                            throws antlr.RecognitionException
create a new list of expressions as a new multi-value attribute

Throws:
antlr.RecognitionException

template

public final void template(antlr.collections.AST _t,
                           java.util.Vector templatesToApply)
                    throws antlr.RecognitionException
Throws:
antlr.RecognitionException

singleFunctionArg

public final java.lang.Object singleFunctionArg(antlr.collections.AST _t)
                                         throws antlr.RecognitionException
Throws:
antlr.RecognitionException

ifCondition

public final boolean ifCondition(antlr.collections.AST _t)
                          throws antlr.RecognitionException
Throws:
antlr.RecognitionException

ifAtom

public final java.lang.Object ifAtom(antlr.collections.AST _t)
                              throws antlr.RecognitionException
Throws:
antlr.RecognitionException

argList

public final java.util.Map argList(antlr.collections.AST _t,
                                   StringTemplate embedded,
                                   java.util.Map initialContext)
                            throws antlr.RecognitionException
self is assumed to be the enclosing context as foo(x=y) must find y in the template that encloses the ref to foo(x=y). We must pass in the embedded template (the one invoked) so we can check formal args in rawSetArgumentAttribute.

Throws:
antlr.RecognitionException

argumentAssignment

public final void argumentAssignment(antlr.collections.AST _t,
                                     StringTemplate embedded,
                                     java.util.Map argumentContext)
                              throws antlr.RecognitionException
Throws:
antlr.RecognitionException

singleTemplateArg

public final void singleTemplateArg(antlr.collections.AST _t,
                                    StringTemplate embedded,
                                    java.util.Map argumentContext)
                             throws antlr.RecognitionException
Throws:
antlr.RecognitionException