/* Generated By:JJTree&JavaCC: Do not edit this line. OgnlParser.java */
package ognl;
import java.math.*;
/**
* OgnlParser is a JavaCC parser class; it translates OGNL expressions into abstract
* syntax trees (ASTs) that can then be interpreted by the getValue and setValue methods.
*/
public class OgnlParser/*@bgen(jjtree)*/implements OgnlParserTreeConstants, OgnlParserConstants {/*@bgen(jjtree)*/
protected JJTOgnlParserState jjtree = new JJTOgnlParserState();
/**
* This is the top-level construct of OGNL.
*/
final public Node topLevelExpression() throws ParseException {
expression();
jj_consume_token(0);
{if (true) return jjtree.rootNode();}
throw new Error("Missing return statement in function");
}
// sequence (level 14)
final public void expression() throws ParseException {
assignmentExpression();
label_1:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 1:
;
break;
default:
jj_la1[0] = jj_gen;
break label_1;
}
jj_consume_token(1);
ASTSequence jjtn001 = new ASTSequence(JJTSEQUENCE);
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
assignmentExpression();
} catch (Throwable jjte001) {
if (jjtc001) {
jjtree.clearNodeScope(jjtn001);
jjtc001 = false;
} else {
jjtree.popNode();
}
if (jjte001 instanceof RuntimeException) {
{if (true) throw (RuntimeException)jjte001;}
}
if (jjte001 instanceof ParseException) {
{if (true) throw (ParseException)jjte001;}
}
{if (true) throw (Error)jjte001;}
} finally {
if (jjtc001) {
jjtree.closeNodeScope(jjtn001, 2);
}
}
}
}
// assignment expression (level 13)
final public void assignmentExpression() throws ParseException {
conditionalTestExpression();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 2:
jj_consume_token(2);
ASTAssign jjtn001 = new ASTAssign(JJTASSIGN);
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
assignmentExpression();
} catch (Throwable jjte001) {
if (jjtc001) {
jjtree.clearNodeScope(jjtn001);
jjtc001 = false;
} else {
jjtree.popNode();
}
if (jjte001 instanceof RuntimeException) {
{if (true) throw (RuntimeException)jjte001;}
}
if (jjte001 instanceof ParseException) {
{if (true) throw (ParseException)jjte001;}
}
{if (true) throw (Error)jjte001;}
} finally {
if (jjtc001) {
jjtree.closeNodeScope(jjtn001, 2);
}
}
break;
default:
jj_la1[1] = jj_gen;
;
}
}
// conditional test (level 12)
final public void conditionalTestExpression() throws ParseException {
logicalOrExpression();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 3:
jj_consume_token(3);
conditionalTestExpression();
jj_consume_token(4);
ASTTest jjtn001 = new ASTTest(JJTTEST);
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
conditionalTestExpression();
} catch (Throwable jjte001) {
if (jjtc001) {
jjtree.clearNodeScope(jjtn001);
jjtc001 = false;
} else {
jjtree.popNode();
}
if (jjte001 instanceof RuntimeException) {
{if (true) throw (RuntimeException)jjte001;}
}
if (jjte001 instanceof ParseException) {
{if (true) throw (ParseException)jjte001;}
}
{if (true) throw (Error)jjte001;}
} finally {
if (jjtc001) {
jjtree.closeNodeScope(jjtn001, 3);
}
}
break;
default:
jj_la1[2] = jj_gen;
;
}
}
// logical or (||) (level 11)
final public void logicalOrExpression() throws ParseException {
logicalAndExpression();
label_2:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 5:
case 6:
;
break;
default:
jj_la1[3] = jj_gen;
break label_2;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 5:
jj_consume_token(5);
break;
case 6:
jj_consume_token(6);
break;
default:
jj_la1[4] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
ASTOr jjtn001 = new ASTOr(JJTOR);
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
logicalAndExpression();
} catch (Throwable jjte001) {
if (jjtc001) {
jjtree.clearNodeScope(jjtn001);
jjtc001 = false;
} else {
jjtree.popNode();
}
if (jjte001 instanceof RuntimeException) {
{if (true) throw (RuntimeException)jjte001;}
}
if (jjte001 instanceof ParseException) {
{if (true) throw (ParseException)jjte001;}
}
{if (true) throw (Error)jjte001;}
} finally {
if (jjtc001) {
jjtree.closeNodeScope(jjtn001, 2);
}
}
}
}
// logical and (&&) (level 10)
final public void logicalAndExpression() throws ParseException {
inclusiveOrExpression();
label_3:
while (true) {
switch ((jj_n
没有合适的资源?快使用搜索试试~ 我知道了~
ognl-2.6.11-sources.rar
共107个文件
java:103个
mf:1个
jj:1个
需积分: 0 1 下载量 130 浏览量
2009-09-21
20:13:35
上传
评论
收藏 193KB RAR 举报
温馨提示
ognl-2.6.11-sources.rar 懒得写了,Struts2里用到的东西
资源推荐
资源详情
资源评论
收起资源包目录
ognl-2.6.11-sources.rar (107个子文件)
package.html 2KB
OgnlParser.java 98KB
OgnlRuntime.java 68KB
OgnlParserTokenManager.java 50KB
OgnlOps.java 27KB
Ognl.java 26KB
OgnlContext.java 21KB
JavaCharStream.java 12KB
SimpleNode.java 11KB
IntHashMap.java 10KB
Evaluation.java 10KB
ASTChain.java 10KB
ObjectArrayPool.java 6KB
ParseException.java 6KB
ArrayPropertyAccessor.java 6KB
ASTConst.java 5KB
ObjectPropertyAccessor.java 5KB
ASTCtor.java 5KB
DefaultMemberAccess.java 5KB
ObjectIndexedPropertyDescriptor.java 5KB
OgnlException.java 5KB
ListPropertyAccessor.java 5KB
EvaluationPool.java 5KB
ASTProperty.java 4KB
TokenMgrError.java 4KB
ASTMap.java 4KB
PropertyAccessor.java 4KB
ASTStaticField.java 4KB
MapPropertyAccessor.java 4KB
ASTMethod.java 4KB
ExpressionNode.java 3KB
Node.java 3KB
ASTEval.java 3KB
MethodAccessor.java 3KB
ASTStaticMethod.java 3KB
NumericTypes.java 3KB
EnumerationPropertyAccessor.java 3KB
DynamicSubscript.java 3KB
ObjectMethodAccessor.java 3KB
IteratorPropertyAccessor.java 3KB
JJTOgnlParserState.java 3KB
ASTSequence.java 3KB
SetPropertyAccessor.java 3KB
ASTAnd.java 3KB
TypeConverter.java 3KB
ASTOr.java 3KB
ElementsAccessor.java 3KB
DefaultClassResolver.java 3KB
ASTSelectLast.java 3KB
ASTSelectFirst.java 3KB
ASTSelect.java 3KB
MemberAccess.java 3KB
ASTTest.java 3KB
NumberElementsAccessor.java 3KB
ASTList.java 3KB
ASTProject.java 3KB
Token.java 3KB
NoSuchPropertyException.java 3KB
ObjectElementsAccessor.java 2KB
ASTInstanceof.java 2KB
ASTKeyValue.java 2KB
ASTMultiply.java 2KB
ASTBitAnd.java 2KB
ASTBitOr.java 2KB
ASTXor.java 2KB
ASTAdd.java 2KB
ArrayElementsAccessor.java 2KB
ASTVarRef.java 2KB
OgnlInvokePermission.java 2KB
DefaultTypeConverter.java 2KB
NullHandler.java 2KB
ASTUnsignedShiftRight.java 2KB
ASTThisVarRef.java 2KB
ASTGreaterEq.java 2KB
ASTGreater.java 2KB
ASTNotIn.java 2KB
ASTLessEq.java 2KB
ASTRootVarRef.java 2KB
ASTNotEq.java 2KB
ASTLess.java 2KB
ASTIn.java 2KB
ASTEq.java 2KB
ASTShiftRight.java 2KB
ASTShiftLeft.java 2KB
ASTRemainder.java 2KB
ASTSubtract.java 2KB
ASTDivide.java 2KB
ASTAssign.java 2KB
ObjectNullHandler.java 2KB
EnumerationIterator.java 2KB
ASTNot.java 2KB
ASTBitNegate.java 2KB
ASTNegate.java 2KB
OgnlParserTreeConstants.java 2KB
InappropriateExpressionException.java 2KB
IteratorEnumeration.java 2KB
EnumerationElementsAccessor.java 2KB
IteratorElementsAccessor.java 2KB
MapElementsAccessor.java 2KB
CollectionElementsAccessor.java 2KB
共 107 条
- 1
- 2
资源评论
neven860303
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功