Output parameters initialization.
| 259 | |
| 260 | // Output parameters initialization. |
| 261 | class InitOutputNode : public CompoundStmtNode |
| 262 | { |
| 263 | public: |
| 264 | InitOutputNode(thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, |
| 265 | Array<NestConst<Parameter> >& parameters, MessageNode* message) |
| 266 | : CompoundStmtNode(pool) |
| 267 | { |
| 268 | // Iterate over the format items, except the EOF item. |
| 269 | for (USHORT i = 0; i < (message->format->fmt_count / 2) * 2; i += 2) |
| 270 | { |
| 271 | InitParameterNode* init = FB_NEW_POOL(pool) InitParameterNode( |
| 272 | tdbb, pool, csb, parameters, message, i); |
| 273 | statements.add(init); |
| 274 | } |
| 275 | } |
| 276 | }; |
| 277 | |
| 278 | // Move parameters from a message to another, validating theirs values. |
| 279 | class MessageMoverNode : public CompoundStmtNode |
no outgoing calls
no test coverage detected