summaryrefslogtreecommitdiffstats
path: root/src/sqlite3gen.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Moved check for page having a title to hasTitle() methodDimitri van Heesch2018-12-311-1/+1
|
* issue_6597 SIGSEGV presumably caused by C++ "using" declarationalbert-github2018-11-051-1/+1
| | | | | Crash appears in in the autogen / permod and sqlite3 code generation. In the xml code generation the problem does not appear due to the protection against the NULL pointer. Added protection on the other places as well
* sqlite3: fix missing external_file view schema colTravis A. Everett2018-10-131-0/+1
|
* Expand sqlite3gen's breadth, depth, and qualityTravis A. Everett2018-09-031-533/+1624
| | | | | | | | | | | | | | | | | | | | | | | Generated sqlite3 databases are roughly ready to support tools and projects that require a significant fraction of what Doxygen collects. output quality: - collect primary info for most major entities and relationships - fix causes of junk data in some columns (i.e. const * / QCString / string / memory issues) - convert decription field markup (mix of markdown, HTML, and Doxygen commands) into XML - eliminate duplicate/overlapping data (both rows and columns) usability: - abort if database already exists; prompt user to archive/delete it - record Doxygen and sql schema versions so tools/clients can target/message appropriately - refine schema to support and simplify common queries addon/doxypysql: - adopt schema changes - py3 compat
* sqlite3gen: start checking operations statusAdrian Negreanu2017-10-251-112/+139
| | | | | | | | check return value and in case of failures, print the errmsg. to print the errmsg, the sqlite3* db is needed along with the prepared statement, so add a db member to SqlStmt. Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3gen: add missing protectedsettable columnAdrian Negreanu2017-10-251-1/+1
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3gen: add index on paramsAdrian Negreanu2017-10-251-1/+11
|
* sqlite3gen: use sqlite3_exec for schema setupAdrian Negreanu2017-10-251-10/+3
| | | | | | | executing the multiple statements in the schema, we also get the indeces created. Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3gen: add openDbConnectionAdrian Negreanu2017-10-251-8/+28
|
* const-ifyAdrian Negreanu2017-09-251-18/+20
|
* typosKunda2017-03-051-2/+2
| | | | | | some doxy typos and some misc. source typos typos some doxy typos and some misc. source typos
* sqlite3gen: stripWhitespace on bitfield's textAdrian Negreanu2016-08-091-1/+1
|
* sqlite3gen: stripFromPath on all calls to insertFileAdrian Negreanu2016-08-091-5/+5
|
* sqlite3gen: sync with xmlgenAdrian Negreanu2016-08-091-56/+199
| | | | | Modified the memberdef table so that it includes all elements xmlgen dups for a memberdef.
* sqlite3gen: insert xrefs using integer refidsAdrian Negreanu2016-08-051-22/+22
|
* sqlite3gen: use the refid stored in the refids tableAdrian Negreanu2016-07-251-13/+21
| | | | All refid are now INTEGERS pointing into the refids Table.
* sqlite3gen: defnname -> defnameAdrian Negreanu2016-07-251-9/+9
| | | | Match the name used by XML.
* sqlite3gen: export proper memberdef refidAdrian Negreanu2016-07-201-1/+2
|
* Changed configuration mechanism to directly access options in order to ↵Dimitri van Heesch2016-01-171-1/+1
| | | | improve performance
* sqlite3: add schema commentsAdrian Negreanu2015-06-091-107/+127
| | | | | | | | Comments should help DB users that are unfamiliar to doxygen internals. You can dump the schema with: echo ".schema" | sqlite3 doxygen_sqlite3.db
* sqlite3: fix constnessAdrian Negreanu2015-06-091-1/+2
| | | | | :const was binded only when al->constSpecifier was non-NULL. Fix that by removing the test on al->constSpecifier
* Fix for bug 746673.Travis A. Everett2015-03-241-4/+11
| | | | | | Resolves a typo (dervied->derived) in sqlite prepared query var, which was preventing the derivedcompounddef table from populating. Fixing this issue also exposed an underlying problem where junk data was showing up in two columns. Porting some if/else logic from the code that inserts to basecompounddef seems to have fixed this, as well.
* Bump copyright yearDimitri van Heesch2015-02-261-1/+1
|
* sqlite3: speedup the SELECTsAdrian Negreanu2014-02-271-185/+258
| | | | | | | | | | | | | | | | | | The uniqueness of rows is maintained by first doing a select. In case the item is not found, it's INSERTed. This is done for files, refids, params and includes, data that is not unique by itself, like cross-references for example. In other words, you can have many memberdefs in one file, but you can only have one cross-reference between two functions since the reference location is unique. So, when SELECTing files and refids, use the file name and refids as primary key since that's the fastest way to do it. Also 'OR REPLACE' not necessary in 'INSERT OR REPLACE'. Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Updated copyrightDimitri van Heesch2014-02-111-1/+1
|
* sqlite3: updatesAdrian Negreanu2014-02-081-332/+422
| | | | | | | | | | | | | | | | * template and function arguments * innernamespaces * put sqlite3_stmt and the coresponding query in a struct * use has(Multi|One)LineInitializer instead of hardcoded value when extracting references from initializers * sqlite3_clear_bindings in step() * getRow in step() should use different sqlite3_ functions depending on wether is doing 'INSERT' or 'SELECT' includes table uses only file IDs Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: SQLITE_TRANSIENTsAdrian Negreanu2014-02-011-4/+4
| | | | | In table basecompoundref, use SQLITE_TRANSIENT for base, derived, refid
* sqlite3: extract more infoAdrian Negreanu2014-02-011-13/+21
| | | | | | | | | | memberdef table changes: * rename bstart to bodystart * rename id_bfile to id_bodyfile * add bodyend * add {brief,detailed,inbody}description Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: clear bindings on errors and more care with returnAdrian Negreanu2014-01-141-12/+18
| | | | | | | * call sqlite3_clear_bindings when step fails * more miss-placed returns Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: remove some debug messagesAdrian Negreanu2014-01-091-2/+0
| | | | | | these were causing a major performance hit Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: leave out insertMemberReference until xref location is validAdrian Negreanu2014-01-091-1/+2
| | | | | | | the code comes from the early stage of sqlite3gen, when xref keys were kept as "file:line:column", not as function name. Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: use the new qtools APIAdrian Negreanu2014-01-081-6/+8
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: add memberdef initializerAdrian Negreanu2013-08-171-2/+5
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: make innerclass refid non-transientAdrian Negreanu2013-08-171-1/+1
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: be more careful with returnAdrian Negreanu2013-08-171-6/+14
| | | | | | | | | | return-ing on a "step" failure, drops any info that could be extracted further on. instead, call sqlite3_clear_bindings() statements fail and carry on Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: shuffle the code so it's aligned with xmlgen.cppAdrian Negreanu2013-08-051-207/+210
| | | | | | this way, it's easier to see what's missing from sqlite3gen Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: more SQLITE_TRANSIENT-sAdrian Negreanu2013-08-041-2/+2
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: no more exitAdrian Negreanu2013-08-031-17/+29
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: support for includes and includedbyAdrian Negreanu2013-08-031-16/+46
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: sometimes bindXParameter requires SQLITE_TRANSIENTAdrian Negreanu2013-08-031-5/+5
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: add stubs for page, dirs, example and main-pageAdrian Negreanu2013-08-031-3/+65
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: update the commentsAdrian Negreanu2013-08-031-32/+47
| | | | Signed-off-by: Adrian Negreanu <groleo@gmail.com>
* sqlite3: cleanup prepareStatementsAdrian Negreanu2013-08-031-60/+21
|
* sqlite3: fix warning 'set but not used'Adrian Negreanu2013-08-031-2/+0
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: remove commented codeAdrian Negreanu2013-08-031-264/+0
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: capitalize FROM keywordAdrian Negreanu2013-08-021-2/+2
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* Fixed potential crash in sqlite3 supportDimitri van Heesch2013-07-021-1/+4
|
* sqlite3: remove trailing spacesAdrian Negreanu2013-06-181-33/+33
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: fix some copy-pasteAdrian Negreanu2013-06-181-3/+3
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
* sqlite3: fix misleading error messageAdrian Negreanu2013-06-181-1/+1
| | | | Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>