if(node.hasOffset)
{
Node offsetNode = node.jjtGetChild(child++);
if(offsetNode instanceof ASTParameter)
{
ASTParameter param = (ASTParameter) offsetNode;
Class parameterType = getParameterType(param.number);
if(int.class != parameterType && Integer.class != parameterType)
{
throw new UnsupportedOperationException("OFFSET parameter must be an int");
}
offsetParam = param.number;
}
else
{
ASTExactNumericLiteral param = (ASTExactNumericLiteral) offsetNode;
offsetValue = (int) param.value;
}
}
if(node.hasLimit)
{
Node limitNode = node.jjtGetChild(child);
if(limitNode instanceof ASTParameter)
{
ASTParameter param = (ASTParameter) limitNode;
Class parameterType = getParameterType(param.number);
if(int.class != parameterType && Integer.class != parameterType)
{
throw new UnsupportedOperationException("LIMIT parameter must be an int");
}