(stmt *pg_query.UpdateStmt)
| 260 | } |
| 261 | |
| 262 | func (t *OperatorTransform) transformUpdateStmt(stmt *pg_query.UpdateStmt) bool { |
| 263 | if stmt == nil { |
| 264 | return false |
| 265 | } |
| 266 | |
| 267 | changed := false |
| 268 | |
| 269 | // Transform SET clause values |
| 270 | for _, target := range stmt.TargetList { |
| 271 | if resTarget := target.GetResTarget(); resTarget != nil && resTarget.Val != nil { |
| 272 | if newVal := t.transformExpression(resTarget.Val); newVal != nil { |
| 273 | resTarget.Val = newVal |
| 274 | changed = true |
| 275 | } |
| 276 | } |
| 277 | } |
| 278 | |
| 279 | // Transform WHERE clause |
| 280 | if stmt.WhereClause != nil { |
| 281 | if newWhere := t.transformExpression(stmt.WhereClause); newWhere != nil { |
| 282 | stmt.WhereClause = newWhere |
| 283 | changed = true |
| 284 | } |
| 285 | } |
| 286 | |
| 287 | // Transform FROM clause |
| 288 | for _, from := range stmt.FromClause { |
| 289 | if t.transformFromItem(from) { |
| 290 | changed = true |
| 291 | } |
| 292 | } |
| 293 | |
| 294 | if t.transformReturningList(stmt.ReturningList) { |
| 295 | changed = true |
| 296 | } |
| 297 | |
| 298 | return changed |
| 299 | } |
| 300 | |
| 301 | func (t *OperatorTransform) transformDeleteStmt(stmt *pg_query.DeleteStmt) bool { |
| 302 | if stmt == nil { |
no test coverage detected