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

Method ExtProcedureNode

src/jrd/ExtEngineManager.cpp:376–391  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

374 {
375 public:
376 ExtProcedureNode(MemoryPool& pool, MessageNode* aExtInMessageNode, MessageNode* aExtOutMessageNode,
377 MessageNode* aIntOutMessageNode, const ExtEngineManager::Procedure* aProcedure)
378 : CompoundStmtNode(pool),
379 extInMessageNode(aExtInMessageNode),
380 extOutMessageNode(aExtOutMessageNode),
381 intOutMessageNode(aIntOutMessageNode),
382 procedure(aProcedure)
383 {
384 SuspendNode* suspend = FB_NEW_POOL(pool) SuspendNode(pool);
385 suspend->message = intOutMessageNode;
386 suspend->statement = FB_NEW_POOL(pool) MessageMoverNode(pool,
387 extOutMessageNode, intOutMessageNode, intOutMessageNode);
388
389 statements.add(suspend);
390 statements.add(FB_NEW_POOL(pool) StallNode(pool));
391 }
392
393 virtual const StmtNode* execute(thread_db* tdbb, Request* request, ExeState* exeState) const
394 {

Callers

nothing calls this directly

Calls 4

SuspendNodeClass · 0.85
MessageMoverNodeClass · 0.85
StallNodeClass · 0.85
addMethod · 0.45

Tested by

no test coverage detected