/* Generated By:JJTree&JavaCC: Do not edit this line. eg1TokenManager.java */
public class eg1TokenManager implements eg1Constants
{
public static java.io.PrintStream debugStream = System.out;
public static void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
private static final int jjStopStringLiteralDfa_0(int pos, long active0)
{
switch (pos)
{
default :
return -1;
}
}
private static final int jjStartNfa_0(int pos, long active0)
{
return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
}
static private final int jjStopAtPos(int pos, int kind)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
return pos + 1;
}
static private final int jjStartNfaWithStates_0(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
return jjMoveNfa_0(state, pos + 1);
}
static private final int jjMoveStringLiteralDfa0_0()
{
switch(curChar)
{
case 37:
return jjStopAtPos(0, 19);
case 40:
return jjStopAtPos(0, 20);
case 41:
return jjStopAtPos(0, 21);
case 42:
return jjStopAtPos(0, 17);
case 43:
return jjStopAtPos(0, 15);
case 45:
return jjStopAtPos(0, 16);
case 47:
return jjStartNfaWithStates_0(0, 18, 10);
case 59:
return jjStopAtPos(0, 14);
default :
return jjMoveNfa_0(0, 0);
}
}
static private final void jjCheckNAdd(int state)
{
if (jjrounds[state] != jjround)
{
jjstateSet[jjnewStateCnt++] = state;
jjrounds[state] = jjround;
}
}
static private final void jjAddStates(int start, int end)
{
do {
jjstateSet[jjnewStateCnt++] = jjnextStates[start];
} while (start++ != end);
}
static private final void jjCheckNAddTwoStates(int state1, int state2)
{
jjCheckNAdd(state1);
jjCheckNAdd(state2);
}
static private final void jjCheckNAddStates(int start, int end)
{
do {
jjCheckNAdd(jjnextStates[start]);
} while (start++ != end);
}
static private final void jjCheckNAddStates(int start)
{
jjCheckNAdd(jjnextStates[start]);
jjCheckNAdd(jjnextStates[start + 1]);
}
static final long[] jjbitVec0 = {
0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
};
static private final int jjMoveNfa_0(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
jjnewStateCnt = 21;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
for (;;)
{
if (++jjround == 0x7fffffff)
ReInitRounds();
if (curChar < 64)
{
long l = 1L << curChar;
MatchLoop: do
{
switch(jjstateSet[--i])
{
case 10:
if (curChar == 42)
jjCheckNAddTwoStates(16, 17);
else if (curChar == 47)
jjCheckNAddStates(0, 2);
break;
case 0:
if ((0x3fe000000000000L & l) != 0L)
{
if (kind > 7)
kind = 7;
jjCheckNAddTwoStates(1, 2);
}
else if (curChar == 47)
jjAddStates(3, 4);
else if (curChar == 48)
{
if (kind > 7)
kind = 7;
jjCheckNAddStates(5, 7);
}
break;
case 1:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 7)
kind = 7;
jjCheckNAddTwoStates(1, 2);
break;
case 4:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 11)
kind = 11;
jjstateSet[jjnewStateCnt++] = 4;
break;
case 5:
if (curChar != 48)
break;
if (kind > 7)
kind = 7;
jjCheckNAddStates(5, 7);
break;
case 7:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 7)
kind = 7;
jjCheckNAddTwoStates(7, 2);
break;
case 8:
if ((0xff000000000000L & l) == 0L)
break;
if (kind > 7)
kind = 7;
jjCheckNAddTwoStates(8, 2);
break;
case 9:
if (curChar == 47)
jjAddStates(3, 4);
break;
case 11:
if ((0xffffffffffffdbffL & l) != 0L)
jjCheckNAddStates(0, 2);
break;
case 12:
if ((0x2400L & l) != 0L && kind > 5)
kind = 5;
break;
case 13:
if (curChar == 10 && kind > 5)
kind = 5;
break;
case 14:
if (curChar == 13)
jjstateSet[jjnewStateCnt++] = 13;
break;
case 15:
if (curChar == 42)
jjCheckNAddTwoStates(16, 17);
break;
case 16:
if ((0xfffffbffffffffffL & l) != 0L)
jjCheckNAddTwoStates(16, 17);
break;
case 17:
if (curChar == 42)
jjAddStates(8, 9);
break;
case 18:
if ((0xffff7fffffffffffL & l) != 0L)
jjCheckNAddTwoStates(19, 17);
break;
case 19:
if ((0xfffffbffffffffffL & l) != 0L)
jjCheckNAddTwoStates(19, 17);
break;
case 20:
if (curChar == 47 && kind > 6)
kind = 6;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
MatchLoop: do
{
switch(jjstateSet[--i])
{
case 0:
case 4:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
if (kind > 11)
kind = 11;
jjCheckNAdd(4);
break;
case 2:
if ((0x100000001000L & l) != 0L && kind > 7)
kind = 7;
break;
case 6:
if ((0x100000001000000L & l) != 0L)
jjCheckNAdd(7);
break;
case 7:
if ((0x7e0000007eL & l) == 0L)
break;
if (kind > 7)
kind = 7;
jjCheckNAddTwoStates(7, 2);
break;
case 11:
jjAddStates(0, 2);
break;
case 16:
jjCheckNAddTwoStates(16, 17);
break;
case 18:
case 19:
jjCheckNAddTwoStates(19, 17);
break;
default : break;
}
} while(i != startsAt);
}
else
{
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (
没有合适的资源?快使用搜索试试~ 我知道了~
javaCC_字符串解析的强大工具
共182个文件
java:76个
jj:31个
html:22个
3星 · 超过75%的资源 需积分: 10 24 下载量 98 浏览量
2009-06-04
12:19:56
上传
评论
收藏 586KB RAR 举报
温馨提示
javaCC是一个解析的工具,功能比较强大,实现一个脚本即可。这个资源是与前面的公式解析器配套使用的。曾实现过java语言等的解析
资源推荐
资源详情
资源评论
收起资源包目录
javaCC_字符串解析的强大工具 (182个子文件)
jjtree.bat 88B
javacc.bat 87B
jjdoc.bat 86B
eg1.class 7KB
eg1TokenManager.class 6KB
SimpleCharStream.class 6KB
ParseException.class 3KB
TokenMgrError.class 2KB
JJTeg1State.class 2KB
SimpleNode.class 2KB
eg1Constants.class 1010B
eg1TreeConstants.class 743B
Token.class 546B
Node.class 304B
javaccgrm.html 53KB
lookahead.html 27KB
javaccreleasenotes.html 27KB
JJTree.html 22KB
apiroutines.html 19KB
jjtreeintro.html 18KB
jjtreereleasenotes.html 16KB
simpleREADME.html 16KB
tokenmanager.html 12KB
CharStream.html 10KB
errorrecovery.html 10KB
features.html 7KB
jjtreeREADME.html 6KB
jjdocreleasenotes.html 4KB
docindex.html 4KB
commandline.html 4KB
index.html 4KB
lexertips.html 4KB
JJDoc.html 3KB
installhelp.html 3KB
mailinglist.html 2KB
support.html 2KB
javacc.jar 268KB
eg1TokenManager.java 13KB
eg1.java 13KB
SimpleCharStream.java 12KB
UnparseVisitor.java 11KB
Obfuscator.java 9KB
CalcGUI.java 7KB
CalcGUI.java 7KB
ParseException.java 6KB
CharCollector.java 5KB
SimpleNode.java 4KB
Main.java 4KB
TokenMgrError.java 4KB
SimpleNode.java 4KB
eg4DumpVisitor.java 3KB
JJTeg1State.java 3KB
JJTeg1State.java 3KB
Token.java 3KB
Token.java 3KB
Globals.java 3KB
SPL.java 3KB
ASTReadStatement.java 2KB
Node.java 2KB
ProducerConsumer.java 2KB
AddAcceptVisitor.java 2KB
ASTBitwiseAndNode.java 2KB
ASTBitwiseXorNode.java 2KB
ASTBitwiseOrNode.java 2KB
ASTCompilationUnit.java 2KB
Main.java 2KB
ASTEQNode.java 2KB
ASTNENode.java 2KB
MyLexer.java 2KB
ASTSpecialBlock.java 2KB
ASTAndNode.java 2KB
ASTOrNode.java 2KB
ASTWriteStatement.java 2KB
ASTMyOtherID.java 2KB
ASTVarDeclaration.java 2KB
ASTSubtractNode.java 2KB
ASTModNode.java 2KB
ASTMulNode.java 2KB
ASTDivNode.java 2KB
ASTIfStatement.java 2KB
ASTGENode.java 2KB
ASTLENode.java 2KB
ASTGTNode.java 2KB
ASTAddNode.java 2KB
ASTLTNode.java 2KB
ASTWhileStatement.java 2KB
SimpleNode.java 2KB
SimpleNode.java 2KB
Main.java 2KB
ASTAssignment.java 2KB
ASTCompilationUnit.java 2KB
ASTBitwiseComplNode.java 2KB
Incr.java 2KB
Main.java 2KB
ASTNotNode.java 2KB
ASTBlock.java 2KB
ASTStatementExpression.java 2KB
Main.java 2KB
ASTMyID.java 2KB
ASTIntConstNode.java 2KB
共 182 条
- 1
- 2
资源评论
- tmpjack12013-04-15可惜不是源代码。
- piaosasatuo2013-01-17是工具,不是代码
- cooliufang2012-06-28吼吼,下载错误,还以为又是参考资料呢 没想到是javacc4.0工具,我已经下载了5.0版本了
dave_xiang
- 粉丝: 3
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功