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
bd76ec60
Commit
bd76ec60
authored
May 31, 2013
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 701314 - URLs are not created on C# classes in some cases
parent
43837584
Changes
31
Show whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
156 additions
and
26 deletions
+156
-26
code.h
src/code.h
+3
-1
code.l
src/code.l
+45
-5
dbusxmlscanner.cpp
src/dbusxmlscanner.cpp
+1
-0
dbusxmlscanner.h
src/dbusxmlscanner.h
+1
-0
definition.cpp
src/definition.cpp
+1
-0
docbookgen.cpp
src/docbookgen.cpp
+2
-0
docbookvisitor.cpp
src/docbookvisitor.cpp
+8
-2
filedef.cpp
src/filedef.cpp
+2
-0
fortranscanner.h
src/fortranscanner.h
+1
-0
fortranscanner.l
src/fortranscanner.l
+1
-0
htmldocvisitor.cpp
src/htmldocvisitor.cpp
+8
-0
latexdocvisitor.cpp
src/latexdocvisitor.cpp
+8
-3
mandocvisitor.cpp
src/mandocvisitor.cpp
+17
-4
markdown.cpp
src/markdown.cpp
+2
-1
markdown.h
src/markdown.h
+1
-0
memberdef.cpp
src/memberdef.cpp
+1
-1
parserintf.h
src/parserintf.h
+4
-0
pycode.h
src/pycode.h
+3
-1
pyscanner.h
src/pyscanner.h
+1
-0
pyscanner.l
src/pyscanner.l
+1
-0
rtfdocvisitor.cpp
src/rtfdocvisitor.cpp
+8
-3
scanner.h
src/scanner.h
+1
-0
scanner.l
src/scanner.l
+2
-1
tclscanner.h
src/tclscanner.h
+1
-0
tclscanner.l
src/tclscanner.l
+2
-0
util.cpp
src/util.cpp
+18
-2
vhdldocgen.cpp
src/vhdldocgen.cpp
+1
-0
vhdlscanner.h
src/vhdlscanner.h
+1
-0
vhdlscanner.l
src/vhdlscanner.l
+1
-0
xmldocvisitor.cpp
src/xmldocvisitor.cpp
+8
-2
xmlgen.cpp
src/xmlgen.cpp
+2
-0
No files found.
src/code.h
View file @
bd76ec60
...
@@ -18,6 +18,8 @@
...
@@ -18,6 +18,8 @@
#ifndef CODE_H
#ifndef CODE_H
#define CODE_H
#define CODE_H
#include "types.h"
class
CodeOutputInterface
;
class
CodeOutputInterface
;
class
FileDef
;
class
FileDef
;
class
MemberDef
;
class
MemberDef
;
...
@@ -25,7 +27,7 @@ class QCString;
...
@@ -25,7 +27,7 @@ class QCString;
class
Definition
;
class
Definition
;
void
parseCCode
(
CodeOutputInterface
&
,
const
char
*
,
const
QCString
&
,
void
parseCCode
(
CodeOutputInterface
&
,
const
char
*
,
const
QCString
&
,
bool
,
const
char
*
,
FileDef
*
fd
,
SrcLangExt
lang
,
bool
isExample
,
const
char
*
exName
,
FileDef
*
fd
,
int
startLine
,
int
endLine
,
bool
inlineFragment
,
int
startLine
,
int
endLine
,
bool
inlineFragment
,
MemberDef
*
memberDef
,
bool
showLineNumbers
,
Definition
*
searchCtx
);
MemberDef
*
memberDef
,
bool
showLineNumbers
,
Definition
*
searchCtx
);
void
resetCCodeParserState
();
void
resetCCodeParserState
();
...
...
src/code.l
View file @
bd76ec60
...
@@ -112,6 +112,9 @@ static int g_memCallContext;
...
@@ -112,6 +112,9 @@ static int g_memCallContext;
static int g_lastCContext;
static int g_lastCContext;
static bool g_insideObjC;
static bool g_insideObjC;
static bool g_insideJava;
static bool g_insideCS;
static bool g_insidePHP;
static bool g_insideProtocolList;
static bool g_insideProtocolList;
static bool g_lexInit = FALSE;
static bool g_lexInit = FALSE;
...
@@ -927,7 +930,14 @@ static void generateClassOrGlobalLink(CodeOutputInterface &ol,const char *clName
...
@@ -927,7 +930,14 @@ static void generateClassOrGlobalLink(CodeOutputInterface &ol,const char *clName
{
{
className+="-p";
className+="-p";
}
}
if (g_insidePHP)
{
className = substitute(className,"\\","::"); // for PHP namespaces
className = substitute(className,"\\","::"); // for PHP namespaces
}
else if (g_insideCS || g_insideJava)
{
className = substitute(className,".","::"); // for PHP namespaces
}
ClassDef *cd=0,*lcd=0;
ClassDef *cd=0,*lcd=0;
MemberDef *md=0;
MemberDef *md=0;
bool isLocal=FALSE;
bool isLocal=FALSE;
...
@@ -1748,7 +1758,9 @@ B [ \t]
...
@@ -1748,7 +1758,9 @@ B [ \t]
BN [ \t\n\r]
BN [ \t\n\r]
ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]*
ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]*
SEP ("::"|"\\")
SEP ("::"|"\\")
SEPCS (".")
SCOPENAME ({SEP}{BN}*)?({ID}{BN}*{SEP}{BN}*)*("~"{BN}*)?{ID}
SCOPENAME ({SEP}{BN}*)?({ID}{BN}*{SEP}{BN}*)*("~"{BN}*)?{ID}
SCOPENAMECS ({SEPCS}{BN}*)?({ID}{BN}*{SEPCS}{BN}*)*("~"{BN}*)?{ID}
TEMPLIST "<"[^\"\}\{\(\)\/\n\>]*">"
TEMPLIST "<"[^\"\}\{\(\)\/\n\>]*">"
SCOPETNAME (((({ID}{TEMPLIST}?){BN}*)?{SEP}{BN}*)*)((~{BN}*)?{ID})
SCOPETNAME (((({ID}{TEMPLIST}?){BN}*)?{SEP}{BN}*)*)((~{BN}*)?{ID})
SCOPEPREFIX ({ID}{TEMPLIST}?{BN}*{SEP}{BN}*)+
SCOPEPREFIX ({ID}{TEMPLIST}?{BN}*{SEP}{BN}*)+
...
@@ -2492,6 +2504,20 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
...
@@ -2492,6 +2504,20 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
generateClassOrGlobalLink(*g_code,yytext);
generateClassOrGlobalLink(*g_code,yytext);
g_name+=yytext;
g_name+=yytext;
}
}
<Body>{SCOPENAMECS}/{BN}*[;,)\]] { // "int var;" or "var, var2" or "debug(f) macro"
if (!g_insideCS && !g_insideJava)
{
REJECT;
}
else
{
addType();
// changed this to generateFunctionLink, see bug 624514
//generateClassOrGlobalLink(*g_code,yytext,FALSE,TRUE);
generateFunctionLink(*g_code,yytext);
g_name+=yytext;
}
}
<Body>{SCOPENAME}/{BN}*[;,)\]] { // "int var;" or "var, var2" or "debug(f) macro"
<Body>{SCOPENAME}/{BN}*[;,)\]] { // "int var;" or "var, var2" or "debug(f) macro"
addType();
addType();
// changed this to generateFunctionLink, see bug 624514
// changed this to generateFunctionLink, see bug 624514
...
@@ -2499,6 +2525,18 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
...
@@ -2499,6 +2525,18 @@ RAWEND ")"[^ \t\(\)\\]{0,16}\"
generateFunctionLink(*g_code,yytext);
generateFunctionLink(*g_code,yytext);
g_name+=yytext;
g_name+=yytext;
}
}
<Body>{SCOPENAMECS}/{B}* { // p->func()
if (!g_insideCS && !g_insideJava)
{
REJECT;
}
else
{
addType();
generateClassOrGlobalLink(*g_code,yytext);
g_name+=yytext;
}
}
<Body>{SCOPENAME}/{B}* { // p->func()
<Body>{SCOPENAME}/{B}* { // p->func()
addType();
addType();
generateClassOrGlobalLink(*g_code,yytext);
generateClassOrGlobalLink(*g_code,yytext);
...
@@ -3514,7 +3552,7 @@ void resetCCodeParserState()
...
@@ -3514,7 +3552,7 @@ void resetCCodeParserState()
}
}
void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
bool exBlock, const char *exName,FileDef *fd,
SrcLangExt lang,
bool exBlock, const char *exName,FileDef *fd,
int startLine,int endLine,bool inlineFragment,
int startLine,int endLine,bool inlineFragment,
MemberDef *memberDef,bool showLineNumbers,Definition *searchCtx)
MemberDef *memberDef,bool showLineNumbers,Definition *searchCtx)
{
{
...
@@ -3562,11 +3600,13 @@ void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
...
@@ -3562,11 +3600,13 @@ void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
g_sourceFileDef = new FileDef("",(exName?exName:"generated"));
g_sourceFileDef = new FileDef("",(exName?exName:"generated"));
cleanupSourceDef = TRUE;
cleanupSourceDef = TRUE;
}
}
g_insideObjC = lang==SrcLangExt_ObjC;
g_insideJava = lang==SrcLangExt_Java;
g_insideCS = lang==SrcLangExt_CSharp;
g_insidePHP = lang==SrcLangExt_PHP;
if (g_sourceFileDef)
if (g_sourceFileDef)
{
{
setCurrentDoc("l00001");
setCurrentDoc("l00001");
g_insideObjC = g_sourceFileDef->name().lower().right(2)==".m" ||
g_sourceFileDef->name().lower().right(3)==".mm";
}
}
g_currentDefinition = 0;
g_currentDefinition = 0;
g_currentMemberDef = 0;
g_currentMemberDef = 0;
...
...
src/dbusxmlscanner.cpp
View file @
bd76ec60
...
@@ -861,6 +861,7 @@ bool DBusXMLScanner::needsPreprocessing(const QCString & /* extension */)
...
@@ -861,6 +861,7 @@ bool DBusXMLScanner::needsPreprocessing(const QCString & /* extension */)
void
DBusXMLScanner
::
parseCode
(
CodeOutputInterface
&
/* codeOutIntf */
,
void
DBusXMLScanner
::
parseCode
(
CodeOutputInterface
&
/* codeOutIntf */
,
const
char
*
/* scopeName */
,
const
char
*
/* scopeName */
,
const
QCString
&
/* input */
,
const
QCString
&
/* input */
,
SrcLangExt
/* lang */
,
bool
/* isExampleBlock */
,
bool
/* isExampleBlock */
,
const
char
*
/* exampleName */
,
const
char
*
/* exampleName */
,
FileDef
*
/* fileDef */
,
FileDef
*
/* fileDef */
,
...
...
src/dbusxmlscanner.h
View file @
bd76ec60
...
@@ -42,6 +42,7 @@ public:
...
@@ -42,6 +42,7 @@ public:
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/definition.cpp
View file @
bd76ec60
...
@@ -1044,6 +1044,7 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
...
@@ -1044,6 +1044,7 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
pIntf
->
parseCode
(
ol
,
// codeOutIntf
pIntf
->
parseCode
(
ol
,
// codeOutIntf
scopeName
,
// scope
scopeName
,
// scope
codeFragment
,
// input
codeFragment
,
// input
m_impl
->
lang
,
// lang
FALSE
,
// isExample
FALSE
,
// isExample
0
,
// exampleName
0
,
// exampleName
m_impl
->
body
->
fileDef
,
// fileDef
m_impl
->
body
->
fileDef
,
// fileDef
...
...
src/docbookgen.cpp
View file @
bd76ec60
...
@@ -370,11 +370,13 @@ static void writeDocbookDocBlock(FTextStream &t,
...
@@ -370,11 +370,13 @@ static void writeDocbookDocBlock(FTextStream &t,
void
writeDocbookCodeBlock
(
FTextStream
&
t
,
FileDef
*
fd
)
void
writeDocbookCodeBlock
(
FTextStream
&
t
,
FileDef
*
fd
)
{
{
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
fd
->
getDefFileExtension
());
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
fd
->
getDefFileExtension
());
SrcLangExt
langExt
=
getLanguageFromFileName
(
fd
->
getDefFileExtension
());
pIntf
->
resetCodeParserState
();
pIntf
->
resetCodeParserState
();
DocbookCodeGenerator
*
docbookGen
=
new
DocbookCodeGenerator
(
t
);
DocbookCodeGenerator
*
docbookGen
=
new
DocbookCodeGenerator
(
t
);
pIntf
->
parseCode
(
*
docbookGen
,
// codeOutIntf
pIntf
->
parseCode
(
*
docbookGen
,
// codeOutIntf
0
,
// scopeName
0
,
// scopeName
fileToString
(
fd
->
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)),
fileToString
(
fd
->
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)),
langExt
,
// lang
FALSE
,
// isExampleBlock
FALSE
,
// isExampleBlock
0
,
// exampleName
0
,
// exampleName
fd
,
// fileDef
fd
,
// fileDef
...
...
src/docbookvisitor.cpp
View file @
bd76ec60
...
@@ -249,12 +249,13 @@ void DocbookDocVisitor::visit(DocStyleChange *s)
...
@@ -249,12 +249,13 @@ void DocbookDocVisitor::visit(DocStyleChange *s)
void
DocbookDocVisitor
::
visit
(
DocVerbatim
*
s
)
void
DocbookDocVisitor
::
visit
(
DocVerbatim
*
s
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
// fall though
case
DocVerbatim
:
:
Code
:
// fall though
m_t
<<
"<programlisting>"
;
m_t
<<
"<programlisting>"
;
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
exampleFile
());
s
->
isExample
(),
s
->
exampleFile
());
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
break
;
break
;
...
@@ -346,6 +347,7 @@ void DocbookDocVisitor::visit(DocAnchor *anc)
...
@@ -346,6 +347,7 @@ void DocbookDocVisitor::visit(DocAnchor *anc)
void
DocbookDocVisitor
::
visit
(
DocInclude
*
inc
)
void
DocbookDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
case
DocInclude
:
:
IncWithLines
:
case
DocInclude
:
:
IncWithLines
:
...
@@ -356,6 +358,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
...
@@ -356,6 +358,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
&
fd
);
inc
->
exampleFile
(),
&
fd
);
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
...
@@ -366,6 +369,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
...
@@ -366,6 +369,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
());
inc
->
exampleFile
());
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
...
@@ -385,6 +389,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
...
@@ -385,6 +389,7 @@ void DocbookDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
()
inc
->
exampleFile
()
);
);
...
@@ -404,6 +409,7 @@ void DocbookDocVisitor::visit(DocIncOperator *op)
...
@@ -404,6 +409,7 @@ void DocbookDocVisitor::visit(DocIncOperator *op)
pushEnabled
();
pushEnabled
();
m_hide
=
TRUE
;
m_hide
=
TRUE
;
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
{
{
popEnabled
();
popEnabled
();
...
@@ -411,7 +417,7 @@ void DocbookDocVisitor::visit(DocIncOperator *op)
...
@@ -411,7 +417,7 @@ void DocbookDocVisitor::visit(DocIncOperator *op)
{
{
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
op
->
context
(),
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
op
->
isExample
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
exampleFile
());
op
->
exampleFile
());
}
}
pushEnabled
();
pushEnabled
();
...
...
src/filedef.cpp
View file @
bd76ec60
...
@@ -879,6 +879,7 @@ void FileDef::writeSource(OutputList &ol,bool sameTu,QStrList &filesInSameTu)
...
@@ -879,6 +879,7 @@ void FileDef::writeSource(OutputList &ol,bool sameTu,QStrList &filesInSameTu)
ol
.
startCodeFragment
();
ol
.
startCodeFragment
();
pIntf
->
parseCode
(
ol
,
0
,
pIntf
->
parseCode
(
ol
,
0
,
fileToString
(
absFilePath
(),
filterSourceFiles
,
TRUE
),
fileToString
(
absFilePath
(),
filterSourceFiles
,
TRUE
),
getLanguage
(),
FALSE
,
0
,
this
FALSE
,
0
,
this
);
);
ol
.
endCodeFragment
();
ol
.
endCodeFragment
();
...
@@ -917,6 +918,7 @@ void FileDef::parseSource(bool sameTu,QStrList &filesInSameTu)
...
@@ -917,6 +918,7 @@ void FileDef::parseSource(bool sameTu,QStrList &filesInSameTu)
pIntf
->
parseCode
(
pIntf
->
parseCode
(
devNullIntf
,
0
,
devNullIntf
,
0
,
fileToString
(
absFilePath
(),
filterSourceFiles
,
TRUE
),
fileToString
(
absFilePath
(),
filterSourceFiles
,
TRUE
),
getLanguage
(),
FALSE
,
0
,
this
FALSE
,
0
,
this
);
);
}
}
...
...
src/fortranscanner.h
View file @
bd76ec60
...
@@ -39,6 +39,7 @@ class FortranLanguageScanner : public ParserInterface
...
@@ -39,6 +39,7 @@ class FortranLanguageScanner : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/fortranscanner.l
View file @
bd76ec60
...
@@ -2306,6 +2306,7 @@ void FortranLanguageScanner::parseInput(const char *fileName,
...
@@ -2306,6 +2306,7 @@ void FortranLanguageScanner::parseInput(const char *fileName,
void FortranLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
void FortranLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
const char * scopeName,
const char * scopeName,
const QCString & input,
const QCString & input,
SrcLangExt /*lang*/,
bool isExampleBlock,
bool isExampleBlock,
const char * exampleName,
const char * exampleName,
FileDef * fileDef,
FileDef * fileDef,
...
...
src/htmldocvisitor.cpp
View file @
bd76ec60
...
@@ -417,6 +417,7 @@ void HtmlDocVisitor::visit(DocVerbatim *s)
...
@@ -417,6 +417,7 @@ void HtmlDocVisitor::visit(DocVerbatim *s)
{
{
lang
=
s
->
language
();
lang
=
s
->
language
();
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
lang
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
case
DocVerbatim
:
:
Code
:
...
@@ -426,6 +427,7 @@ void HtmlDocVisitor::visit(DocVerbatim *s)
...
@@ -426,6 +427,7 @@ void HtmlDocVisitor::visit(DocVerbatim *s)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
context
(),
s
->
text
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
isExample
(),
s
->
exampleFile
(),
s
->
exampleFile
(),
0
,
// fileDef
0
,
// fileDef
...
@@ -526,6 +528,7 @@ void HtmlDocVisitor::visit(DocAnchor *anc)
...
@@ -526,6 +528,7 @@ void HtmlDocVisitor::visit(DocAnchor *anc)
void
HtmlDocVisitor
::
visit
(
DocInclude
*
inc
)
void
HtmlDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
case
DocInclude
:
:
Include
:
case
DocInclude
:
:
Include
:
...
@@ -535,6 +538,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
...
@@ -535,6 +538,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
inc
->
exampleFile
(),
0
,
// fileDef
0
,
// fileDef
...
@@ -558,6 +562,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
...
@@ -558,6 +562,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
inc
->
exampleFile
(),
&
fd
,
// fileDef,
&
fd
,
// fileDef,
...
@@ -592,6 +597,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
...
@@ -592,6 +597,7 @@ void HtmlDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
inc
->
exampleFile
(),
0
,
0
,
...
@@ -619,6 +625,7 @@ void HtmlDocVisitor::visit(DocIncOperator *op)
...
@@ -619,6 +625,7 @@ void HtmlDocVisitor::visit(DocIncOperator *op)
pushEnabled
();
pushEnabled
();
m_hide
=
TRUE
;
m_hide
=
TRUE
;
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
{
{
popEnabled
();
popEnabled
();
...
@@ -629,6 +636,7 @@ void HtmlDocVisitor::visit(DocIncOperator *op)
...
@@ -629,6 +636,7 @@ void HtmlDocVisitor::visit(DocIncOperator *op)
m_ci
,
m_ci
,
op
->
context
(),
op
->
context
(),
op
->
text
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
isExample
(),
op
->
exampleFile
(),
op
->
exampleFile
(),
0
,
// fileDef
0
,
// fileDef
...
...
src/latexdocvisitor.cpp
View file @
bd76ec60
...
@@ -339,13 +339,14 @@ void LatexDocVisitor::visit(DocVerbatim *s)
...
@@ -339,13 +339,14 @@ void LatexDocVisitor::visit(DocVerbatim *s)
{
{
lang
=
s
->
language
();
lang
=
s
->
language
();
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
lang
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
case
DocVerbatim
:
:
Code
:
{
{
m_t
<<
"
\n\\
begin{DoxyCode}
\n
"
;
m_t
<<
"
\n\\
begin{DoxyCode}
\n
"
;
Doxygen
::
parserManager
->
getParser
(
lang
)
Doxygen
::
parserManager
->
getParser
(
lang
)
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
exampleFile
());
s
->
isExample
(),
s
->
exampleFile
());
m_t
<<
"
\\
end{DoxyCode}
\n
"
;
m_t
<<
"
\\
end{DoxyCode}
\n
"
;
}
}
...
@@ -435,6 +436,7 @@ void LatexDocVisitor::visit(DocAnchor *anc)
...
@@ -435,6 +436,7 @@ void LatexDocVisitor::visit(DocAnchor *anc)
void
LatexDocVisitor
::
visit
(
DocInclude
*
inc
)
void
LatexDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
case
DocInclude
:
:
IncWithLines
:
case
DocInclude
:
:
IncWithLines
:
...
@@ -445,6 +447,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
...
@@ -445,6 +447,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
&
fd
);
inc
->
exampleFile
(),
&
fd
);
m_t
<<
"
\\
end{DoxyCodeInclude}"
<<
endl
;
m_t
<<
"
\\
end{DoxyCodeInclude}"
<<
endl
;
...
@@ -454,7 +457,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
...
@@ -454,7 +457,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
m_t
<<
"
\n\\
begin{DoxyCodeInclude}
\n
"
;
m_t
<<
"
\n\\
begin{DoxyCodeInclude}
\n
"
;
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
isExample
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
exampleFile
());
inc
->
exampleFile
());
m_t
<<
"
\\
end{DoxyCodeInclude}
\n
"
;
m_t
<<
"
\\
end{DoxyCodeInclude}
\n
"
;
break
;
break
;
...
@@ -474,6 +477,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
...
@@ -474,6 +477,7 @@ void LatexDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
()
inc
->
exampleFile
()
);
);
...
@@ -493,13 +497,14 @@ void LatexDocVisitor::visit(DocIncOperator *op)
...
@@ -493,13 +497,14 @@ void LatexDocVisitor::visit(DocIncOperator *op)
pushEnabled
();
pushEnabled
();
m_hide
=
TRUE
;
m_hide
=
TRUE
;
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
{
{
popEnabled
();
popEnabled
();
if
(
!
m_hide
)
if
(
!
m_hide
)
{
{
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
exampleFile
());
op
->
isExample
(),
op
->
exampleFile
());
}
}
pushEnabled
();
pushEnabled
();
...
...
src/mandocvisitor.cpp
View file @
bd76ec60
...
@@ -193,14 +193,21 @@ void ManDocVisitor::visit(DocStyleChange *s)
...
@@ -193,14 +193,21 @@ void ManDocVisitor::visit(DocStyleChange *s)
void
ManDocVisitor
::
visit
(
DocVerbatim
*
s
)
void
ManDocVisitor
::
visit
(
DocVerbatim
*
s
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
QCString
lang
=
m_langExt
;
if
(
!
s
->
language
().
isEmpty
())
// explicit language setting
{
lang
=
s
->
language
();
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
lang
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
// fall though
case
DocVerbatim
:
:
Code
:
// fall though
if
(
!
m_firstCol
)
m_t
<<
endl
;
if
(
!
m_firstCol
)
m_t
<<
endl
;
m_t
<<
".PP"
<<
endl
;
m_t
<<
".PP"
<<
endl
;
m_t
<<
".nf"
<<
endl
;
m_t
<<
".nf"
<<
endl
;
Doxygen
::
parserManager
->
getParser
(
0
/*TODO*/
)
Doxygen
::
parserManager
->
getParser
(
lang
)
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
exampleFile
());
s
->
isExample
(),
s
->
exampleFile
());
if
(
!
m_firstCol
)
m_t
<<
endl
;
if
(
!
m_firstCol
)
m_t
<<
endl
;
m_t
<<
".fi"
<<
endl
;
m_t
<<
".fi"
<<
endl
;
...
@@ -240,6 +247,7 @@ void ManDocVisitor::visit(DocAnchor *)
...
@@ -240,6 +247,7 @@ void ManDocVisitor::visit(DocAnchor *)
void
ManDocVisitor
::
visit
(
DocInclude
*
inc
)
void
ManDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
case
DocInclude
:
:
IncWithLines
:
case
DocInclude
:
:
IncWithLines
:
...
@@ -252,6 +260,7 @@ void ManDocVisitor::visit(DocInclude *inc)
...
@@ -252,6 +260,7 @@ void ManDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
&
fd
);
inc
->
exampleFile
(),
&
fd
);
if
(
!
m_firstCol
)
m_t
<<
endl
;
if
(
!
m_firstCol
)
m_t
<<
endl
;
...
@@ -266,7 +275,9 @@ void ManDocVisitor::visit(DocInclude *inc)
...
@@ -266,7 +275,9 @@ void ManDocVisitor::visit(DocInclude *inc)
m_t
<<
".nf"
<<
endl
;
m_t
<<
".nf"
<<
endl
;
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
isExample
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
exampleFile
());
inc
->
exampleFile
());
if
(
!
m_firstCol
)
m_t
<<
endl
;
if
(
!
m_firstCol
)
m_t
<<
endl
;
m_t
<<
".fi"
<<
endl
;
m_t
<<
".fi"
<<
endl
;
...
@@ -295,6 +306,7 @@ void ManDocVisitor::visit(DocInclude *inc)
...
@@ -295,6 +306,7 @@ void ManDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
()
inc
->
exampleFile
()
);
);
...
@@ -308,6 +320,7 @@ void ManDocVisitor::visit(DocInclude *inc)
...
@@ -308,6 +320,7 @@ void ManDocVisitor::visit(DocInclude *inc)
void
ManDocVisitor
::
visit
(
DocIncOperator
*
op
)
void
ManDocVisitor
::
visit
(
DocIncOperator
*
op
)
{
{
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
//printf("DocIncOperator: type=%d first=%d, last=%d text=`%s'\n",
//printf("DocIncOperator: type=%d first=%d, last=%d text=`%s'\n",
// op->type(),op->isFirst(),op->isLast(),op->text().data());
// op->type(),op->isFirst(),op->isLast(),op->text().data());
if
(
op
->
isFirst
())
if
(
op
->
isFirst
())
...
@@ -326,8 +339,8 @@ void ManDocVisitor::visit(DocIncOperator *op)
...
@@ -326,8 +339,8 @@ void ManDocVisitor::visit(DocIncOperator *op)
popEnabled
();
popEnabled
();
if
(
!
m_hide
)
if
(
!
m_hide
)
{
{
Doxygen
::
parserManager
->
getParser
(
0
/*TODO*/
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
exampleFile
());
op
->
isExample
(),
op
->
exampleFile
());
}
}
pushEnabled
();
pushEnabled
();
...
...
src/markdown.cpp
View file @
bd76ec60
...
@@ -2341,6 +2341,7 @@ void MarkdownFileParser::parseInput(const char *fileName,
...
@@ -2341,6 +2341,7 @@ void MarkdownFileParser::parseInput(const char *fileName,
void
MarkdownFileParser
::
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
MarkdownFileParser
::
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
,
const
char
*
exampleName
,
FileDef
*
fileDef
,
FileDef
*
fileDef
,
...
@@ -2356,7 +2357,7 @@ void MarkdownFileParser::parseCode(CodeOutputInterface &codeOutIntf,
...
@@ -2356,7 +2357,7 @@ void MarkdownFileParser::parseCode(CodeOutputInterface &codeOutIntf,
if
(
pIntf
!=
this
)
if
(
pIntf
!=
this
)
{
{
pIntf
->
parseCode
(
pIntf
->
parseCode
(
codeOutIntf
,
scopeName
,
input
,
isExampleBlock
,
exampleName
,
codeOutIntf
,
scopeName
,
input
,
lang
,
isExampleBlock
,
exampleName
,
fileDef
,
startLine
,
endLine
,
inlineFragment
,
memberDef
,
showLineNumbers
,
searchCtx
);
fileDef
,
startLine
,
endLine
,
inlineFragment
,
memberDef
,
showLineNumbers
,
searchCtx
);
}
}
}
}
...
...
src/markdown.h
View file @
bd76ec60
...
@@ -39,6 +39,7 @@ class MarkdownFileParser : public ParserInterface
...
@@ -39,6 +39,7 @@ class MarkdownFileParser : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/memberdef.cpp
View file @
bd76ec60
...
@@ -2701,7 +2701,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
...
@@ -2701,7 +2701,7 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
getDefFileExtension
());
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
getDefFileExtension
());
pIntf
->
resetCodeParserState
();
pIntf
->
resetCodeParserState
();
ol
.
startCodeFragment
();
ol
.
startCodeFragment
();
pIntf
->
parseCode
(
ol
,
scopeName
,
m_impl
->
initializer
,
FALSE
,
0
,
getFileDef
(),
pIntf
->
parseCode
(
ol
,
scopeName
,
m_impl
->
initializer
,
lang
,
FALSE
,
0
,
getFileDef
(),
-
1
,
-
1
,
TRUE
,
this
,
FALSE
,
this
);
-
1
,
-
1
,
TRUE
,
this
,
FALSE
,
this
);
ol
.
endCodeFragment
();
ol
.
endCodeFragment
();
}
}
...
...
src/parserintf.h
View file @
bd76ec60
...
@@ -21,6 +21,8 @@
...
@@ -21,6 +21,8 @@
#include <qdict.h>
#include <qdict.h>
#include <qstrlist.h>
#include <qstrlist.h>
#include "types.h"
class
Entry
;
class
Entry
;
class
FileDef
;
class
FileDef
;
class
CodeOutputInterface
;
class
CodeOutputInterface
;
...
@@ -79,6 +81,7 @@ class ParserInterface
...
@@ -79,6 +81,7 @@ class ParserInterface
/** Parses a source file or fragment with the goal to produce
/** Parses a source file or fragment with the goal to produce
* highlighted and cross-referenced output.
* highlighted and cross-referenced output.
* @param[in] codeOutIntf Abstract interface for writing the result.
* @param[in] codeOutIntf Abstract interface for writing the result.
* @param[in] lang The programming language of the code fragment.
* @param[in] scopeName Name of scope to which the code belongs.
* @param[in] scopeName Name of scope to which the code belongs.
* @param[in] input Actual code in the form of a string
* @param[in] input Actual code in the form of a string
* @param[in] isExampleBlock TRUE iff the code is part of an example.
* @param[in] isExampleBlock TRUE iff the code is part of an example.
...
@@ -99,6 +102,7 @@ class ParserInterface
...
@@ -99,6 +102,7 @@ class ParserInterface
virtual
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
virtual
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/pycode.h
View file @
bd76ec60
...
@@ -25,6 +25,8 @@
...
@@ -25,6 +25,8 @@
#ifndef PYCODE_H
#ifndef PYCODE_H
#define PYCODE_H
#define PYCODE_H
#include "types.h"
class
CodeOutputInterface
;
class
CodeOutputInterface
;
class
FileDef
;
class
FileDef
;
class
MemberDef
;
class
MemberDef
;
...
...
src/pyscanner.h
View file @
bd76ec60
...
@@ -46,6 +46,7 @@ class PythonLanguageScanner : public ParserInterface
...
@@ -46,6 +46,7 @@ class PythonLanguageScanner : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/pyscanner.l
View file @
bd76ec60
...
@@ -1700,6 +1700,7 @@ bool PythonLanguageScanner::needsPreprocessing(const QCString &)
...
@@ -1700,6 +1700,7 @@ bool PythonLanguageScanner::needsPreprocessing(const QCString &)
void PythonLanguageScanner::parseCode(CodeOutputInterface &codeOutIntf,
void PythonLanguageScanner::parseCode(CodeOutputInterface &codeOutIntf,
const char *scopeName,
const char *scopeName,
const QCString &input,
const QCString &input,
SrcLangExt /*lang*/,
bool isExampleBlock,
bool isExampleBlock,
const char *exampleName,
const char *exampleName,
FileDef *fileDef,
FileDef *fileDef,
...
...
src/rtfdocvisitor.cpp
View file @
bd76ec60
...
@@ -420,6 +420,7 @@ void RTFDocVisitor::visit(DocVerbatim *s)
...
@@ -420,6 +420,7 @@ void RTFDocVisitor::visit(DocVerbatim *s)
{
{
lang
=
s
->
language
();
lang
=
s
->
language
();
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
lang
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
// fall though
case
DocVerbatim
:
:
Code
:
// fall though
...
@@ -427,7 +428,7 @@ void RTFDocVisitor::visit(DocVerbatim *s)
...
@@ -427,7 +428,7 @@ void RTFDocVisitor::visit(DocVerbatim *s)
m_t
<<
"
\\
par"
<<
endl
;
m_t
<<
"
\\
par"
<<
endl
;
m_t
<<
rtf_Style_Reset
<<
getStyle
(
"CodeExample"
);
m_t
<<
rtf_Style_Reset
<<
getStyle
(
"CodeExample"
);
Doxygen
::
parserManager
->
getParser
(
lang
)
Doxygen
::
parserManager
->
getParser
(
lang
)
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
exampleFile
());
s
->
isExample
(),
s
->
exampleFile
());
//m_t << "\\par" << endl;
//m_t << "\\par" << endl;
m_t
<<
"}"
<<
endl
;
m_t
<<
"}"
<<
endl
;
...
@@ -527,6 +528,7 @@ void RTFDocVisitor::visit(DocAnchor *anc)
...
@@ -527,6 +528,7 @@ void RTFDocVisitor::visit(DocAnchor *anc)
void
RTFDocVisitor
::
visit
(
DocInclude
*
inc
)
void
RTFDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
DBG_RTF
(
"{
\\
comment RTFDocVisitor::visit(DocInclude)}
\n
"
);
DBG_RTF
(
"{
\\
comment RTFDocVisitor::visit(DocInclude)}
\n
"
);
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
...
@@ -540,6 +542,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
...
@@ -540,6 +542,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
&
fd
);
inc
->
exampleFile
(),
&
fd
);
m_t
<<
"
\\
par"
;
m_t
<<
"
\\
par"
;
...
@@ -552,7 +555,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
...
@@ -552,7 +555,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
m_t
<<
rtf_Style_Reset
<<
getStyle
(
"CodeExample"
);
m_t
<<
rtf_Style_Reset
<<
getStyle
(
"CodeExample"
);
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
isExample
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
exampleFile
());
inc
->
exampleFile
());
m_t
<<
"
\\
par"
;
m_t
<<
"
\\
par"
;
m_t
<<
"}"
<<
endl
;
m_t
<<
"}"
<<
endl
;
...
@@ -577,6 +580,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
...
@@ -577,6 +580,7 @@ void RTFDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
()
inc
->
exampleFile
()
);
);
...
@@ -591,6 +595,7 @@ void RTFDocVisitor::visit(DocIncOperator *op)
...
@@ -591,6 +595,7 @@ void RTFDocVisitor::visit(DocIncOperator *op)
//printf("DocIncOperator: type=%d first=%d, last=%d text=`%s'\n",
//printf("DocIncOperator: type=%d first=%d, last=%d text=`%s'\n",
// op->type(),op->isFirst(),op->isLast(),op->text().data());
// op->type(),op->isFirst(),op->isLast(),op->text().data());
DBG_RTF
(
"{
\\
comment RTFDocVisitor::visit(DocIncOperator)}
\n
"
);
DBG_RTF
(
"{
\\
comment RTFDocVisitor::visit(DocIncOperator)}
\n
"
);
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
if
(
op
->
isFirst
())
if
(
op
->
isFirst
())
{
{
if
(
!
m_hide
)
if
(
!
m_hide
)
...
@@ -608,7 +613,7 @@ void RTFDocVisitor::visit(DocIncOperator *op)
...
@@ -608,7 +613,7 @@ void RTFDocVisitor::visit(DocIncOperator *op)
if
(
!
m_hide
)
if
(
!
m_hide
)
{
{
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
exampleFile
());
op
->
isExample
(),
op
->
exampleFile
());
}
}
pushEnabled
();
pushEnabled
();
...
...
src/scanner.h
View file @
bd76ec60
...
@@ -41,6 +41,7 @@ class CLanguageScanner : public ParserInterface
...
@@ -41,6 +41,7 @@ class CLanguageScanner : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/scanner.l
View file @
bd76ec60
...
@@ -6821,6 +6821,7 @@ void CLanguageScanner::parseInput(const char *fileName,
...
@@ -6821,6 +6821,7 @@ void CLanguageScanner::parseInput(const char *fileName,
void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
const char * scopeName,
const char * scopeName,
const QCString & input,
const QCString & input,
SrcLangExt lang,
bool isExampleBlock,
bool isExampleBlock,
const char * exampleName,
const char * exampleName,
FileDef * fileDef,
FileDef * fileDef,
...
@@ -6832,7 +6833,7 @@ void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
...
@@ -6832,7 +6833,7 @@ void CLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
Definition *searchCtx
Definition *searchCtx
)
)
{
{
::parseCCode(codeOutIntf,scopeName,input,isExampleBlock,exampleName,
::parseCCode(codeOutIntf,scopeName,input,
lang,
isExampleBlock,exampleName,
fileDef,startLine,endLine,inlineFragment,memberDef,
fileDef,startLine,endLine,inlineFragment,memberDef,
showLineNumbers,searchCtx);
showLineNumbers,searchCtx);
}
}
...
...
src/tclscanner.h
View file @
bd76ec60
...
@@ -40,6 +40,7 @@ class TclLanguageScanner : public ParserInterface
...
@@ -40,6 +40,7 @@ class TclLanguageScanner : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/tclscanner.l
View file @
bd76ec60
...
@@ -2560,6 +2560,7 @@ tcl_inf("%s\n",fileName);
...
@@ -2560,6 +2560,7 @@ tcl_inf("%s\n",fileName);
void TclLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
void TclLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
const char * scopeName,
const char * scopeName,
const QCString & input,
const QCString & input,
SrcLangExt lang,
bool isExampleBlock,
bool isExampleBlock,
const char * exampleName,
const char * exampleName,
FileDef * fileDef,
FileDef * fileDef,
...
@@ -2572,6 +2573,7 @@ void TclLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
...
@@ -2572,6 +2573,7 @@ void TclLanguageScanner::parseCode(CodeOutputInterface & codeOutIntf,
)
)
{
{
(void)scopeName;
(void)scopeName;
(void)lang;
(void)exampleName;
(void)exampleName;
(void)fileDef;
(void)fileDef;
(void)endLine;
(void)endLine;
...
...
src/util.cpp
View file @
bd76ec60
...
@@ -1593,6 +1593,12 @@ ClassDef *getResolvedClass(Definition *scope,
...
@@ -1593,6 +1593,12 @@ ClassDef *getResolvedClass(Definition *scope,
{
{
result
=
getResolvedClassRec
(
scope
,
fileScope
,
n
,
pTypeDef
,
pTemplSpec
,
pResolvedType
);
result
=
getResolvedClassRec
(
scope
,
fileScope
,
n
,
pTypeDef
,
pTemplSpec
,
pResolvedType
);
}
}
if
(
result
==
0
)
// for nested classes imported via tag files, the scope may not
// present, so we check the class name directly as well.
// See also bug701314
{
result
=
getClass
(
n
);
}
if
(
!
mayBeUnlinkable
&&
result
&&
!
result
->
isLinkable
())
if
(
!
mayBeUnlinkable
&&
result
&&
!
result
->
isLinkable
())
{
{
if
(
!
mayBeHidden
||
!
result
->
isHidden
())
if
(
!
mayBeHidden
||
!
result
->
isHidden
())
...
@@ -3905,7 +3911,7 @@ static void findMembersWithSpecificName(MemberName *mn,
...
@@ -3905,7 +3911,7 @@ static void findMembersWithSpecificName(MemberName *mn,
* file fd.
* file fd.
*/
*/
bool
getDefs
(
const
QCString
&
scName
,
bool
getDefs
(
const
QCString
&
scName
,
const
QCString
&
m
ember
Name
,
const
QCString
&
m
b
Name
,
const
char
*
args
,
const
char
*
args
,
MemberDef
*&
md
,
MemberDef
*&
md
,
ClassDef
*&
cd
,
ClassDef
*&
cd
,
...
@@ -3919,10 +3925,12 @@ bool getDefs(const QCString &scName,
...
@@ -3919,10 +3925,12 @@ bool getDefs(const QCString &scName,
)
)
{
{
fd
=
0
,
md
=
0
,
cd
=
0
,
nd
=
0
,
gd
=
0
;
fd
=
0
,
md
=
0
,
cd
=
0
,
nd
=
0
,
gd
=
0
;
if
(
m
ember
Name
.
isEmpty
())
return
FALSE
;
/* empty name => nothing to link */
if
(
m
b
Name
.
isEmpty
())
return
FALSE
;
/* empty name => nothing to link */
QCString
scopeName
=
scName
;
QCString
scopeName
=
scName
;
QCString
memberName
=
mbName
;
scopeName
=
substitute
(
scopeName
,
"
\\
"
,
"::"
);
// for PHP
scopeName
=
substitute
(
scopeName
,
"
\\
"
,
"::"
);
// for PHP
memberName
=
substitute
(
memberName
,
"
\\
"
,
"::"
);
// for PHP
//printf("Search for name=%s args=%s in scope=%s forceEmpty=%d\n",
//printf("Search for name=%s args=%s in scope=%s forceEmpty=%d\n",
// memberName.data(),args,scopeName.data(),forceEmptyScope);
// memberName.data(),args,scopeName.data(),forceEmptyScope);
...
@@ -4594,6 +4602,14 @@ bool resolveRef(/* in */ const char *scName,
...
@@ -4594,6 +4602,14 @@ bool resolveRef(/* in */ const char *scName,
{
{
return
resolveRef
(
scName
,
name
,
inSeeBlock
,
resContext
,
resMember
,
FALSE
,
0
,
checkScope
);
return
resolveRef
(
scName
,
name
,
inSeeBlock
,
resContext
,
resMember
,
FALSE
,
0
,
checkScope
);
}
}
if
(
bracePos
!=-
1
)
// Try without parameters as well, could be a contructor invocation
{
*
resContext
=
getClass
(
fullName
.
left
(
bracePos
));
if
(
*
resContext
)
{
return
TRUE
;
}
}
//printf("resolveRef: %s not found!\n",name);
//printf("resolveRef: %s not found!\n",name);
return
FALSE
;
return
FALSE
;
...
...
src/vhdldocgen.cpp
View file @
bd76ec60
...
@@ -2583,6 +2583,7 @@ void VhdlDocGen::writeSource(MemberDef *mdef,OutputList& ol,QCString & cname)
...
@@ -2583,6 +2583,7 @@ void VhdlDocGen::writeSource(MemberDef *mdef,OutputList& ol,QCString & cname)
pIntf
->
parseCode
(
ol
,
// codeOutIntf
pIntf
->
parseCode
(
ol
,
// codeOutIntf
0
,
// scope
0
,
// scope
codeFragment
,
// input
codeFragment
,
// input
SrcLangExt_VHDL
,
// lang
FALSE
,
// isExample
FALSE
,
// isExample
0
,
// exampleName
0
,
// exampleName
mdef
->
getFileDef
(),
// fileDef
mdef
->
getFileDef
(),
// fileDef
...
...
src/vhdlscanner.h
View file @
bd76ec60
...
@@ -59,6 +59,7 @@ class VHDLLanguageScanner : public ParserInterface
...
@@ -59,6 +59,7 @@ class VHDLLanguageScanner : public ParserInterface
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
void
parseCode
(
CodeOutputInterface
&
codeOutIntf
,
const
char
*
scopeName
,
const
char
*
scopeName
,
const
QCString
&
input
,
const
QCString
&
input
,
SrcLangExt
lang
,
bool
isExampleBlock
,
bool
isExampleBlock
,
const
char
*
exampleName
=
0
,
const
char
*
exampleName
=
0
,
FileDef
*
fileDef
=
0
,
FileDef
*
fileDef
=
0
,
...
...
src/vhdlscanner.l
View file @
bd76ec60
...
@@ -796,6 +796,7 @@ void VHDLLanguageScanner::parseInput(const char *fileName,
...
@@ -796,6 +796,7 @@ void VHDLLanguageScanner::parseInput(const char *fileName,
void VHDLLanguageScanner::parseCode(CodeOutputInterface &codeOutIntf,
void VHDLLanguageScanner::parseCode(CodeOutputInterface &codeOutIntf,
const char *scopeName,
const char *scopeName,
const QCString &input,
const QCString &input,
SrcLangExt lang,
bool isExampleBlock,
bool isExampleBlock,
const char *exampleName,
const char *exampleName,
FileDef *fileDef,
FileDef *fileDef,
...
...
src/xmldocvisitor.cpp
View file @
bd76ec60
...
@@ -246,12 +246,13 @@ void XmlDocVisitor::visit(DocStyleChange *s)
...
@@ -246,12 +246,13 @@ void XmlDocVisitor::visit(DocStyleChange *s)
void
XmlDocVisitor
::
visit
(
DocVerbatim
*
s
)
void
XmlDocVisitor
::
visit
(
DocVerbatim
*
s
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
switch
(
s
->
type
())
switch
(
s
->
type
())
{
{
case
DocVerbatim
:
:
Code
:
// fall though
case
DocVerbatim
:
:
Code
:
// fall though
m_t
<<
"<programlisting>"
;
m_t
<<
"<programlisting>"
;
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
->
parseCode
(
m_ci
,
s
->
context
(),
s
->
text
(),
langExt
,
s
->
isExample
(),
s
->
exampleFile
());
s
->
isExample
(),
s
->
exampleFile
());
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
break
;
break
;
...
@@ -310,6 +311,7 @@ void XmlDocVisitor::visit(DocAnchor *anc)
...
@@ -310,6 +311,7 @@ void XmlDocVisitor::visit(DocAnchor *anc)
void
XmlDocVisitor
::
visit
(
DocInclude
*
inc
)
void
XmlDocVisitor
::
visit
(
DocInclude
*
inc
)
{
{
if
(
m_hide
)
return
;
if
(
m_hide
)
return
;
SrcLangExt
langExt
=
getLanguageFromFileName
(
inc
->
extension
());
switch
(
inc
->
type
())
switch
(
inc
->
type
())
{
{
case
DocInclude
:
:
IncWithLines
:
case
DocInclude
:
:
IncWithLines
:
...
@@ -320,6 +322,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
...
@@ -320,6 +322,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
(),
&
fd
);
inc
->
exampleFile
(),
&
fd
);
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
...
@@ -330,6 +333,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
...
@@ -330,6 +333,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
Doxygen
::
parserManager
->
getParser
(
inc
->
extension
())
->
parseCode
(
m_ci
,
inc
->
context
(),
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
text
(),
inc
->
text
(),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
());
inc
->
exampleFile
());
m_t
<<
"</programlisting>"
;
m_t
<<
"</programlisting>"
;
...
@@ -352,6 +356,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
...
@@ -352,6 +356,7 @@ void XmlDocVisitor::visit(DocInclude *inc)
->
parseCode
(
m_ci
,
->
parseCode
(
m_ci
,
inc
->
context
(),
inc
->
context
(),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
extractBlock
(
inc
->
text
(),
inc
->
blockId
()),
langExt
,
inc
->
isExample
(),
inc
->
isExample
(),
inc
->
exampleFile
()
inc
->
exampleFile
()
);
);
...
@@ -373,6 +378,7 @@ void XmlDocVisitor::visit(DocIncOperator *op)
...
@@ -373,6 +378,7 @@ void XmlDocVisitor::visit(DocIncOperator *op)
pushEnabled
();
pushEnabled
();
m_hide
=
TRUE
;
m_hide
=
TRUE
;
}
}
SrcLangExt
langExt
=
getLanguageFromFileName
(
m_langExt
);
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
if
(
op
->
type
()
!=
DocIncOperator
::
Skip
)
{
{
popEnabled
();
popEnabled
();
...
@@ -380,7 +386,7 @@ void XmlDocVisitor::visit(DocIncOperator *op)
...
@@ -380,7 +386,7 @@ void XmlDocVisitor::visit(DocIncOperator *op)
{
{
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
Doxygen
::
parserManager
->
getParser
(
m_langExt
)
->
parseCode
(
m_ci
,
op
->
context
(),
->
parseCode
(
m_ci
,
op
->
context
(),
op
->
text
(),
op
->
isExample
(),
op
->
text
(),
langExt
,
op
->
isExample
(),
op
->
exampleFile
());
op
->
exampleFile
());
}
}
pushEnabled
();
pushEnabled
();
...
...
src/xmlgen.cpp
View file @
bd76ec60
...
@@ -456,11 +456,13 @@ static void writeXMLDocBlock(FTextStream &t,
...
@@ -456,11 +456,13 @@ static void writeXMLDocBlock(FTextStream &t,
void
writeXMLCodeBlock
(
FTextStream
&
t
,
FileDef
*
fd
)
void
writeXMLCodeBlock
(
FTextStream
&
t
,
FileDef
*
fd
)
{
{
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
fd
->
getDefFileExtension
());
ParserInterface
*
pIntf
=
Doxygen
::
parserManager
->
getParser
(
fd
->
getDefFileExtension
());
SrcLangExt
langExt
=
getLanguageFromFileName
(
fd
->
getDefFileExtension
());
pIntf
->
resetCodeParserState
();
pIntf
->
resetCodeParserState
();
XMLCodeGenerator
*
xmlGen
=
new
XMLCodeGenerator
(
t
);
XMLCodeGenerator
*
xmlGen
=
new
XMLCodeGenerator
(
t
);
pIntf
->
parseCode
(
*
xmlGen
,
// codeOutIntf
pIntf
->
parseCode
(
*
xmlGen
,
// codeOutIntf
0
,
// scopeName
0
,
// scopeName
fileToString
(
fd
->
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)),
fileToString
(
fd
->
absFilePath
(),
Config_getBool
(
"FILTER_SOURCE_FILES"
)),
langExt
,
// lang
FALSE
,
// isExampleBlock
FALSE
,
// isExampleBlock
0
,
// exampleName
0
,
// exampleName
fd
,
// fileDef
fd
,
// fileDef
...
...
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