// Generated from ReportParser.g4 by ANTLR 4.5.3
package com.bstek.ureport.dsl;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.misc.*;
import org.antlr.v4.runtime.tree.*;
import java.util.List;
import java.util.Iterator;
import java.util.ArrayList;
@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
public class ReportParserParser extends Parser {
static { RuntimeMetaData.checkVersion("4.5.3", RuntimeMetaData.VERSION); }
protected static final DFA[] _decisionToDFA;
protected static final PredictionContextCache _sharedContextCache =
new PredictionContextCache();
public static final int
T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
T__17=18, T__18=19, Cell=20, Operator=21, OP=22, ORDER=23, BOOLEAN=24,
COLON=25, COMMA=26, NULL=27, LeftParen=28, RightParen=29, STRING=30, AND=31,
OR=32, INTEGER=33, NUMBER=34, EXCLAMATION=35, EXP=36, Identifier=37, LETTER=38,
Char=39, DIGIT=40, WS=41, NL=42;
public static final int
RULE_entry = 0, RULE_expression = 1, RULE_exprComposite = 2, RULE_ternaryExpr = 3,
RULE_caseExpr = 4, RULE_casePart = 5, RULE_ifExpr = 6, RULE_ifPart = 7,
RULE_elseIfPart = 8, RULE_elsePart = 9, RULE_block = 10, RULE_exprBlock = 11,
RULE_returnExpr = 12, RULE_expr = 13, RULE_ifCondition = 14, RULE_variableAssign = 15,
RULE_item = 16, RULE_unit = 17, RULE_variable = 18, RULE_cellPosition = 19,
RULE_relativeCell = 20, RULE_currentCellValue = 21, RULE_currentCellData = 22,
RULE_cell = 23, RULE_dataset = 24, RULE_function = 25, RULE_functionParameter = 26,
RULE_set = 27, RULE_cellCoordinate = 28, RULE_coordinate = 29, RULE_cellIndicator = 30,
RULE_conditions = 31, RULE_condition = 32, RULE_property = 33, RULE_currentValue = 34,
RULE_simpleValue = 35, RULE_join = 36, RULE_aggregate = 37;
public static final String[] ruleNames = {
"entry", "expression", "exprComposite", "ternaryExpr", "caseExpr", "casePart",
"ifExpr", "ifPart", "elseIfPart", "elsePart", "block", "exprBlock", "returnExpr",
"expr", "ifCondition", "variableAssign", "item", "unit", "variable", "cellPosition",
"relativeCell", "currentCellValue", "currentCellData", "cell", "dataset",
"function", "functionParameter", "set", "cellCoordinate", "coordinate",
"cellIndicator", "conditions", "condition", "property", "currentValue",
"simpleValue", "join", "aggregate"
};
private static final String[] _LITERAL_NAMES = {
null, "'?'", "'case'", "'{'", "'}'", "'if'", "'else'", "'return'", "';'",
"'var'", "'='", "'&'", "'$'", "'#'", "'.'", "'cell'", "'['", "']'", "'to'",
"'@'", null, null, null, null, null, "':'", "','", "'null'", "'('", "')'",
null, null, null, null, null, "'!'"
};
private static final String[] _SYMBOLIC_NAMES = {
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, "Cell", "Operator", "OP",
"ORDER", "BOOLEAN", "COLON", "COMMA", "NULL", "LeftParen", "RightParen",
"STRING", "AND", "OR", "INTEGER", "NUMBER", "EXCLAMATION", "EXP", "Identifier",
"LETTER", "Char", "DIGIT", "WS", "NL"
};
public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
/**
* @deprecated Use {@link #VOCABULARY} instead.
*/
@Deprecated
public static final String[] tokenNames;
static {
tokenNames = new String[_SYMBOLIC_NAMES.length];
for (int i = 0; i < tokenNames.length; i++) {
tokenNames[i] = VOCABULARY.getLiteralName(i);
if (tokenNames[i] == null) {
tokenNames[i] = VOCABULARY.getSymbolicName(i);
}
if (tokenNames[i] == null) {
tokenNames[i] = "<INVALID>";
}
}
}
@Override
@Deprecated
public String[] getTokenNames() {
return tokenNames;
}
@Override
public Vocabulary getVocabulary() {
return VOCABULARY;
}
@Override
public String getGrammarFileName() { return "ReportParser.g4"; }
@Override
public String[] getRuleNames() { return ruleNames; }
@Override
public String getSerializedATN() { return _serializedATN; }
@Override
public ATN getATN() { return _ATN; }
public ReportParserParser(TokenStream input) {
super(input);
_interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
}
public static class EntryContext extends ParserRuleContext {
public TerminalNode EOF() { return getToken(ReportParserParser.EOF, 0); }
public List<ExpressionContext> expression() {
return getRuleContexts(ExpressionContext.class);
}
public ExpressionContext expression(int i) {
return getRuleContext(ExpressionContext.class,i);
}
public EntryContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_entry; }
@Override
public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
if ( visitor instanceof ReportParserVisitor ) return ((ReportParserVisitor<? extends T>)visitor).visitEntry(this);
else return visitor.visitChildren(this);
}
}
public final EntryContext entry() throws RecognitionException {
EntryContext _localctx = new EntryContext(_ctx, getState());
enterRule(_localctx, 0, RULE_entry);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(77);
_errHandler.sync(this);
_la = _input.LA(1);
do {
{
{
setState(76);
expression();
}
}
setState(79);
_errHandler.sync(this);
_la = _input.LA(1);
} while ( (((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__1) | (1L << T__4) | (1L << T__6) | (1L << T__8) | (1L << T__10) | (1L << T__11) | (1L << T__12) | (1L << T__14) | (1L << Cell) | (1L << BOOLEAN) | (1L << NULL) | (1L << LeftParen) | (1L << STRING) | (1L << INTEGER) | (1L << NUMBER) | (1L << Identifier))) != 0) );
setState(81);
match(EOF);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class ExpressionContext extends ParserRuleContext {
public ExprCompositeContext exprComposite() {
return getRuleContext(ExprCompositeContext.class,0);
}
public IfExprContext ifExpr() {
return getRuleContext(IfExprContext.class,0);
}
public CaseExprContext caseExpr() {
return getRuleContext(CaseExprContext.class,0);
}
public ReturnExprContext returnExpr() {
return getRuleContext(ReturnExprContext.class,0);
}
public VariableAssignContext variableAssign() {
return getRuleContext(VariableAssignContext.class,0);
}
public ExpressionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_expression; }
@Override
public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
if ( visitor instanceof ReportParserVisitor ) return ((ReportParserVisitor<? extends T>)visitor).visitExpression(this);
else return visitor.visitChildren(this);
}
}
public final ExpressionContext expression() throws RecognitionException {
ExpressionContext _localctx = new ExpressionContext(_ctx, getState());
enterRule(_localctx, 2, RULE_expression);
try {
setState(88);
_errHandler.sync(this);
switch ( getInterpreter().adaptivePredict(_input,1,_ctx) ) {
case 1:
enterOuterAlt(_localctx, 1);
{
setState(83);
exprComposite(0);
}
break;
case 2:
enterOuterAlt(_localctx, 2);
{
setState(84);
ifExpr();
}
break;
case 3:
enterOuterAlt(_localctx, 3);
{
setState(85);
caseExpr();
}
break;
case 4:
enterOuterAlt(_localctx, 4);
{
setState(86);
returnExpr();
}
break;
case 5:
enterOuterAlt(_localctx, 5);
{
setState(87);
variableAssign();
}
break;
}
}
catch (RecognitionException r
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
一、开源项目简介 J2eeFAST 是一个 Java EE 企业级快速开发平台, 致力于打造中小企业最好用的开源免费的后台框架平台 。系统基于(Spring Boot、Spring MVC、Apache Shiro、MyBatis-Plus、Freemarker、Bootstrap、AdminLTE)经典技术开发, 系统内置核心模块包含众多常用基础功能(在线代码生成功能、组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、license认证、BPM工作流等), 让你用最低的成本、最高的效率,开发项目,她也适合新手朋友练手 。同时具备, 界面简洁美观、高效、安全、源码可控、版本迭代快、免费技术交流群 等特点。她适用于所有Web应用,她会成为你快速开 内置功能婆 1.用户管理:用户是系统操作者,该功能主要完成系统用户配置 2.部门管理:配置系统组织机构 (公司、部门),树结构展现支持数据权限3.岗位管理:配置系统用户所属担任职务。 4.菜单管理:配置系统菜单,操作权限,按钮权限标识等 ST制作 5.角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分 6.字典管理:对系统中
资源推荐
资源详情
资源评论
收起资源包目录
致力于中小企业JavaEE企业级快速开发平台、后台框架平台 (3012个子文件)
initDb.bat 831B
pagkage-war.bat 766B
CHANGES 3KB
animate.min.css 162KB
style.css 146KB
summernote-bs3.css 143KB
bootstrap.css 143KB
bootstrap.css 118KB
bootstrap.min.css 118KB
bootstrap.min.css 118KB
AdminLTE.css 104KB
bootstrap.min.css 98KB
bootstrap.min.css 97KB
all-skins.css 82KB
fast-ui.css 74KB
layui.css 68KB
animate.css 65KB
style.css 62KB
ionicons.css 56KB
ui-grid.css 52KB
login2.css 50KB
easyui.min.css 47KB
animate.min.css 47KB
ueditor.css 43KB
font-awesome.min.css 41KB
selectpage.css 41KB
ui-grid.min.css 38KB
selectpage.min.css 37KB
ueditor.min.css 34KB
style-editor.css 34KB
login4.css 26KB
bootstrap-theme.css 26KB
style.css 25KB
admin.css 23KB
bootstrap-theme.min.css 23KB
handsontable.full.min.css 22KB
_all.css 21KB
video-js.css 21KB
bootstrap-editable.css 21KB
handsontable.min.css 20KB
handsontable.min.css 20KB
bootstrap-table.css 19KB
summernote.css 18KB
image.css 18KB
select2.css 17KB
select2-bootstrap.css 16KB
let-login.css 16KB
_all.css 15KB
select2.min.css 15KB
bootstrap-theme.css 15KB
video.css 15KB
comments.css 15KB
attachment.css 14KB
spectrum.css 14KB
login3.css 14KB
layer.css 14KB
layer.css 14KB
_all.css 14KB
bootstrap-colorpicker.css 13KB
_all.css 13KB
index.css 13KB
bootstrap-theme.min.css 13KB
bootstrap-colorpicker.min.css 13KB
smart_wizard_all.css 12KB
bootstrap-datetimepicker.css 12KB
bootstrap-select.css 12KB
webuploader.ex.css 11KB
video-js.min.css 11KB
fileinput.css 11KB
bootstrap-datetimepicker.min.css 11KB
bootstrap-select.min.css 10KB
introjs.css 10KB
layui.mobile.css 10KB
laydate.css 9KB
jquery.qtip.min.css 9KB
fileinput.min.css 9KB
prism.css 9KB
jquery.magnify.css 8KB
nvd3.min.css 8KB
awesome.css 8KB
awesome.css 8KB
laydate.css 8KB
laydate.min.css 8KB
verify.css 8KB
400style.css 7KB
metroStyle.css 7KB
metroStyle.css 7KB
preview.css 7KB
shCoreDefault.css 7KB
jquery.magnify.min.css 7KB
zTreeStyle.css 6KB
zTreeStyle.css 6KB
jquery.contextMenu.min.css 6KB
daterangepicker-bs3.css 5KB
jquery.toast.css 5KB
layer.css 5KB
style.css 5KB
bootstrap-tokenfield.css 5KB
qunit.css 5KB
cropper.css 5KB
共 3012 条
- 1
- 2
- 3
- 4
- 5
- 6
- 31
资源评论
TNT报社
- 粉丝: 2568
- 资源: 103
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功