Commit b111331d authored by Michael Meskes's avatar Michael Meskes

Synced preproc.y with gram.y.

parent f9453f46
...@@ -985,5 +985,9 @@ Sun Oct 22 15:35:53 CEST 2000 ...@@ -985,5 +985,9 @@ Sun Oct 22 15:35:53 CEST 2000
Wed Oct 25 08:53:07 CEST 2000 Wed Oct 25 08:53:07 CEST 2000
- Added some more C constructs to the parser. - Added some more C constructs to the parser.
Wed Oct 25 21:22:17 CEST 2000
- Synced gram.y and preproc.y.
- Set ecpg version to 2.8.0. - Set ecpg version to 2.8.0.
- Set library version to 3.2.0. - Set library version to 3.2.0.
...@@ -286,7 +286,7 @@ make_name(void) ...@@ -286,7 +286,7 @@ make_name(void)
%type <str> CreateAsElement OptCreateAs CreateAsList CreateAsStmt %type <str> CreateAsElement OptCreateAs CreateAsList CreateAsStmt
%type <str> OptUnder key_reference comment_text ConstraintDeferrabilitySpec %type <str> OptUnder key_reference comment_text ConstraintDeferrabilitySpec
%type <str> key_match ColLabel SpecialRuleRelation ColId columnDef %type <str> key_match ColLabel SpecialRuleRelation ColId columnDef
%type <str> ColConstraint ColConstraintElem %type <str> ColConstraint ColConstraintElem drop_type
%type <str> OptTableElementList OptTableElement TableConstraint %type <str> OptTableElementList OptTableElement TableConstraint
%type <str> ConstraintElem key_actions ColQualList TokenId DropSchemaStmt %type <str> ConstraintElem key_actions ColQualList TokenId DropSchemaStmt
%type <str> target_list target_el update_target_list alias_clause %type <str> target_list target_el update_target_list alias_clause
...@@ -321,7 +321,7 @@ make_name(void) ...@@ -321,7 +321,7 @@ make_name(void)
%type <str> RuleActionStmtOrEmpty RuleActionMulti func_as reindex_type %type <str> RuleActionStmtOrEmpty RuleActionMulti func_as reindex_type
%type <str> RuleStmt opt_column opt_name oper_argtypes sysid_clause %type <str> RuleStmt opt_column opt_name oper_argtypes sysid_clause
%type <str> MathOp RemoveFuncStmt aggr_argtype for_update_clause %type <str> MathOp RemoveFuncStmt aggr_argtype for_update_clause
%type <str> RemoveAggrStmt remove_type RemoveStmt ExtendStmt %type <str> RemoveAggrStmt ExtendStmt
%type <str> RemoveOperStmt RenameStmt all_Op user_valid_clause %type <str> RemoveOperStmt RenameStmt all_Op user_valid_clause
%type <str> VariableSetStmt var_value zone_value VariableShowStmt %type <str> VariableSetStmt var_value zone_value VariableShowStmt
%type <str> VariableResetStmt AlterTableStmt DropUserStmt from_list %type <str> VariableResetStmt AlterTableStmt DropUserStmt from_list
...@@ -434,7 +434,6 @@ stmt: AlterSchemaStmt { output_statement($1, 0, NULL, connection); } ...@@ -434,7 +434,6 @@ stmt: AlterSchemaStmt { output_statement($1, 0, NULL, connection); }
| RemoveAggrStmt { output_statement($1, 0, NULL, connection); } | RemoveAggrStmt { output_statement($1, 0, NULL, connection); }
| RemoveOperStmt { output_statement($1, 0, NULL, connection); } | RemoveOperStmt { output_statement($1, 0, NULL, connection); }
| RemoveFuncStmt { output_statement($1, 0, NULL, connection); } | RemoveFuncStmt { output_statement($1, 0, NULL, connection); }
| RemoveStmt { output_statement($1, 0, NULL, connection); }
| RenameStmt { output_statement($1, 0, NULL, connection); } | RenameStmt { output_statement($1, 0, NULL, connection); }
| RevokeStmt { output_statement($1, 0, NULL, connection); } | RevokeStmt { output_statement($1, 0, NULL, connection); }
| OptimizableStmt { | OptimizableStmt {
...@@ -1553,20 +1552,25 @@ def_arg: func_return { $$ = $1; } ...@@ -1553,20 +1552,25 @@ def_arg: func_return { $$ = $1; }
/***************************************************************************** /*****************************************************************************
* *
* QUERY: * QUERY:
* drop <relname1> [, <relname2> .. <relnameN> ] *
* DROP itemtype itemname [, itemname ...]
* *
*****************************************************************************/ *****************************************************************************/
DropStmt: DROP TABLE relation_name_list DropStmt: DROP drop_type relation_name_list
{
$$ = cat2_str(make_str("drop table"), $3);
}
| DROP SEQUENCE relation_name_list
{ {
$$ = cat2_str(make_str("drop sequence"), $3); $$ = cat_str(3, make_str("drop"), $2, $3);
} }
; ;
drop_type: TABLE { $$ = make_str("table"); }
| SEQUENCE { $$ = make_str("sequence"); }
| VIEW { $$ = make_str("view"); }
| INDEX { $$ = make_str("index"); }
| RULE { $$ = make_str("rule"); }
| TYPE_P { $$ = make_str("type"); }
;
/***************************************************************************** /*****************************************************************************
* *
* QUERY: * QUERY:
...@@ -1985,32 +1989,18 @@ func_return: Typename ...@@ -1985,32 +1989,18 @@ func_return: Typename
* *
* QUERY: * QUERY:
* *
* remove function <funcname> * DROP FUNCTION funcname (arg1, arg2, ...)
* (REMOVE FUNCTION "funcname" (arg1, arg2, ...)) * DROP AGGREGATE aggname aggtype
* remove aggregate <aggname> * DROP OPERATOR opname (leftoperand_typ rightoperand_typ)
* (REMOVE AGGREGATE "aggname" "aggtype")
* remove operator <opname>
* (REMOVE OPERATOR "opname" (leftoperand_typ rightoperand_typ))
* remove type <typename>
* (REMOVE TYPE "typename")
* remove rule <rulename>
* (REMOVE RULE "rulename")
* *
*****************************************************************************/ *****************************************************************************/
RemoveStmt: DROP remove_type name RemoveFuncStmt: DROP FUNCTION func_name func_args
{ {
$$ = cat_str(3, make_str("drop"), $2, $3); $$ = cat_str(3, make_str("drop function"), $3, $4);
} }
; ;
remove_type: TYPE_P { $$ = make_str("type"); }
| INDEX { $$ = make_str("index"); }
| RULE { $$ = make_str("rule"); }
| VIEW { $$ = make_str("view"); }
;
RemoveAggrStmt: DROP AGGREGATE name aggr_argtype RemoveAggrStmt: DROP AGGREGATE name aggr_argtype
{ {
$$ = cat_str(3, make_str("drop aggregate"), $3, $4); $$ = cat_str(3, make_str("drop aggregate"), $3, $4);
...@@ -2022,13 +2012,6 @@ aggr_argtype: Typename { $$ = $1; } ...@@ -2022,13 +2012,6 @@ aggr_argtype: Typename { $$ = $1; }
; ;
RemoveFuncStmt: DROP FUNCTION func_name func_args
{
$$ = cat_str(3, make_str("drop function"), $3, $4);
}
;
RemoveOperStmt: DROP OPERATOR all_Op '(' oper_argtypes ')' RemoveOperStmt: DROP OPERATOR all_Op '(' oper_argtypes ')'
{ {
$$ = cat_str(5, make_str("drop operator"), $3, make_str("("), $5, make_str(")")); $$ = cat_str(5, make_str("drop operator"), $3, make_str("("), $5, make_str(")"));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment