pass1_sel_list @brief Compile a select list. @param dsqlScratch @param input **/
| 2300 | |
| 2301 | **/ |
| 2302 | static ValueListNode* pass1_sel_list(DsqlCompilerScratch* dsqlScratch, ValueListNode* input) |
| 2303 | { |
| 2304 | thread_db* tdbb = JRD_get_thread_data(); |
| 2305 | MemoryPool& pool = *tdbb->getDefaultPool(); |
| 2306 | |
| 2307 | DEV_BLKCHK(dsqlScratch, dsql_type_req); |
| 2308 | |
| 2309 | ValueListNode* retList = FB_NEW_POOL(pool) ValueListNode(pool, 0u); |
| 2310 | |
| 2311 | NestConst<ValueExprNode>* ptr = input->items.begin(); |
| 2312 | for (const NestConst<ValueExprNode>* const end = input->items.end(); ptr != end; ++ptr) |
| 2313 | retList->add(Node::doDsqlPass(dsqlScratch, *ptr, false)); |
| 2314 | |
| 2315 | return retList; |
| 2316 | } |
| 2317 | |
| 2318 | |
| 2319 | // Process ORDER BY list, which may contain an ordinal or alias which references the select list. |
no test coverage detected