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

Function par_start_stream

src/gpre/par.cpp:2914–2943  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2912//
2913
2914static act* par_start_stream()
2915{
2916 gpre_req* request = MSC_request(REQ_cursor);
2917 par_options(request, false);
2918 act* action = MSC_action(request, ACT_s_start);
2919
2920 gpre_sym* cursor = PAR_symbol(SYM_dummy);
2921 cursor->sym_type = SYM_stream;
2922 cursor->sym_object = (gpre_ctx*) request;
2923
2924 MSC_match(KW_USING);
2925 gpre_rse* rec_expr = EXP_rse(request, 0);
2926 request->req_rse = rec_expr;
2927 gpre_ctx* context = rec_expr->rse_context[0];
2928 gpre_rel* relation = context->ctx_relation;
2929 request->req_database = relation->rel_database;
2930
2931 gpre_ctx** ptr = rec_expr->rse_context;
2932 for (const gpre_ctx* const* const end = ptr + rec_expr->rse_count; ptr < end; ptr++)
2933 {
2934 context = *ptr;
2935 context->ctx_next = request->req_contexts;
2936 request->req_contexts = context;
2937 }
2938
2939 HSH_insert(cursor);
2940 PAR_end();
2941
2942 return action;
2943}
2944
2945
2946//____________________________________________________________

Callers 1

PAR_actionFunction · 0.85

Calls 8

MSC_requestFunction · 0.85
MSC_actionFunction · 0.85
PAR_symbolFunction · 0.85
MSC_matchFunction · 0.85
EXP_rseFunction · 0.85
HSH_insertFunction · 0.85
PAR_endFunction · 0.85
par_optionsFunction · 0.70

Tested by

no test coverage detected