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
238c63a1
Commit
238c63a1
authored
Mar 25, 2008
by
dimitri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.5.5-20080325
parent
f630007a
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
181 additions
and
39 deletions
+181
-39
INSTALL
INSTALL
+2
-2
README
README
+2
-2
configure
configure
+1
-1
commands.doc
doc/commands.doc
+19
-0
config.doc
doc/config.doc
+20
-0
language.doc
doc/language.doc
+2
-2
maintainers.txt
doc/maintainers.txt
+1
-1
cmdmapper.cpp
src/cmdmapper.cpp
+2
-0
cmdmapper.h
src/cmdmapper.h
+3
-1
code.l
src/code.l
+4
-2
commentscan.l
src/commentscan.l
+3
-0
config.l
src/config.l
+31
-6
definition.cpp
src/definition.cpp
+1
-1
docparser.cpp
src/docparser.cpp
+69
-15
docparser.h
src/docparser.h
+6
-3
dot.cpp
src/dot.cpp
+9
-1
doxygen.cpp
src/doxygen.cpp
+3
-1
util.cpp
src/util.cpp
+3
-1
No files found.
INSTALL
View file @
238c63a1
DOXYGEN Version 1.5.5-200803
16
DOXYGEN Version 1.5.5-200803
25
Please read the installation section of the manual
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
(http://www.doxygen.org/install.html) for instructions.
--------
--------
Dimitri van Heesch (
16
March 2008)
Dimitri van Heesch (
25
March 2008)
README
View file @
238c63a1
DOXYGEN Version 1.5.5_200803
16
DOXYGEN Version 1.5.5_200803
25
Please read INSTALL for compilation instructions.
Please read INSTALL for compilation instructions.
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (
16
March 2008)
Dimitri van Heesch (dimitri@stack.nl) (
25
March 2008)
configure
View file @
238c63a1
...
@@ -20,7 +20,7 @@ doxygen_version_minor=5
...
@@ -20,7 +20,7 @@ doxygen_version_minor=5
doxygen_version_revision
=
5
doxygen_version_revision
=
5
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn
=
200803
16
doxygen_version_mmn
=
200803
25
bin_dirs
=
`
echo
$PATH
|
sed
-e
"s/:/ /g"
`
bin_dirs
=
`
echo
$PATH
|
sed
-e
"s/:/ /g"
`
...
...
doc/commands.doc
View file @
238c63a1
...
@@ -53,6 +53,8 @@ documentation:
...
@@ -53,6 +53,8 @@ documentation:
\refitem cmdclass \\class
\refitem cmdclass \\class
\refitem cmdcode \\code
\refitem cmdcode \\code
\refitem cmdcond \\cond
\refitem cmdcond \\cond
\refitem cmdcopybrief \\copybrief
\refitem cmdcopydefails \\copydetails
\refitem cmdcopydoc \\copydoc
\refitem cmdcopydoc \\copydoc
\refitem cmddate \\date
\refitem cmddate \\date
\refitem cmddef \\def
\refitem cmddef \\def
...
@@ -1778,6 +1780,23 @@ Make sure you have first read \ref intro "the introduction".
...
@@ -1778,6 +1780,23 @@ Make sure you have first read \ref intro "the introduction".
The copydoc command can be used recursively, but cycles in the copydoc
The copydoc command can be used recursively, but cycles in the copydoc
relation will be broken and flagged as an error.
relation will be broken and flagged as an error.
Note that both the brief description and the detailed documentation
will be copied. See \ref cmdcopybrief "\\cmdcopybrief" and
\ref cmdcopydetails "\\cmdcopydetails" for copying only the brief or
detailed part of the comment block.
<hr>
\section cmdcopybrief \\copybrief <link-object>
Works in a similar way as \ref cmdcopydoc "\\copydoc" but will
only copy the brief description, not the detailed documentation.
<hr>
\section cmdcopydetails \\copydetails <link-object>
Works in a similar way as \ref cmdcopydoc "\\copydoc" but will
only copy the detailed documentation, not the brief description.
<hr>
<hr>
\section cmddot \\dot
\section cmddot \\dot
...
...
doc/config.doc
View file @
238c63a1
...
@@ -81,6 +81,8 @@ followed by the descriptions of the tags grouped by category.
...
@@ -81,6 +81,8 @@ followed by the descriptions of the tags grouped by category.
\
refitem
cfg_distribute_group_doc
DISTRIBUTE_GROUP_DOC
\
refitem
cfg_distribute_group_doc
DISTRIBUTE_GROUP_DOC
\
refitem
cfg_docset_bundle_id
DOCSET_BUNDLE_ID
\
refitem
cfg_docset_bundle_id
DOCSET_BUNDLE_ID
\
refitem
cfg_docset_feedname
DOCSET_FEEDNAME
\
refitem
cfg_docset_feedname
DOCSET_FEEDNAME
\
refitem
cfg_dot_fontname
DOT_FONTNAME
\
refitem
cfg_dot_fontpath
DOT_FONTPATH
\
refitem
cfg_dot_graph_max_nodes
DOT_GRAPH_MAX_NODES
\
refitem
cfg_dot_graph_max_nodes
DOT_GRAPH_MAX_NODES
\
refitem
cfg_dot_image_format
DOT_IMAGE_FORMAT
\
refitem
cfg_dot_image_format
DOT_IMAGE_FORMAT
\
refitem
cfg_dot_multi_targets
DOT_MULTI_TARGETS
\
refitem
cfg_dot_multi_targets
DOT_MULTI_TARGETS
...
@@ -1814,6 +1816,24 @@ TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
...
@@ -1814,6 +1816,24 @@ TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
visualization
toolkit
from
AT
\&
T
and
Lucent
Bell
Labs
.
The
other
options
in
visualization
toolkit
from
AT
\&
T
and
Lucent
Bell
Labs
.
The
other
options
in
this
section
have
no
effect
if
this
option
is
set
to
\
c
NO
(
the
default
)
this
section
have
no
effect
if
this
option
is
set
to
\
c
NO
(
the
default
)
<
dt
>\
c
DOT_FONTNAME
<
dd
>
\
addindex
DOT_FONTNAME
By
default
doxygen
will
write
a
font
called
FreeSans
.
ttf
to
the
output
directory
and
reference
it
in
all
dot
files
that
doxygen
generates
.
This
font
does
not
include
all
possible
unicode
characters
however
,
so
when
you
need
these
(
or
just
want
a
differently
looking
font
)
you
can
specify
the
font
name
using
\
c
DOT_FONTNAME
.
You
need
need
to
make
sure
dot
is
able
to
find
the
font
,
which
can
be
done
by
putting
it
in
a
standard
location
or
by
setting
the
\
c
DOTFONTPATH
environment
variable
or
by
setting
\
c
DOT_FONTPATH
to
the
directory
containing
the
font
.
<
dt
>\
c
DOT_FONTPATH
<
dd
>
\
addindex
DOT_FONTPATH
By
default
doxygen
will
tell
dot
to
use
the
output
directory
to
look
for
the
FreeSans
.
ttf
font
(
which
doxygen
will
put
there
itself
).
If
you
specify
a
different
font
using
\
c
DOT_FONTNAME
you
can
set
the
path
where
dot
can
find
it
using
this
tag
.
\
anchor
cfg_class_graph
\
anchor
cfg_class_graph
<
dt
>\
c
CLASS_GRAPH
<
dd
>
<
dt
>\
c
CLASS_GRAPH
<
dd
>
\
addindex
CLASS_GRAPH
\
addindex
CLASS_GRAPH
...
...
doc/language.doc
View file @
238c63a1
...
@@ -72,7 +72,7 @@ when the translator was updated.
...
@@ -72,7 +72,7 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<tr bgcolor="#ffffff">
<td>Catalan</td>
<td>Catalan</td>
<td>Maximiliano Pin<br>Albert Mora</td>
<td>Maximiliano Pin<br>Albert Mora</td>
<td>m
cpin at emtesistemas
dot com<br>amora at iua dot upf dot es</td>
<td>m
ax.pin at bitroit
dot com<br>amora at iua dot upf dot es</td>
<td>1.5.4</td>
<td>1.5.4</td>
</tr>
</tr>
<tr bgcolor="#ffffff">
<tr bgcolor="#ffffff">
...
@@ -288,7 +288,7 @@ when the translator was updated.
...
@@ -288,7 +288,7 @@ when the translator was updated.
\hline
\hline
Brazilian Portuguese & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino@uol.com.br} & up-to-date \\
Brazilian Portuguese & Fabio "FJTC" Jun Takada Chino & {\tt\tiny jun-chino@uol.com.br} & up-to-date \\
\hline
\hline
Catalan & Maximiliano Pin & {\tt\tiny m
cpin@emtesistemas
.com} & 1.5.4 \\
Catalan & Maximiliano Pin & {\tt\tiny m
ax.pin@bitroit
.com} & 1.5.4 \\
~ & Albert Mora & {\tt\tiny amora@iua.upf.es} & ~ \\
~ & Albert Mora & {\tt\tiny amora@iua.upf.es} & ~ \\
\hline
\hline
Chinese & Li Daobing & {\tt\tiny lidaobing@gmail.com} & up-to-date \\
Chinese & Li Daobing & {\tt\tiny lidaobing@gmail.com} & up-to-date \\
...
...
doc/maintainers.txt
View file @
238c63a1
...
@@ -19,7 +19,7 @@ TranslatorBrazilian
...
@@ -19,7 +19,7 @@ TranslatorBrazilian
Fabio "FJTC" Jun Takada Chino: jun-chino@uol.com.br
Fabio "FJTC" Jun Takada Chino: jun-chino@uol.com.br
TranslatorCatalan
TranslatorCatalan
Maximiliano Pin: m
cpin@emtesistemas
.com
Maximiliano Pin: m
ax.pin@bitroit
.com
Albert Mora: amora@iua.upf.es
Albert Mora: amora@iua.upf.es
TranslatorChinese
TranslatorChinese
...
...
src/cmdmapper.cpp
View file @
238c63a1
...
@@ -31,6 +31,8 @@ CommandMap cmdMap[] =
...
@@ -31,6 +31,8 @@ CommandMap cmdMap[] =
{
"c"
,
CMD_CODE
},
{
"c"
,
CMD_CODE
},
{
"code"
,
CMD_STARTCODE
},
{
"code"
,
CMD_STARTCODE
},
{
"copydoc"
,
CMD_COPYDOC
},
{
"copydoc"
,
CMD_COPYDOC
},
{
"copybrief"
,
CMD_COPYBRIEF
},
{
"copydetails"
,
CMD_COPYDETAILS
},
{
"date"
,
CMD_DATE
},
{
"date"
,
CMD_DATE
},
{
"dontinclude"
,
CMD_DONTINCLUDE
},
{
"dontinclude"
,
CMD_DONTINCLUDE
},
{
"dotfile"
,
CMD_DOTFILE
},
{
"dotfile"
,
CMD_DOTFILE
},
...
...
src/cmdmapper.h
View file @
238c63a1
...
@@ -110,7 +110,9 @@ enum CommandType
...
@@ -110,7 +110,9 @@ enum CommandType
CMD_ENDMANONLY
=
76
,
CMD_ENDMANONLY
=
76
,
CMD_INCWITHLINES
=
77
,
CMD_INCWITHLINES
=
77
,
CMD_INHERITDOC
=
78
,
CMD_INHERITDOC
=
78
,
CMD_TPARAM
=
79
|
SIMPLESECT_BIT
CMD_TPARAM
=
79
|
SIMPLESECT_BIT
,
CMD_COPYBRIEF
=
80
,
CMD_COPYDETAILS
=
81
};
};
enum
HtmlTagType
enum
HtmlTagType
...
...
src/code.l
View file @
238c63a1
...
@@ -410,7 +410,8 @@ static void popScope()
...
@@ -410,7 +410,8 @@ static void popScope()
static void setCurrentDoc(const QCString &name,const QCString &base,const QCString &anchor="")
static void setCurrentDoc(const QCString &name,const QCString &base,const QCString &anchor="")
{
{
static bool searchEngineEnabled=Config_getBool("SEARCHENGINE");
static bool searchEngineEnabled=Config_getBool("SEARCHENGINE") &&
Config_getBool("SOURCE_BROWSER");
if (searchEngineEnabled)
if (searchEngineEnabled)
{
{
Doxygen::searchIndex->setCurrentDoc(name,base,anchor);
Doxygen::searchIndex->setCurrentDoc(name,base,anchor);
...
@@ -419,7 +420,8 @@ static void setCurrentDoc(const QCString &name,const QCString &base,const QCStri
...
@@ -419,7 +420,8 @@ static void setCurrentDoc(const QCString &name,const QCString &base,const QCStri
static void addToSearchIndex(const char *text)
static void addToSearchIndex(const char *text)
{
{
static bool searchEngineEnabled=Config_getBool("SEARCHENGINE");
static bool searchEngineEnabled=Config_getBool("SEARCHENGINE") &&
Config_getBool("SOURCE_BROWSER");
if (searchEngineEnabled)
if (searchEngineEnabled)
{
{
Doxygen::searchIndex->addWord(text,FALSE);
Doxygen::searchIndex->addWord(text,FALSE);
...
...
src/commentscan.l
View file @
238c63a1
...
@@ -201,6 +201,9 @@ static DocCmdMap docCmdMap[] =
...
@@ -201,6 +201,9 @@ static DocCmdMap docCmdMap[] =
{ "attention", 0, TRUE },
{ "attention", 0, TRUE },
{ "author", 0, TRUE },
{ "author", 0, TRUE },
{ "authors", 0, TRUE },
{ "authors", 0, TRUE },
{ "copydoc", 0, TRUE },
{ "copybrief", 0, TRUE },
{ "copydetails", 0, TRUE },
{ "date", 0, TRUE },
{ "date", 0, TRUE },
{ "dotfile", 0, TRUE },
{ "dotfile", 0, TRUE },
{ "htmlinclude", 0, TRUE },
{ "htmlinclude", 0, TRUE },
...
...
src/config.l
View file @
238c63a1
...
@@ -1250,14 +1250,22 @@ void Config::check()
...
@@ -1250,14 +1250,22 @@ void Config::check()
if (Config_getBool("HAVE_DOT"))
if (Config_getBool("HAVE_DOT"))
{
{
QCString curFontPath = portable_getenv("DOTFONTPATH");
QCString curFontPath = Config_getString("DOT_FONTPATH");
QCString newFontPath = ".";
if (curFontPath.isEmpty())
if (!curFontPath.isEmpty())
{
portable_getenv("DOTFONTPATH");
QCString newFontPath = ".";
if (!curFontPath.isEmpty())
{
newFontPath+=portable_pathListSeparator();
newFontPath+=curFontPath;
}
portable_setenv("DOTFONTPATH",newFontPath);
}
else
{
{
newFontPath+=portable_pathListSeparator();
portable_setenv("DOTFONTPATH",curFontPath);
newFontPath+=curFontPath;
}
}
portable_setenv("DOTFONTPATH",newFontPath);
}
}
if (Config_getBool("OPTIMIZE_OUTPUT_JAVA") && Config_getBool("INLINE_INFO"))
if (Config_getBool("OPTIMIZE_OUTPUT_JAVA") && Config_getBool("INLINE_INFO"))
...
@@ -2933,6 +2941,23 @@ void Config::create()
...
@@ -2933,6 +2941,23 @@ void Config::create()
"have no effect if this option is set to NO (the default) \n",
"have no effect if this option is set to NO (the default) \n",
FALSE
FALSE
);
);
cs = addString( "DOT_FONTNAME",
"By default doxygen will write a font called FreeSans.ttf to the output \n"
"directory and reference it in all dot files that doxygen generates. This \n"
"font does not include all possible unicode characters however, so when you need \n"
"these (or just want a differently looking font) you can specify the font name \n"
"using DOT_FONTNAME. You need need to make sure dot is able to find the font, \n"
"which can be done by putting it in a standard location or by setting the \n"
"DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory \n"
"containing the font. \n"
);
cs->setDefaultValue("FreeSans");
cs = addString( "DOT_FONTPATH",
"By default doxygen will tell dot to use the output directory to look for the \n"
"FreeSans.ttf font (which doxygen will put there itself). If you specify a \n"
"different font using DOT_FONTNAME you can set the path where dot \n"
"can find it using this tag. \n"
);
cb = addBool(
cb = addBool(
"CLASS_GRAPH",
"CLASS_GRAPH",
"If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen \n"
"If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen \n"
...
...
src/definition.cpp
View file @
238c63a1
...
@@ -1020,7 +1020,7 @@ QCString Definition::qualifiedName() const
...
@@ -1020,7 +1020,7 @@ QCString Definition::qualifiedName() const
if
(
m_impl
->
outerScope
->
name
()
==
"<globalScope>"
)
if
(
m_impl
->
outerScope
->
name
()
==
"<globalScope>"
)
{
{
m_impl
->
qualifiedName
=
m_impl
->
localName
.
copy
()
;
m_impl
->
qualifiedName
=
m_impl
->
localName
;
}
}
else
else
{
{
...
...
src/docparser.cpp
View file @
238c63a1
...
@@ -81,8 +81,8 @@ static QString g_relPath;
...
@@ -81,8 +81,8 @@ static QString g_relPath;
static
bool
g_hasParamCommand
;
static
bool
g_hasParamCommand
;
static
bool
g_hasReturnCommand
;
static
bool
g_hasReturnCommand
;
static
MemberDef
*
g_memberDef
;
static
QDict
<
void
>
g_paramsFound
;
static
QDict
<
void
>
g_paramsFound
;
static
MemberDef
*
g_memberDef
;
static
bool
g_isExample
;
static
bool
g_isExample
;
static
QCString
g_exampleName
;
static
QCString
g_exampleName
;
static
SectionDict
*
g_sectionDict
;
static
SectionDict
*
g_sectionDict
;
...
@@ -125,7 +125,7 @@ static QStack<DocParserContext> g_parserStack;
...
@@ -125,7 +125,7 @@ static QStack<DocParserContext> g_parserStack;
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
static
void
docParserPushContext
()
static
void
docParserPushContext
(
bool
saveParamInfo
=
TRUE
)
{
{
//QCString indent;
//QCString indent;
//indent.fill(' ',g_parserStack.count()*2+2);
//indent.fill(' ',g_parserStack.count()*2+2);
...
@@ -143,10 +143,14 @@ static void docParserPushContext()
...
@@ -143,10 +143,14 @@ static void docParserPushContext()
ctx
->
fileName
=
g_fileName
;
ctx
->
fileName
=
g_fileName
;
ctx
->
relPath
=
g_relPath
;
ctx
->
relPath
=
g_relPath
;
ctx
->
hasParamCommand
=
g_hasParamCommand
;
if
(
saveParamInfo
)
ctx
->
hasReturnCommand
=
g_hasReturnCommand
;
{
ctx
->
hasParamCommand
=
g_hasParamCommand
;
ctx
->
hasReturnCommand
=
g_hasReturnCommand
;
ctx
->
paramsFound
=
g_paramsFound
;
}
ctx
->
memberDef
=
g_memberDef
;
ctx
->
memberDef
=
g_memberDef
;
ctx
->
paramsFound
=
g_paramsFound
;
ctx
->
isExample
=
g_isExample
;
ctx
->
isExample
=
g_isExample
;
ctx
->
exampleName
=
g_exampleName
;
ctx
->
exampleName
=
g_exampleName
;
ctx
->
sectionDict
=
g_sectionDict
;
ctx
->
sectionDict
=
g_sectionDict
;
...
@@ -1744,7 +1748,13 @@ void DocCopy::parse()
...
@@ -1744,7 +1748,13 @@ void DocCopy::parse()
{
{
if
(
g_copyStack
.
findRef
(
def
)
==-
1
)
// definition not parsed earlier
if
(
g_copyStack
.
findRef
(
def
)
==-
1
)
// definition not parsed earlier
{
{
docParserPushContext
();
bool
hasParamCommand
=
g_hasParamCommand
;
bool
hasReturnCommand
=
g_hasReturnCommand
;
QDict
<
void
>
paramsFound
=
g_paramsFound
;
//printf("..1 hasParamCommand=%d hasReturnCommand=%d paramsFound=%d\n",
// g_hasParamCommand,g_hasReturnCommand,g_paramsFound.count());
docParserPushContext
(
FALSE
);
if
(
def
->
definitionType
()
==
Definition
::
TypeMember
&&
def
->
getOuterScope
())
if
(
def
->
definitionType
()
==
Definition
::
TypeMember
&&
def
->
getOuterScope
())
{
{
g_context
=
def
->
getOuterScope
()
->
name
();
g_context
=
def
->
getOuterScope
()
->
name
();
...
@@ -1760,14 +1770,49 @@ void DocCopy::parse()
...
@@ -1760,14 +1770,49 @@ void DocCopy::parse()
// handle them in all cases.
// handle them in all cases.
//printf("doc='%s'\n",doc.data());
//printf("doc='%s'\n",doc.data());
//printf("brief='%s'\n",brief.data());
//printf("brief='%s'\n",brief.data());
brief
+=
'\n'
;
if
(
m_copyBrief
)
doc
+=
'\n'
;
{
internalValidatingParseDoc
(
this
,
m_children
,
brief
);
brief
+=
'\n'
;
internalValidatingParseDoc
(
this
,
m_children
,
doc
);
internalValidatingParseDoc
(
this
,
m_children
,
brief
);
//printf("..2 hasParamCommand=%d hasReturnCommand=%d paramsFound=%d\n",
// g_hasParamCommand,g_hasReturnCommand,g_paramsFound.count());
hasParamCommand
=
hasParamCommand
||
g_hasParamCommand
;
hasReturnCommand
=
hasReturnCommand
||
g_hasReturnCommand
;
QDictIterator
<
void
>
it
(
g_paramsFound
);
void
*
item
;
for
(;(
item
=
it
.
current
());
++
it
)
{
paramsFound
.
insert
(
it
.
currentKey
(),
it
.
current
());
}
}
if
(
m_copyDetails
)
{
doc
+=
'\n'
;
internalValidatingParseDoc
(
this
,
m_children
,
doc
);
//printf("..3 hasParamCommand=%d hasReturnCommand=%d paramsFound=%d\n",
// g_hasParamCommand,g_hasReturnCommand,g_paramsFound.count());
hasParamCommand
=
hasParamCommand
||
g_hasParamCommand
;
hasReturnCommand
=
hasReturnCommand
||
g_hasReturnCommand
;
QDictIterator
<
void
>
it
(
g_paramsFound
);
void
*
item
;
for
(;(
item
=
it
.
current
());
++
it
)
{
paramsFound
.
insert
(
it
.
currentKey
(),
it
.
current
());
}
}
g_copyStack
.
remove
(
def
);
g_copyStack
.
remove
(
def
);
ASSERT
(
g_styleStack
.
isEmpty
());
ASSERT
(
g_styleStack
.
isEmpty
());
ASSERT
(
g_nodeStack
.
isEmpty
());
ASSERT
(
g_nodeStack
.
isEmpty
());
docParserPopContext
(
TRUE
);
docParserPopContext
(
TRUE
);
g_hasParamCommand
=
hasParamCommand
;
g_hasReturnCommand
=
hasReturnCommand
;
g_paramsFound
=
paramsFound
;
//printf("..4 hasParamCommand=%d hasReturnCommand=%d paramsFound=%d\n",
// g_hasParamCommand,g_hasReturnCommand,g_paramsFound.count());
}
}
else
// oops, recursion
else
// oops, recursion
{
{
...
@@ -4437,7 +4482,8 @@ int DocPara::handleCommand(const QString &cmdName)
...
@@ -4437,7 +4482,8 @@ int DocPara::handleCommand(const QString &cmdName)
{
{
DBG
((
"handleCommand(%s)
\n
"
,
cmdName
.
data
()));
DBG
((
"handleCommand(%s)
\n
"
,
cmdName
.
data
()));
int
retval
=
RetVal_OK
;
int
retval
=
RetVal_OK
;
switch
(
Mappers
::
cmdMapper
->
map
(
cmdName
))
int
cmdId
=
Mappers
::
cmdMapper
->
map
(
cmdName
);
switch
(
cmdId
)
{
{
case
CMD_UNKNOWN
:
case
CMD_UNKNOWN
:
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Found unknown command `
\\
%s'"
,
cmdName
.
data
());
warn_doc_error
(
g_fileName
,
doctokenizerYYlineno
,
"Warning: Found unknown command `
\\
%s'"
,
cmdName
.
data
());
...
@@ -4702,7 +4748,9 @@ int DocPara::handleCommand(const QString &cmdName)
...
@@ -4702,7 +4748,9 @@ int DocPara::handleCommand(const QString &cmdName)
case
CMD_INTERNAL
:
case
CMD_INTERNAL
:
retval
=
RetVal_Internal
;
retval
=
RetVal_Internal
;
break
;
break
;
case
CMD_COPYDOC
:
case
CMD_COPYDOC
:
// fall through
case
CMD_COPYBRIEF
:
// fall through
case
CMD_COPYDETAILS
:
{
{
int
tok
=
doctokenizerYYlex
();
int
tok
=
doctokenizerYYlex
();
if
(
tok
!=
TK_WHITESPACE
)
if
(
tok
!=
TK_WHITESPACE
)
...
@@ -4724,7 +4772,9 @@ int DocPara::handleCommand(const QString &cmdName)
...
@@ -4724,7 +4772,9 @@ int DocPara::handleCommand(const QString &cmdName)
tokToString
(
tok
),
cmdName
.
data
());
tokToString
(
tok
),
cmdName
.
data
());
break
;
break
;
}
}
DocCopy
*
cpy
=
new
DocCopy
(
this
,
g_token
->
name
);
DocCopy
*
cpy
=
new
DocCopy
(
this
,
g_token
->
name
,
cmdId
==
CMD_COPYDOC
||
cmdId
==
CMD_COPYBRIEF
,
cmdId
==
CMD_COPYDOC
||
cmdId
==
CMD_COPYDETAILS
);
m_children
.
append
(
cpy
);
m_children
.
append
(
cpy
);
cpy
->
parse
();
cpy
->
parse
();
}
}
...
@@ -5983,8 +6033,9 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
...
@@ -5983,8 +6033,9 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
bool
isExample
,
const
char
*
exampleName
,
bool
isExample
,
const
char
*
exampleName
,
bool
singleLine
,
bool
linkFromIndex
)
bool
singleLine
,
bool
linkFromIndex
)
{
{
//printf("validatingParseDoc(%s,%s)\n",ctx?ctx->name().data():"<none>",
//printf("validatingParseDoc(%s,%s)=[%s]\n",ctx?ctx->name().data():"<none>",
// md?md->name().data():"<none>");
// md?md->name().data():"<none>",
// input);
//printf("========== validating %s at line %d\n",fileName,startLine);
//printf("========== validating %s at line %d\n",fileName,startLine);
//printf("---------------- input --------------------\n%s\n----------- end input -------------------\n",input);
//printf("---------------- input --------------------\n%s\n----------- end input -------------------\n",input);
//g_token = new TokenInfo;
//g_token = new TokenInfo;
...
@@ -6145,6 +6196,9 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
...
@@ -6145,6 +6196,9 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
// restore original parser state
// restore original parser state
docParserPopContext
();
docParserPopContext
();
//printf("end validatingParseDoc(%s,%s)\n",ctx?ctx->name().data():"<none>",
// md?md->name().data():"<none>");
return
root
;
return
root
;
}
}
...
...
src/docparser.h
View file @
238c63a1
...
@@ -500,12 +500,13 @@ class DocIndexEntry : public DocNode
...
@@ -500,12 +500,13 @@ class DocIndexEntry : public DocNode
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
/*! @brief Node representing a
entry in the index
. */
/*! @brief Node representing a
copy of documentation block
. */
class
DocCopy
:
public
CompAccept
<
DocCopy
>
,
public
DocNode
class
DocCopy
:
public
CompAccept
<
DocCopy
>
,
public
DocNode
{
{
public
:
public
:
DocCopy
(
DocNode
*
parent
,
const
QString
&
link
)
DocCopy
(
DocNode
*
parent
,
const
QString
&
link
,
bool
copyBrief
,
bool
copyDetails
)
:
m_parent
(
parent
),
m_link
(
link
)
{
}
:
m_parent
(
parent
),
m_link
(
link
),
m_copyBrief
(
copyBrief
),
m_copyDetails
(
copyDetails
)
{
}
Kind
kind
()
const
{
return
Kind_IndexEntry
;
}
Kind
kind
()
const
{
return
Kind_IndexEntry
;
}
QString
link
()
const
{
return
m_link
;
}
QString
link
()
const
{
return
m_link
;
}
DocNode
*
parent
()
const
{
return
m_parent
;
}
DocNode
*
parent
()
const
{
return
m_parent
;
}
...
@@ -515,6 +516,8 @@ class DocCopy : public CompAccept<DocCopy>, public DocNode
...
@@ -515,6 +516,8 @@ class DocCopy : public CompAccept<DocCopy>, public DocNode
private
:
private
:
DocNode
*
m_parent
;
DocNode
*
m_parent
;
QString
m_link
;
QString
m_link
;
bool
m_copyBrief
;
bool
m_copyDetails
;
};
};
/*! @brief Node representing an auto List */
/*! @brief Node representing an auto List */
...
...
src/dot.cpp
View file @
238c63a1
...
@@ -43,7 +43,8 @@
...
@@ -43,7 +43,8 @@
#define MAP_CMD "cmap"
#define MAP_CMD "cmap"
#define FONTNAME "FreeSans"
//#define FONTNAME "FreeSans"
#define FONTNAME getDotFontName()
//--------------------------------------------------------------------
//--------------------------------------------------------------------
...
@@ -76,6 +77,13 @@ static const char *edgeStyleMap[] =
...
@@ -76,6 +77,13 @@ static const char *edgeStyleMap[] =
"dashed"
// usage
"dashed"
// usage
};
};
static
QCString
getDotFontName
()
{
static
QCString
dotFontName
=
Config_getString
(
"DOT_FONTNAME"
);
if
(
dotFontName
.
isEmpty
())
dotFontName
=
"FreeSans"
;
return
dotFontName
;
}
static
void
writeGraphHeader
(
QTextStream
&
t
)
static
void
writeGraphHeader
(
QTextStream
&
t
)
{
{
t
<<
"digraph G"
<<
endl
;
t
<<
"digraph G"
<<
endl
;
...
...
src/doxygen.cpp
View file @
238c63a1
...
@@ -874,7 +874,7 @@ static Definition *buildScopeFromQualifiedName(const QCString name,int level)
...
@@ -874,7 +874,7 @@ static Definition *buildScopeFromQualifiedName(const QCString name,int level)
else
if
(
nd
==
0
&&
cd
==
0
)
// scope is not known!
else
if
(
nd
==
0
&&
cd
==
0
)
// scope is not known!
{
{
// introduce bogus namespace
// introduce bogus namespace
//printf("adding dummy namespace %s to %s\n",nsName.data(),prevScope->name().data());
//printf("
++
adding dummy namespace %s to %s\n",nsName.data(),prevScope->name().data());
nd
=
new
NamespaceDef
(
nd
=
new
NamespaceDef
(
"[generated]"
,
1
,
fullScope
);
"[generated]"
,
1
,
fullScope
);
...
@@ -1409,6 +1409,7 @@ static void buildNamespaceList(EntryNav *rootNav)
...
@@ -1409,6 +1409,7 @@ static void buildNamespaceList(EntryNav *rootNav)
tagName
=
rootNav
->
tagInfo
()
->
tagName
;
tagName
=
rootNav
->
tagInfo
()
->
tagName
;
tagFileName
=
rootNav
->
tagInfo
()
->
fileName
;
tagFileName
=
rootNav
->
tagInfo
()
->
fileName
;
}
}
//printf("++ new namespace %d\n",fullName.data());
NamespaceDef
*
nd
=
new
NamespaceDef
(
root
->
fileName
,
root
->
startLine
,
fullName
,
tagName
,
tagFileName
);
NamespaceDef
*
nd
=
new
NamespaceDef
(
root
->
fileName
,
root
->
startLine
,
fullName
,
tagName
,
tagFileName
);
nd
->
setDocumentation
(
root
->
doc
,
root
->
docFile
,
root
->
docLine
);
// copy docs to definition
nd
->
setDocumentation
(
root
->
doc
,
root
->
docFile
,
root
->
docLine
);
// copy docs to definition
nd
->
setBriefDescription
(
root
->
brief
,
root
->
briefFile
,
root
->
briefLine
);
nd
->
setBriefDescription
(
root
->
brief
,
root
->
briefFile
,
root
->
briefLine
);
...
@@ -1576,6 +1577,7 @@ static void findUsingDirectives(EntryNav *rootNav)
...
@@ -1576,6 +1577,7 @@ static void findUsingDirectives(EntryNav *rootNav)
}
}
else
// unknown namespace, but add it anyway.
else
// unknown namespace, but add it anyway.
{
{
//printf("++ new unknown namespace %s\n",name.data());
NamespaceDef
*
nd
=
new
NamespaceDef
(
root
->
fileName
,
root
->
startLine
,
name
);
NamespaceDef
*
nd
=
new
NamespaceDef
(
root
->
fileName
,
root
->
startLine
,
name
);
nd
->
setDocumentation
(
root
->
doc
,
root
->
docFile
,
root
->
docLine
);
// copy docs to definition
nd
->
setDocumentation
(
root
->
doc
,
root
->
docFile
,
root
->
docLine
);
// copy docs to definition
nd
->
setBriefDescription
(
root
->
brief
,
root
->
briefFile
,
root
->
briefLine
);
nd
->
setBriefDescription
(
root
->
brief
,
root
->
briefFile
,
root
->
briefLine
);
...
...
src/util.cpp
View file @
238c63a1
...
@@ -4944,7 +4944,8 @@ QCString stripScope(const char *name)
...
@@ -4944,7 +4944,8 @@ QCString stripScope(const char *name)
count
=
1
;
count
=
1
;
//printf("pos < = %d\n",p);
//printf("pos < = %d\n",p);
p
--
;
p
--
;
while
(
p
>=
0
)
bool
foundMatch
=
false
;
while
(
p
>=
0
&&
!
foundMatch
)
{
{
c
=
result
.
at
(
p
--
);
c
=
result
.
at
(
p
--
);
switch
(
c
)
switch
(
c
)
...
@@ -4962,6 +4963,7 @@ QCString stripScope(const char *name)
...
@@ -4962,6 +4963,7 @@ QCString stripScope(const char *name)
}
}
}
}
count
--
;
count
--
;
foundMatch
=
count
==
0
;
break
;
break
;
default:
default:
//printf("c=%c count=%d\n",c,count);
//printf("c=%c count=%d\n",c,count);
...
...
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