MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / pass1_sel_list

Function pass1_sel_list

src/dsql/pass1.cpp:2302–2316  ·  view source on GitHub ↗

pass1_sel_list @brief Compile a select list. @param dsqlScratch @param input **/

Source from the content-addressed store, hash-verified

2300
2301 **/
2302static 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.

Callers 1

pass1_rse_implFunction · 0.85

Calls 6

JRD_get_thread_dataFunction · 0.85
ValueListNodeClass · 0.70
getDefaultPoolMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected