com.intershop.beehive.isml.internal.parser.ISMLtoJSPcompiler Maven / Gradle / Ivy
The newest version!
/* Generated By:JavaCC: Do not edit this line. ISMLtoJSPcompiler.java */
package com.intershop.beehive.isml.internal.parser;
import com.intershop.beehive.isml.capi.ISMLException;
import com.intershop.beehive.isml.capi.ISMLTemplateConstants;
import com.intershop.beehive.isml.internal.TemplateCompiler;
import com.intershop.beehive.isml.internal.parser.Token;
import java.io.*;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.ArrayList;
public class ISMLtoJSPcompiler implements TemplateCompiler, ISMLtoJSPcompilerConstants {
boolean isSSSenabled = false;
int startline = 1;
int startcolumn = 1;
File in = null;
InputStream inStream = null;
/* JSP tags */
protected static String INLINE_SCRIPTING_START = "<%=";
protected static String INLINE_SCRIPTING_END = "%>";
protected static String SCRIPTING_START = "<% ";
protected static String SCRIPTING_END = " %>";
protected static String DIRECTIVE_START = "<%@ ";
protected static String DIRECTIVE_END = " %>";
public boolean compileTemplate( int securityLevel,
OutputStreamWriter out,
File inputfile, InputStream instr)
throws ISMLException
{
/* stack to test correct nesting and ending of IF's and LOOP's */
List nestingTable = new LinkedList();
try
{
if ( securityLevel==ALLOW_ALL )
{
isSSSenabled = true;
}
else
{
isSSSenabled = false;
}
in = inputfile;
inStream = instr;
CompactingWriter result = new CompactingWriter(new BufferedWriter(out,
ISMLTemplateConstants.DEFAULT_TEMPLATE_BUFFERSIZE), out.getEncoding());
result.print(DIRECTIVE_START);
result.print(" page buffer=\u005c"none\u005c"");
result.print(" import=\u005c"java.util.*,java.io.*" +
",com.intershop.beehive.core.internal.template.*" +
",com.intershop.beehive.core.internal.template.isml.*" +
",com.intershop.beehive.core.capi.log.*" +
",com.intershop.beehive.core.capi.resource.*" +
",com.intershop.beehive.core.capi.util.UUIDMgr,com.intershop.beehive.core.capi.util.XMLHelper" +
",com.intershop.beehive.foundation.util.*" +
",com.intershop.beehive.core.internal.url.*" +
",com.intershop.beehive.core.internal.resource.*" +
",com.intershop.beehive.core.capi.pipeline.PipelineDictionary" +
",com.intershop.beehive.core.capi.naming.NamingMgr" +
",com.intershop.beehive.core.capi.pagecache.PageCacheMgr" +
",com.intershop.beehive.core.capi.request.SessionMgr" +
",com.intershop.beehive.core.internal.request.SessionMgrImpl" +
",com.intershop.beehive.core.pipelet.PipelineConstants\u005c"");
result.print(" extends=\u005c"com.intershop.beehive.core.internal.template.AbstractTemplate\u005c"");
result.print(DIRECTIVE_END);
result.print(SCRIPTING_START);
result.print("\u005cnboolean _boolean_result=false;\u005cn");
// replace the original JSP writer with a Wrapper implementation to prevent NPE for NULL string writing
result.print("out = new WrappedJspWriter(out);\u005cn");
result.print("TemplateExecutionConfig context = getTemplateExecutionConfig();\u005cn");
result.print("createTemplatePageConfig(context.getServletRequest());\u005cn");
result.print("printHeader(out);\u005cn");
result.print(SCRIPTING_END);
result.flush();
this.specification(result, nestingTable);
if (nestingTable.size()>0)
{
throw new ParseException("Error in template " + in.getName() + " : 1 or more ISIF or ISLOOP statement without or end tag.");
}
if (token_source.brackets != 0)
{
throw new ParseException("Error in template " + in.getName() + " : Check for lost opening or closing brackets (\u005c"(\u005c" or \u005c")\u005c").");
}
result.print(SCRIPTING_START);
result.print("printFooter(out);");
result.print(SCRIPTING_END);
result.flush();
return true;
}
catch (ParseException e)
{
throw new ISMLException(e.getMessage());
}
catch (TokenMgrError e)
{
throw new ISMLException(e.getMessage());
}
catch (IOException e)
{
throw new ISMLException(e.getMessage());
}
}
/* Main production rule */
final public void specification(CompactingWriter result, List nestingTable) throws ParseException, IOException {
Token token = null;
boolean previewAttributeRemoveFlag = false;
label_1:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case INC_TAG:
case JSP_TAG:
case BEAN_TAG:
case SERVLET_TAG:
case EJB_TAG:
case ISCOMMENT:
case LOSTCOMMENT_END:
case ISBREAK:
case ISCACHE:
case ISCACHEKEY:
case ISDICTIONARY:
case ISCONTENT:
case ISCOOKIE:
case ISELSE:
case ISELSIF:
case ISIF:
case ISIF_END:
case CLOSING_ISELSE:
case ISINCLUDE:
case ISLOOP:
case ISLOOP_END:
case ISFILEBUNDLE:
case ISFILEBUNDLE_END:
case ISFORM:
case ISFORM_END:
case ISFILE:
case ISRENDER:
case ISRENDER_END:
case ISMODULE:
case ISNEXT:
case ISPRINT:
case ISREDIRECT:
case ISSELECT:
case ISSET:
case ISBINARY:
case ISPIPELINE:
case ISTEXT:
case ISPLACEHOLDER:
case ISPLACEMENT:
case ISPLACEMENT_END:
case ISX:
case ISX_END:
case IS_EXPRESSION:
case IS_EXP_PREVIEW:
case POWER_HOOK:
case NO_EXPRESSION_1:
case NO_EXPRESSION_2:
case NO_EXPRESSION_3:
case NO_EXPRESSION_4:
case NO_EXPRESSION_5:
case NO_EXPRESSION_6:
case NO_EXPRESSION_7:
case CONTENT:
;
break;
default:
jj_la1[0] = jj_gen;
break label_1;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case POWER_HOOK:
token = jj_consume_token(POWER_HOOK);
result.print(token);
result.print(SCRIPTING_START);
result.print("insertIntershopSignature(request,(com.intershop.beehive.core.capi.request.ServletResponse)response);");
result.print(SCRIPTING_END);
break;
case NO_EXPRESSION_1:
case NO_EXPRESSION_2:
case NO_EXPRESSION_3:
case NO_EXPRESSION_4:
case NO_EXPRESSION_5:
case NO_EXPRESSION_6:
case NO_EXPRESSION_7:
case CONTENT:
stuff(result);
previewAttributeRemoveFlag = false;
break;
case INC_TAG:
case JSP_TAG:
case BEAN_TAG:
case SERVLET_TAG:
case EJB_TAG:
sss(result);
previewAttributeRemoveFlag = false;
break;
case ISBREAK:
case ISCACHE:
case ISCACHEKEY:
case ISDICTIONARY:
case ISCONTENT:
case ISCOOKIE:
case ISELSE:
case ISELSIF:
case ISIF:
case ISIF_END:
case ISINCLUDE:
case ISLOOP:
case ISLOOP_END:
case ISFILEBUNDLE:
case ISFILEBUNDLE_END:
case ISFORM:
case ISFORM_END:
case ISFILE:
case ISRENDER:
case ISRENDER_END:
case ISMODULE:
case ISNEXT:
case ISPRINT:
case ISREDIRECT:
case ISSELECT:
case ISSET:
case ISBINARY:
case ISPIPELINE:
case ISTEXT:
case ISPLACEHOLDER:
case ISPLACEMENT:
case ISPLACEMENT_END:
case ISX:
case ISX_END:
isTag(result, nestingTable);
previewAttributeRemoveFlag = false;
break;
case IS_EXPRESSION:
token = jj_consume_token(IS_EXPRESSION);
startline = token.beginLine;
startcolumn = token.beginColumn;
previewAttributeRemoveFlag = outExpression(result);
break;
case IS_EXP_PREVIEW:
token = jj_consume_token(IS_EXP_PREVIEW);
if (!previewAttributeRemoveFlag)
{
// print usual HTML content
result.print(token);
}
else if (token.toString().charAt(0) == '\u005c"')
{
result.print("\u005c"");
}
previewAttributeRemoveFlag = false;
break;
case ISCOMMENT:
jj_consume_token(ISCOMMENT);
label_2:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMENT_CONTENT:
;
break;
default:
jj_la1[1] = jj_gen;
break label_2;
}
jj_consume_token(COMMENT_CONTENT);
}
jj_consume_token(ISCOMMENT_END);
break;
case LOSTCOMMENT_END:
jj_consume_token(LOSTCOMMENT_END);
{if (true) throw new ParseException("Error in template " + in.getName() + " : Check comment usage, nesting is not allowed and there must be a starting \u005c"\u005c" (or \u005c"\u005c").");}
break;
case CLOSING_ISELSE:
jj_consume_token(CLOSING_ISELSE);
{if (true) throw new ParseException("Error in template " + in.getName() + " : Unexpected token encountered!");}
break;
default:
jj_la1[2] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
/* rule for ISML expressions outside ISML tags */
final public boolean outExpression(CompactingWriter result) throws ParseException, IOException {
StringBuilder buffer = new StringBuilder();
try {
is_expression(buffer);
jj_consume_token(EXP_STOP);
result.print(INLINE_SCRIPTING_START);
result.print("context.getFormattedValue(" + buffer + ",null)");
result.print(INLINE_SCRIPTING_END);
{if (true) return true;}
} catch (ParseException e) {
/* this is a workaround for single #'s (as in color codes) */
/* if is_expression fails the input stream is parsed again */
/* from the beginning to process all tokens after the '#' */
/* with scope default */
if (e.getMessage().indexOf('#') < 0)
{
{if (true) throw new ParseException("Error in template " + in.getName() + " : " + e.getMessage());}
}
try
{
InputStream ins = inStream;
if (ins != null && ins.markSupported())
{
ins.reset();
}
else
{
ins = new BufferedInputStream(new FileInputStream(in), ISMLTemplateConstants.DEFAULT_TEMPLATE_BUFFERSIZE);
}
this.ReInit(ins);
token_source.SwitchTo(SKIPPER);
Token skipperToken = getNextToken();
while ( (skipperToken.beginLine &
are just a workarounds for the "single #'s" -
workaround to speed up template processing significantly
is a special case for CSS color codes
is for color codes enclosed in escaped double quotes */
final public void stuff(CompactingWriter result) throws ParseException, IOException {
Token stuff;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CONTENT:
stuff = jj_consume_token(CONTENT);
break;
case NO_EXPRESSION_1:
stuff = jj_consume_token(NO_EXPRESSION_1);
break;
case NO_EXPRESSION_2:
stuff = jj_consume_token(NO_EXPRESSION_2);
break;
case NO_EXPRESSION_3:
stuff = jj_consume_token(NO_EXPRESSION_3);
break;
case NO_EXPRESSION_4:
stuff = jj_consume_token(NO_EXPRESSION_4);
break;
case NO_EXPRESSION_5:
stuff = jj_consume_token(NO_EXPRESSION_5);
break;
case NO_EXPRESSION_6:
stuff = jj_consume_token(NO_EXPRESSION_6);
break;
case NO_EXPRESSION_7:
stuff = jj_consume_token(NO_EXPRESSION_7);
break;
default:
jj_la1[3] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
// print usual HTML content
result.printCompact(stuff);
}
/**
* Server side scripting rules
**/
final public void sss(CompactingWriter result) throws ParseException, IOException {
Token stuff;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case INC_TAG:
case JSP_TAG:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case INC_TAG:
stuff = jj_consume_token(INC_TAG);
break;
case JSP_TAG:
stuff = jj_consume_token(JSP_TAG);
break;
default:
jj_la1[4] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (isSSSenabled) { result.print(stuff); }
break;
case BEAN_TAG:
beanTag(result);
break;
case SERVLET_TAG:
servletTag(result);
break;
case EJB_TAG:
ejbTag(result);
break;
default:
jj_la1[5] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
final public void beanTag(CompactingWriter result) throws ParseException, IOException {
Token stuff;
stuff = jj_consume_token(BEAN_TAG);
if (isSSSenabled) { result.print(stuff); }
label_3:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BEAN_CONTENT:
;
break;
default:
jj_la1[6] = jj_gen;
break label_3;
}
stuff = jj_consume_token(BEAN_CONTENT);
if (isSSSenabled) { result.print(stuff); }
}
stuff = jj_consume_token(BEAN_ETAG);
if (isSSSenabled) { result.print(stuff); }
}
final public void servletTag(CompactingWriter result) throws ParseException, IOException {
Token stuff;
stuff = jj_consume_token(SERVLET_TAG);
if (isSSSenabled) { result.print(stuff); }
label_4:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case SERVLET_CONTENT:
;
break;
default:
jj_la1[7] = jj_gen;
break label_4;
}
stuff = jj_consume_token(SERVLET_CONTENT);
if (isSSSenabled) { result.print(stuff); }
}
stuff = jj_consume_token(SERVLET_ETAG);
if (isSSSenabled) { result.print(stuff); }
}
final public void ejbTag(CompactingWriter result) throws ParseException, IOException {
Token stuff;
stuff = jj_consume_token(EJB_TAG);
if (isSSSenabled) { result.print(stuff); }
label_5:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case EJB_CONTENT:
;
break;
default:
jj_la1[8] = jj_gen;
break label_5;
}
stuff = jj_consume_token(EJB_CONTENT);
if (isSSSenabled) { result.print(stuff); }
}
stuff = jj_consume_token(EJB_ETAG);
if (isSSSenabled) { result.print(stuff); }
}
/**
* ISML tag rule
*/
final public void isTag(CompactingWriter result, List nestingTable) throws ParseException {
/**
* the tag factory - map tags to Server Side Scripting
*/
Token tag = null;
HashMap attributes = new HashMap();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ISBREAK:
case ISELSE:
case ISIF_END:
case ISLOOP_END:
case ISFILEBUNDLE_END:
case ISFORM_END:
case ISRENDER_END:
case ISNEXT:
case ISPLACEMENT_END:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ISIF_END:
tag = jj_consume_token(ISIF_END);
break;
case ISLOOP_END:
tag = jj_consume_token(ISLOOP_END);
break;
case ISBREAK:
tag = jj_consume_token(ISBREAK);
break;
case ISNEXT:
tag = jj_consume_token(ISNEXT);
break;
case ISELSE:
tag = jj_consume_token(ISELSE);
break;
case ISPLACEMENT_END:
tag = jj_consume_token(ISPLACEMENT_END);
break;
case ISFILEBUNDLE_END:
tag = jj_consume_token(ISFILEBUNDLE_END);
break;
case ISRENDER_END:
tag = jj_consume_token(ISRENDER_END);
break;
case ISFORM_END:
tag = jj_consume_token(ISFORM_END);
break;
default:
jj_la1[9] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
case ISMODULE:
tag = jj_consume_token(ISMODULE);
label_6:
while (true) {
jj_consume_token(TAG_SPACE);
tagAttribute2(attributes, ATT_ATTRIBUTE, ATT_RETURNATTRIBUTE);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TAG_SPACE:
;
break;
default:
jj_la1[10] = jj_gen;
break label_6;
}
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case END_TAG:
jj_consume_token(END_TAG);
break;
case EMPTY_ELEMENT_END_TAG:
jj_consume_token(EMPTY_ELEMENT_END_TAG);
break;
default:
jj_la1[11] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
case ISCACHE:
case ISCACHEKEY:
case ISDICTIONARY:
case ISCONTENT:
case ISCOOKIE:
case ISELSIF:
case ISINCLUDE:
case ISFILE:
case ISPRINT:
case ISREDIRECT:
case ISSELECT:
case ISSET:
case ISBINARY:
case ISPIPELINE:
case ISTEXT:
case ISPLACEHOLDER:
case ISPLACEMENT:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ISPRINT:
tag = jj_consume_token(ISPRINT);
break;
case ISSET:
tag = jj_consume_token(ISSET);
break;
case ISELSIF:
tag = jj_consume_token(ISELSIF);
break;
case ISCACHE:
tag = jj_consume_token(ISCACHE);
break;
case ISCONTENT:
tag = jj_consume_token(ISCONTENT);
break;
case ISREDIRECT:
tag = jj_consume_token(ISREDIRECT);
break;
case ISDICTIONARY:
tag = jj_consume_token(ISDICTIONARY);
break;
case ISINCLUDE:
tag = jj_consume_token(ISINCLUDE);
break;
case ISCOOKIE:
tag = jj_consume_token(ISCOOKIE);
break;
case ISCACHEKEY:
tag = jj_consume_token(ISCACHEKEY);
break;
case ISSELECT:
tag = jj_consume_token(ISSELECT);
break;
case ISBINARY:
tag = jj_consume_token(ISBINARY);
break;
case ISPIPELINE:
tag = jj_consume_token(ISPIPELINE);
break;
case ISTEXT:
tag = jj_consume_token(ISTEXT);
break;
case ISPLACEHOLDER:
tag = jj_consume_token(ISPLACEHOLDER);
break;
case ISPLACEMENT:
tag = jj_consume_token(ISPLACEMENT);
break;
case ISFILE:
tag = jj_consume_token(ISFILE);
break;
default:
jj_la1[12] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
label_7:
while (true) {
jj_consume_token(TAG_SPACE);
tagAttribute(attributes);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TAG_SPACE:
;
break;
default:
jj_la1[13] = jj_gen;
break label_7;
}
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case END_TAG:
jj_consume_token(END_TAG);
break;
case EMPTY_ELEMENT_END_TAG:
jj_consume_token(EMPTY_ELEMENT_END_TAG);
break;
default:
jj_la1[14] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
case ISIF:
case ISLOOP:
case ISFILEBUNDLE:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ISLOOP:
tag = jj_consume_token(ISLOOP);
break;
case ISIF:
tag = jj_consume_token(ISIF);
break;
case ISFILEBUNDLE:
tag = jj_consume_token(ISFILEBUNDLE);
break;
default:
jj_la1[15] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
label_8:
while (true) {
jj_consume_token(TAG_SPACE);
tagAttribute(attributes);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TAG_SPACE:
;
break;
default:
jj_la1[16] = jj_gen;
break label_8;
}
}
jj_consume_token(END_TAG);
break;
case ISRENDER:
case ISX:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ISX:
tag = jj_consume_token(ISX);
break;
case ISRENDER:
tag = jj_consume_token(ISRENDER);
break;
default:
jj_la1[17] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
label_9:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_SPACE:
;
break;
default:
jj_la1[18] = jj_gen;
break label_9;
}
jj_consume_token(CUST_SPACE);
customAttribute(attributes);
}
jj_consume_token(CUST_END);
break;
case ISFORM:
tag = jj_consume_token(ISFORM);
label_10:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_SPACE:
;
break;
default:
jj_la1[19] = jj_gen;
break label_10;
}
jj_consume_token(CUST_SPACE);
formAttribute(attributes);
}
jj_consume_token(CUST_END);
break;
case ISX_END:
tag = jj_consume_token(ISX_END);
jj_consume_token(CUST_END);
break;
default:
jj_la1[20] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
ISMLTagCompiler.compileTag(tag, result, attributes, nestingTable);
}
/**
* ISML tag attribute rules
**/
final public void tagAttribute(HashMap attributes) throws ParseException {
tagAttribute2(attributes, -1, -1);
}
final public void tagAttribute2(HashMap attributes, int multiValueAttr1, int multiValueAttr2) throws ParseException {
/**
* the attribute factory - parses tag-attributes
*/
Token name=null,value=null;
String buf;
StringBuilder buffer1 = new StringBuilder();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ATT_ATTRIBUTE:
case ATT_RETURNATTRIBUTE:
case ATT_CHARSET:
case ATT_COMMENT:
case ATT_COMPACT:
case ATT_TEMPLATEMARKER:
case ATT_CONDITION:
case ATT_DESCRIPTION:
case ATT_DOMAIN:
case ATT_EXTENSIONPOINT:
case ATT_HOUR:
case ATT_LOCATION:
case ATT_HTTPSTATUS:
case ATT_KEYWORD:
case ATT_OBJECT:
case ATT_MAXAGE:
case ATT_MINUTE:
case ATT_NAME:
case ATT_PADDING:
case ATT_PASSWORD:
case ATT_PATH:
case ATT_PERSONALIZED:
case ATT_SCOPE:
case ATT_SOURCE:
case ATT_TEMPLATE:
case ATT_STRICT:
case ATT_TYPE:
case ATT_URL:
case ATT_USERNAME:
case ATT_VALUE:
case ATT_VERSION:
case ATT_FILE:
case ATT_STREAM:
case ATT_RESOURCE:
case ATT_BYTES:
case ATT_DOWNLOADNAME:
case ATT_DICTIONARY:
case ATT_PIPELINE:
case ATT_PARAMS:
case ATT_SYMBOLS:
case ATT_KEY:
case ATT_LOCALE:
case ATT_PARAMETER0:
case ATT_PARAMETER1:
case ATT_PARAMETER2:
case ATT_PARAMETER3:
case ATT_PARAMETER4:
case ATT_PARAMETER5:
case ATT_PARAMETER6:
case ATT_PARAMETER7:
case ATT_PARAMETER8:
case ATT_PARAMETER9:
case ATT_ID:
case ATT_PREPEND:
case ATT_SEPARATOR:
case ATT_APPEND:
case ATT_PRESERVEORDER:
case ATT_REMOVEDUPLICATES:
case ATT_PLACEHOLDERID:
case ATT_PROCESSORS:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ATT_ATTRIBUTE:
name = jj_consume_token(ATT_ATTRIBUTE);
break;
case ATT_COMMENT:
name = jj_consume_token(ATT_COMMENT);
break;
case ATT_COMPACT:
name = jj_consume_token(ATT_COMPACT);
break;
case ATT_CONDITION:
name = jj_consume_token(ATT_CONDITION);
break;
case ATT_DESCRIPTION:
name = jj_consume_token(ATT_DESCRIPTION);
break;
case ATT_DOMAIN:
name = jj_consume_token(ATT_DOMAIN);
break;
case ATT_HOUR:
name = jj_consume_token(ATT_HOUR);
break;
case ATT_LOCATION:
name = jj_consume_token(ATT_LOCATION);
break;
case ATT_MAXAGE:
name = jj_consume_token(ATT_MAXAGE);
break;
case ATT_MINUTE:
name = jj_consume_token(ATT_MINUTE);
break;
case ATT_NAME:
name = jj_consume_token(ATT_NAME);
break;
case ATT_PADDING:
name = jj_consume_token(ATT_PADDING);
break;
case ATT_PASSWORD:
name = jj_consume_token(ATT_PASSWORD);
break;
case ATT_PATH:
name = jj_consume_token(ATT_PATH);
break;
case ATT_TEMPLATE:
name = jj_consume_token(ATT_TEMPLATE);
break;
case ATT_TYPE:
name = jj_consume_token(ATT_TYPE);
break;
case ATT_URL:
name = jj_consume_token(ATT_URL);
break;
case ATT_USERNAME:
name = jj_consume_token(ATT_USERNAME);
break;
case ATT_VALUE:
name = jj_consume_token(ATT_VALUE);
break;
case ATT_VERSION:
name = jj_consume_token(ATT_VERSION);
break;
case ATT_CHARSET:
name = jj_consume_token(ATT_CHARSET);
break;
case ATT_PERSONALIZED:
name = jj_consume_token(ATT_PERSONALIZED);
break;
case ATT_KEYWORD:
name = jj_consume_token(ATT_KEYWORD);
break;
case ATT_SOURCE:
name = jj_consume_token(ATT_SOURCE);
break;
case ATT_SCOPE:
name = jj_consume_token(ATT_SCOPE);
break;
case ATT_FILE:
name = jj_consume_token(ATT_FILE);
break;
case ATT_STREAM:
name = jj_consume_token(ATT_STREAM);
break;
case ATT_RESOURCE:
name = jj_consume_token(ATT_RESOURCE);
break;
case ATT_BYTES:
name = jj_consume_token(ATT_BYTES);
break;
case ATT_DOWNLOADNAME:
name = jj_consume_token(ATT_DOWNLOADNAME);
break;
case ATT_DICTIONARY:
name = jj_consume_token(ATT_DICTIONARY);
break;
case ATT_PIPELINE:
name = jj_consume_token(ATT_PIPELINE);
break;
case ATT_PARAMS:
name = jj_consume_token(ATT_PARAMS);
break;
case ATT_STRICT:
name = jj_consume_token(ATT_STRICT);
break;
case ATT_SYMBOLS:
name = jj_consume_token(ATT_SYMBOLS);
break;
case ATT_RETURNATTRIBUTE:
name = jj_consume_token(ATT_RETURNATTRIBUTE);
break;
case ATT_KEY:
name = jj_consume_token(ATT_KEY);
break;
case ATT_PARAMETER0:
name = jj_consume_token(ATT_PARAMETER0);
break;
case ATT_PARAMETER1:
name = jj_consume_token(ATT_PARAMETER1);
break;
case ATT_PARAMETER2:
name = jj_consume_token(ATT_PARAMETER2);
break;
case ATT_PARAMETER3:
name = jj_consume_token(ATT_PARAMETER3);
break;
case ATT_PARAMETER4:
name = jj_consume_token(ATT_PARAMETER4);
break;
case ATT_PARAMETER5:
name = jj_consume_token(ATT_PARAMETER5);
break;
case ATT_PARAMETER6:
name = jj_consume_token(ATT_PARAMETER6);
break;
case ATT_PARAMETER7:
name = jj_consume_token(ATT_PARAMETER7);
break;
case ATT_PARAMETER8:
name = jj_consume_token(ATT_PARAMETER8);
break;
case ATT_PARAMETER9:
name = jj_consume_token(ATT_PARAMETER9);
break;
case ATT_LOCALE:
name = jj_consume_token(ATT_LOCALE);
break;
case ATT_ID:
name = jj_consume_token(ATT_ID);
break;
case ATT_PREPEND:
name = jj_consume_token(ATT_PREPEND);
break;
case ATT_SEPARATOR:
name = jj_consume_token(ATT_SEPARATOR);
break;
case ATT_APPEND:
name = jj_consume_token(ATT_APPEND);
break;
case ATT_PRESERVEORDER:
name = jj_consume_token(ATT_PRESERVEORDER);
break;
case ATT_EXTENSIONPOINT:
name = jj_consume_token(ATT_EXTENSIONPOINT);
break;
case ATT_REMOVEDUPLICATES:
name = jj_consume_token(ATT_REMOVEDUPLICATES);
break;
case ATT_PLACEHOLDERID:
name = jj_consume_token(ATT_PLACEHOLDERID);
break;
case ATT_OBJECT:
name = jj_consume_token(ATT_OBJECT);
break;
case ATT_TEMPLATEMARKER:
name = jj_consume_token(ATT_TEMPLATEMARKER);
break;
case ATT_PROCESSORS:
name = jj_consume_token(ATT_PROCESSORS);
break;
case ATT_HTTPSTATUS:
name = jj_consume_token(ATT_HTTPSTATUS);
break;
default:
jj_la1[21] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ASSIGN:
jj_consume_token(ASSIGN);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TAG_SPACE:
jj_consume_token(TAG_SPACE);
break;
default:
jj_la1[22] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case QUOTE:
jj_consume_token(QUOTE);
jj_consume_token(ATT_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
jj_consume_token(QUOTE);
break;
case ATT_EXPR:
jj_consume_token(ATT_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
break;
default:
jj_la1[23] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
storeAttribute(attributes, '#' + String.valueOf(name.kind),buffer1.toString(),name.kind==multiValueAttr1 || name.kind==multiValueAttr2);
break;
case ATT_VALUE1:
case ATT_VALUE2:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ATT_VALUE1:
value = jj_consume_token(ATT_VALUE1);
break;
case ATT_VALUE2:
value = jj_consume_token(ATT_VALUE2);
break;
default:
jj_la1[24] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
String realValue = value.toString();
realValue = realValue.substring(1).trim();
if (value.kind == ATT_VALUE1)
{
storeAttribute(attributes, String.valueOf(name.kind),
realValue.substring(1,realValue.length()-1), name.kind==multiValueAttr1 || name.kind==multiValueAttr2);
}
else
{
storeAttribute(attributes, String.valueOf(name.kind),realValue, name.kind==multiValueAttr1 || name.kind==multiValueAttr2);
}
break;
default:
jj_la1[25] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
case ATT_ALIAS:
case ATT_COUNTER:
case ATT_ENCODE:
case ATT_FORMAT:
case ATT_ITERATOR:
case ATT_MODE:
case ATT_PREVIEW:
case ATT_SECURE:
case ATT_SESSION:
case ATT_STYLE:
case ATT_DISABLED:
case ATT_CLASS:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ATT_ALIAS:
name = jj_consume_token(ATT_ALIAS);
break;
case ATT_ENCODE:
name = jj_consume_token(ATT_ENCODE);
break;
case ATT_FORMAT:
name = jj_consume_token(ATT_FORMAT);
break;
case ATT_MODE:
name = jj_consume_token(ATT_MODE);
break;
case ATT_PREVIEW:
name = jj_consume_token(ATT_PREVIEW);
break;
case ATT_ITERATOR:
name = jj_consume_token(ATT_ITERATOR);
break;
case ATT_SECURE:
name = jj_consume_token(ATT_SECURE);
break;
case ATT_SESSION:
name = jj_consume_token(ATT_SESSION);
break;
case ATT_STYLE:
name = jj_consume_token(ATT_STYLE);
break;
case ATT_COUNTER:
name = jj_consume_token(ATT_COUNTER);
break;
case ATT_DISABLED:
name = jj_consume_token(ATT_DISABLED);
break;
case ATT_CLASS:
name = jj_consume_token(ATT_CLASS);
break;
default:
jj_la1[26] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case VALUE_Q:
value = jj_consume_token(VALUE_Q);
break;
case VALUE_N:
value = jj_consume_token(VALUE_N);
break;
default:
jj_la1[27] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
buf = value.toString();
if (value.kind==VALUE_Q)
{
buf = buf.substring(1,buf.length()-1);
}
storeAttribute(attributes, String.valueOf(name.kind),buf, name.kind==multiValueAttr1 || name.kind==multiValueAttr2);
break;
default:
jj_la1[28] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
final public void storeAttribute(HashMap attributes, String name, String value, boolean isMultivalue) throws ParseException {
if (!isMultivalue)
{
attributes.put(name, value);
}
else
{
@SuppressWarnings("unchecked")
ArrayList v = (ArrayList)attributes.get(name);
if (v == null)
{
v = new ArrayList();
attributes.put(name, v);
}
v.add(value);
}
}
/**
* ISML form tag attribute rule
**/
final public void formAttribute(HashMap attributes) throws ParseException {
/**
* the attribute factory - parses tag-attributes
*/
Token name=null,value=null;
StringBuilder buffer1 = new StringBuilder();
name = jj_consume_token(CUST_ATT_NAME);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_ASSIGN:
jj_consume_token(CUST_ASSIGN);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_SPACE:
jj_consume_token(CUST_SPACE);
break;
default:
jj_la1[29] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_QUOTE:
jj_consume_token(CUST_QUOTE);
jj_consume_token(CUST_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
jj_consume_token(CUST_QUOTE);
break;
case CUST_EXPR:
jj_consume_token(CUST_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
break;
default:
jj_la1[30] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
attributes.put('#' + name.toString().trim(),buffer1);
break;
case CUST_ATT_VALUE1:
case CUST_ATT_VALUE2:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_ATT_VALUE1:
value = jj_consume_token(CUST_ATT_VALUE1);
break;
case CUST_ATT_VALUE2:
value = jj_consume_token(CUST_ATT_VALUE2);
break;
default:
jj_la1[31] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
String realValue = value.toString();
realValue = realValue.substring(1).trim();
if (value.kind == CUST_ATT_VALUE1)
{
attributes.put(name.toString().trim(),
realValue.substring(1,realValue.length()-1));
}
else
{
attributes.put(name.toString().trim(),realValue);
}
break;
default:
jj_la1[32] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
/**
* ISML custom tag attribute rule
**/
final public void customAttribute(HashMap attributes) throws ParseException {
/**
* the attribute factory - parses tag-attributes
*/
Token name=null,value=null;
StringBuilder buffer1 = new StringBuilder();
name = jj_consume_token(CUST_ATT_NAME);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_ASSIGN:
jj_consume_token(CUST_ASSIGN);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_SPACE:
jj_consume_token(CUST_SPACE);
break;
default:
jj_la1[33] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_QUOTE:
jj_consume_token(CUST_QUOTE);
jj_consume_token(CUST_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
jj_consume_token(CUST_QUOTE);
break;
case CUST_EXPR:
jj_consume_token(CUST_EXPR);
is_expression(buffer1);
jj_consume_token(EXP_STOP);
break;
default:
jj_la1[34] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
attributes.put(name.toString().trim(),buffer1);
break;
case CUST_ATT_VALUE1:
case CUST_ATT_VALUE2:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CUST_ATT_VALUE1:
value = jj_consume_token(CUST_ATT_VALUE1);
break;
case CUST_ATT_VALUE2:
value = jj_consume_token(CUST_ATT_VALUE2);
break;
default:
jj_la1[35] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
String realValue = value.toString();
realValue = realValue.substring(1).trim();
if (value.kind == CUST_ATT_VALUE1)
{
attributes.put(name.toString().trim(),
realValue.substring(1,realValue.length()-1));
}
else
{
attributes.put(name.toString().trim(),realValue);
}
break;
default:
jj_la1[36] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
/*
* ISML Action syntax rule
*/
final public void is_action(StringBuilder jsp_buffer) throws ParseException {
StringBuilder buffer = new StringBuilder();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F7:
jj_consume_token(F7);
jj_consume_token(BRACKET_OPEN);
// start Method
jsp_buffer.append("(new URLPipelineAction(");
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
is_expression(buffer);
// parameter action
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter server group
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter domain
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter locale
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter currency
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter appID
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
break;
default:
jj_la1[37] = jj_gen;
;
}
break;
default:
jj_la1[38] = jj_gen;
;
}
break;
default:
jj_la1[39] = jj_gen;
;
}
break;
default:
jj_la1[40] = jj_gen;
;
}
break;
default:
jj_la1[41] = jj_gen;
;
}
break;
default:
jj_la1[42] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
case F20:
jj_consume_token(F20);
jj_consume_token(BRACKET_OPEN);
// start Method
jsp_buffer.append("(new URLServletAction(");
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
is_expression(buffer);
// parameter servlet name
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter server group
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
break;
default:
jj_la1[43] = jj_gen;
;
}
break;
default:
jj_la1[44] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
case F22:
jj_consume_token(F22);
jj_consume_token(BRACKET_OPEN);
// start Method
jsp_buffer.append("(new URLServiceAction(");
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
is_expression(buffer);
// parameter action
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter server group
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter domain
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter locale
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter currency
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// parameter appID
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
break;
default:
jj_la1[45] = jj_gen;
;
}
break;
default:
jj_la1[46] = jj_gen;
;
}
break;
default:
jj_la1[47] = jj_gen;
;
}
break;
default:
jj_la1[48] = jj_gen;
;
}
break;
default:
jj_la1[49] = jj_gen;
;
}
break;
default:
jj_la1[50] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
default:
jj_la1[51] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
/*
* ISML expression syntax rule
*/
final public void is_expression(StringBuilder jsp_buffer) throws ParseException {
StringBuilder buffer2 = new StringBuilder();
boolean flag = true;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case NOT:
jj_consume_token(NOT);
operator(buffer2);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case AND:
case OR:
flag = boolean_expr(jsp_buffer,buffer2,true);
break;
default:
jj_la1[52] = jj_gen;
;
}
if (flag)
{
/* special handling of case (NOT operator()) */
jsp_buffer.append("(!Boolean.valueOf(String.valueOf(" + buffer2+ "))) ");
}
break;
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
operator(buffer2);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ADD:
case SUB:
case MUL:
case DIV:
case MOD:
case I_EG:
case I_NE:
case I_GE:
case I_LE:
case I_GT:
case I_LT:
case CAT:
case EQ:
case NE:
case AND:
case OR:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case I_EG:
case I_NE:
case I_GE:
case I_LE:
case I_GT:
case I_LT:
flag = arithmetic_comp(jsp_buffer,buffer2);
break;
case EQ:
case NE:
flag = string_comp(jsp_buffer,buffer2);
break;
case AND:
case OR:
flag = boolean_expr(jsp_buffer,buffer2,false);
break;
case ADD:
case SUB:
case MUL:
case DIV:
case MOD:
flag = arithmetic_expr(jsp_buffer,buffer2);
break;
case CAT:
flag = string_expr(jsp_buffer,buffer2);
break;
default:
jj_la1[53] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[54] = jj_gen;
;
}
if (flag)
{
/* special handling if expression is just a single operator */
jsp_buffer.append(buffer2.toString());
}
break;
default:
jj_la1[55] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
/* addition to ISML expression syntax rule */
final public void operator(StringBuilder jsp_buffer) throws ParseException {
if (jj_2_1(3)) {
function(jsp_buffer);
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case JSP_EMBEDDED_EXPRESSION:
jsp_embedded_expression(jsp_buffer);
break;
case JSP_EMBEDDED_EL:
jsp_embedded_el(jsp_buffer);
break;
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case VARNAME:
var(jsp_buffer);
break;
case ADD:
case SUB:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
constant(jsp_buffer);
break;
case BRACKET_OPEN:
bracket(jsp_buffer);
break;
default:
jj_la1[56] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
/* rule for arithmetic comparisation operations */
final public boolean arithmetic_comp(StringBuilder jsp_buffer,StringBuilder buffer2) throws ParseException {
Token op = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case I_EG:
op = jj_consume_token(I_EG);
break;
case I_NE:
op = jj_consume_token(I_NE);
break;
case I_GE:
op = jj_consume_token(I_GE);
break;
case I_LE:
op = jj_consume_token(I_LE);
break;
case I_GT:
op = jj_consume_token(I_GT);
break;
case I_LT:
op = jj_consume_token(I_LT);
break;
default:
jj_la1[57] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
jsp_buffer.append("((");
/* String to double conversions not supported yet
jsp_buffer.append(" ((("+buffer2+")instanceof Number)?
jsp_buffer.append("(((Number) " + buffer2 + ").doubleValue()):");
jsp_buffer.append("((Double.valueOf(context.getFormattedValue(" + buffer2 + ",null))).doubleValue())) " + op.toString());
*/
jsp_buffer.append(" ((Number) " + buffer2 + ").doubleValue() " + op.toString());
/* clearbuffer */
buffer2.setLength(0);
operator(buffer2);
jsp_buffer.append("((Number)("+buffer2+")).doubleValue()) ? Boolean.TRUE : Boolean.FALSE)");
{if (true) return false;} /* more than one operator */
throw new Error("Missing return statement in function");
}
/* rule for string comparisation operations */
final public boolean string_comp(StringBuilder jsp_buffer,StringBuilder buffer2) throws ParseException {
Token op = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case EQ:
op = jj_consume_token(EQ);
break;
case NE:
op = jj_consume_token(NE);
break;
default:
jj_la1[58] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
jsp_buffer.append("((");
if (op.kind==NE)
{
jsp_buffer.append("!");
}
jsp_buffer.append("(context.getFormattedValue(" + buffer2 + ",null).equals(context.getFormattedValue(");
/* clearbuffer */
buffer2.setLength(0);
operator(buffer2);
jsp_buffer.append(buffer2 + ",null)))) ? Boolean.TRUE : Boolean.FALSE)");
{if (true) return false;} /* more than one operator */
throw new Error("Missing return statement in function");
}
/* rule for arithmetic operations */
final public boolean arithmetic_expr(StringBuilder jsp_buffer,StringBuilder buffer2) throws ParseException {
int i = 0;
Token op = null;
label_11:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ADD:
op = jj_consume_token(ADD);
break;
case SUB:
op = jj_consume_token(SUB);
break;
case MUL:
op = jj_consume_token(MUL);
break;
case DIV:
op = jj_consume_token(DIV);
break;
case MOD:
op = jj_consume_token(MOD);
break;
default:
jj_la1[59] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (i==0)
{
jsp_buffer.append("(Double.valueOf(");
}
/* String to double conversions not supported yet
jsp_buffer.append(" ((("+buffer2+")instanceof Number)?
jsp_buffer.append("(((Number) " + buffer2 + ").doubleValue()):");
jsp_buffer.append("((Double.valueOf(context.getFormattedValue(" + buffer2 + ",null))).doubleValue())) " + op.toString());
*/
jsp_buffer.append(" ((Number) " + buffer2 + ").doubleValue() " + op.toString());
buffer2.setLength(0);
i++;
operator(buffer2);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ADD:
case SUB:
case MUL:
case DIV:
case MOD:
;
break;
default:
jj_la1[60] = jj_gen;
break label_11;
}
}
jsp_buffer.append("((Number) " + buffer2 + ").doubleValue()))");
{if (true) return false;} /* more than one operator */
throw new Error("Missing return statement in function");
}
/* rule for string operations */
final public boolean string_expr(StringBuilder jsp_buffer,StringBuilder buffer2) throws ParseException {
label_12:
while (true) {
jj_consume_token(CAT);
jsp_buffer.append("context.getFormattedValue(" + buffer2 + ",null) + ");
buffer2.setLength(0);
operator(buffer2);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case CAT:
;
break;
default:
jj_la1[61] = jj_gen;
break label_12;
}
}
jsp_buffer.append("context.getFormattedValue(" + buffer2 + ",null)");
{if (true) return false;} /* more than one operator */
throw new Error("Missing return statement in function");
}
/* rule for boolean operations */
final public boolean boolean_expr(StringBuilder jsp_buffer,StringBuilder buffer2,boolean notSwitch) throws ParseException {
int i = 0;
Token op = null;
label_13:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case AND:
op = jj_consume_token(AND);
break;
case OR:
op = jj_consume_token(OR);
break;
default:
jj_la1[62] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (i==0)
{
jsp_buffer.append("((");
}
if (notSwitch)
{
jsp_buffer.append("!");
}
jsp_buffer.append("Boolean.parseBoolean(String.valueOf(" + buffer2 + ")) ");
jsp_buffer.append((op.kind==AND)?"&& ":"|| ");
/* clearbuffer */
buffer2.setLength(0);
notSwitch = false;
i=1;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case NOT:
jj_consume_token(NOT);
notSwitch = true;
break;
default:
jj_la1[63] = jj_gen;
;
}
operator(buffer2);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case AND:
case OR:
;
break;
default:
jj_la1[64] = jj_gen;
break label_13;
}
}
if (notSwitch)
{
jsp_buffer.append("!");
}
jsp_buffer.append("Boolean.valueOf(String.valueOf(" + buffer2 + "))))");
{if (true) return false;} /* more than one operator */
throw new Error("Missing return statement in function");
}
/* rule for paranthising */
final public void bracket(StringBuilder jsp_buffer) throws ParseException {
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
}
/* rules for ISML expression constants */
final public void constant(StringBuilder jsp_buffer) throws ParseException {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
stringConstant(jsp_buffer);
break;
case ADD:
case SUB:
case DOUBLE:
numberConstant(jsp_buffer);
break;
default:
jj_la1[65] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
final public void stringConstant(StringBuilder jsp_buffer) throws ParseException {
Token value = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_SINGLEQUOTED:
value = jj_consume_token(STRING_SINGLEQUOTED);
break;
case STRING_DOUBLEQUOTED:
value = jj_consume_token(STRING_DOUBLEQUOTED);
break;
default:
jj_la1[66] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
boolean hasPreviousSlash = false;
boolean hasPreviousQuote = false;
char currentChar;
String stringValue = value.toString();
jsp_buffer.append('\u005c"');
for (int i=1; i<(stringValue.length()-1); i++)
{
currentChar = stringValue.charAt(i);
// handling of special characters
switch (currentChar)
{
case '\u005c\u005c':
hasPreviousSlash = !hasPreviousSlash;
jsp_buffer.append('\u005c\u005c');
break;
case 'd':
if (hasPreviousSlash)
{
jsp_buffer.append('\u005c"');
hasPreviousSlash = false;
}
else
{
jsp_buffer.append('d');
}
break;
case 's':
if (hasPreviousSlash)
{
jsp_buffer.append('\u005c'');
hasPreviousSlash = false;
}
else
{
jsp_buffer.append('s');
}
break;
case '\u005c'':
if (value.kind == STRING_SINGLEQUOTED)
{
if (hasPreviousQuote)
{
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c'');
hasPreviousQuote = false;
}
else if (hasPreviousSlash)
{
jsp_buffer.append('\u005c'');
hasPreviousSlash = false;
}
else
{
hasPreviousQuote = true;
}
}
else
{
if (hasPreviousSlash)
{
jsp_buffer.append('\u005c'');
hasPreviousSlash = false;
}
else
{
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c'');
}
}
break;
case '\u005c"':
if (value.kind == STRING_DOUBLEQUOTED)
{
if (hasPreviousQuote)
{
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c"');
hasPreviousQuote = false;
}
else if (hasPreviousSlash)
{
jsp_buffer.append('\u005c"');
hasPreviousSlash = false;
}
else
{
hasPreviousQuote = true;
}
}
else
{
if (hasPreviousSlash)
{
jsp_buffer.append('\u005c"');
hasPreviousSlash = false;
}
else
{
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c"');
}
}
break;
default:
jsp_buffer.append(currentChar);
hasPreviousSlash = false;
hasPreviousQuote = false;
}
}
jsp_buffer.append('\u005c"');
}
final public void numberConstant(StringBuilder jsp_buffer) throws ParseException {
Token value = null;
Token sign = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ADD:
case SUB:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ADD:
sign = jj_consume_token(ADD);
break;
case SUB:
sign = jj_consume_token(SUB);
break;
default:
jj_la1[67] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[68] = jj_gen;
;
}
value = jj_consume_token(DOUBLE);
if (sign==null)
{
jsp_buffer.append("Double.valueOf(" + value + ")");
}
else
{
jsp_buffer.append("Double.valueOf(" + sign + value + ")");
}
}
/* rule for ISML expression functions */
final public void function(StringBuilder jsp_buffer) throws ParseException {
Token value = null;
StringBuilder buffer = null;
boolean flag = false;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F1:
jj_consume_token(F1);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("(hasLoopElements(\u005c"");
var_name(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("\u005c") ? Boolean.TRUE : Boolean.FALSE)");
break;
case F2:
jj_consume_token(F2);
jj_consume_token(BRACKET_OPEN);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("isSSSenabled()");
break;
case F3:
jj_consume_token(F3);
jj_consume_token(BRACKET_OPEN);
// getHeader
jsp_buffer.append("(request.getHeader(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null)))");
break;
case F4:
jj_consume_token(F4);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("context.getFormattedValue(");
value = null;
is_expression(jsp_buffer);
jsp_buffer.append(',');
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case VARNAME:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
stringConstant(jsp_buffer);
flag =true;
break;
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case VARNAME:
value = varName();
jsp_buffer.append("Integer.valueOf(");
jsp_buffer.append(value.toString());
jsp_buffer.append(')');
flag =true;
break;
default:
jj_la1[69] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[70] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
jsp_buffer.append(',');
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
stringConstant(jsp_buffer);
flag =true;
break;
default:
jj_la1[71] = jj_gen;
;
}
break;
default:
jj_la1[72] = jj_gen;
;
}
break;
default:
jj_la1[73] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
if (!flag)
{
jsp_buffer.append("null");
}
jsp_buffer.append(')');
break;
case F5:
jj_consume_token(F5);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(true,");
buffer = new StringBuilder();
is_action(jsp_buffer);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(",(new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_14:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[74] = jj_gen;
break label_14;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[75] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
default:
jj_la1[99] = jj_gen;
if (jj_2_2(3)) {
jj_consume_token(F27);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("executePipeline(");
buffer = new StringBuilder();
stringConstant(jsp_buffer);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(",(new URLParameterSet().addURLParameter(new URLParameter(" + buffer + ")))");
buffer.setLength(0);
label_15:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[76] = jj_gen;
break label_15;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(new URLParameter(" + buffer + "))");
buffer.setLength(0);
}
break;
default:
jj_la1[77] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(',');
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F25:
jj_consume_token(F25);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(false,");
buffer = new StringBuilder();
is_action(jsp_buffer);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(",(new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_16:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[78] = jj_gen;
break label_16;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[79] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
default:
jj_la1[100] = jj_gen;
if (jj_2_3(8)) {
jj_consume_token(F6);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(true,");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter host
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_action(buffer);
// parameter action
jsp_buffer.append(", " + buffer);
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(", (new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_17:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[80] = jj_gen;
break label_17;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[81] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F6:
jj_consume_token(F6);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(true,");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_action(buffer);
// parameter action
jsp_buffer.append(", " + buffer);
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(", (new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_18:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[82] = jj_gen;
break label_18;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[83] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
default:
jj_la1[101] = jj_gen;
if (jj_2_4(8)) {
jj_consume_token(F26);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(false,");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter host
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_action(buffer);
// parameter action
jsp_buffer.append(", " + buffer);
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(", (new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_19:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[84] = jj_gen;
break label_19;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[85] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case F26:
jj_consume_token(F26);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("url(false,");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(", context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_action(buffer);
// parameter action
jsp_buffer.append(", " + buffer);
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(", (new URLParameterSet().addURLParameter(" + buffer + "))");
buffer.setLength(0);
label_20:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[86] = jj_gen;
break label_20;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addURLParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[87] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F8:
jj_consume_token(F8);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null),context.getFormattedValue(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null)");
break;
case F9:
jj_consume_token(F9);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("context.webRoot(");
buffer = new StringBuilder();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
is_expression(buffer);
// optional parameter server group
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// optional parameter locale ID
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
break;
default:
jj_la1[88] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F10:
jj_consume_token(F10);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("(disableErrorMessages().isDefined(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
case F11:
jj_consume_token(F11);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("stringToHtml(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null))");
break;
case F12:
jj_consume_token(F12);
jj_consume_token(BRACKET_OPEN);
// pad
jsp_buffer.append("pad(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null),((Number)(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")).intValue())");
break;
case F13:
jj_consume_token(F13);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("stringToXml(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null))");
break;
case F14:
jj_consume_token(F14);
jj_consume_token(BRACKET_OPEN);
// trim
jsp_buffer.append("(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null).trim())");
break;
case F15:
jj_consume_token(F15);
jj_consume_token(BRACKET_OPEN);
// lcase
jsp_buffer.append("(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null).toLowerCase())");
break;
case F16:
jj_consume_token(F16);
jj_consume_token(BRACKET_OPEN);
// ucase
jsp_buffer.append("(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null).toUpperCase())");
break;
case F17:
jj_consume_token(F17);
jj_consume_token(BRACKET_OPEN);
// len
jsp_buffer.append("(Double.valueOf(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null).length()))");
break;
case F18:
jj_consume_token(F18);
jj_consume_token(BRACKET_OPEN);
// val
jsp_buffer.append("(val(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null)))");
break;
case F19:
jj_consume_token(F19);
jj_consume_token(BRACKET_OPEN);
// getCookie
jsp_buffer.append("(getCookieValue(request,context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null)))");
break;
case F21:
jj_consume_token(F21);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("contentURL(");
buffer = new StringBuilder();
is_expression(buffer);
// parameter file name
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// optional parameter locale ID
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
jj_consume_token(COMMA);
is_expression(buffer);
// optional parameter locale ID
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
break;
default:
jj_la1[89] = jj_gen;
;
}
break;
default:
jj_la1[90] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F34:
jj_consume_token(F34);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("(hasNext(\u005c"");
var_name(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("\u005c") ? Boolean.TRUE : Boolean.FALSE)");
break;
case F35:
jj_consume_token(F35);
jj_consume_token(BRACKET_OPEN);
// replace
jsp_buffer.append("replace(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null),(String)(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jsp_buffer.append("),(String)(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
case F36:
jj_consume_token(F36);
jj_consume_token(BRACKET_OPEN);
// split
jsp_buffer.append("split(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null),(String)(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append("))");
break;
case F37:
jj_consume_token(F37);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("existsTemplate(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null))");
break;
case F38:
jj_consume_token(F38);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("context.webRoot(");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter host
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter server group
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter locale id
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F39:
jj_consume_token(F39);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("context.contentURL(");
buffer = new StringBuilder();
is_expression(buffer);
// parameter protocol
jsp_buffer.append("context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter host
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter port
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter server group
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter locale id
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(COMMA);
is_expression(buffer);
// parameter content ref
jsp_buffer.append(",context.getFormattedValue(" + buffer + ",null)");
buffer.setLength(0);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F40:
jj_consume_token(F40);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("(");
buffer = new StringBuilder();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
is_expression(buffer);
jsp_buffer.append("(new ParameterMap().addParameter(" + buffer + "))");
buffer.setLength(0);
label_21:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[91] = jj_gen;
break label_21;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addParameter(" + buffer + ")");
buffer.setLength(0);
}
break;
default:
jj_la1[92] = jj_gen;
;
}
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F41:
jj_consume_token(F41);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("new ParameterEntry(");
is_expression(jsp_buffer);
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(")");
break;
case F42:
jj_consume_token(F42);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("getTemplateSourceLocation(context.getFormattedValue(");
is_expression(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(",null))");
break;
case F43:
jj_consume_token(F43);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("localizeText(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null)");
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
//optional parameter locale
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
break;
default:
jj_la1[93] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
//optional parameter domain-site
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
break;
default:
jj_la1[94] = jj_gen;
;
}
jsp_buffer.append(")");
jj_consume_token(BRACKET_CLOSE);
break;
case F44:
jj_consume_token(F44);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("localizeTextEx(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null),");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
//optional parameter locale
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
break;
default:
jj_la1[95] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
//optional parameter domain-site
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
break;
default:
jj_la1[96] = jj_gen;
;
}
jsp_buffer.append(")");
jj_consume_token(BRACKET_CLOSE);
break;
case F45:
jj_consume_token(F45);
jj_consume_token(BRACKET_OPEN);
buffer = new StringBuilder();
is_expression(buffer);
jsp_buffer.append("new ParameterList().addParameter(" + buffer + ")");
buffer.setLength(0);
label_22:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[97] = jj_gen;
break label_22;
}
jj_consume_token(COMMA);
is_expression(buffer);
jsp_buffer.append(".addParameter(" + buffer + ")");
buffer.setLength(0);
}
jj_consume_token(BRACKET_CLOSE);
break;
case F46:
jj_consume_token(F46);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("encodeString(context.getFormattedValue(");
is_expression(jsp_buffer);
jsp_buffer.append(",null)");
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
//optional parameter encoding
jsp_buffer.append(",(String)(");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
jsp_buffer.append(")");
break;
default:
jj_la1[98] = jj_gen;
;
}
jsp_buffer.append(")");
jj_consume_token(BRACKET_CLOSE);
break;
case VARNAME:
userDefinedFunction(jsp_buffer);
break;
default:
jj_la1[102] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
}
}
}
}
}
final public void userDefinedFunction(StringBuilder jsp_buffer) throws ParseException {
Token name = null;
StringBuilder buffer = null;
name = jj_consume_token(VARNAME);
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append("customFunction(\u005c"");
jsp_buffer.append(name);
jsp_buffer.append("\u005c"");
label_23:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case BRACKET_OPEN:
case JSP_EMBEDDED_EXPRESSION:
case JSP_EMBEDDED_EL:
case ADD:
case SUB:
case NOT:
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case STRING_SINGLEQUOTED:
case STRING_DOUBLEQUOTED:
case DOUBLE:
case VARNAME:
;
break;
default:
jj_la1[103] = jj_gen;
break label_23;
}
jsp_buffer.append(",");
is_expression(jsp_buffer);
label_24:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[104] = jj_gen;
break label_24;
}
jsp_buffer.append(",");
jj_consume_token(COMMA);
is_expression(jsp_buffer);
}
}
jsp_buffer.append(")");
jj_consume_token(BRACKET_CLOSE);
}
/* rule for embedded JSP expressions */
final public void jsp_embedded_expression(StringBuilder jsp_buffer) throws ParseException {
Token exp = null;
exp = jj_consume_token(JSP_EMBEDDED_EXPRESSION);
jsp_buffer.append(SCRIPTING_END);
jsp_buffer.append(SCRIPTING_START);
// remove <%= %>
String ex = exp.toString();
jsp_buffer.append(ex.substring(3, ex.length() - 2));
jsp_buffer.append(SCRIPTING_END);
jsp_buffer.append(SCRIPTING_START);
}
/* rule for embedded JSP expression language */
final public void jsp_embedded_el(StringBuilder jsp_buffer) throws ParseException {
Token exp = null;
exp = jj_consume_token(JSP_EMBEDDED_EL);
// pass simply through as JSP EL like ${}
jsp_buffer.append("pageContext.getExpressionEvaluator().evaluate(\u005c"");
// escape any double quotes within the in EL expression
String el = exp.toString();
for (int i = 0; i < el.length(); i++)
{
char ch = el.charAt(i);
if (ch == '"')
{
jsp_buffer.append('\u005c\u005c');
}
jsp_buffer.append(ch);
}
jsp_buffer.append("\u005c", Object.class, pageContext.getVariableResolver(), null)");
}
/* rule for ISML expression variables */
final public void var(StringBuilder jsp_buffer) throws ParseException {
jsp_buffer.append("getObject(\u005c"");
var_name(jsp_buffer);
jsp_buffer.append("\u005c")");
}
final public void var_name(StringBuilder jsp_buffer) throws ParseException {
Token varname = null;
varname = varName();
jsp_buffer.append(varname);
label_25:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COLON:
;
break;
default:
jj_la1[105] = jj_gen;
break label_25;
}
if (jj_2_5(3)) {
jj_consume_token(COLON);
varname = varName();
jj_consume_token(BRACKET_OPEN);
jsp_buffer.append(':');
jsp_buffer.append(varname);
jsp_buffer.append('(');
path_parameter(jsp_buffer);
jj_consume_token(BRACKET_CLOSE);
jsp_buffer.append(')');
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COLON:
jj_consume_token(COLON);
varname = varName();
jsp_buffer.append(':');
jsp_buffer.append(varname);
break;
default:
jj_la1[106] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
}
final public Token varName() throws ParseException {
Token varname = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case VARNAME:
varname = jj_consume_token(VARNAME);
break;
case F1:
varname = jj_consume_token(F1);
break;
case F2:
varname = jj_consume_token(F2);
break;
case F3:
varname = jj_consume_token(F3);
break;
case F4:
varname = jj_consume_token(F4);
break;
case F5:
varname = jj_consume_token(F5);
break;
case F6:
varname = jj_consume_token(F6);
break;
case F7:
varname = jj_consume_token(F7);
break;
case F8:
varname = jj_consume_token(F8);
break;
case F9:
varname = jj_consume_token(F9);
break;
case F10:
varname = jj_consume_token(F10);
break;
case F11:
varname = jj_consume_token(F11);
break;
case F12:
varname = jj_consume_token(F12);
break;
case F13:
varname = jj_consume_token(F13);
break;
case F14:
varname = jj_consume_token(F14);
break;
case F15:
varname = jj_consume_token(F15);
break;
case F16:
varname = jj_consume_token(F16);
break;
case F17:
varname = jj_consume_token(F17);
break;
case F18:
varname = jj_consume_token(F18);
break;
case F19:
varname = jj_consume_token(F19);
break;
case F20:
varname = jj_consume_token(F20);
break;
case F21:
varname = jj_consume_token(F21);
break;
case F22:
varname = jj_consume_token(F22);
break;
case F25:
varname = jj_consume_token(F25);
break;
case F26:
varname = jj_consume_token(F26);
break;
case F27:
varname = jj_consume_token(F27);
break;
case F34:
varname = jj_consume_token(F34);
break;
case F35:
varname = jj_consume_token(F35);
break;
case F36:
varname = jj_consume_token(F36);
break;
case F37:
varname = jj_consume_token(F37);
break;
case F38:
varname = jj_consume_token(F38);
break;
case F39:
varname = jj_consume_token(F39);
break;
case F40:
varname = jj_consume_token(F40);
break;
case F41:
varname = jj_consume_token(F41);
break;
case F42:
varname = jj_consume_token(F42);
break;
case F43:
varname = jj_consume_token(F43);
break;
case F44:
varname = jj_consume_token(F44);
break;
case F45:
varname = jj_consume_token(F45);
break;
case F46:
varname = jj_consume_token(F46);
break;
default:
jj_la1[107] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if (true) return varname;}
throw new Error("Missing return statement in function");
}
/* rule for parameter in ISML object path */
final public void path_parameter(StringBuilder jsp_buffer) throws ParseException {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_DOUBLEQUOTED:
path_constant(jsp_buffer);
break;
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case VARNAME:
var_name(jsp_buffer);
break;
default:
jj_la1[108] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
label_26:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
;
break;
default:
jj_la1[109] = jj_gen;
break label_26;
}
jj_consume_token(COMMA);
jsp_buffer.append(',');
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case STRING_DOUBLEQUOTED:
path_constant(jsp_buffer);
break;
case F1:
case F2:
case F3:
case F4:
case F5:
case F6:
case F7:
case F8:
case F9:
case F10:
case F11:
case F12:
case F13:
case F14:
case F15:
case F16:
case F17:
case F18:
case F19:
case F20:
case F21:
case F22:
case F25:
case F26:
case F27:
case F34:
case F35:
case F36:
case F37:
case F38:
case F39:
case F40:
case F41:
case F42:
case F43:
case F44:
case F45:
case F46:
case VARNAME:
var_name(jsp_buffer);
break;
default:
jj_la1[110] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
/* rule for constant parameters in ISML object path */
final public void path_constant(StringBuilder jsp_buffer) throws ParseException {
Token value = null;
value = jj_consume_token(STRING_DOUBLEQUOTED);
String stringValue = value.toString();
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c"');
// the constant value without the quotes
jsp_buffer.append(stringValue.substring(1, stringValue.length() - 1));
jsp_buffer.append('\u005c\u005c');
jsp_buffer.append('\u005c"');
}
private boolean jj_2_1(int xla) {
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_1(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(0, xla); }
}
private boolean jj_2_2(int xla) {
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_2(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(1, xla); }
}
private boolean jj_2_3(int xla) {
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_3(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(2, xla); }
}
private boolean jj_2_4(int xla) {
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_4(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(3, xla); }
}
private boolean jj_2_5(int xla) {
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_5(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(4, xla); }
}
private boolean jj_3R_120() {
if (jj_scan_token(COMMA)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_133()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_50() {
if (jj_scan_token(F19)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_92() {
if (jj_scan_token(JSP_EMBEDDED_EL)) return true;
return false;
}
private boolean jj_3_1() {
if (jj_3R_27()) return true;
return false;
}
private boolean jj_3R_73() {
Token xsp;
xsp = jj_scanpos;
if (jj_3_1()) {
jj_scanpos = xsp;
if (jj_3R_80()) {
jj_scanpos = xsp;
if (jj_3R_81()) {
jj_scanpos = xsp;
if (jj_3R_82()) {
jj_scanpos = xsp;
if (jj_3R_83()) {
jj_scanpos = xsp;
if (jj_3R_84()) return true;
}
}
}
}
}
return false;
}
private boolean jj_3R_131() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_127() {
if (jj_3R_30()) return true;
return false;
}
private boolean jj_3R_49() {
if (jj_scan_token(F18)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_90() {
if (jj_3R_100()) return true;
return false;
}
private boolean jj_3R_126() {
if (jj_3R_28()) return true;
return false;
}
private boolean jj_3R_89() {
if (jj_3R_99()) return true;
return false;
}
private boolean jj_3R_119() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_126()) {
jj_scanpos = xsp;
if (jj_3R_127()) return true;
}
return false;
}
private boolean jj_3R_88() {
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_87() {
if (jj_3R_98()) return true;
return false;
}
private boolean jj_3R_86() {
if (jj_3R_97()) return true;
return false;
}
private boolean jj_3R_75() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_86()) {
jj_scanpos = xsp;
if (jj_3R_87()) {
jj_scanpos = xsp;
if (jj_3R_88()) {
jj_scanpos = xsp;
if (jj_3R_89()) {
jj_scanpos = xsp;
if (jj_3R_90()) return true;
}
}
}
}
return false;
}
private boolean jj_3R_106() {
if (jj_scan_token(COMMA)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_119()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_120()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_48() {
if (jj_scan_token(F17)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_91() {
if (jj_scan_token(JSP_EMBEDDED_EXPRESSION)) return true;
return false;
}
private boolean jj_3R_79() {
if (jj_3R_29()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_131()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_67() {
if (jj_3R_73()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_75()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_74() {
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_47() {
if (jj_scan_token(F16)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_34() {
if (jj_scan_token(F4)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_106()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_66() {
if (jj_scan_token(NOT)) return true;
if (jj_3R_73()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_74()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_29() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_66()) {
jj_scanpos = xsp;
if (jj_3R_67()) return true;
}
return false;
}
private boolean jj_3R_46() {
if (jj_scan_token(F15)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_33() {
if (jj_scan_token(F3)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_32() {
if (jj_scan_token(F2)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_45() {
if (jj_scan_token(F14)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_72() {
if (jj_scan_token(VARNAME)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_79()) { jj_scanpos = xsp; break; }
}
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_31() {
if (jj_scan_token(F1)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_68()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_44() {
if (jj_scan_token(F13)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_27() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_31()) {
jj_scanpos = xsp;
if (jj_3R_32()) {
jj_scanpos = xsp;
if (jj_3R_33()) {
jj_scanpos = xsp;
if (jj_3R_34()) {
jj_scanpos = xsp;
if (jj_3R_35()) {
jj_scanpos = xsp;
if (jj_3_2()) {
jj_scanpos = xsp;
if (jj_3R_36()) {
jj_scanpos = xsp;
if (jj_3_3()) {
jj_scanpos = xsp;
if (jj_3R_37()) {
jj_scanpos = xsp;
if (jj_3_4()) {
jj_scanpos = xsp;
if (jj_3R_38()) {
jj_scanpos = xsp;
if (jj_3R_39()) {
jj_scanpos = xsp;
if (jj_3R_40()) {
jj_scanpos = xsp;
if (jj_3R_41()) {
jj_scanpos = xsp;
if (jj_3R_42()) {
jj_scanpos = xsp;
if (jj_3R_43()) {
jj_scanpos = xsp;
if (jj_3R_44()) {
jj_scanpos = xsp;
if (jj_3R_45()) {
jj_scanpos = xsp;
if (jj_3R_46()) {
jj_scanpos = xsp;
if (jj_3R_47()) {
jj_scanpos = xsp;
if (jj_3R_48()) {
jj_scanpos = xsp;
if (jj_3R_49()) {
jj_scanpos = xsp;
if (jj_3R_50()) {
jj_scanpos = xsp;
if (jj_3R_51()) {
jj_scanpos = xsp;
if (jj_3R_52()) {
jj_scanpos = xsp;
if (jj_3R_53()) {
jj_scanpos = xsp;
if (jj_3R_54()) {
jj_scanpos = xsp;
if (jj_3R_55()) {
jj_scanpos = xsp;
if (jj_3R_56()) {
jj_scanpos = xsp;
if (jj_3R_57()) {
jj_scanpos = xsp;
if (jj_3R_58()) {
jj_scanpos = xsp;
if (jj_3R_59()) {
jj_scanpos = xsp;
if (jj_3R_60()) {
jj_scanpos = xsp;
if (jj_3R_61()) {
jj_scanpos = xsp;
if (jj_3R_62()) {
jj_scanpos = xsp;
if (jj_3R_63()) {
jj_scanpos = xsp;
if (jj_3R_64()) {
jj_scanpos = xsp;
if (jj_3R_65()) return true;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return false;
}
private boolean jj_3R_65() {
if (jj_3R_72()) return true;
return false;
}
private boolean jj_3R_43() {
if (jj_scan_token(F12)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_112() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_138() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_42() {
if (jj_scan_token(F11)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_123() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(156)) {
jj_scanpos = xsp;
if (jj_scan_token(157)) return true;
}
return false;
}
private boolean jj_3R_114() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_123()) jj_scanpos = xsp;
if (jj_scan_token(DOUBLE)) return true;
return false;
}
private boolean jj_3R_64() {
if (jj_scan_token(F46)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_112()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_111() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_130() {
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_138()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_41() {
if (jj_scan_token(F10)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_63() {
if (jj_scan_token(F45)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_111()) { jj_scanpos = xsp; break; }
}
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_137() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_78() {
if (jj_scan_token(F22)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_130()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_70() {
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_118() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_129() {
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_137()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_40() {
if (jj_scan_token(F9)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_70()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_117() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_39() {
if (jj_scan_token(F8)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_62() {
if (jj_scan_token(F44)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_117()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_118()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_77() {
if (jj_scan_token(F20)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_129()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_110() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_109() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_61() {
if (jj_scan_token(F43)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_109()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_110()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_136() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_60() {
if (jj_scan_token(F42)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_128() {
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_136()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_38() {
if (jj_scan_token(F26)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_59() {
if (jj_scan_token(F41)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_121() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
return false;
}
private boolean jj_3R_76() {
if (jj_scan_token(F7)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_128()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_69() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_76()) {
jj_scanpos = xsp;
if (jj_3R_77()) {
jj_scanpos = xsp;
if (jj_3R_78()) return true;
}
}
return false;
}
private boolean jj_3R_71() {
if (jj_3R_29()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_121()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_58() {
if (jj_scan_token(F40)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_71()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_28() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(212)) {
jj_scanpos = xsp;
if (jj_scan_token(213)) return true;
}
return false;
}
private boolean jj_3_4() {
if (jj_scan_token(F26)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_102() {
if (jj_3R_114()) return true;
return false;
}
private boolean jj_3R_94() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_101()) {
jj_scanpos = xsp;
if (jj_3R_102()) return true;
}
return false;
}
private boolean jj_3R_101() {
if (jj_3R_28()) return true;
return false;
}
private boolean jj_3R_95() {
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_140() {
if (jj_scan_token(STRING_DOUBLEQUOTED)) return true;
return false;
}
private boolean jj_3R_139() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_103() {
if (jj_scan_token(NOT)) return true;
return false;
}
private boolean jj_3R_135() {
if (jj_3R_68()) return true;
return false;
}
private boolean jj_3R_134() {
if (jj_3R_140()) return true;
return false;
}
private boolean jj_3R_57() {
if (jj_scan_token(F39)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_132() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_134()) {
jj_scanpos = xsp;
if (jj_3R_135()) return true;
}
while (true) {
xsp = jj_scanpos;
if (jj_3R_139()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_37() {
if (jj_scan_token(F6)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_96() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(170)) {
jj_scanpos = xsp;
if (jj_scan_token(171)) return true;
}
xsp = jj_scanpos;
if (jj_3R_103()) jj_scanpos = xsp;
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3R_85() {
Token xsp;
if (jj_3R_96()) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_96()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_105() {
if (jj_scan_token(CAT)) return true;
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3R_100() {
Token xsp;
if (jj_3R_105()) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_105()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_56() {
if (jj_scan_token(F38)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_55() {
if (jj_scan_token(F37)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_30() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(217)) {
jj_scanpos = xsp;
if (jj_scan_token(173)) {
jj_scanpos = xsp;
if (jj_scan_token(174)) {
jj_scanpos = xsp;
if (jj_scan_token(175)) {
jj_scanpos = xsp;
if (jj_scan_token(176)) {
jj_scanpos = xsp;
if (jj_scan_token(177)) {
jj_scanpos = xsp;
if (jj_scan_token(178)) {
jj_scanpos = xsp;
if (jj_scan_token(179)) {
jj_scanpos = xsp;
if (jj_scan_token(180)) {
jj_scanpos = xsp;
if (jj_scan_token(181)) {
jj_scanpos = xsp;
if (jj_scan_token(182)) {
jj_scanpos = xsp;
if (jj_scan_token(183)) {
jj_scanpos = xsp;
if (jj_scan_token(184)) {
jj_scanpos = xsp;
if (jj_scan_token(185)) {
jj_scanpos = xsp;
if (jj_scan_token(186)) {
jj_scanpos = xsp;
if (jj_scan_token(187)) {
jj_scanpos = xsp;
if (jj_scan_token(188)) {
jj_scanpos = xsp;
if (jj_scan_token(189)) {
jj_scanpos = xsp;
if (jj_scan_token(190)) {
jj_scanpos = xsp;
if (jj_scan_token(191)) {
jj_scanpos = xsp;
if (jj_scan_token(192)) {
jj_scanpos = xsp;
if (jj_scan_token(193)) {
jj_scanpos = xsp;
if (jj_scan_token(194)) {
jj_scanpos = xsp;
if (jj_scan_token(195)) {
jj_scanpos = xsp;
if (jj_scan_token(196)) {
jj_scanpos = xsp;
if (jj_scan_token(197)) {
jj_scanpos = xsp;
if (jj_scan_token(198)) {
jj_scanpos = xsp;
if (jj_scan_token(199)) {
jj_scanpos = xsp;
if (jj_scan_token(200)) {
jj_scanpos = xsp;
if (jj_scan_token(201)) {
jj_scanpos = xsp;
if (jj_scan_token(202)) {
jj_scanpos = xsp;
if (jj_scan_token(203)) {
jj_scanpos = xsp;
if (jj_scan_token(204)) {
jj_scanpos = xsp;
if (jj_scan_token(205)) {
jj_scanpos = xsp;
if (jj_scan_token(206)) {
jj_scanpos = xsp;
if (jj_scan_token(207)) {
jj_scanpos = xsp;
if (jj_scan_token(208)) {
jj_scanpos = xsp;
if (jj_scan_token(209)) {
jj_scanpos = xsp;
if (jj_scan_token(210)) return true;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return false;
}
private boolean jj_3_3() {
if (jj_scan_token(F6)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_122() {
if (jj_scan_token(COLON)) return true;
if (jj_3R_30()) return true;
return false;
}
private boolean jj_3R_116() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_104() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(156)) {
jj_scanpos = xsp;
if (jj_scan_token(157)) {
jj_scanpos = xsp;
if (jj_scan_token(158)) {
jj_scanpos = xsp;
if (jj_scan_token(159)) {
jj_scanpos = xsp;
if (jj_scan_token(160)) return true;
}
}
}
}
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3R_54() {
if (jj_scan_token(F36)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_99() {
Token xsp;
if (jj_3R_104()) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_104()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_124() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_36() {
if (jj_scan_token(F25)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_69()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_116()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3_5() {
if (jj_scan_token(COLON)) return true;
if (jj_3R_30()) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_132()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_53() {
if (jj_scan_token(F35)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_113() {
Token xsp;
xsp = jj_scanpos;
if (jj_3_5()) {
jj_scanpos = xsp;
if (jj_3R_122()) return true;
}
return false;
}
private boolean jj_3R_107() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_124()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_52() {
if (jj_scan_token(F34)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_68()) return true;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_68() {
if (jj_3R_30()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_113()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_125() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_98() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(168)) {
jj_scanpos = xsp;
if (jj_scan_token(169)) return true;
}
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3_2() {
if (jj_scan_token(F27)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_28()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_107()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_108() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_125()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_93() {
if (jj_3R_68()) return true;
return false;
}
private boolean jj_3R_115() {
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3R_84() {
if (jj_3R_95()) return true;
return false;
}
private boolean jj_3R_83() {
if (jj_3R_94()) return true;
return false;
}
private boolean jj_3R_82() {
if (jj_3R_93()) return true;
return false;
}
private boolean jj_3R_81() {
if (jj_3R_92()) return true;
return false;
}
private boolean jj_3R_80() {
if (jj_3R_91()) return true;
return false;
}
private boolean jj_3R_97() {
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(161)) {
jj_scanpos = xsp;
if (jj_scan_token(162)) {
jj_scanpos = xsp;
if (jj_scan_token(163)) {
jj_scanpos = xsp;
if (jj_scan_token(164)) {
jj_scanpos = xsp;
if (jj_scan_token(165)) {
jj_scanpos = xsp;
if (jj_scan_token(166)) return true;
}
}
}
}
}
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3R_51() {
if (jj_scan_token(F21)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_29()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_108()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
private boolean jj_3R_133() {
if (jj_3R_28()) return true;
return false;
}
private boolean jj_3R_35() {
if (jj_scan_token(F5)) return true;
if (jj_scan_token(BRACKET_OPEN)) return true;
if (jj_3R_69()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_115()) jj_scanpos = xsp;
if (jj_scan_token(BRACKET_CLOSE)) return true;
return false;
}
/** Generated Token Manager. */
public ISMLtoJSPcompilerTokenManager token_source;
JavaCharStream jj_input_stream;
/** Current token. */
public Token token;
/** Next token. */
public Token jj_nt;
private int jj_ntk;
private Token jj_scanpos, jj_lastpos;
private int jj_la;
private int jj_gen;
final private int[] jj_la1 = new int[111];
static private int[] jj_la1_0;
static private int[] jj_la1_1;
static private int[] jj_la1_2;
static private int[] jj_la1_3;
static private int[] jj_la1_4;
static private int[] jj_la1_5;
static private int[] jj_la1_6;
static {
jj_la1_init_0();
jj_la1_init_1();
jj_la1_init_2();
jj_la1_init_3();
jj_la1_init_4();
jj_la1_init_5();
jj_la1_init_6();
}
private static void jj_la1_init_0() {
jj_la1_0 = new int[] {0xfffffffe,0x0,0xfffffffe,0x0,0x6,0x3e,0x0,0x0,0x0,0x52a24100,0x0,0x0,0x8408be00,0x0,0x0,0x510000,0x0,0x8000000,0x0,0x0,0xfffbff00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_1() {
jj_la1_1 = new int[] {0x3fffff,0x400000,0x3fffff,0x3fc000,0x0,0x0,0x1000000,0x10000000,0x4000000,0x100,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x7ff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x80000000,0x0,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_2() {
jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x2,0x0,0xffffffc0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffc0,0x2,0x30,0x1,0x5,0x2,0x30,0x1,0x5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_3() {
jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_4() {
jj_la1_4 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000,0xc0000,0x0,0x10000,0xc0000,0x0,0x10000,0x0,0x0,0x0,0x0,0x3,0x10000,0x300000,0xc000,0x2c000,0x3ffc,0xc00000,0x3fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3d000000,0x0,0x3d000000,0x0,0x0,0x0,0x0,0x0,0x3d000000,0x0,0x0,0xf0000000,0xf0000000,0x3d000000,0x3d000000,0x0,0x0,0xf0000000,0xf0000000,0x0,0x0,0x0,0x0,0x30000000,0x0,0x30000000,0x30000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3d000000,0x0,0x0,0x0,0x3d000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3d000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_5() {
jj_la1_5 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffff000,0x0,0xfffff000,0x0,0x0,0x0,0x0,0x0,0xfffff000,0x80000,0xc00,0xfff,0xfff,0xfffff000,0xffffe000,0x7e,0x300,0x1,0x1,0x80,0xc00,0x1000,0xc00,0x0,0x0,0x0,0x0,0xffffe000,0xffffe000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffff000,0x0,0x0,0x0,0xfffff000,0x0,0x0,0x0,0x0,0x0,0x0,0x3e000,0x0,0x40000,0xfff00000,0xfffff000,0x0,0x0,0x0,0xffffe000,0xffffe000,0x0,0xffffe000,};
}
private static void jj_la1_init_6() {
jj_la1_6 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x277ffff,0x1000000,0x277ffff,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x277ffff,0x5,0x0,0x0,0x0,0x277ffff,0x277ffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x700000,0x300000,0x0,0x0,0x237ffff,0x237ffff,0x300000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x277ffff,0x1000000,0x1000000,0x1000000,0x277ffff,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x1000000,0x0,0x8,0x0,0x207ffd2,0x277ffff,0x1000000,0x800000,0x800000,0x207ffff,0x227ffff,0x1000000,0x227ffff,};
}
final private JJCalls[] jj_2_rtns = new JJCalls[5];
private boolean jj_rescan = false;
private int jj_gc = 0;
/** Constructor with InputStream. */
public ISMLtoJSPcompiler(java.io.InputStream stream) {
this(stream, null);
}
/** Constructor with InputStream and supplied encoding */
public ISMLtoJSPcompiler(java.io.InputStream stream, String encoding) {
try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source = new ISMLtoJSPcompilerTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream) {
ReInit(stream, null);
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream, String encoding) {
try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Constructor. */
public ISMLtoJSPcompiler(java.io.Reader stream) {
jj_input_stream = new JavaCharStream(stream, 1, 1);
token_source = new ISMLtoJSPcompilerTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(java.io.Reader stream) {
jj_input_stream.ReInit(stream, 1, 1);
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Constructor with generated Token Manager. */
public ISMLtoJSPcompiler(ISMLtoJSPcompilerTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(ISMLtoJSPcompilerTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 111; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
private Token jj_consume_token(int kind) throws ParseException {
Token oldToken;
if ((oldToken = token).next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
if (token.kind == kind) {
jj_gen++;
if (++jj_gc > 100) {
jj_gc = 0;
for (int i = 0; i < jj_2_rtns.length; i++) {
JJCalls c = jj_2_rtns[i];
while (c != null) {
if (c.gen < jj_gen) c.first = null;
c = c.next;
}
}
}
return token;
}
token = oldToken;
jj_kind = kind;
throw generateParseException();
}
static private final class LookaheadSuccess extends java.lang.Error { }
final private LookaheadSuccess jj_ls = new LookaheadSuccess();
private boolean jj_scan_token(int kind) {
if (jj_scanpos == jj_lastpos) {
jj_la--;
if (jj_scanpos.next == null) {
jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
} else {
jj_lastpos = jj_scanpos = jj_scanpos.next;
}
} else {
jj_scanpos = jj_scanpos.next;
}
if (jj_rescan) {
int i = 0; Token tok = token;
while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
if (tok != null) jj_add_error_token(kind, i);
}
if (jj_scanpos.kind != kind) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
return false;
}
/** Get the next Token. */
final public Token getNextToken() {
if (token.next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
jj_gen++;
return token;
}
/** Get the specific Token. */
final public Token getToken(int index) {
Token t = token;
for (int i = 0; i < index; i++) {
if (t.next != null) t = t.next;
else t = t.next = token_source.getNextToken();
}
return t;
}
private int jj_ntk() {
if ((jj_nt=token.next) == null)
return (jj_ntk = (token.next=token_source.getNextToken()).kind);
else
return (jj_ntk = jj_nt.kind);
}
private java.util.List jj_expentries = new java.util.ArrayList();
private int[] jj_expentry;
private int jj_kind = -1;
private int[] jj_lasttokens = new int[100];
private int jj_endpos;
private void jj_add_error_token(int kind, int pos) {
if (pos >= 100) return;
if (pos == jj_endpos + 1) {
jj_lasttokens[jj_endpos++] = kind;
} else if (jj_endpos != 0) {
jj_expentry = new int[jj_endpos];
for (int i = 0; i < jj_endpos; i++) {
jj_expentry[i] = jj_lasttokens[i];
}
jj_entries_loop: for (java.util.Iterator it = jj_expentries.iterator(); it.hasNext();) {
int[] oldentry = (int[])(it.next());
if (oldentry.length == jj_expentry.length) {
for (int i = 0; i < jj_expentry.length; i++) {
if (oldentry[i] != jj_expentry[i]) {
continue jj_entries_loop;
}
}
jj_expentries.add(jj_expentry);
break jj_entries_loop;
}
}
if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
}
}
/** Generate ParseException. */
public ParseException generateParseException() {
jj_expentries.clear();
boolean[] la1tokens = new boolean[223];
if (jj_kind >= 0) {
la1tokens[jj_kind] = true;
jj_kind = -1;
}
for (int i = 0; i < 111; i++) {
if (jj_la1[i] == jj_gen) {
for (int j = 0; j < 32; j++) {
if ((jj_la1_0[i] & (1< jj_gen) {
jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
switch (i) {
case 0: jj_3_1(); break;
case 1: jj_3_2(); break;
case 2: jj_3_3(); break;
case 3: jj_3_4(); break;
case 4: jj_3_5(); break;
}
}
p = p.next;
} while (p != null);
} catch(LookaheadSuccess ls) { }
}
jj_rescan = false;
}
private void jj_save(int index, int xla) {
JJCalls p = jj_2_rtns[index];
while (p.gen > jj_gen) {
if (p.next == null) { p = p.next = new JJCalls(); break; }
p = p.next;
}
p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
}
static final class JJCalls {
int gen;
Token first;
int arg;
JJCalls next;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy