MCPcopy Create free account
hub / github.com/RedisGraph/RedisGraph / _yield

Function _yield

src/execution_plan/ops/op_procedure_call.c:19–32  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17static void ProcCallFree(OpBase *opBase);
18
19static Record _yield(OpProcCall *op) {
20 SIValue *outputs = Proc_Step(op->procedure);
21 if(outputs == NULL) return NULL;
22
23 Record clone = OpBase_CloneRecord(op->r);
24 for(uint i = 0; i < array_len(op->output); i++) {
25 int idx = op->yield_map[i].rec_idx;
26 uint proc_out_idx = op->yield_map[i].proc_out_idx;
27 SIValue val = outputs[proc_out_idx];
28 Record_Add(clone, idx, val);
29 }
30
31 return clone;
32}
33
34static void _evaluate_proc_args(OpProcCall *op) {
35 // evaluate arguments, free args from previous call

Callers 1

ProcCallConsumeFunction · 0.85

Calls 4

Proc_StepFunction · 0.85
OpBase_CloneRecordFunction · 0.85
array_lenFunction · 0.85
Record_AddFunction · 0.85

Tested by

no test coverage detected