Skip to main content

The sqlite3gen.h File Reference

Functions Index

voidgenerateSqlite3 ()

Functions

generateSqlite3()

void generateSqlite3 ()

Declaration at line 21 of file sqlite3gen.h, definition at line 2587 of file sqlite3gen.cpp.

2588{
2589 // + classes
2590 // + namespaces
2591 // + files
2592 // + groups
2593 // + related pages
2594 // + examples
2595 // + main page
2596 sqlite3 *db = openDbConnection();
2597 if (db==nullptr)
2598 {
2599 return;
2600 }
2601
2602# ifdef SQLITE3_DEBUG
2603 // debug: show all executed statements
2604 sqlite3_trace(db, &sqlLog, nullptr);
2605# endif
2606
2608 pragmaTuning(db);
2609
2610 if (-1==initializeTables(db))
2611 return;
2612
2613 if ( -1 == prepareStatements(db) )
2614 {
2615 err("sqlite generator: prepareStatements failed!\n");
2616 return;
2617 }
2618
2620
2621 // + classes
2622 for (const auto &cd : *Doxygen::classLinkedMap)
2623 {
2624 msg("Generating Sqlite3 output for class {}\n",cd->name());
2625 generateSqlite3ForClass(cd.get());
2626 }
2627
2628 // + concepts
2629 for (const auto &cd : *Doxygen::conceptLinkedMap)
2630 {
2631 msg("Generating Sqlite3 output for concept {}\n",cd->name());
2633 }
2634
2635 // + modules
2636 for (const auto &mod : ModuleManager::instance().modules())
2637 {
2638 msg("Generating Sqlite3 output for module {}\n",mod->name());
2639 generateSqlite3ForModule(mod.get());
2640 }
2641
2642 // + namespaces
2643 for (const auto &nd : *Doxygen::namespaceLinkedMap)
2644 {
2645 msg("Generating Sqlite3 output for namespace {}\n",nd->name());
2647 }
2648
2649 // + files
2650 for (const auto &fn : *Doxygen::inputNameLinkedMap)
2651 {
2652 for (const auto &fd : *fn)
2653 {
2654 msg("Generating Sqlite3 output for file {}\n",fd->name());
2655 generateSqlite3ForFile(fd.get());
2656 }
2657 }
2658
2659 // + groups
2660 for (const auto &gd : *Doxygen::groupLinkedMap)
2661 {
2662 msg("Generating Sqlite3 output for group {}\n",gd->name());
2663 generateSqlite3ForGroup(gd.get());
2664 }
2665
2666 // + page
2667 for (const auto &pd : *Doxygen::pageLinkedMap)
2668 {
2669 msg("Generating Sqlite3 output for page {}\n",pd->name());
2671 }
2672
2673 // + dirs
2674 for (const auto &dd : *Doxygen::dirLinkedMap)
2675 {
2676 msg("Generating Sqlite3 output for dir {}\n",dd->name());
2677 generateSqlite3ForDir(dd.get());
2678 }
2679
2680 // + examples
2681 for (const auto &pd : *Doxygen::exampleLinkedMap)
2682 {
2683 msg("Generating Sqlite3 output for example {}\n",pd->name());
2685 }
2686
2687 // + main page
2689 {
2690 msg("Generating Sqlite3 output for the main page\n");
2692 }
2693
2694 // TODO: copied from initializeSchema; not certain if we should say/do more
2695 // if there's a failure here?
2696 if (-1==initializeViews(db))
2697 return;
2698
2699 endTransaction(db);
2700}

References beginTransaction, Doxygen::classLinkedMap, Doxygen::conceptLinkedMap, Doxygen::dirLinkedMap, endTransaction, err, Doxygen::exampleLinkedMap, FALSE, generateSqlite3ForClass, generateSqlite3ForConcept, generateSqlite3ForDir, generateSqlite3ForFile, generateSqlite3ForGroup, generateSqlite3ForModule, generateSqlite3ForNamespace, generateSqlite3ForPage, Doxygen::groupLinkedMap, initializeTables, initializeViews, Doxygen::inputNameLinkedMap, ModuleManager::instance, Doxygen::mainPage, msg, Doxygen::namespaceLinkedMap, openDbConnection, Doxygen::pageLinkedMap, pragmaTuning, prepareStatements, recordMetadata and TRUE.

Referenced by generateOutput.


Generated via doxygen2docusaurus by Doxygen 1.14.0.