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

Function resolve_asterisk

src/gpre/sqe.cpp:3816–3849  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3814//
3815
3816static gpre_ctx* resolve_asterisk( const tok* q_token, gpre_rse* selection)
3817{
3818 for (int i = 0; i < selection->rse_count; i++)
3819 {
3820 gpre_ctx* context = selection->rse_context[i];
3821 gpre_rse* rs_stream = context->ctx_stream;
3822 if (rs_stream)
3823 {
3824 if ((context = resolve_asterisk(q_token, rs_stream)))
3825 return context;
3826 continue;
3827 }
3828 gpre_sym* symbol = HSH_lookup(q_token->tok_string);
3829 for (; symbol; symbol = symbol->sym_homonym)
3830 {
3831 if (symbol->sym_type == SYM_relation &&
3832 (gpre_rel*) symbol->sym_object == context->ctx_relation)
3833 {
3834 return context;
3835 }
3836 if (symbol->sym_type == SYM_procedure &&
3837 (gpre_prc*) symbol->sym_object == context->ctx_procedure)
3838 {
3839 return context;
3840 }
3841 if (symbol->sym_type == SYM_context && (gpre_ctx*) symbol->sym_object == context)
3842 {
3843 return context;
3844 }
3845 }
3846 }
3847
3848 return NULL;
3849}
3850
3851
3852//____________________________________________________________

Callers 1

explode_asteriskFunction · 0.85

Calls 1

HSH_lookupFunction · 0.85

Tested by

no test coverage detected