* ExecAssignScanProjectionInfo * Set up projection info for a scan node, if necessary. * * We can avoid a projection step if the requested tlist exactly matches * the underlying tuple type. If so, we just set ps_ProjInfo to NULL. * Note that this case occurs not only for simple "SELECT * FROM ...", but * also in most cases where there are joins or other processing nodes above * the scan n
| 284 | * The scan slot's descriptor must have been set already. |
| 285 | */ |
| 286 | void |
| 287 | ExecAssignScanProjectionInfo(ScanState *node) |
| 288 | { |
| 289 | Scan *scan = (Scan *) node->ps.plan; |
| 290 | TupleDesc tupdesc = node->ss_ScanTupleSlot->tts_tupleDescriptor; |
| 291 | |
| 292 | ExecConditionalAssignProjectionInfo(&node->ps, tupdesc, scan->scanrelid); |
| 293 | } |
| 294 | |
| 295 | /* |
| 296 | * ExecAssignScanProjectionInfoWithVarno |
no test coverage detected