| 435 | // Compile scratch block |
| 436 | |
| 437 | class CompilerScratch : public pool_alloc<type_csb> |
| 438 | { |
| 439 | public: |
| 440 | struct Dependency |
| 441 | { |
| 442 | explicit Dependency(int aObjType) |
| 443 | { |
| 444 | memset(this, 0, sizeof(*this)); |
| 445 | objType = aObjType; |
| 446 | } |
| 447 | |
| 448 | int objType; |
| 449 | |
| 450 | union |
| 451 | { |
| 452 | jrd_rel* relation; |
| 453 | const Function* function; |
| 454 | const jrd_prc* procedure; |
| 455 | const MetaName* name; |
| 456 | SLONG number; |
| 457 | }; |
| 458 | |
| 459 | const MetaName* subName; |
| 460 | SLONG subNumber; |
| 461 | }; |
| 462 | |
| 463 | explicit CompilerScratch(MemoryPool& p, CompilerScratch* aMainCsb = NULL) |
| 464 | : /*csb_node(0), |
| 465 | csb_variables(0), |
| 466 | csb_dependencies(0), |
| 467 | csb_count(0), |
| 468 | csb_n_stream(0), |
| 469 | csb_msg_number(0), |
| 470 | csb_impure(0), |
| 471 | csb_g_flags(0),*/ |
| 472 | #ifdef CMP_DEBUG |
| 473 | csb_dump(p), |
| 474 | #endif |
| 475 | mainCsb(aMainCsb), |
| 476 | csb_external(p), |
| 477 | csb_access(p), |
| 478 | csb_resources(p), |
| 479 | csb_dependencies(p), |
| 480 | csb_fors(p), |
| 481 | csb_localTables(p), |
| 482 | csb_invariants(p), |
| 483 | csb_current_nodes(p), |
| 484 | csb_current_for_nodes(p), |
| 485 | csb_forCursorNames(p), |
| 486 | csb_computing_fields(p), |
| 487 | csb_inner_booleans(p), |
| 488 | csb_variables_used_in_subroutines(p), |
| 489 | csb_pool(p), |
| 490 | csb_map_field_info(p), |
| 491 | csb_map_item_info(p), |
| 492 | csb_message_pad(p), |
| 493 | subFunctions(p), |
| 494 | subProcedures(p), |
no test coverage detected