Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
doxverilog
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
doxverilog
Commits
6bedd287
Commit
6bedd287
authored
Sep 02, 2007
by
dimitri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.5.3-20070902
parent
115c6c02
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
124 additions
and
38 deletions
+124
-38
INSTALL
INSTALL
+2
-2
README
README
+2
-2
doxywizard.pro.in
addon/doxywizard/doxywizard.pro.in
+3
-0
configure
configure
+1
-1
install.doc
doc/install.doc
+1
-1
commentscan.l
src/commentscan.l
+7
-2
definition.cpp
src/definition.cpp
+5
-4
docparser.cpp
src/docparser.cpp
+43
-5
doctokenizer.h
src/doctokenizer.h
+1
-0
doctokenizer.l
src/doctokenizer.l
+3
-0
dot.cpp
src/dot.cpp
+1
-0
doxygen.cpp
src/doxygen.cpp
+2
-2
htmlhelp.cpp
src/htmlhelp.cpp
+4
-0
portable.cpp
src/portable.cpp
+6
-2
scanner.l
src/scanner.l
+35
-16
util.cpp
src/util.cpp
+8
-1
No files found.
INSTALL
View file @
6bedd287
DOXYGEN Version 1.5.3-20070
815
DOXYGEN Version 1.5.3-20070
902
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (
15 August
2007)
Dimitri van Heesch (
02 September
2007)
README
View file @
6bedd287
DOXYGEN Version 1.5.3_20070
815
DOXYGEN Version 1.5.3_20070
902
Please read INSTALL for compilation instructions.
...
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (
15 August
2007)
Dimitri van Heesch (dimitri@stack.nl) (
02 September
2007)
addon/doxywizard/doxywizard.pro.in
View file @
6bedd287
...
...
@@ -17,6 +17,9 @@ TEMPLATE = doxywizard.t
# executable to generate
TARGET = ../../bin/doxywizard
# we do not use the debug features in this copy of portable.cpp
DEFINES = NODEBUG
# configure options
CONFIG = qt warn_on $extraopts
...
...
configure
View file @
6bedd287
...
...
@@ -20,7 +20,7 @@ doxygen_version_minor=5
doxygen_version_revision
=
3
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn
=
20070
815
doxygen_version_mmn
=
20070
902
bin_dirs
=
`
echo
$PATH
|
sed
-e
"s/:/ /g"
`
...
...
doc/install.doc
View file @
6bedd287
...
...
@@ -376,7 +376,7 @@ Before you can compile doxygen you need to download and install the C++ compiler
Visual Studio. Since Microsoft apparently wants to lure everyone into using their
.NET stuff, they made things somewhat difficult when you use the Express version.
You need to
<a href="http://msdn
.microsoft.com/vstudio/express/visualc/usingpsdk/
">
<a href="http://msdn
2.microsoft.com/en-gb/express/aa700755.aspx
">
do some manual steps</a> in order to setup a proper working environment for building
native win32 applications such as Doxygen.
...
...
src/commentscan.l
View file @
6bedd287
...
...
@@ -568,7 +568,9 @@ static QCString addFormula()
formLabel.sprintf("\\form#%d",f->getId());
}
int i;
for (i=0;i<formulaNewLines;i++) formLabel+='\n';
for (i=0;i<formulaNewLines;i++) formLabel+="\\_fakenl"; // add fake newlines to
// keep the warnings
// correctly aligned.
return formLabel;
}
...
...
@@ -690,7 +692,9 @@ static inline void setOutput(OutputContext ctx)
current->briefLine = yyLineNr;
}
}
if (current->brief.isEmpty())
if (current->brief.stripWhiteSpace().isEmpty()) // we only want one brief
// description even if multiple
// are given...
{
pOutputString = ¤t->brief;
}
...
...
@@ -794,6 +798,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
SCOPEID {ID}({ID}*{BN}*"::"{BN}*)*({ID}?)
SCOPENAME "$"?(({ID}?{BN}*"::"{BN}*)*)((~{BN}*)?{ID})
MAILADR [a-z_A-Z0-9.+\-]+"@"[a-z_A-Z0-9\-]+("."[a-z_A-Z0-9\-]+)+[a-z_A-Z0-9\-]+
RCSTAG "$"{ID}":"[^\n$]+"$"
%option noyywrap
...
...
src/definition.cpp
View file @
6bedd287
...
...
@@ -849,14 +849,15 @@ void Definition::writeSourceRefs(OutputList &ol,const char *scopeName)
bool
Definition
::
hasDocumentation
()
const
{
static
bool
extractAll
=
Config_getBool
(
"EXTRACT_ALL"
);
static
bool
sourceBrowser
=
Config_getBool
(
"SOURCE_BROWSER"
);
//
static bool sourceBrowser = Config_getBool("SOURCE_BROWSER");
makeResident
();
bool
hasDocs
=
(
m_impl
->
details
&&
!
m_impl
->
details
->
doc
.
isEmpty
())
||
// has detailed docs
(
m_impl
->
brief
&&
!
m_impl
->
brief
->
doc
.
isEmpty
())
||
// has brief description
extractAll
||
// extract everything
(
sourceBrowser
&&
m_impl
->
body
&&
m_impl
->
body
->
startLine
!=-
1
&&
m_impl
->
body
->
fileDef
);
// link to definition
extractAll
//|| // extract everything
// (sourceBrowser && m_impl->body &&
// m_impl->body->startLine!=-1 && m_impl->body->fileDef)
;
// link to definition
return
hasDocs
;
}
...
...
src/docparser.cpp
View file @
6bedd287
...
...
@@ -3798,9 +3798,10 @@ int DocSimpleSect::parseRcs()
m_title
=
new
DocTitle
(
this
);
m_title
->
parseFromString
(
g_token
->
name
);
docParserPushContext
();
internalValidatingParseDoc
(
this
,
m_children
,
g_token
->
text
);
docParserPopContext
();
QString
text
=
g_token
->
text
;
docParserPushContext
();
// this will create a new g_token
internalValidatingParseDoc
(
this
,
m_children
,
text
);
docParserPopContext
();
// this will restore the old g_token
DBG
((
"DocSimpleSect::parseRcs()
\n
"
));
DocNode
*
n
=
g_nodeStack
.
pop
();
...
...
@@ -5455,7 +5456,16 @@ reparsetoken:
// so a new simple section will be started at this level.
// This is the same as unputting the last read token and continuing.
g_token
->
name
=
g_token
->
simpleSectName
;
tok
=
TK_COMMAND
;
if
(
g_token
->
name
.
left
(
4
)
==
"rcs:"
)
// RCS section
{
g_token
->
name
=
g_token
->
name
.
mid
(
4
);
g_token
->
text
=
g_token
->
simpleSectText
;
tok
=
TK_RCSTAG
;
}
else
// other section
{
tok
=
TK_COMMAND
;
}
DBG
((
"reparsing command %s
\n
"
,
g_token
->
name
.
data
()));
goto
reparsetoken
;
}
...
...
@@ -5545,7 +5555,16 @@ reparsetoken:
// so a new simple section will be started at this level.
// This is the same as unputting the last read token and continuing.
g_token
->
name
=
g_token
->
simpleSectName
;
tok
=
TK_COMMAND
;
if
(
g_token
->
name
.
left
(
4
)
==
"rcs:"
)
// RCS section
{
g_token
->
name
=
g_token
->
name
.
mid
(
4
);
g_token
->
text
=
g_token
->
simpleSectText
;
tok
=
TK_RCSTAG
;
}
else
// other section
{
tok
=
TK_COMMAND
;
}
DBG
((
"reparsing command %s
\n
"
,
g_token
->
name
.
data
()));
goto
reparsetoken
;
}
...
...
@@ -5608,6 +5627,25 @@ reparsetoken:
goto
endparagraph
;
case
TK_RCSTAG
:
{
DocNode
*
n
=
parent
();
while
(
n
&&
n
->
kind
()
!=
DocNode
::
Kind_SimpleSect
&&
n
->
kind
()
!=
DocNode
::
Kind_ParamSect
)
{
n
=
n
->
parent
();
}
if
(
n
)
// already in a simple section
{
// simple section cannot start in this paragraph, need
// to unwind the stack and remember the command.
g_token
->
simpleSectName
=
"rcs:"
+
g_token
->
name
;
g_token
->
simpleSectText
=
g_token
->
text
;
retval
=
RetVal_SimpleSec
;
goto
endparagraph
;
}
// see if we are in a simple list
DocSimpleSect
*
ss
=
new
DocSimpleSect
(
this
,
DocSimpleSect
::
Rcs
);
m_children
.
append
(
ss
);
ss
->
parseRcs
();
...
...
src/doctokenizer.h
View file @
6bedd287
...
...
@@ -83,6 +83,7 @@ struct TokenInfo
// simple section
QString
simpleSectName
;
QString
simpleSectText
;
// verbatim fragment
QString
verb
;
...
...
src/doctokenizer.l
View file @
6bedd287
...
...
@@ -415,6 +415,9 @@ REFWORD ("#"|"::")?({ID}("."|"#"|"::"|"-"|"/"))*({ID}(":")?){FUNCARG}?
g_token->name = "inheritdoc";
return TK_COMMAND;
}
<St_Para>"\\_fakenl" { // artificial new line
yylineno++;
}
<St_Para>{SPCMD3} {
g_token->name = "form";
bool ok;
...
...
src/dot.cpp
View file @
6bedd287
...
...
@@ -1473,6 +1473,7 @@ bool DotClassGraph::determineVisibleNodes(DotNode *rootNode,
}
}
}
if
(
Config_getBool
(
"UML_LOOK"
))
return
FALSE
;
// UML graph are always top to bottom
int
maxWidth
=
0
;
int
maxHeight
=
(
int
)
QMAX
(
childTreeWidth
.
size
(),
parentTreeWidth
.
size
());
uint
i
;
...
...
src/doxygen.cpp
View file @
6bedd287
...
...
@@ -2091,7 +2091,7 @@ static MemberDef *addVariableToFile(
}
else
{
if
(
!
root
->
type
.
isEmpty
())
if
(
!
root
->
type
.
isEmpty
()
&&
!
root
->
name
.
isEmpty
()
)
{
if
(
name
.
at
(
0
)
==
'@'
)
// dummy variable representing annonymous union
def
=
root
->
type
;
...
...
@@ -2625,7 +2625,7 @@ static void addMethodToClass(EntryNav *rootNav,ClassDef *cd,
// strip redundant template specifier for constructors
if
((
fd
==
0
||
getLanguageFromFileName
(
fd
->
name
())
==
SrcLangExt_Cpp
)
&&
(
i
=
name
.
find
(
'<'
)
!=-
1
)
&&
name
.
find
(
'>'
)
!=-
1
)
name
.
left
(
9
)
!=
"operator "
&&
(
i
=
name
.
find
(
'<'
))
!=-
1
&&
name
.
find
(
'>'
)
!=-
1
)
{
name
=
name
.
left
(
i
);
}
...
...
src/htmlhelp.cpp
View file @
6bedd287
...
...
@@ -480,6 +480,8 @@ void HtmlHelp::finalize()
{
// end the contents file
cts
<<
"</UL>
\n
"
;
cts
<<
"</BODY>
\n
"
;
cts
<<
"</HTML>
\n
"
;
cts
.
unsetDevice
();
cf
->
close
();
delete
cf
;
...
...
@@ -488,6 +490,8 @@ void HtmlHelp::finalize()
// end the index file
kts
<<
"</UL>
\n
"
;
kts
<<
"</BODY>
\n
"
;
kts
<<
"</HTML>
\n
"
;
kts
.
unsetDevice
();
kf
->
close
();
delete
kf
;
...
...
src/portable.cpp
View file @
6bedd287
...
...
@@ -22,7 +22,9 @@ extern char **environ;
#endif
#include "portable.h"
//#include "debug.h"
#ifndef NODEBUG
#include "debug.h"
#endif
//#include "doxygen.h"
static
double
sysElapsedTime
;
...
...
@@ -43,7 +45,9 @@ int portable_system(const char *command,const char *args,bool commandHasConsole
}
fullCmd
+=
" "
;
fullCmd
+=
args
;
//Debug::print(Debug::ExtCmd,0,"Executing external command `%s`\n",fullCmd.data());
#ifndef NODEBUG
Debug
::
print
(
Debug
::
ExtCmd
,
0
,
"Executing external command `%s`
\n
"
,
fullCmd
.
data
());
#endif
#if !defined(_WIN32) || defined(__CYGWIN__)
commandHasConsole
=
commandHasConsole
;
...
...
src/scanner.l
View file @
6bedd287
...
...
@@ -890,7 +890,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
current->argList->clear();
lineCount() ;
}
<FindMembers>{B}*"event"{BN}
*
{
<FindMembers>{B}*"event"{BN}
+
{
if (insideCli)
{
// C++/CLI event
...
...
@@ -905,7 +905,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
REJECT;
}
}
<FindMembers>{B}*"property"{BN}
*
{
<FindMembers>{B}*"property"{BN}
+
{
if (insideCli)
{
// C++/CLI property
...
...
@@ -942,7 +942,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
addType( current );
current->type += yytext;
}
<FindMembers>{B}*"property"{BN}
*
{
<FindMembers>{B}*"property"{BN}
+
{
if (!current->type.isEmpty())
{
REJECT;
...
...
@@ -2751,15 +2751,18 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
<FindFields>";" {
if (insideJava) // last enum field in Java class
{
current->fileName = yyFileName;
current->startLine = yyLineNr;
current->type = "@"; // enum marker
current->args = current->args.simplifyWhiteSpace();
current->name = current->name.stripWhiteSpace();
current->section = Entry::VARIABLE_SEC;
current_root->addSubEntry(current);
current = new Entry ;
initEntry();
if (!current->name.isEmpty())
{
current->fileName = yyFileName;
current->startLine = yyLineNr;
current->type = "@"; // enum marker
current->args = current->args.simplifyWhiteSpace();
current->name = current->name.stripWhiteSpace();
current->section = Entry::VARIABLE_SEC;
current_root->addSubEntry(current);
current = new Entry ;
initEntry();
}
// TODO: skip until the end of the scope
BEGIN( SkipRemainder );
...
...
@@ -4001,7 +4004,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
delete current->sli;
current->sli = 0;
}
previous->endBodyLine=yyLineNr;
if (previous)
previous->endBodyLine=yyLineNr;
BEGIN( lastCurlyContext ) ;
}
}
...
...
@@ -4209,6 +4212,15 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
BEGIN( FindMembers );
}
<CompoundName>{SCOPENAME}/"(" {
current->name = yytext ;
lineCount();
if (current->spec & Entry::Protocol)
{
current->name += "-p";
}
BEGIN( ClassVar );
}
<CompoundName>{SCOPENAME} {
current->name = yytext ;
lineCount();
...
...
@@ -4380,9 +4392,16 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
<ClassCategory>")" {
current->name+=')';
// category has no variables so push back an empty body
unput('}');
unput('{');
if ((current->section & Entry::Protocol) ||
current->section == Entry::OBJCIMPL_SEC)
{
unput('{'); // fake start of body
}
else // category has no variables so push back an empty body
{
unput('}');
unput('{');
}
BEGIN( ClassVar );
}
<ClassVar>":" {
...
...
src/util.cpp
View file @
6bedd287
...
...
@@ -1641,7 +1641,7 @@ void linkifyText(const TextGeneratorIntf &out,Definition *scope,
}
//printf("floatingIndex=%d strlen=%d autoBreak=%d\n",floatingIndex,strLen,autoBreak);
if
(
strLen
>
25
&&
floatingIndex
>
2
0
&&
autoBreak
)
// try to insert a split point
if
(
strLen
>
35
&&
floatingIndex
>
3
0
&&
autoBreak
)
// try to insert a split point
{
QCString
splitText
=
txtStr
.
mid
(
skipIndex
,
newIndex
-
skipIndex
);
int
splitLength
=
splitText
.
length
();
...
...
@@ -4588,6 +4588,13 @@ QCString escapeCharsInString(const char *name,bool allowDots)
case
' '
:
result
+=
"_01"
;
break
;
case
'{'
:
result
+=
"_02"
;
break
;
case
'}'
:
result
+=
"_03"
;
break
;
case
'?'
:
result
+=
"_04"
;
break
;
case
'^'
:
result
+=
"_05"
;
break
;
case
'%'
:
result
+=
"_06"
;
break
;
case
'('
:
result
+=
"_07"
;
break
;
case
')'
:
result
+=
"_08"
;
break
;
case
'+'
:
result
+=
"_09"
;
break
;
case
'='
:
result
+=
"_0A"
;
break
;
default:
if
(
caseSenseNames
||
!
isupper
(
c
))
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment