| 80 | } |
| 81 | |
| 82 | void DsqlDescMaker::fromList(DsqlCompilerScratch* scratch, dsc* desc, |
| 83 | ValueListNode* node, const char* expressionName, |
| 84 | bool nullable) |
| 85 | { |
| 86 | NestConst<ValueExprNode>* p = node->items.begin(); |
| 87 | NestConst<ValueExprNode>* end = node->items.end(); |
| 88 | |
| 89 | Array<const dsc*> args; |
| 90 | |
| 91 | while (p != end) |
| 92 | { |
| 93 | DsqlDescMaker::fromNode(scratch, *p); |
| 94 | args.add(&(*p)->getDsqlDesc()); |
| 95 | ++p; |
| 96 | } |
| 97 | |
| 98 | DSqlDataTypeUtil(scratch).makeFromList(desc, expressionName, args.getCount(), args.begin()); |
| 99 | |
| 100 | desc->dsc_flags |= nullable ? DSC_nullable : 0; |
| 101 | } |
| 102 | |
| 103 | void DsqlDescMaker::fromNode(DsqlCompilerScratch* scratch, dsc* desc, |
| 104 | ValueExprNode* node, bool nullable) |
nothing calls this directly
no test coverage detected