summaryrefslogtreecommitdiffstats
path: root/src/sqlite3gen.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'feature/bug_gitversion' of ↵Dimitri van Heesch2019-07-301-1/+1
|\ | | | | | | https://github.com/albert-github/doxygen into albert-github-feature/bug_gitversion
| * Show git version informationalbert-github2019-05-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original version has as features: - getting the git version number for usage in doxygen - making the doxygen version number inclusion dependent on the VERSION file The disadvantage of the chosen methodology was that an extra correction step was necessary, by defining getter methods to retrieve the values this correction can be hidden. The information is coming from different sources: - the VERSION file - the git "repository and build system (when present) Furthermore there are a couple of places where the version information is used (a.o. doxygen and doxywizard executable, though the doxygenwizard was only done "half hearted") The handling of the VERSION file has been made in such a way that it is comparable with the generation of the git version changes. For a better abstraction the version handling is all done in a separate directory.
* | Avoid calling non-const member aliases and 0 pointer dereference in sqlite3Dimitri van Heesch2019-06-171-1/+5
| |
* | Add const correctness for argument listsDimitri van Heesch2019-05-051-7/+7
|/
* 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>