diff options
| author | Peter Eisentraut | 2018-02-17 01:57:06 +0000 |
|---|---|---|
| committer | Peter Eisentraut | 2018-03-16 17:18:06 +0000 |
| commit | ec87efde8dbc670467468860c5d577dc805dae5e (patch) | |
| tree | 96991de8befe65fd9a1ddb007703646b5972cedb /src/backend/parser | |
| parent | 04700b685f31508036456bea4d92533e5ceee9d6 (diff) | |
Simplify parse representation of savepoint commands
Instead of embedding the savepoint name in a list and then requiring
complex code to unpack it, just add another struct field to store it
directly.
Reviewed-by: Alvaro Herrera <alvherre@alvh.no-ip.org>
Diffstat (limited to 'src/backend/parser')
| -rw-r--r-- | src/backend/parser/gram.y | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 06c03dff3c..cd5ba2d4d8 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -9876,40 +9876,35 @@ TransactionStmt: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_SAVEPOINT; - n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString($2), @1)); + n->savepoint_name = $2; $$ = (Node *)n; } | RELEASE SAVEPOINT ColId { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_RELEASE; - n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString($3), @1)); + n->savepoint_name = $3; $$ = (Node *)n; } | RELEASE ColId { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_RELEASE; - n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString($2), @1)); + n->savepoint_name = $2; $$ = (Node *)n; } | ROLLBACK opt_transaction TO SAVEPOINT ColId { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK_TO; - n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString($5), @1)); + n->savepoint_name = $5; $$ = (Node *)n; } | ROLLBACK opt_transaction TO ColId { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK_TO; - n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString($4), @1)); + n->savepoint_name = $4; $$ = (Node *)n; } | PREPARE TRANSACTION Sconst |
