lowerTok = jj_consume_token(LOWER);
break;
default:
jj_la1[123] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
jj_consume_token(LEFT_PAREN);
value = additiveExpression(null,0,false);
jj_consume_token(RIGHT_PAREN);
{if (true) return (ValueNode) nodeFactory.getNode(
C_NodeTypes.SIMPLE_STRING_OPERATOR_NODE,
value,
(upperTok != null) ? "upper" : "lower",
getContextManager());}
break;
case LCASE:
case UCASE:
switch (jj_nt.kind) {
case UCASE:
upperTok = jj_consume_token(UCASE);
break;
case LCASE:
lowerTok = jj_consume_token(LCASE);
break;
default:
jj_la1[124] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
jj_consume_token(LEFT_PAREN);
value = additiveExpression(null,0,false);
jj_consume_token(RIGHT_PAREN);
{if (true) return (ValueNode) nodeFactory.getNode(
C_NodeTypes.SIMPLE_STRING_OPERATOR_NODE,
value,
(upperTok != null) ? "upper" : "lower",
getContextManager());}
break;
case LTRIM:
case RTRIM:
value = trimFunction();
{if (true) return value;}
break;
case LOCATE:
jj_consume_token(LOCATE);
jj_consume_token(LEFT_PAREN);
str1 = additiveExpression(null,0,false);
jj_consume_token(COMMA);
str2 = additiveExpression(null,0,false);
switch (jj_nt.kind) {
case COMMA:
jj_consume_token(COMMA);
value = additiveExpression(null,0,false);
break;
default:
jj_la1[125] = jj_gen;
;
}
jj_consume_token(RIGHT_PAREN);
// if start is missing, start is equal to 1
{if (true) return (ValueNode) nodeFactory.getNode(
C_NodeTypes.LOCATE_FUNCTION_NODE,
str1,
str2,
(value == null) ? getNodeFactory().getNode(
C_NodeTypes.INT_CONSTANT_NODE,
ReuseFactory.getInteger(1),
getContextManager() )
: value,
ReuseFactory.getInteger(TernaryOperatorNode.LOCATE),
null,
getContextManager());}
break;
default:
jj_la1[126] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
throw new Error("Missing return statement in function");
}