@@ -5339,13 +5339,11 @@ AlterView AlterView():
53395339List<String> CreateParameter():
53405340{
53415341 String retval = "";
5342- Token tk = null;
5343- Token tk2 = null;
5344- StringBuilder identifier = new StringBuilder("");
5342+ Token tk = null, tk2 = null;
53455343 Expression exp = null;
5346- List<String> param = new ArrayList<String>();
53475344 ColDataType colDataType;
5348- Function function;
5345+
5346+ List<String> param = new ArrayList<String>();
53495347}
53505348{
53515349 (
@@ -5357,118 +5355,48 @@ List<String> CreateParameter():
53575355 |
53585356 (
53595357 (tk=<S_IDENTIFIER> | tk=<S_QUOTED_IDENTIFIER>)
5360- { identifier.append( tk.image) ; }
5358+ { retval+= tk.image; }
53615359
53625360 [
53635361 "."
53645362 (tk2=<S_IDENTIFIER> | tk2=<S_QUOTED_IDENTIFIER>)
5365- { identifier.append( "."); identifier.append( tk2.image) ; }
5363+ { retval+= "."+ tk2.image; }
53665364 ]
5367- { param.add(identifier.toString() ); }
5365+ { param.add(retval ); }
53685366 )
53695367 |
5370- tk=<K_NULL> { param.add(tk.image); }
5371- |
5372- tk=<K_NOT> { param.add(tk.image); }
5373- |
5374- tk=<K_PRIMARY> { param.add(tk.image); }
5375- |
5376- tk=<K_DEFAULT> { param.add(tk.image); }
5377- |
5378- tk=<K_FOREIGN> { param.add(tk.image); }
5379- |
5380- tk=<K_REFERENCES> { param.add(tk.image); }
5381- |
5382- tk=<K_KEY> { param.add(tk.image); }
5383- |
5384- tk=<S_CHAR_LITERAL> { param.add(tk.image); }
5385- |
5386- ("+" {retval = "+";} | "-" {retval = "-";})?
5387- (
5388- tk=<S_LONG> { retval += tk.image; }
5389- |
5390- tk=<S_DOUBLE> { retval += tk.image; }
5391- )
5392- { param.add(retval); }
5368+ LOOKAHEAD(3) [<K_USING> <K_INDEX> { param.add("USING INDEX"); }] <K_TABLESPACE> retval=RelObjectName()
5369+ { param.add("TABLESPACE " + retval); }
53935370 |
5394- tk=<K_AS> (
5395- ("(" exp = Expression() ")") { param.add("AS"); param.add("(" + exp.toString() + ")");}
5396- |
5397- { param.add(tk.image);}
5371+ (
5372+ tk=<S_CHAR_LITERAL> | tk=<K_NULL> | tk=<K_NOT> | tk=<K_PRIMARY> | tk=<K_FOREIGN>
5373+ | tk=<K_REFERENCES> | tk=<K_KEY> | tk=<K_STORED> | tk=<K_ON> | tk=<K_COMMIT> | tk=<K_DROP>
5374+ | tk=<K_ROWS> | tk=<K_UNIQUE> | tk=<K_CASCADE> | tk=<K_DELETE> | tk=<K_UPDATE>
5375+ | tk=<K_CONSTRAINT> | tk=<K_WITH> | tk=<K_EXCLUDE> | tk=<K_WHERE> | tk=<K_UNSIGNED>
5376+ | tk=<K_TEMP> | tk=<K_TEMPORARY> | tk=<K_PARTITION> | tk=<K_BY> | tk=<K_IN>
5377+ | tk=<K_TYPE> | tk=<K_COMMENT> | tk=<K_USING> | tk=<K_COLLATE> | tk=<K_ASC>
5378+ | tk=<K_DESC> | tk=<K_TRUE> | tk=<K_FALSE> | tk=<K_PARALLEL> | tk=<K_BINARY> | tk=<K_START>
5379+ | tk=<K_TIME_KEY_EXPR>
5380+ | tk="="
53985381 )
5382+ { param.add(tk.image); }
53995383 |
5400- tk=<K_STORED> { param.add(tk.image); }
5401- |
5402- tk=<K_ON> { param.add(tk.image); }
5403- |
5404- tk=<K_COMMIT> { param.add(tk.image); }
5405- |
5406- tk=<K_DROP> { param.add(tk.image); }
5407- |
5408- tk=<K_ROWS> { param.add(tk.image); }
5409- |
5410- tk=<K_UNIQUE> { param.add(tk.image); }
5411- |
5412- tk=<K_CASCADE> { param.add(tk.image); }
5413- |
5414- tk=<K_DELETE> { param.add(tk.image); }
5415- |
5416- tk=<K_UPDATE> { param.add(tk.image); }
5417- |
5418- tk=<K_TIME_KEY_EXPR> { param.add(new TimeKeyExpression(tk.image).toString()); }
5419- |
5420- "=" { param.add("="); }
5421- |
5422- LOOKAHEAD(3) <K_USING> <K_INDEX> <K_TABLESPACE> retval=RelObjectName() { param.add("USING"); param.add("INDEX"); param.add("TABLESPACE"); param.add(retval); }
5384+ ( tk=<K_DEFAULT> | tk=<K_AS> | tk=<K_CHECK> ) [ LOOKAHEAD(2) "(" exp = Expression() ")" ]
5385+ {
5386+ param.add(tk.image);
5387+ if (exp!=null) {
5388+ param.add("(" + exp + ")");
5389+ }
5390+ }
54235391 |
5424- <K_TABLESPACE> retval=RelObjectName() { param.add("TABLESPACE"); param.add(retval); }
5392+ (
5393+ [ ( tk="+" | tk="-" ) { retval = tk.image; } ]
5394+ tk=<S_LONG> | tk=<S_DOUBLE>
5395+ )
5396+ { param.add( retval + tk.image ); }
54255397 |
54265398 retval=AList() { param.add(retval); }
54275399 |
5428- <K_CHECK> ("(" exp = Expression() ")") { param.add("CHECK"); param.add("(" + exp.toString() + ")");}
5429- |
5430- tk=<K_CONSTRAINT> { param.add(tk.image); }
5431- |
5432- tk=<K_WITH> { param.add(tk.image); }
5433- |
5434- tk=<K_EXCLUDE> { param.add(tk.image); }
5435- |
5436- tk=<K_WHERE> { param.add(tk.image); }
5437- |
5438- tk=<K_UNSIGNED> { param.add(tk.image); }
5439- |
5440- tk=<K_TEMP> { param.add(tk.image); }
5441- |
5442- tk=<K_TEMPORARY> { param.add(tk.image); }
5443- |
5444- tk=<K_PARTITION> { param.add(tk.image); }
5445- |
5446- tk=<K_BY> { param.add(tk.image); }
5447- |
5448- tk=<K_IN> { param.add(tk.image); }
5449- |
5450- tk=<K_TYPE> { param.add(tk.image); }
5451- |
5452- tk=<K_COMMENT> { param.add(tk.image); }
5453- |
5454- tk=<K_USING> { param.add(tk.image); }
5455- |
5456- tk=<K_COLLATE> { param.add(tk.image); }
5457- |
5458- tk=<K_ASC> { param.add(tk.image); }
5459- |
5460- tk=<K_DESC> { param.add(tk.image); }
5461- |
5462- tk=<K_TRUE> { param.add(tk.image); }
5463- |
5464- tk=<K_FALSE> { param.add(tk.image); }
5465- |
5466- tk=<K_PARALLEL> { param.add(tk.image); }
5467- |
5468- tk=<K_BINARY> { param.add(tk.image); }
5469- |
5470- tk=<K_START> { param.add(tk.image); }
5471- |
54725400 (tk=<K_CHARACTER> tk2=<K_SET>) { param.add(tk.image); param.add(tk2.image);}
54735401 |
54745402 (<K_ARRAY_LITERAL> exp=ArrayConstructor(true)) { param.add(exp.toString()); }
0 commit comments