From b625258a2f46f61e85bf473dfa64b719755c3b71 Mon Sep 17 00:00:00 2001 From: Dimitri van Heesch Date: Sat, 10 Dec 2011 20:30:14 +0000 Subject: Release-1.7.6.1 --- INSTALL | 4 ++-- README | 4 ++-- configure | 2 +- doc/commands.doc | 2 +- doc/config.doc | 13 +++++++++++++ examples/example.tag | 7 +++++++ qtools/Doxyfile | 4 ++-- qtools/qcache.h | 4 ++++ qtools/qgcache.cpp | 10 ++++++++++ qtools/qgcache.h | 2 ++ src/classdef.cpp | 4 ++-- src/commentscan.l | 13 +++++++++++++ src/config.xml | 14 +++++++++++-- src/configoptions.cpp | 18 +++++++++++++++-- src/doxygen.cpp | 54 ++++++++++++++++++++++++++++++++++++++++++++------- src/doxygen.css | 6 +++--- src/doxygen.h | 2 +- src/doxygen_css.h | 6 +++--- src/filedef.cpp | 2 +- src/htmlgen.cpp | 4 ++-- src/index.cpp | 6 +++--- src/index.h | 2 +- src/memberdef.cpp | 11 ++++++++--- src/msc.cpp | 2 +- src/objcache.cpp | 24 +++++++++-------------- src/objcache.h | 26 +++++++++++++++++++------ src/pre.l | 15 +++++++------- src/pyscanner.l | 10 ++++++++-- src/scanner.l | 2 +- src/util.cpp | 14 ++++++------- 30 files changed, 210 insertions(+), 77 deletions(-) diff --git a/INSTALL b/INSTALL index 95047af..0d5d47b 100644 --- a/INSTALL +++ b/INSTALL @@ -1,7 +1,7 @@ -DOXYGEN Version 1.7.6 +DOXYGEN Version 1.7.6.1 Please read the installation section of the manual (http://www.doxygen.org/install.html) for instructions. -------- -Dimitri van Heesch (03 December 2011) +Dimitri van Heesch (10 December 2011) diff --git a/README b/README index c1dd455..f625b3b 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -DOXYGEN Version 1.7.6 +DOXYGEN Version 1.7.6.1 Please read INSTALL for compilation instructions. @@ -26,4 +26,4 @@ forum. Enjoy, -Dimitri van Heesch (dimitri@stack.nl) (03 December 2011) +Dimitri van Heesch (dimitri@stack.nl) (10 December 2011) diff --git a/configure b/configure index 31e9607..2653c4b 100755 --- a/configure +++ b/configure @@ -17,7 +17,7 @@ doxygen_version_major=1 doxygen_version_minor=7 -doxygen_version_revision=6 +doxygen_version_revision=6.1 #NOTE: Setting version_mmn to "NO" will omit mmn info from the package. doxygen_version_mmn=NO diff --git a/doc/commands.doc b/doc/commands.doc index 72ec29f..f2c3ddd 100644 --- a/doc/commands.doc +++ b/doc/commands.doc @@ -1017,7 +1017,7 @@ Section indicators \par Example: \verbinclude author.cpp \htmlonly - Click here + Click here for the corresponding HTML documentation that is generated by doxygen. \endhtmlonly diff --git a/doc/config.doc b/doc/config.doc index bf81121..677b991 100644 --- a/doc/config.doc +++ b/doc/config.doc @@ -196,6 +196,7 @@ followed by the descriptions of the tags grouped by category. \refitem cfg_latex_output LATEX_OUTPUT \refitem cfg_latex_source_code LATEX_SOURCE_CODE \refitem cfg_layout_file LAYOUT_FILE +\refitem cfg_lookup_cache_size LOOKUP_CACHE_SIZE \refitem cfg_macro_expansion MACRO_EXPANSION \refitem cfg_makeindex_cmd_name MAKEINDEX_CMD_NAME \refitem cfg_man_extension MAN_EXTENSION @@ -644,6 +645,18 @@ combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES". \f$2^{(16+\mbox{SYMBOL\_CACHE\_SIZE})}\f$. The valid range is 0..9, the default is 0, corresponding to a cache size of \f$2^{16} = 65536\f$ symbols. +\anchor cfg_lookup_cache_size +
\c LOOKUP_CACHE_SIZE
+ \addindex LOOKUP_CACHE_SIZE + Similar to the \c SYMBOL_CACHE_SIZE the size of the symbol lookup cache can be + set using \c LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given + their name and scope. Since this can be an expensive process and often the + same symbol appear multiple times in the code, doxygen keeps a cache of + pre-resolved symbols. If the cache is too small doxygen will become slower. + If the cache is too large, memory is wasted. The cache size is given by this + formula: \f$2^{(16+\mbox{LOOKUP\_CACHE\_SIZE})}\f$. The valid range is 0..9, the default is 0, + corresponding to a cache size of \f$2^{16} = 65536\f$ symbols. + \section config_build Build related options diff --git a/examples/example.tag b/examples/example.tag index 593dc85..a38ab5c 100644 --- a/examples/example.tag +++ b/examples/example.tag @@ -3,5 +3,12 @@ Test class_test.html + + void + example + class_test.html + a47b775f65718978f1ffcd96376f8ecfa + () + diff --git a/qtools/Doxyfile b/qtools/Doxyfile index c57b15f..ddf9909 100644 --- a/qtools/Doxyfile +++ b/qtools/Doxyfile @@ -164,8 +164,8 @@ QHP_SECT_FILTER_ATTRS = QHG_LOCATION = GENERATE_ECLIPSEHELP = YES ECLIPSE_DOC_ID = org.doxygen.qtools -DISABLE_INDEX = YES -GENERATE_TREEVIEW = YES +DISABLE_INDEX = NO +GENERATE_TREEVIEW = NO ENUM_VALUES_PER_LINE = 4 USE_INLINE_TREES = YES TREEVIEW_WIDTH = 250 diff --git a/qtools/qcache.h b/qtools/qcache.h index f15345e..e1f13d6 100644 --- a/qtools/qcache.h +++ b/qtools/qcache.h @@ -73,6 +73,8 @@ public: type *operator[]( const QString &k ) const { return (type *)QGCache::find_string(k);} void statistics() const { QGCache::statistics(); } + int hits() const { return QGCache::hits(); } + int misses() const { return QGCache::misses(); } private: void deleteItem( Item d ) { if ( del_item ) delete (type *)d; } }; @@ -107,6 +109,8 @@ public: type *operator[]( const char *k ) const { return (type *)QGCache::find_other(k);} void statistics() const { QGCache::statistics(); } + int hits() const { return QGCache::hits(); } + int misses() const { return QGCache::misses(); } private: void deleteItem( Item d ) { if ( del_item ) delete (type *)d; } }; diff --git a/qtools/qgcache.cpp b/qtools/qgcache.cpp index 89282c7..e5dd8de 100644 --- a/qtools/qgcache.cpp +++ b/qtools/qgcache.cpp @@ -655,6 +655,16 @@ void QGCache::statistics() const #endif } +int QGCache::hits() const +{ + return lruList->hits; +} + +int QGCache::misses() const +{ + return lruList->finds - lruList->hits; +} + /***************************************************************************** QGCacheIterator member functions diff --git a/qtools/qgcache.h b/qtools/qgcache.h index 5c3e126..2f35c41 100644 --- a/qtools/qgcache.h +++ b/qtools/qgcache.h @@ -83,6 +83,8 @@ protected: QCollection::Item find_other( const char *key, bool ref=TRUE ) const; void statistics() const; + int hits() const; + int misses() const; private: bool makeRoomFor( int cost, int priority = -1 ); diff --git a/src/classdef.cpp b/src/classdef.cpp index cc9a617..a0b1527 100644 --- a/src/classdef.cpp +++ b/src/classdef.cpp @@ -957,9 +957,9 @@ void ClassDef::writeDetailedDocumentationBody(OutputList &ol) { ol.startSimpleSect(BaseOutputDocInterface::Examples,0,0,theTranslator->trExamples()+": "); ol.startDescForItem(); - ol.startParagraph(); + //ol.startParagraph(); writeExample(ol,m_impl->exampleSDict); - ol.endParagraph(); + //ol.endParagraph(); ol.endDescForItem(); ol.endSimpleSect(); } diff --git a/src/commentscan.l b/src/commentscan.l index 8ea61ce..cb295d1 100644 --- a/src/commentscan.l +++ b/src/commentscan.l @@ -402,6 +402,8 @@ static int g_condCount; static int g_sectionLevel; static int g_commentCount; +static bool g_spaceBeforeCmd; +static bool g_spaceBeforeIf; //----------------------------------------------------------------------------- @@ -955,6 +957,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$" // the {B}* in the front was added for bug620924 QCString cmdName = QCString(yytext).stripWhiteSpace().data()+1; DocCmdMapper::Cmd *cmdPtr = DocCmdMapper::map(cmdName); + g_spaceBeforeCmd = yytext[0]==' ' || yytext[0]=='\t'; if (cmdPtr) // special action is required { if (cmdPtr->endsBrief) @@ -1675,9 +1678,15 @@ RCSTAG "$"{ID}":"[^\n$]+"$" addOutput(*yytext); } {B}*{DOCNL} { + g_spaceBeforeIf=FALSE; BEGIN(Comment); } {B}* { + if (g_spaceBeforeIf) // needed for 665313 in combation with bug620924 + { + addOutput(" "); + } + g_spaceBeforeIf=FALSE; BEGIN(Comment); } . { @@ -2323,6 +2332,7 @@ static bool handleIf(const QCString &) { enabledSectionFound=FALSE; guardType = Guard_If; + g_spaceBeforeIf = g_spaceBeforeCmd; BEGIN(GuardParam); return FALSE; } @@ -2331,6 +2341,7 @@ static bool handleIfNot(const QCString &) { enabledSectionFound=FALSE; guardType = Guard_IfNot; + g_spaceBeforeIf = g_spaceBeforeCmd; BEGIN(GuardParam); return FALSE; } @@ -2557,6 +2568,8 @@ bool parseCommentBlock(/* in */ ParserInterface *parser, briefEndsAtDot = isAutoBriefOn; g_condCount = 0; g_sectionLevel = 0; + g_spaceBeforeCmd = FALSE; + g_spaceBeforeIf = FALSE; if (!current->inbodyDocs.isEmpty() && isInbody) // separate in body fragments { diff --git a/src/config.xml b/src/config.xml index 50867b2..dc79fc7 100644 --- a/src/config.xml +++ b/src/config.xml @@ -323,7 +323,17 @@ performance by keeping more symbols in memory. Note that the value works on a logarithmic scale so increasing the size by one will roughly double the memory usage. The cache size is given by this formula: 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, -corresponding to a cache size of 2^16 = 65536 symbols +corresponding to a cache size of 2^16 = 65536 symbols. +' minval='0' maxval='9' defval='0'/> +