}
throw new Error("Missing return statement in function");
}
final public DataTypeDescriptor dataTypeCommon() throws ParseException, StandardException {
DataTypeDescriptor typeDescriptor;
boolean checkCS = false;
CharacterTypeAttributes characterAttributes = null;
if (jj_2_24(1)) {
if (getToken(2).kind != LARGE) {
} else {
jj_consume_token(-1);
throw new ParseException();
}
typeDescriptor = characterStringType();
characterAttributes = characterTypeAttributes();
} else if (jj_2_25(1)) {
if (getToken(3).kind != LARGE) {
} else {
jj_consume_token(-1);
throw new ParseException();
}
typeDescriptor = nationalCharacterStringType();
characterAttributes = characterTypeAttributes();
} else if (jj_2_26(1)) {
typeDescriptor = numericType();
} else {
switch (jj_nt.kind) {
case YEAR:
case DATE:
case DATETIME:
case TIME:
case TIMESTAMP:
typeDescriptor = datetimeType();
break;
case INTERVAL:
typeDescriptor = intervalType();
break;
case BOOLEAN:
jj_consume_token(BOOLEAN);
typeDescriptor = new DataTypeDescriptor(TypeId.BOOLEAN_ID, true);
break;
case LONG:
typeDescriptor = longType();
break;
case BINARY:
case CHAR:
case CHARACTER:
case NATIONAL:
case BLOB:
case CLOB:
case NCLOB:
case LONGBLOB:
case LONGTEXT:
case MEDIUMBLOB:
case MEDIUMTEXT:
case TEXT:
case TINYBLOB:
case TINYTEXT:
typeDescriptor = LOBType();
break;
case XML:
typeDescriptor = XMLType();
break;
default:
jj_la1[42] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
if (characterAttributes != null)
typeDescriptor = new DataTypeDescriptor(typeDescriptor, characterAttributes);
{if (true) return typeDescriptor;}
throw new Error("Missing return statement in function");
}