程序包 org.beetl.core
类 AntlrProgramBuilder
java.lang.Object
org.beetl.core.AntlrProgramBuilder
- 直接已知子类:
DebugAntlrProgramBuilder
通过antlr来生成Program
- 作者:
- xiandafu
-
字段概要
字段修饰符和类型字段说明protected ProgramMetaDataprotected Expression[]protected GroupTemplateprotected ProgramBuilderContext -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明protected voidaddSafe(Expression[] exps) 为表达式强制增加安全输出符号通过Antlr的ParseTree生成Beetl的ProgramMetaDataprotected voidgetBTToken(String text, int line) getBTToken(org.antlr.v4.runtime.Token t) protected String[]getExpressionString(BeetlParser.ExpressionListContext expListCtx) protected Expression[]getExprssionList(BeetlParser.ExpressionListContext expListCtx) protected Stringprotected AjaxStatementparseAjax(BeetlParser.AjaxStContext ajaxCtx) protected AndExpressionprotected VarAssignStatement定义变量protected VarRefAssignExpress赋值变量protected BlockStatementparseBlock(List list, org.antlr.v4.runtime.ParserRuleContext ctx) protected CompareExpressionprotected DirectiveStatement1.x,2.x 定义全局安全输出办法,这里兼容,新方法是可以使用配置 directive dynamic xxx,yyprotected Expressionprotected Expression[]protected Statementprotected FunctionExpressionprotected IfStatementprotected IncDecExpressionprotected Expressionprotected Expressionprotected ArthExpressionprotected NativeCallExpressionprotected Expressionprotected NotBooleanExpressionprotected IncDecExpressionprotected OrExpressionprotected Expressionprotected Expressionprotected SelectStatementparseSelect(BeetlParser.SelectStContext selectCtx) protected VarRefAssignExpressparseSelfAssingInExp(BeetlParser.AssingSelfExpContext selfExpContext) x+=5protected StatementparseStatment(org.antlr.v4.runtime.ParserRuleContext node) protected SwitchStatementprotected TagStatementprotected Expressionprotected Statementprotected TryCatchStatementparseTryCatch(BeetlParser.TryStContext tryStCtx) protected VarAttribute[]protected Expressionprotected VarRefprotected WhileStatementprotected voidregisterNewVar(ASTNode vas) protected voidregisterVar(ASTNode vas) protected voidreParseAjax(AjaxStatement ajaxStat, BeetlParser.BlockContext blockCtx)
-
字段详细资料
-
data
-
pbCtx
-
EMPTY_EXPRESSION
-
gt
-
safeParameters
-
-
构造器详细资料
-
AntlrProgramBuilder
-
-
方法详细资料
-
build
通过Antlr的ParseTree生成Beetl的ProgramMetaData -
parseStatment
-
parseSelect
-
parseAjax
-
reParseAjax
-
parseSwitch
-
parseAssingInExp
赋值变量 -
parseSelfAssingInExp
x+=5 -
registerNewVar
-
registerVar
-
parseAssign
定义变量 -
checkGoto
-
parseWhile
-
parseTag
-
parseTryCatch
-
parseDirectiveStatement
1.x,2.x 定义全局安全输出办法,这里兼容,新方法是可以使用配置 directive dynamic xxx,yy -
parseFunExp
-
parseIf
-
getID
-
addSafe
为表达式强制增加安全输出符号- 参数:
exps-
-
getExprssionList
-
getExpressionString
-
parseForSt
-
parseTextOutputSt
-
parseExpress
-
parseIncDecOneContext
-
parseOneIncDecContext
-
parseNegExpression
-
parseNotExpression
-
parseOrExpression
-
parseAndExpression
-
parseNativeCallExpression
-
parseExpressionCtxList
-
parseJson
-
parseMuldivmodExpression
-
parsePlusMins
-
parseTernaryExpression
-
parseCompareExpression
-
parseVarRefExpression
-
parseSafeOutput
-
parseVarRefInLeftExpression
-
parseVarAttribute
-
parseLiteralExpress
-
parseBlock
-
getBTToken
-
getBTToken
-