private OracleUsingIndexClause parseUsingIndex() {
accept(Token.USING);
accept(Token.INDEX);
OracleUsingIndexClause using = new OracleUsingIndexClause();
for (;;) {
if (lexer.token() == Token.TABLESPACE) {
lexer.nextToken();
using.setTablespace(this.name());
continue;
} else if (lexer.token() == Token.PCTFREE) {
lexer.nextToken();
using.setPtcfree(this.expr());
continue;
} else if (lexer.token() == Token.INITRANS) {
lexer.nextToken();
using.setInitrans(this.expr());
continue;
} else if (lexer.token() == Token.MAXTRANS) {
lexer.nextToken();
using.setMaxtrans(this.expr());
continue;
} else if (lexer.token() == Token.COMPUTE) {
lexer.nextToken();
acceptIdentifier("STATISTICS");
using.setComputeStatistics(true);
continue;
} else if (lexer.token() == Token.ENABLE) {
lexer.nextToken();
using.setEnable(true);
continue;
} else if (lexer.token() == Token.DISABLE) {
lexer.nextToken();
using.setEnable(false);
continue;
} else if (lexer.token() == Token.STORAGE) {
OracleStorageClause storage = parseStorage();
using.setStorage(storage);
continue;
} else if (lexer.token() == Token.IDENTIFIER) {
using.setTablespace(this.name());
break;
} else {
break;
}
}