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

Function gen_for

src/gpre/languages/ada.cpp:1966–1994  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1964//
1965
1966static void gen_for( const act* action, int column)
1967{
1968 gen_s_start(action, column);
1969 gpre_req* request = action->act_request;
1970
1971 if (action->act_error || (action->act_flags & ACT_sql))
1972 printa(column, "if isc_status(1) = 0 then");
1973
1974 printa(column, "loop");
1975 column += INDENT;
1976 gen_receive(action, column, request->req_primary);
1977
1978 TEXT s[MAX_REF_SIZE];
1979 if (action->act_error || (action->act_flags & ACT_sql))
1980 printa(column, "exit when (%s = 0) or (isc_status(1) /= 0);",
1981 gen_name(s, request->req_eof, true));
1982 else
1983 printa(column, "exit when %s = 0;", gen_name(s, request->req_eof, true));
1984
1985 gpre_port* port = action->act_request->req_primary;
1986 if (port)
1987 {
1988 for (ref* reference = port->por_references; reference; reference = reference->ref_next)
1989 {
1990 if (reference->ref_field->fld_array_info)
1991 gen_get_or_put_slice(action, reference, true, column);
1992 }
1993 }
1994}
1995
1996
1997//____________________________________________________________

Callers 1

ADA_actionFunction · 0.70

Calls 5

gen_s_startFunction · 0.70
printaFunction · 0.70
gen_receiveFunction · 0.70
gen_nameFunction · 0.70
gen_get_or_put_sliceFunction · 0.70

Tested by

no test coverage detected