- Notifications
You must be signed in to change notification settings - Fork5k
Commit5ac462e
committed
Add support for custom_query_jumble as a node field attribute
This option gives the possibility for query jumble to define a customroutine for the field of a Node, extending support forcustom_query_jumble as a node field attribute. When dealing withcomplex node structures, this can be simpler than having to enforce acustom function across a full node.Custom functions need to be defined in queryjumblefuncs.c, named as_jumble${node}_${field}(), and use in input the JumbleState, the nodeand its field. The field is not really required if we have the Node,but it makes custom implementations somewhat easier to think about. Thecode generated by gen_node_support.pl uses a macro calledJUMBLE_CUSTOM(), hiding the internals of the logic insidequeryjumblefuncs.c.This will be used by an upcoming patch manipulating adding a customroutine into a field of RangeTblEntry, but this facility can becomeuseful in more cases.Reviewed-by: Christoph Berg <myon@debian.org>Discussion:https://postgr.es/m/Z9y43-dRvb4EtxQ0@paquier.xyz1 parent626df47 commit5ac462e
File tree
3 files changed
+19
-1
lines changed- src
- backend/nodes
- include/nodes
3 files changed
+19
-1
lines changedLines changed: 12 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
471 | 471 |
| |
472 | 472 |
| |
473 | 473 |
| |
| 474 | + | |
474 | 475 |
| |
475 | 476 |
| |
476 | 477 |
| |
| |||
1283 | 1284 |
| |
1284 | 1285 |
| |
1285 | 1286 |
| |
| 1287 | + | |
1286 | 1288 |
| |
1287 | 1289 |
| |
1288 | 1290 |
| |
1289 | 1291 |
| |
1290 | 1292 |
| |
1291 | 1293 |
| |
| 1294 | + | |
| 1295 | + | |
| 1296 | + | |
| 1297 | + | |
1292 | 1298 |
| |
1293 | 1299 |
| |
1294 | 1300 |
| |
| |||
1304 | 1310 |
| |
1305 | 1311 |
| |
1306 | 1312 |
| |
1307 |
| - | |
| 1313 | + | |
| 1314 | + | |
| 1315 | + | |
| 1316 | + | |
| 1317 | + | |
| 1318 | + | |
1308 | 1319 |
| |
1309 | 1320 |
| |
1310 | 1321 |
| |
|
Lines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
333 | 333 |
| |
334 | 334 |
| |
335 | 335 |
| |
| 336 | + | |
| 337 | + | |
| 338 | + | |
336 | 339 |
| |
337 | 340 |
| |
338 | 341 |
| |
|
Lines changed: 4 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
54 | 54 |
| |
55 | 55 |
| |
56 | 56 |
| |
| 57 | + | |
57 | 58 |
| |
58 | 59 |
| |
59 | 60 |
| |
| |||
101 | 102 |
| |
102 | 103 |
| |
103 | 104 |
| |
| 105 | + | |
| 106 | + | |
| 107 | + | |
104 | 108 |
| |
105 | 109 |
| |
106 | 110 |
| |
|
0 commit comments
Comments
(0)