public class EscapingEvaluator extends DepthFirstAdapter
Constructor and Description |
---|
EscapingEvaluator(VariableTranslator variableTranslator) |
caseAAltCommand, caseAAutoescapeCommand, caseACallCommand, caseACommaExpression, caseACommentCommand, caseAContentTypeCommand, caseACsOpenPosition, caseADataCommand, caseADecNumberVariable, caseADefCommand, caseADescendVariable, caseAEachCommand, caseAEscapeCommand, caseAEvarCommand, caseAExpandVariable, caseAHardIncludeCommand, caseAHardLincludeCommand, caseAHexNumberVariable, caseAIfCommand, caseAIncludeCommand, caseAInlineCommand, caseALincludeCommand, caseALoopCommand, caseALoopIncCommand, caseALoopToCommand, caseALvarCommand, caseAMultipleCommand, caseANameCommand, caseANameVariable, caseANoopCommand, caseANoopExpression, caseASequenceExpression, caseASetCommand, caseAUvarCommand, caseAVarCommand, caseAWithCommand, caseStart, defaultIn, defaultOut, inAAddExpression, inAAltCommand, inAAndExpression, inAAutoescapeCommand, inACallCommand, inACommaExpression, inACommentCommand, inAContentTypeCommand, inACsOpenPosition, inADataCommand, inADecimalExpression, inADecNumberVariable, inADefCommand, inADescendVariable, inADivideExpression, inAEachCommand, inAEqExpression, inAEscapeCommand, inAEvarCommand, inAExistsExpression, inAExpandVariable, inAFunctionExpression, inAGteExpression, inAGtExpression, inAHardIncludeCommand, inAHardLincludeCommand, inAHexExpression, inAHexNumberVariable, inAIfCommand, inAIncludeCommand, inAInlineCommand, inALincludeCommand, inALoopCommand, inALoopIncCommand, inALoopToCommand, inALteExpression, inALtExpression, inALvarCommand, inAModuloExpression, inAMultipleCommand, inAMultiplyExpression, inANameCommand, inANameVariable, inANeExpression, inANegativeExpression, inANoopCommand, inANoopExpression, inANotExpression, inANumericAddExpression, inANumericEqExpression, inANumericExpression, inANumericNeExpression, inAOrExpression, inASequenceExpression, inASetCommand, inAStringExpression, inASubtractExpression, inAUvarCommand, inAVarCommand, inAVariableExpression, inAWithCommand, inStart, outAAddExpression, outAAltCommand, outAAndExpression, outAAutoescapeCommand, outACallCommand, outACommaExpression, outACommentCommand, outAContentTypeCommand, outACsOpenPosition, outADataCommand, outADecimalExpression, outADecNumberVariable, outADefCommand, outADescendVariable, outADivideExpression, outAEachCommand, outAEqExpression, outAEscapeCommand, outAEvarCommand, outAExistsExpression, outAExpandVariable, outAFunctionExpression, outAGteExpression, outAGtExpression, outAHardIncludeCommand, outAHardLincludeCommand, outAHexExpression, outAHexNumberVariable, outAIfCommand, outAIncludeCommand, outAInlineCommand, outALincludeCommand, outALoopCommand, outALoopIncCommand, outALoopToCommand, outALteExpression, outALtExpression, outALvarCommand, outAModuloExpression, outAMultipleCommand, outAMultiplyExpression, outANameCommand, outANameVariable, outANeExpression, outANegativeExpression, outANoopCommand, outANoopExpression, outANotExpression, outANumericAddExpression, outANumericEqExpression, outANumericExpression, outANumericNeExpression, outAOrExpression, outASequenceExpression, outASetCommand, outAStringExpression, outASubtractExpression, outAUvarCommand, outAVarCommand, outAVariableExpression, outAWithCommand, outStart
caseEOF, caseTAlt, caseTAnd, caseTArgWhitespace, caseTAssignment, caseTAutoescape, caseTBang, caseTBracketClose, caseTBracketOpen, caseTCall, caseTComma, caseTCommandDelimiter, caseTComment, caseTCommentStart, caseTContentType, caseTCsClose, caseTCsOpen, caseTData, caseTDecNumber, caseTDef, caseTDollar, caseTDot, caseTEach, caseTElse, caseTElseIf, caseTEq, caseTEscape, caseTEvar, caseTGt, caseTGte, caseTHardDelimiter, caseTHash, caseTHexNumber, caseTIf, caseTInclude, caseTInline, caseTLinclude, caseTLoop, caseTLt, caseTLte, caseTLvar, caseTMinus, caseTName, caseTNe, caseTOr, caseTParenClose, caseTParenOpen, caseTPercent, caseTPlus, caseTQuestion, caseTSet, caseTSlash, caseTStar, caseTString, caseTUvar, caseTVar, caseTWith, caseTWord, defaultCase, getIn, getOut, setIn, setOut
public EscapingEvaluator(VariableTranslator variableTranslator)
public JavaExpression computeIfExemptFromEscaping(PExpression expression, boolean propagateEscapeStatus)
expression
- variable expression to be evaluated.propagateEscapeStatus
- Whether to propagate the variable's escape status.JavaExpression
representing a boolean expression that evaluates to
true
if expression
should be exempted from escaping and false
otherwise.public JavaExpression computeEscaping(PExpression expression, boolean propagateEscapeStatus)
propagateEscapeStatus
to
determine how to treat constants, and whether escaping is required on a part of the expression
or the whole expression.public void caseAAddExpression(AAddExpression node)
caseAAddExpression
in interface Analysis
caseAAddExpression
in class DepthFirstAdapter
public void caseAFunctionExpression(AFunctionExpression node)
caseAFunctionExpression
in interface Analysis
caseAFunctionExpression
in class DepthFirstAdapter
public void caseAVariableExpression(AVariableExpression node)
caseAVariableExpression
in interface Analysis
caseAVariableExpression
in class DepthFirstAdapter
public void caseAStringExpression(AStringExpression node)
caseAStringExpression
in interface Analysis
caseAStringExpression
in class DepthFirstAdapter
public void caseADecimalExpression(ADecimalExpression node)
caseADecimalExpression
in interface Analysis
caseADecimalExpression
in class DepthFirstAdapter
public void caseAHexExpression(AHexExpression node)
caseAHexExpression
in interface Analysis
caseAHexExpression
in class DepthFirstAdapter
public void caseANumericExpression(ANumericExpression node)
caseANumericExpression
in interface Analysis
caseANumericExpression
in class DepthFirstAdapter
public void caseANotExpression(ANotExpression node)
caseANotExpression
in interface Analysis
caseANotExpression
in class DepthFirstAdapter
public void caseAExistsExpression(AExistsExpression node)
caseAExistsExpression
in interface Analysis
caseAExistsExpression
in class DepthFirstAdapter
public void caseAEqExpression(AEqExpression node)
caseAEqExpression
in interface Analysis
caseAEqExpression
in class DepthFirstAdapter
public void caseANumericEqExpression(ANumericEqExpression node)
caseANumericEqExpression
in interface Analysis
caseANumericEqExpression
in class DepthFirstAdapter
public void caseANeExpression(ANeExpression node)
caseANeExpression
in interface Analysis
caseANeExpression
in class DepthFirstAdapter
public void caseANumericNeExpression(ANumericNeExpression node)
caseANumericNeExpression
in interface Analysis
caseANumericNeExpression
in class DepthFirstAdapter
public void caseALtExpression(ALtExpression node)
caseALtExpression
in interface Analysis
caseALtExpression
in class DepthFirstAdapter
public void caseAGtExpression(AGtExpression node)
caseAGtExpression
in interface Analysis
caseAGtExpression
in class DepthFirstAdapter
public void caseALteExpression(ALteExpression node)
caseALteExpression
in interface Analysis
caseALteExpression
in class DepthFirstAdapter
public void caseAGteExpression(AGteExpression node)
caseAGteExpression
in interface Analysis
caseAGteExpression
in class DepthFirstAdapter
public void caseAAndExpression(AAndExpression node)
caseAAndExpression
in interface Analysis
caseAAndExpression
in class DepthFirstAdapter
public void caseAOrExpression(AOrExpression node)
caseAOrExpression
in interface Analysis
caseAOrExpression
in class DepthFirstAdapter
public void caseANumericAddExpression(ANumericAddExpression node)
caseANumericAddExpression
in interface Analysis
caseANumericAddExpression
in class DepthFirstAdapter
public void caseASubtractExpression(ASubtractExpression node)
caseASubtractExpression
in interface Analysis
caseASubtractExpression
in class DepthFirstAdapter
public void caseAMultiplyExpression(AMultiplyExpression node)
caseAMultiplyExpression
in interface Analysis
caseAMultiplyExpression
in class DepthFirstAdapter
public void caseADivideExpression(ADivideExpression node)
caseADivideExpression
in interface Analysis
caseADivideExpression
in class DepthFirstAdapter
public void caseAModuloExpression(AModuloExpression node)
caseAModuloExpression
in interface Analysis
caseAModuloExpression
in class DepthFirstAdapter
public void caseANegativeExpression(ANegativeExpression node)
caseANegativeExpression
in interface Analysis
caseANegativeExpression
in class DepthFirstAdapter
Copyright © 2010–2017 Google. All rights reserved.