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
2d0679ab
Commit
2d0679ab
authored
Jun 18, 2000
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.1.4-20000618
parent
eb3b95e2
Changes
22
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
236 additions
and
98 deletions
+236
-98
INSTALL
INSTALL
+9
-6
README
README
+1
-1
config_templ.l
addon/configgen/config_templ.l
+1
-0
configgen.cpp
addon/configgen/configgen.cpp
+9
-5
commands.doc
doc/commands.doc
+33
-4
make.bat
make.bat
+9
-0
classdef.cpp
src/classdef.cpp
+1
-1
code.l
src/code.l
+1
-1
config.l
src/config.l
+1
-0
declinfo.l
src/declinfo.l
+3
-2
defargs.l
src/defargs.l
+4
-7
definition.cpp
src/definition.cpp
+24
-5
definition.h
src/definition.h
+1
-0
doxygen.cpp
src/doxygen.cpp
+53
-45
doxygen.h
src/doxygen.h
+4
-4
groupdef.cpp
src/groupdef.cpp
+1
-1
memberdef.cpp
src/memberdef.cpp
+1
-0
pre.l
src/pre.l
+2
-2
scanner.l
src/scanner.l
+66
-9
tag.l
src/tag.l
+2
-2
translator.h
src/translator.h
+8
-1
util.cpp
src/util.cpp
+2
-2
No files found.
INSTALL
View file @
2d0679ab
...
...
@@ -84,10 +84,13 @@ You will need to install the windows/dos versions of following tools:
You can download them at: http://sourceware.cygnus.com/cygwin/
Make sure the BISONLIB environment variable points to the
location where bison.simple and bison.hairy are located.
- Qt-1.xx (Qt-2.xx should also work, but I didn't test it for Windows)
(Hint: only the tools section is required, so you can use the free
X-windows version (use Qt-1.44) as well!)
You can get it at http://www.troll.no
- Qt-1.xx (Qt-2.xx does not work without adding some extra code)
Only the tools section is required, so you can use the free
X-windows version (use Qt-1.44) and build a library called qt.lib out of
the sources in src/tools. The library should be put in the lib directory
of the Qt distribution. You can get Qt-1.44 at http://www.trolltech.com
Before continuing make sure the QTDIR environment variable points to the
root of the Qt distribution.
- Microsoft Visual C++ (I only tested with version 5.0).
Use the vcvars32.bat to set the environment variables
(if you did not select to do this automatically during installation).
...
...
@@ -146,7 +149,7 @@ QT RELATED PROBLEMS:
- do "cd qt"
- do "ln -s your-qt-include-dir-here include",
- do "ln -s your-qt-lib-dir-here lib",
- do "export QTDIR=$PWD" (or "setenv QTDIR $PWD if you have a csh)
- do "export QTDIR=$PWD" (or "setenv QTDIR $PWD if you have a csh
-like shell
)
Now install doxygen as described above.
...
...
@@ -252,4 +255,4 @@ The latest version of doxygen can be obtained at
Enjoy,
Dimitri van Heesch (1
1
June 2000)
Dimitri van Heesch (1
8
June 2000)
README
View file @
2d0679ab
...
...
@@ -7,4 +7,4 @@ The latest version of doxygen can be obtained at
Enjoy,
Dimitri van Heesch (1
1
June 2000)
Dimitri van Heesch (1
8
June 2000)
addon/configgen/config_templ.l
View file @
2d0679ab
...
...
@@ -318,6 +318,7 @@ void configStrToVal()
static void substEnvVarsInString(QCString &s)
{
static QRegExp re("\\$\\([a-z_A-Z0-9]+\\)");
if (s.isEmpty()) return;
int p=0;
int i,l;
//printf("substEnvVarInString(%s) start\n",s.data());
...
...
addon/configgen/configgen.cpp
View file @
2d0679ab
...
...
@@ -788,29 +788,33 @@ void init()
"EXTRACT_ALL"
,
"FALSE"
,
"gererate docs for all classes flag"
,
"If the EXTRACT_ALL tag is set to YES all classes and functions will be
\n
"
"included in the documentation, even if no documentation was available.
\n
"
"If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
\n
"
"documentation are documented, even if no documentation was available.
\n
"
"Private class members and static file members will be hidden unless
\n
"
"the EXTRACT_PRIVATE tag is set to YES
\n
"
);
ConfigBool
::
add
(
"extractPrivateFlag"
,
"EXTRACT_PRIVATE"
,
"FALSE"
,
"generate docs for private members flag"
,
"If the EXTRACT_PRIVATE tag is set to YES all private members of a class
\n
"
"will be included in the documentation.
\n
"
"
and the static members of a file
will be included in the documentation.
\n
"
);
ConfigBool
::
add
(
"hideMemberFlag"
,
"HIDE_UNDOC_MEMBERS"
,
"FALSE"
,
"hide undocumented members."
,
"If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
\n
"
"undocumented members inside documented classes or files.
\n
"
"undocumented members of documented classes, files or namespaces.
\n
"
"This option has no effect if EXTRACT_ALL is enabled.
\n
"
);
ConfigBool
::
add
(
"hideClassFlag"
,
"HIDE_UNDOC_CLASSES"
,
"FALSE"
,
"hide undocumented members."
,
"If the HIDE_UNDOC_CLASSESS tag is set to YES, Doxygen will hide all
\n
"
"undocumented classes.
\n
"
"undocumented classes that are normally visible in the class hierarchy.
\n
"
"This option has no effect if EXTRACT_ALL is enabled.
\n
"
);
ConfigBool
::
add
(
"briefMemDescFlag"
,
"BRIEF_MEMBER_DESC"
,
...
...
doc/commands.doc
View file @
2d0679ab
...
...
@@ -47,6 +47,7 @@ documentation:
<li> \refitem cmdaddindex \addindex
<li> \refitem cmdanchor \anchor
<li> \refitem cmdarg \arg
<li> \refitem cmdattention \attention
<li> \refitem cmdauthor \author
<li> \refitem cmdb \b
<li> \refitem cmdbrief \brief
...
...
@@ -97,6 +98,7 @@ documentation:
<li> \refitem cmdpre \pre
<li> \refitem cmdref \ref
<li> \refitem cmdrelates \relates
<li> \refitem cmdremarks \remarks
<li> \refitem cmdreturn \return
<li> \refitem cmdretval \retval
<li> \refitem cmdsa \sa
...
...
@@ -523,6 +525,18 @@ Public/Protected/Private/... section.
Section indicators
\htmlonly --- </center>\endhtmlonly</h2>
<hr>
\subsection cmdattention \attention { attention text }
\addindex \attention
Starts a paragraph where a message that needs attention may be entered.
The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
Multiple adjacent \\attention commands will be joined into a single paragraph.
The \\attention command ends when a blank line or some other
sectioning command is encountered.
\subsection cmdauthor \author { list of authors }
\addindex \author
...
...
@@ -664,7 +678,7 @@ Public/Protected/Private/... section.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
Multiple adjacent \\invariant commands will be joined into a single paragraph.
Each
warning
description will start on a new line.
Each
invariant
description will start on a new line.
Alternatively, one \\invariant command may mention
several invariants. The \\invariant command ends when a blank line or some other
sectioning command is encountered.
...
...
@@ -712,7 +726,7 @@ Public/Protected/Private/... section.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
Multiple adjacent \\post commands will be joined into a single paragraph.
Each
warning descrip
tion will start on a new line.
Each
postcondi
tion will start on a new line.
Alternatively, one \\post command may mention
several postconditions. The \\post command ends when a blank line or some other
sectioning command is encountered.
...
...
@@ -726,11 +740,25 @@ Public/Protected/Private/... section.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
Multiple adjacent \\pre commands will be joined into a single paragraph.
Each
warning descrip
tion will start on a new line.
Each
precondi
tion will start on a new line.
Alternatively, one \\pre command may mention
several preconditions. The \\pre command ends when a blank line or some other
sectioning command is encountered.
<hr>
\subsection cmdremarks \remarks { remark text }
\addindex \remarks
Starts a paragraph where one or more marks may be entered.
The paragraph will be indented.
The text of the paragraph has no special internal structure. All visual
enhancement commands may be used inside the paragraph.
Multiple adjacent \\remark commands will be joined into a single paragraph.
Each remark will start on a new line.
Alternatively, one \\remark command may mention
several remarks. The \\remark command ends when a blank line or some other
sectioning command is encountered.
<hr>
\subsection cmdreturn \return { description of the return value }
...
...
@@ -800,7 +828,8 @@ Public/Protected/Private/... section.
Multiple adjacent \\version commands will be joined into a single paragraph.
Each version description will start on a new line.
Alternatively, one \\version command may mention
several dates. The \\version command ends when a blank line or some other
several version strings.
The \\version command ends when a blank line or some other
sectioning command is encountered. See section \ref cmdauthor "\\author"
for an example.
...
...
make.bat
View file @
2d0679ab
REM make script for Microsoft Visual C++
if "%QTDIR%"=="" goto ERROR
REM use perl to create the config file
perl wintools\make.pl
...
...
@@ -12,3 +14,10 @@ type src\doxytag.pro.in | sed "s/\$extraopts/release/g" >src\doxytag.pro
type src\doxysearch.pro.in | sed "s/\$extraopts/release/g" >src\doxysearch.pro
nmake
goto END
:ERROR
echo The QTDIR environment variable is not set! See the INSTALL file for more info.
goto END
:END
src/classdef.cpp
View file @
2d0679ab
...
...
@@ -1025,7 +1025,7 @@ void ClassDef::writeDocumentation(OutputList &ol)
while
(
file
)
{
bool
ambig
;
FileDef
*
fd
=
findFileDef
(
&
inputNameDict
,
file
,
ambig
);
FileDef
*
fd
=
findFileDef
(
inputNameDict
,
file
,
ambig
);
if
(
fd
)
{
if
(
first
)
...
...
src/code.l
View file @
2d0679ab
...
...
@@ -676,7 +676,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
//FileInfo *f;
bool ambig;
FileDef *fd;
if ((fd=findFileDef(
&
inputNameDict,yytext,ambig)) &&
if ((fd=findFileDef(inputNameDict,yytext,ambig)) &&
fd->isLinkable())
{
g_code->writeCodeLink(fd->getReference(),fd->getOutputFileBase(),0,yytext);
...
...
src/config.l
View file @
2d0679ab
...
...
@@ -1875,6 +1875,7 @@ void configStrToVal()
static void substEnvVarsInString(QCString &s)
{
static QRegExp re("\\$\\([a-z_A-Z0-9]+\\)");
if (s.isEmpty()) return;
int p=0;
int i,l;
//printf("substEnvVarInString(%s) start\n",s.data());
...
...
src/declinfo.l
View file @
2d0679ab
...
...
@@ -136,9 +136,10 @@ ID ([a-z_A-Z][a-z_A-Z0-9]*)|(@[0-9]+)
<Start>{B}+ {
addType();
}
<Start>{B}*"("
{B}*"*"
{
<Start>{B}*"("
({ID}"::")*{B}*"*"
{
addType();
type+="(*";
QCString text=yytext;
type+=text.stripWhiteSpace();
}
<Start>{B}*")" {
type+=")";
...
...
src/defargs.l
View file @
2d0679ab
...
...
@@ -256,12 +256,9 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
if (l>0)
{
int i=l-1;
while (i>=0 &&
(
isspace(g_curArgTypeName.at(i)) ||
isId(g_curArgTypeName.at(i))
)
) i--;
while (i>=0 && isspace(g_curArgTypeName.at(i))) i--;
while (i>=0 && isId(g_curArgTypeName.at(i))) i--;
//printf("g_curArgTypeName=`%s' i=%d\n",g_curArgTypeName.data(),i);
Argument *a = new Argument;
a->attrib = g_curArgAttrib.copy();
if (i>=0 && g_curArgTypeName.at(i)!=':')
...
...
@@ -276,7 +273,7 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
a->array = g_curArgArray.copy();
a->defval = g_curArgDefValue.copy();
a->docs = g_curArgDocs.stripWhiteSpace();
//printf("Argument
%s %s
adding docs=`%s'\n",a->type.data(),a->name.data(),a->docs.data());
//printf("Argument
`%s' `%s'
adding docs=`%s'\n",a->type.data(),a->name.data(),a->docs.data());
g_argList->append(a);
}
g_curArgAttrib.resize(0);
...
...
src/definition.cpp
View file @
2d0679ab
...
...
@@ -141,15 +141,27 @@ static bool readCodeFragment(const char *fileName,
}
if
(
!
f
.
atEnd
())
{
// skip until the opening bracket is found
while
(
lineNr
<=
endLine
&&
!
f
.
atEnd
()
&&
c
!=
'{'
)
// skip until the opening bracket or lonely : is found
bool
found
=
FALSE
;
char
cn
;
while
(
lineNr
<=
endLine
&&
!
f
.
atEnd
()
&&
!
found
)
{
while
((
c
=
f
.
getch
())
!=
'{'
&&
c
!=-
1
)
if
(
c
==
'\n'
)
lineNr
++
;
while
((
c
=
f
.
getch
())
!=
'{'
&&
c
!=
':'
&&
c
!=-
1
)
if
(
c
==
'\n'
)
lineNr
++
;
if
(
c
==
':'
)
{
cn
=
f
.
getch
();
if
(
cn
!=
':'
)
found
=
TRUE
;
}
else
if
(
c
==
'{'
)
{
found
=
TRUE
;
}
}
if
(
c
==
'{'
)
if
(
found
)
{
// copy until end of line
result
+=
c
;
if
(
c
==
':'
)
result
+=
cn
;
startLine
=
lineNr
;
const
int
maxLineLength
=
4096
;
char
lineStr
[
maxLineLength
];
...
...
@@ -179,7 +191,7 @@ static bool readCodeFragment(const char *fileName,
}
/*! Write a reference to the source code defining this definition */
void
Definition
::
writeSourceDef
(
OutputList
&
ol
,
const
char
*
scopeName
)
void
Definition
::
writeSourceDef
(
OutputList
&
ol
,
const
char
*
)
{
ol
.
pushGeneratorState
();
//printf("Definition::writeSourceRef %d %p\n",bodyLine,bodyDef);
...
...
@@ -271,6 +283,13 @@ void Definition::writeSourceDef(OutputList &ol,const char *scopeName)
ol
.
newParagraph
();
ol
.
enableAll
();
}
ol
.
popGeneratorState
();
}
/*! Write code of this definition into the documentation */
void
Definition
::
writeInlineCode
(
OutputList
&
ol
,
const
char
*
scopeName
)
{
ol
.
pushGeneratorState
();
if
(
Config
::
inlineSourceFlag
&&
startBodyLine
!=-
1
&&
endBodyLine
>=
startBodyLine
&&
bodyDef
)
{
...
...
src/definition.h
View file @
2d0679ab
...
...
@@ -97,6 +97,7 @@ class Definition
int
getEndBodyLine
()
const
{
return
endBodyLine
;
}
FileDef
*
getBodyDef
()
{
return
bodyDef
;
}
void
writeSourceDef
(
OutputList
&
ol
,
const
char
*
scopeName
);
void
writeInlineCode
(
OutputList
&
ol
,
const
char
*
scopeName
);
void
writeSourceRefs
(
OutputList
&
ol
,
const
char
*
scopeName
);
void
addSourceReference
(
MemberDef
*
d
);
...
...
src/doxygen.cpp
View file @
2d0679ab
This diff is collapsed.
Click to expand it.
src/doxygen.h
View file @
2d0679ab
...
...
@@ -109,10 +109,10 @@ extern ClassDef unrelatedClass;
extern
QTextStream
tagFile
;
extern
SectionDict
sectionDict
;
extern
FileNameList
inputNameList
;
extern
FileNameDict
includeNameDict
;
extern
FileNameDict
exampleNameDict
;
extern
FileNameDict
inputNameDict
;
extern
FileNameDict
imageNameDict
;
extern
FileNameDict
*
includeNameDict
;
extern
FileNameDict
*
exampleNameDict
;
extern
FileNameDict
*
inputNameDict
;
extern
FileNameDict
*
imageNameDict
;
//extern FileList includeFiles;
extern
StringDict
typedefDict
;
extern
GroupList
groupList
;
...
...
src/groupdef.cpp
View file @
2d0679ab
...
...
@@ -213,7 +213,7 @@ void GroupDef::writeDocumentation(OutputList &ol)
while
(
fd
)
{
ol
.
startMemberItem
(
0
);
ol
.
docify
(
"file"
);
ol
.
docify
(
"file
"
);
ol
.
insertMemberAlign
();
ol
.
writeObjectLink
(
fd
->
getReference
(),
fd
->
getOutputFileBase
(),
0
,
fd
->
name
());
ol
.
endMemberItem
(
FALSE
);
...
...
src/memberdef.cpp
View file @
2d0679ab
...
...
@@ -1302,6 +1302,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
// write reference to the source
writeSourceDef
(
ol
,
cname
);
writeSourceRefs
(
ol
,
cname
);
writeInlineCode
(
ol
,
cname
);
ol
.
endIndent
();
// enable LaTeX again
...
...
src/pre.l
View file @
2d0679ab
...
...
@@ -99,7 +99,7 @@ static void setFileName(const char *name)
{
bool ambig;
g_yyFileName=name;
g_yyFileDef=findFileDef(
&
inputNameDict,g_yyFileName,ambig);
g_yyFileDef=findFileDef(inputNameDict,g_yyFileName,ambig);
}
static void incrLevel()
...
...
@@ -858,7 +858,7 @@ static void readIncludeFile(const QCString &inc)
if (oldFileDef)
{
bool ambig;
FileDef *fd = findFileDef(
&
inputNameDict,incFileName,ambig);
FileDef *fd = findFileDef(inputNameDict,incFileName,ambig);
// add include dependency to the file in which the #include was found
oldFileDef->addIncludeDependency(fd,incFileName,localInclude);
}
...
...
src/scanner.l
View file @
2d0679ab
...
...
@@ -137,6 +137,8 @@ static bool inPreBlock;
static bool inPostBlock;
static bool inInvarBlock;
static bool inWarningBlock;
static bool inRemarkBlock;
static bool inAttentionBlock;
static bool inParBlock;
static bool firstSeeArg;
static char afterDocTerminator;
...
...
@@ -223,6 +225,8 @@ static void initParser()
inPostBlock = FALSE;
inInvarBlock = FALSE;
inWarningBlock = FALSE;
inRemarkBlock = FALSE;
inAttentionBlock = FALSE;
inParBlock = FALSE;
firstSeeArg = FALSE;
}
...
...
@@ -400,7 +404,7 @@ static void includeFile(OutputList &ol,const char *fileName,bool quiet)
//FileInfo *f;
bool ambig;
FileDef *fd;
if ((fd=findFileDef(
&
exampleNameDict,fileName,ambig)))
if ((fd=findFileDef(exampleNameDict,fileName,ambig)))
{
currentIncludeFile=fileToString(fd->absFilePath());
includeFileOffset=0;
...
...
@@ -419,7 +423,7 @@ static void includeFile(OutputList &ol,const char *fileName,bool quiet)
QCString text;
text.sprintf("Include file name %s is ambigious.\n",fileName);
text+="Possible candidates:\n";
text+=showFileDefMatches(
&
exampleNameDict,fileName);
text+=showFileDefMatches(exampleNameDict,fileName);
warn(yyFileName,yyLineNr,text);
}
else
...
...
@@ -436,7 +440,7 @@ static void verbIncludeFile(OutputList &ol,const char *name)
//FileInfo *f;
bool ambig;
FileDef *fd;
if ((fd=findFileDef(
&
exampleNameDict,name,ambig)))
if ((fd=findFileDef(exampleNameDict,name,ambig)))
{
ol.startCodeFragment();
ol.codify(fileToString(fd->absFilePath()));
...
...
@@ -447,7 +451,7 @@ static void verbIncludeFile(OutputList &ol,const char *name)
QCString text;
text.sprintf("Include file name %s is ambigious.\n",name);
text+=("Possible candidates:\n");
text+=showFileDefMatches(
&
exampleNameDict,name);
text+=showFileDefMatches(exampleNameDict,name);
warn(yyFileName,yyLineNr,text);
}
else
...
...
@@ -665,7 +669,8 @@ static void tryEndItemList()
static bool inBlock()
{
return inParamBlock || inRetValBlock || inSeeBlock || inReturnBlock || inAuthorBlock ||
inVersionBlock || inDateBlock || inWarningBlock || inBugBlock || inNoteBlock ||
inVersionBlock || inDateBlock || inWarningBlock || inRemarkBlock ||
inAttentionBlock || inBugBlock || inNoteBlock ||
inParBlock || inExceptionBlock || inDeprecatedBlock || inPreBlock ||
inPostBlock || inInvarBlock;
}
...
...
@@ -681,7 +686,7 @@ static void endBlock()
inParamBlock=inRetValBlock=inSeeBlock=inReturnBlock=inAuthorBlock=
inVersionBlock=inDateBlock=inBugBlock=inNoteBlock=inWarningBlock=
inParBlock=inExceptionBlock=inDeprecatedBlock=inPreBlock=inPostBlock=
inInvarBlock=FALSE;
inInvarBlock=
inRemarkBlock=inAttentionBlock=
FALSE;
}
static void addSection()
...
...
@@ -786,7 +791,7 @@ static QCString findAndCopyImage(const char *fileName,ImageTypes type)
QCString result;
bool ambig;
FileDef *fd;
if ((fd=findFileDef(
&
imageNameDict,fileName,ambig)))
if ((fd=findFileDef(imageNameDict,fileName,ambig)))
{
QFile inImage(fd->absFilePath().data());
if (inImage.open(IO_ReadOnly))
...
...
@@ -834,7 +839,7 @@ static QCString findAndCopyImage(const char *fileName,ImageTypes type)
QCString text;
text.sprintf("Warning: image file name %s is ambigious.\n",fileName);
text+="Possible candidates:\n";
text+=showFileDefMatches(
&
imageNameDict,fileName);
text+=showFileDefMatches(imageNameDict,fileName);
warn(yyFileName,yyLineNr,text);
}
else
...
...
@@ -1317,7 +1322,6 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
if (inBlock()) endBlock();
inWarningBlock=TRUE;
outDoc->startDescList();
//outDoc->writeBoldString("Warning: ");
outDoc->startBold();
scanString(theTranslator->trWarning()+": ");
outDoc->endBold();
...
...
@@ -1329,6 +1333,42 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
outDoc->writeDescItem();
}
}
<DocScan>{CMD}"remark"[s]?/{BN} {
endArgumentList();
if (!inRemarkBlock)
{
if (inBlock()) endBlock();
inRemarkBlock=TRUE;
outDoc->startDescList();
outDoc->startBold();
scanString(theTranslator->trRemarks()+": ");
outDoc->endBold();
outDoc->endDescTitle();
outDoc->writeDescItem();
}
else
{
outDoc->writeDescItem();
}
}
<DocScan>{CMD}"attention"[s]?/{BN} {
endArgumentList();
if (!inAttentionBlock)
{
if (inBlock()) endBlock();
inAttentionBlock=TRUE;
outDoc->startDescList();
outDoc->startBold();
scanString(theTranslator->trAttention()+": ");
outDoc->endBold();
outDoc->endDescTitle();
outDoc->writeDescItem();
}
else
{
outDoc->writeDescItem();
}
}
<DocScan>{CMD}"bug"[s]?/{BN} {
endArgumentList();
if (!inBugBlock)
...
...
@@ -1473,6 +1513,22 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
outDoc->writeDescItem();
}
}
<DocScan>"$"[a-zA-Z_0-9]+":"[^\n\$]+"$" { // RCS tag
QCString tagName(&yytext[1]);
int i=tagName.find(':');
tagName=tagName.left(i);
QCString tagText=&yytext[i+2];
tagText=tagText.left(tagText.length()-1);
endArgumentList();
if (inBlock()) endBlock();
outDoc->startDescList();
outDoc->startBold();
scanString(tagName+": ");
outDoc->endBold();
outDoc->endDescTitle();
scanString(tagText);
outDoc->endDescList();
}
<DocScan>{CMD}"author"/{BN} {
endArgumentList();
if (!inAuthorBlock)
...
...
@@ -2417,6 +2473,7 @@ DOCPARAM ([a-z_A-Z0-9:\<\>\=\.\-]+)|("\"".*"\"")
BEGIN( FindMembers ) ;
}
<Operator>[^(] {
lineCount();
current->name += *yytext ;
}
<Operator>"<>" { /* skip guided templ specifiers */ }
...
...
src/tag.l
View file @
2d0679ab
...
...
@@ -67,7 +67,7 @@ static void addFile(const char *name)
//printf("adding file %s tagName=`%s'\n",name,tagName.data());
fd = new FileDef(0,name,tagName);
FileName *mn;
if ((mn=inputNameDict
[name]
))
if ((mn=inputNameDict
->find(name)
))
{
mn->append(fd);
}
...
...
@@ -76,7 +76,7 @@ static void addFile(const char *name)
mn = new FileName(name,name);
mn->append(fd);
inputNameList.inSort(mn);
inputNameDict
.
insert(name,mn);
inputNameDict
->
insert(name,mn);
}
cd = 0;
nd = 0;
...
...
src/translator.h
View file @
2d0679ab
...
...
@@ -885,7 +885,14 @@ class Translator
{
return
"Referenced by"
;
}
virtual
QCString
trRemarks
()
{
return
"Remarks"
;
}
virtual
QCString
trAttention
()
{
return
"Attention"
;
}
};
#endif
src/util.cpp
View file @
2d0679ab
...
...
@@ -1954,7 +1954,7 @@ bool generateLink(OutputList &ol,const char *clName,
ol
.
endTextLink
();
return
TRUE
;
}
else
if
((
fd
=
findFileDef
(
&
inputNameDict
,
linkRef
,
ambig
))
else
if
((
fd
=
findFileDef
(
inputNameDict
,
linkRef
,
ambig
))
&&
fd
->
isLinkable
())
{
// link to documented input file
...
...
@@ -1973,7 +1973,7 @@ void generateFileRef(OutputList &ol,const char *name,const char *text)
//FileInfo *fi;
FileDef
*
fd
;
bool
ambig
;
if
((
fd
=
findFileDef
(
&
inputNameDict
,
name
,
ambig
))
&&
if
((
fd
=
findFileDef
(
inputNameDict
,
name
,
ambig
))
&&
fd
->
isLinkable
())
// link to documented input file
ol
.
writeObjectLink
(
fd
->
getReference
(),
fd
->
getOutputFileBase
(),
0
,
linkText
);
...
...
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