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

Function gen_database_decls

src/gpre/languages/ftn.cpp:1411–1553  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1409//
1410
1411static void gen_database_decls() //const act* action)
1412{
1413 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_BLOB_NULL(2) %s{ null blob handle }\n",
1414 COLUMN, INLINE_COMMENT);
1415 fprintf(gpreGlob.out_file, "%sINTEGER*4 GDS__TRANS %s{ default transaction handle }\n",
1416 COLUMN, INLINE_COMMENT);
1417 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_STATUS(20) %s{ status vector }\n",
1418 COLUMN, INLINE_COMMENT);
1419 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_STATUS2(20) %s{ status vector }\n",
1420 COLUMN, INLINE_COMMENT);
1421
1422 // added for 3.3 compatibility
1423 fprintf(gpreGlob.out_file, "%sINTEGER*4 GDS__STATUS(20) %s{ status vector }\n",
1424 COLUMN, INLINE_COMMENT);
1425 fprintf(gpreGlob.out_file, "%sINTEGER*4 GDS__STATUS2(20) %s{ status vector }\n",
1426 COLUMN, INLINE_COMMENT);
1427
1428 printa(COLUMN, "EQUIVALENCE (ISC_STATUS(20), GDS__STATUS(20)) ");
1429 printa(COLUMN, "EQUIVALENCE (ISC_STATUS2(20), GDS__STATUS2(20)) ");
1430 // end of code added for 3.3 compatibility
1431
1432 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_NULL %s{ dummy status vector }\n",
1433 COLUMN, INLINE_COMMENT);
1434 fprintf(gpreGlob.out_file, "%sINTEGER*4 SQLCODE %s{ SQL status code }\n",
1435 COLUMN, INLINE_COMMENT);
1436 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_SQLCODE %s{ SQL status code translator }\n",
1437 COLUMN, INLINE_COMMENT);
1438 fprintf(gpreGlob.out_file,
1439 "%sINTEGER*4 ISC_ARRAY_LENGTH %s{ array return size }\n",
1440 COLUMN, INLINE_COMMENT);
1441
1442 bool all_static = true;
1443 bool dcl_ndx_var = false;
1444
1445 SSHORT count = 0;
1446 for (const gpre_dbb* db = gpreGlob.isc_databases; db; db = db->dbb_next)
1447 {
1448 all_static = all_static && (db->dbb_scope == DBB_STATIC);
1449 const TEXT* name = db->dbb_name->sym_string;
1450 fprintf(gpreGlob.out_file, "%sINTEGER*4 %s %s{ database handle }\n",
1451 COLUMN, name, INLINE_COMMENT);
1452
1453 fprintf(gpreGlob.out_file, "%sCHARACTER*256 ISC_%s %s{ database file name }\n",
1454 COLUMN, name, INLINE_COMMENT);
1455
1456 for (const tpb* tpb_iterator = db->dbb_tpbs;
1457 tpb_iterator;
1458 tpb_iterator = tpb_iterator->tpb_dbb_next)
1459 {
1460 gen_tpb_decls(tpb_iterator);
1461 dcl_ndx_var = true;
1462 }
1463
1464#ifdef HPUX
1465 // build fields to handle start_multiple
1466
1467 count++;
1468 fprintf(gpreGlob.out_file, "%sINTEGER*4 ISC_TEB%d_DBB %s( vector db handle )\n",

Callers 1

gen_databaseFunction · 0.85

Calls 6

gen_tpb_declsFunction · 0.85
gen_request_declsFunction · 0.85
printaFunction · 0.70
make_portFunction · 0.70
make_array_declarationFunction · 0.70
gen_event_blockFunction · 0.70

Tested by

no test coverage detected