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

Function par_join_clause

src/gpre/sqe.cpp:2098–2126  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2096//
2097
2098static gpre_ctx* par_join_clause( gpre_req* request, gpre_ctx* context1)
2099{
2100 assert_IS_REQ(request);
2101
2102 const nod_t join_type = par_join_type();
2103 if (join_type == nod_nothing)
2104 return context1;
2105
2106 gpre_ctx* context2 = par_joined_relation(request);
2107 if (!context2)
2108 CPR_s_error("<joined table clause>");
2109
2110 if (!MSC_match(KW_ON))
2111 CPR_s_error("ON");
2112
2113 gpre_nod* node = SQE_boolean(request, NULL);
2114
2115 gpre_rse* selection = (gpre_rse*) MSC_alloc(RSE_LEN(2));
2116 selection->rse_count = 2;
2117 selection->rse_context[0] = context1;
2118 selection->rse_context[1] = context2;
2119 selection->rse_boolean = node;
2120 selection->rse_join_type = join_type;
2121
2122 context1 = MSC_context(request);
2123 context1->ctx_stream = selection;
2124
2125 return par_join_clause(request, context1);
2126}
2127
2128
2129//____________________________________________________________

Callers 1

par_joined_relationFunction · 0.85

Calls 8

par_join_typeFunction · 0.85
par_joined_relationFunction · 0.85
CPR_s_errorFunction · 0.85
MSC_matchFunction · 0.85
SQE_booleanFunction · 0.85
MSC_allocFunction · 0.85
RSE_LENFunction · 0.85
MSC_contextFunction · 0.85

Tested by

no test coverage detected