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
aee36e26
Commit
aee36e26
authored
Jul 17, 2003
by
Dimitri van Heesch
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.3.2-20030717
parent
5444ff60
Changes
22
Show whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
1245 additions
and
287 deletions
+1245
-287
Doxyfile
Doxyfile
+1
-1
INSTALL
INSTALL
+2
-2
README
README
+2
-2
VERSION
VERSION
+1
-1
maintainers.txt
doc/maintainers.txt
+1
-0
doxygen.spec
packages/rpm/doxygen.spec
+1
-1
commentcnv.l
src/commentcnv.l
+89
-20
compound.xsd
src/compound.xsd
+351
-1
compound_xsd.h
src/compound_xsd.h
+351
-1
definition.h
src/definition.h
+1
-1
doctokenizer.l
src/doctokenizer.l
+28
-21
dot.cpp
src/dot.cpp
+3
-3
doxygen.cpp
src/doxygen.cpp
+7
-7
entry.h
src/entry.h
+1
-1
index.xsd
src/index.xsd
+3
-1
index_xsd.h
src/index_xsd.h
+3
-1
memberdef.cpp
src/memberdef.cpp
+4
-12
scanner.l
src/scanner.l
+33
-31
translator_jp.h
src/translator_jp.h
+59
-4
translator_tw.h
src/translator_tw.h
+233
-134
util.h
src/util.h
+1
-1
xmlgen.cpp
src/xmlgen.cpp
+70
-41
No files found.
Doxyfile
View file @
aee36e26
...
@@ -169,7 +169,7 @@ PERL_PATH = /usr/bin/perl
...
@@ -169,7 +169,7 @@ PERL_PATH = /usr/bin/perl
# Configuration options related to the dot tool
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
CLASS_DIAGRAMS = NO
HAVE_DOT =
YES
HAVE_DOT =
NO
CLASS_GRAPH = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
COLLABORATION_GRAPH = YES
TEMPLATE_RELATIONS = YES
TEMPLATE_RELATIONS = YES
...
...
INSTALL
View file @
aee36e26
DOXYGEN Version 1.3.2-200307
08
DOXYGEN Version 1.3.2-200307
17
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 (
08
July 2003)
Dimitri van Heesch (
17
July 2003)
README
View file @
aee36e26
DOXYGEN Version 1.3.2_200307
08
DOXYGEN Version 1.3.2_200307
17
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) (
08
July 2003)
Dimitri van Heesch (dimitri@stack.nl) (
17
July 2003)
VERSION
View file @
aee36e26
1.3.2-200307
08
1.3.2-200307
17
doc/maintainers.txt
View file @
aee36e26
...
@@ -12,6 +12,7 @@ Wei Liu: liuwei@asiainfo.com
...
@@ -12,6 +12,7 @@ Wei Liu: liuwei@asiainfo.com
Wang Weihan: wangweihan@capinfo.com.cn
Wang Weihan: wangweihan@capinfo.com.cn
ChineseTraditional
ChineseTraditional
Daniel YC Lin: daniel@twpda.com
Gary Lee: garylee@ecosine.com.tw
Gary Lee: garylee@ecosine.com.tw
Croatian
Croatian
...
...
packages/rpm/doxygen.spec
View file @
aee36e26
Summary: A documentation system for C/C++.
Summary: A documentation system for C/C++.
Name: doxygen
Name: doxygen
Version: 1.3.2_200307
08
Version: 1.3.2_200307
17
Release: 1
Release: 1
Epoch: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
...
...
src/commentcnv.l
View file @
aee36e26
...
@@ -26,12 +26,15 @@
...
@@ -26,12 +26,15 @@
#include "debug.h"
#include "debug.h"
#include "message.h"
#include "message.h"
#include "config.h"
#include "config.h"
#include "doxygen.h"
static BufStr *g_inBuf;
static BufStr *g_inBuf;
static BufStr *g_outBuf;
static BufStr *g_outBuf;
static int g_inBufPos;
static int g_inBufPos;
static int g_col;
static int g_col;
static int g_blockHeadCol;
static int g_blockHeadCol;
static bool g_mlBrief;
static int g_readLineCtx;
static void replaceCommentMarker(const char *s,int len)
static void replaceCommentMarker(const char *s,int len)
{
{
...
@@ -105,18 +108,7 @@ static int yyread(char *buf,int max_size)
...
@@ -105,18 +108,7 @@ static int yyread(char *buf,int max_size)
return bytesToCopy;
return bytesToCopy;
}
}
#define replaceComment(offset) \
void replaceComment(int offset);
int i=computeIndent(&yytext[offset]); \
if (i==g_blockHeadCol) \
{ \
replaceCommentMarker(yytext,yyleng); \
} \
else \
{ \
copyToOutput(" */",3); \
int i;for (i=yyleng-1;i>=0;i--) unput(yytext[i]); \
BEGIN(Scan); \
} \
%}
%}
...
@@ -127,6 +119,7 @@ static int yyread(char *buf,int max_size)
...
@@ -127,6 +119,7 @@ static int yyread(char *buf,int max_size)
%x SComment
%x SComment
%x CComment
%x CComment
%x Verbatim
%x Verbatim
%x ReadLine
%%
%%
...
@@ -141,6 +134,7 @@ static int yyread(char *buf,int max_size)
...
@@ -141,6 +134,7 @@ static int yyread(char *buf,int max_size)
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
}
}
<Scan>("//!"|"///").*/\n[ \t]*"//"[\/!][^\/] { /* start C++ style special comment block */
<Scan>("//!"|"///").*/\n[ \t]*"//"[\/!][^\/] { /* start C++ style special comment block */
if (g_mlBrief) REJECT; // bail out if we do not need to convert
int i=3;
int i=3;
if (yytext[2]=='/')
if (yytext[2]=='/')
{
{
...
@@ -152,14 +146,17 @@ static int yyread(char *buf,int max_size)
...
@@ -152,14 +146,17 @@ static int yyread(char *buf,int max_size)
BEGIN(SComment);
BEGIN(SComment);
}
}
<Scan>"//##Documentation".*/\n { /* Start of Rational Rose ANSI C++ comment block */
<Scan>"//##Documentation".*/\n { /* Start of Rational Rose ANSI C++ comment block */
if (g_mlBrief) REJECT;
int i=17; //=strlen("//##Documentation");
int i=17; //=strlen("//##Documentation");
g_blockHeadCol=g_col;
g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
copyToOutput(yytext+i,yyleng-i);
BEGIN(SComment);
BEGIN(SComment);
}
}
<Scan>"//".*\n { /* one line C++ comment */
<Scan>"//"
/
.*\n { /* one line C++ comment */
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<Scan>"/*" { /* start of a C comment */
<Scan>"/*" { /* start of a C comment */
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
...
@@ -198,7 +195,7 @@ static int yyread(char *buf,int max_size)
...
@@ -198,7 +195,7 @@ static int yyread(char *buf,int max_size)
<SkipString>\n { /* new line inside string (illegal for some compilers) */
<SkipString>\n { /* new line inside string (illegal for some compilers) */
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
}
}
<CComment>[^*\n]* { /* anything that is not a '*' */
<CComment>[^
\\@
*\n]* { /* anything that is not a '*' */
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
}
}
<CComment>"*"+[^*/\n]* { /* stars without slashes */
<CComment>"*"+[^*/\n]* { /* stars without slashes */
...
@@ -211,44 +208,116 @@ static int yyread(char *buf,int max_size)
...
@@ -211,44 +208,116 @@ static int yyread(char *buf,int max_size)
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
BEGIN(Scan);
BEGIN(Scan);
}
}
<CComment>[\\@][a-z_A-Z][a-z_A-Z0-9]* { // expand alias
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
{
copyToOutput(pValue->data(),pValue->length());
}
else
{
copyToOutput(yytext,yyleng);
}
}
<CComment>. {
copyToOutput(yytext,yyleng);
}
<SComment>^[ \t]*"///"[\/]*/\n {
<SComment>^[ \t]*"///"[\/]*/\n {
replaceComment(0);
replaceComment(0);
}
}
<SComment>\n[ \t]*"///"[\/]*/\n {
<SComment>\n[ \t]*"///"[\/]*/\n {
replaceComment(1);
replaceComment(1);
}
}
<SComment>^[ \t]*"///"[^\/\n]
.*/
\n {
<SComment>^[ \t]*"///"[^\/\n]
/.*
\n {
replaceComment(0);
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>\n[ \t]*"///"[^\/\n]
.*/
\n {
<SComment>\n[ \t]*"///"[^\/\n]
/.*
\n {
replaceComment(1);
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>^[ \t]*"//!"
.*/
\n {
<SComment>^[ \t]*"//!"
/.*
\n {
replaceComment(0);
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>\n[ \t]*"//!"
.*/
\n {
<SComment>\n[ \t]*"//!"
/.*
\n {
replaceComment(1);
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>^[ \t]*"//##"
.*/
\n {
<SComment>^[ \t]*"//##"
/.*
\n {
replaceComment(0);
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>\n[ \t]*"//##"
.*/
\n {
<SComment>\n[ \t]*"//##"
/.*
\n {
replaceComment(1);
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
}
<SComment>\n { /* end of special comment */
<SComment>\n { /* end of special comment */
copyToOutput(" */",3);
copyToOutput(" */",3);
copyToOutput(yytext,yyleng);
copyToOutput(yytext,yyleng);
BEGIN(Scan);
BEGIN(Scan);
}
}
<ReadLine>[^\\@\n]*/\n {
copyToOutput(yytext,yyleng);
BEGIN(g_readLineCtx);
}
<ReadLine>[\\@][a-z_A-Z][a-z_A-Z0-9]* { // expand alias
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
{
copyToOutput(pValue->data(),pValue->length());
}
else
{
copyToOutput(yytext,yyleng);
}
}
<ReadLine>. {
copyToOutput(yytext,yyleng);
}
%%
%%
void replaceComment(int offset)
{
if (g_mlBrief)
{
copyToOutput(yytext,yyleng);
}
else
{
int i=computeIndent(&yytext[offset]);
if (i==g_blockHeadCol)
{
replaceCommentMarker(yytext,yyleng);
}
else
{
copyToOutput(" */",3);
int i;for (i=yyleng-1;i>=0;i--) unput(yytext[i]);
BEGIN(Scan);
}
}
}
/*! This function does two things:
* -# It converts multi-line C++ style comment blocks (that are aligned)
* to C style comment blocks (if MULTILINE_CPP_IS_BRIEF is set to NO).
* -# It replaces aliases with their definition (see ALIASES)
*/
void convertCppComments(BufStr *inBuf,BufStr *outBuf)
void convertCppComments(BufStr *inBuf,BufStr *outBuf)
{
{
g_inBuf = inBuf;
g_inBuf = inBuf;
g_outBuf = outBuf;
g_outBuf = outBuf;
g_inBufPos = 0;
g_inBufPos = 0;
g_col = 0;
g_col = 0;
g_mlBrief = Config_getBool("MULTILINE_CPP_IS_BRIEF");
BEGIN(Scan);
BEGIN(Scan);
yylex();
yylex();
if (Debug::isFlagSet(Debug::CommentCnv))
if (Debug::isFlagSet(Debug::CommentCnv))
...
...
src/compound.xsd
View file @
aee36e26
<?xml version='1.0' encoding='utf-8' ?>
<xsd:schema
xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"
>
<xsd:schema
xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"
>
<xsd:element
name=
"doxygen"
type=
"DoxygenType"
/>
<xsd:element
name=
"doxygen"
type=
"DoxygenType"
/>
<!-- Complex types -->
<xsd:complexType
name=
"DoxygenType"
>
<xsd:complexType
name=
"DoxygenType"
>
<xsd:sequence
maxOccurs=
"unbounded"
>
<xsd:element
name=
"compounddef"
type=
"compounddefType"
minOccurs=
"0"
/>
</xsd:sequence>
<xsd:attribute
name=
"version"
type=
"DoxVersionNumber"
use=
"required"
/>
</xsd:complexType>
<xsd:complexType
name=
"compounddefType"
>
<xsd:sequence>
<xsd:element
name=
"compoundname"
type=
"xsd:string"
/>
<xsd:element
name=
"title"
type=
"xsd:string"
minOccurs=
"0"
/>
<xsd:element
name=
"basecompoundref"
type=
"compoundRefType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"derivedcompoundref"
type=
"compoundRefType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"includes"
type=
"incType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"includedby"
type=
"incType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"incdepgraph"
type=
"graphType"
minOccurs=
"0"
/>
<xsd:element
name=
"invincdepgraph"
type=
"graphType"
minOccurs=
"0"
/>
<xsd:element
name=
"innerfile"
type=
"refType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"innerclass"
type=
"refType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"innernamespace"
type=
"refType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"innerpage"
type=
"refType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"innergroup"
type=
"refType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"templateparamlist"
type=
"templateparamlistType"
minOccurs=
"0"
/>
<xsd:element
name=
"sectiondef"
type=
"sectiondefType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"briefdescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"detaileddescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"inheritancegraph"
type=
"graphType"
minOccurs=
"0"
/>
<xsd:element
name=
"collaborationgraph"
type=
"graphType"
minOccurs=
"0"
/>
<xsd:element
name=
"programlisting"
type=
"listingType"
minOccurs=
"0"
/>
<xsd:element
name=
"location"
type=
"locationType"
minOccurs=
"0"
/>
<xsd:element
name=
"listofallmembers"
type=
"listofallmembersType"
minOccurs=
"0"
/>
</xsd:sequence>
<xsd:attribute
name=
"id"
/>
<xsd:attribute
name=
"kind"
type=
"DoxCompoundKind"
/>
</xsd:complexType>
<xsd:complexType
name=
"listofallmembersType"
>
<xsd:sequence>
<xsd:element
name=
"member"
type=
"memberRefType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"memberRefType"
>
<xsd:sequence>
<xsd:element
name=
"scope"
/>
<xsd:element
name=
"name"
/>
</xsd:sequence>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"prot"
type=
"DoxProtectionKind"
/>
<xsd:attribute
name=
"virt"
type=
"DoxVirtualKind"
/>
<xsd:attribute
name=
"ambiguityscope"
type=
"xsd:string"
/>
</xsd:complexType>
<xsd:complexType
name=
"compoundRefType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"prot"
type=
"DoxProtectionKind"
/>
<xsd:attribute
name=
"virt"
type=
"DoxVirtualKind"
/>
</xsd:complexType>
<xsd:complexType
name=
"reimplementType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
</xsd:complexType>
<xsd:complexType
name=
"incType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"local"
type=
"DoxBool"
/>
</xsd:complexType>
<xsd:complexType
name=
"refType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
</xsd:complexType>
<xsd:complexType
name=
"refTextType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"kindref"
/>
<xsd:attribute
name=
"external"
/>
</xsd:complexType>
<xsd:complexType
name=
"sectiondefType"
>
<xsd:sequence>
<xsd:element
name=
"header"
type=
"xsd:string"
minOccurs=
"0"
/>
<xsd:element
name=
"memberdef"
type=
"memberdefType"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"kind"
type=
"DoxSectionKind"
/>
</xsd:complexType>
<xsd:complexType
name=
"memberdefType"
>
<xsd:sequence>
<xsd:element
name=
"type"
type=
"linkedTextType"
minOccurs=
"0"
/>
<xsd:element
name=
"definition"
minOccurs=
"0"
/>
<xsd:element
name=
"argsstring"
minOccurs=
"0"
/>
<xsd:element
name=
"name"
/>
<xsd:element
name=
"reimplements"
type=
"reimplementType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"reimplementedby"
type=
"reimplementType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"param"
type=
"paramType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"enumvalue"
type=
"enumvalueType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"initializer"
type=
"linkedTextType"
minOccurs=
"0"
/>
<xsd:element
name=
"exceptions"
type=
"linkedTextType"
minOccurs=
"0"
/>
<xsd:element
name=
"briefdescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"detaileddescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"location"
type=
"locationType"
/>
<xsd:element
name=
"references"
type=
"referenceType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
<xsd:element
name=
"referencedby"
type=
"referenceType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"kind"
type=
"DoxMemberKind"
/>
<xsd:attribute
name=
"id"
/>
<xsd:attribute
name=
"prot"
type=
"DoxProtectionKind"
/>
<xsd:attribute
name=
"static"
type=
"DoxBool"
/>
<xsd:attribute
name=
"const"
type=
"DoxBool"
/>
<xsd:attribute
name=
"explicit"
type=
"DoxBool"
/>
<xsd:attribute
name=
"inline"
type=
"DoxBool"
/>
<xsd:attribute
name=
"virt"
type=
"DoxVirtualKind"
/>
<xsd:attribute
name=
"volatile"
type=
"DoxBool"
/>
<xsd:attribute
name=
"mutable"
type=
"DoxBool"
/>
</xsd:complexType>
<xsd:complexType
name=
"descriptionType"
mixed=
"true"
>
<xsd:sequence>
<xsd:any
processContents=
"lax"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"enumvalueType"
mixed=
"true"
>
<xsd:sequence>
<xsd:element
name=
"name"
/>
<xsd:element
name=
"briefdescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"detaileddescription"
type=
"descriptionType"
minOccurs=
"0"
/>
<xsd:element
name=
"initializer"
type=
"linkedTextType"
minOccurs=
"0"
/>
</xsd:sequence>
<xsd:attribute
name=
"id"
/>
<xsd:attribute
name=
"prot"
type=
"DoxProtectionKind"
/>
</xsd:complexType>
<xsd:complexType
name=
"templateparamlistType"
>
<xsd:sequence>
<xsd:element
name=
"param"
type=
"paramType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"paramType"
>
<xsd:sequence>
<xsd:element
name=
"type"
type=
"linkedTextType"
minOccurs=
"0"
/>
<xsd:element
name=
"declname"
minOccurs=
"0"
/>
<xsd:element
name=
"defname"
minOccurs=
"0"
/>
<xsd:element
name=
"array"
minOccurs=
"0"
/>
<xsd:element
name=
"defval"
type=
"linkedTextType"
minOccurs=
"0"
/>
<xsd:element
name=
"briefdescription"
type=
"descriptionType"
minOccurs=
"0"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"linkedTextType"
mixed=
"true"
>
<xsd:sequence>
<xsd:element
name=
"ref"
type=
"refTextType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"graphType"
>
<xsd:sequence>
<xsd:element
name=
"node"
type=
"nodeType"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType
name=
"nodeType"
>
<xsd:sequence>
<xsd:element
name=
"label"
/>
<xsd:element
name=
"link"
type=
"linkType"
minOccurs=
"0"
/>
<xsd:element
name=
"childnode"
type=
"childnodeType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"id"
/>
</xsd:complexType>
<xsd:complexType
name=
"childnodeType"
>
<xsd:sequence>
<xsd:element
name=
"edgelabel"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"relation"
type=
"DoxGraphRelation"
/>
</xsd:complexType>
<xsd:complexType
name=
"linkType"
>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"external"
use=
"optional"
/>
</xsd:complexType>
<xsd:complexType
name=
"listingType"
>
<xsd:sequence>
<xsd:sequence>
<xsd:element
name=
"codeline"
type=
"codelineType"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
</xsd:sequence>
<xsd:attribute
name=
"version"
type=
"xsd:string"
use=
"required"
/>
</xsd:complexType>
</xsd:complexType>
<xsd:complexType
name=
"codelineType"
>
<xsd:sequence>
<xsd:element
name=
"highlight"
type=
"highlightType"
minOccurs=
"0"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"lineno"
type=
"xsd:integer"
/>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"refkind"
type=
"DoxRefKind"
/>
<xsd:attribute
name=
"external"
/>
</xsd:complexType>
<xsd:complexType
name=
"highlightType"
mixed=
"true"
>
<xsd:choice
minOccurs=
"0"
maxOccurs=
"unbounded"
>
<xsd:element
name=
"sp"
/>
<xsd:element
name=
"ref"
type=
"refTextType"
/>
</xsd:choice>
<xsd:attribute
name=
"class"
type=
"DoxHighlightClass"
/>
</xsd:complexType>
<xsd:complexType
name=
"referenceType"
mixed=
"true"
>
<xsd:attribute
name=
"refid"
/>
<xsd:attribute
name=
"compoundref"
use=
"optional"
/>
<xsd:attribute
name=
"startline"
type=
"xsd:integer"
/>
<xsd:attribute
name=
"endline"
type=
"xsd:integer"
/>
</xsd:complexType>
<xsd:complexType
name=
"locationType"
>
<xsd:attribute
name=
"file"
/>
<xsd:attribute
name=
"line"
type=
"xsd:integer"
/>
<xsd:attribute
name=
"bodystart"
type=
"xsd:integer"
/>
<xsd:attribute
name=
"bodyend"
type=
"xsd:integer"
/>
</xsd:complexType>
<!-- Simple types -->
<xsd:simpleType
name=
"DoxBool"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"yes"
/>
<xsd:enumeration
value=
"no"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxGraphRelation"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"include"
/>
<xsd:enumeration
value=
"usage"
/>
<xsd:enumeration
value=
"template-instance"
/>
<xsd:enumeration
value=
"public-inheritance"
/>
<xsd:enumeration
value=
"protected-inheritance"
/>
<xsd:enumeration
value=
"private-inheritance"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxRefKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"compound"
/>
<xsd:enumeration
value=
"member"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxMemberKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"define"
/>
<xsd:enumeration
value=
"property"
/>
<xsd:enumeration
value=
"event"
/>
<xsd:enumeration
value=
"variable"
/>
<xsd:enumeration
value=
"typedef"
/>
<xsd:enumeration
value=
"enum"
/>
<xsd:enumeration
value=
"function"
/>
<xsd:enumeration
value=
"signal"
/>
<xsd:enumeration
value=
"prototype"
/>
<xsd:enumeration
value=
"friend"
/>
<xsd:enumeration
value=
"dcop"
/>
<xsd:enumeration
value=
"slot"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxProtectionKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"public"
/>
<xsd:enumeration
value=
"protected"
/>
<xsd:enumeration
value=
"private"
/>
<xsd:enumeration
value=
"package"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxVirtualKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"non-virtual"
/>
<xsd:enumeration
value=
"virtual"
/>
<xsd:enumeration
value=
"pure-virtual"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxCompoundKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"class"
/>
<xsd:enumeration
value=
"struct"
/>
<xsd:enumeration
value=
"union"
/>
<xsd:enumeration
value=
"interface"
/>
<xsd:enumeration
value=
"exception"
/>
<xsd:enumeration
value=
"file"
/>
<xsd:enumeration
value=
"namespace"
/>
<xsd:enumeration
value=
"group"
/>
<xsd:enumeration
value=
"page"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxSectionKind"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"user-defined"
/>
<xsd:enumeration
value=
"public-type"
/>
<xsd:enumeration
value=
"public-func"
/>
<xsd:enumeration
value=
"public-attrib"
/>
<xsd:enumeration
value=
"public-slot"
/>
<xsd:enumeration
value=
"signal"
/>
<xsd:enumeration
value=
"dcop-func"
/>
<xsd:enumeration
value=
"property"
/>
<xsd:enumeration
value=
"event"
/>
<xsd:enumeration
value=
"public-static-func"
/>
<xsd:enumeration
value=
"public-static-attrib"
/>
<xsd:enumeration
value=
"protected-type"
/>
<xsd:enumeration
value=
"protected-func"
/>
<xsd:enumeration
value=
"protected-attrib"
/>
<xsd:enumeration
value=
"protected-slot"
/>
<xsd:enumeration
value=
"protected-static-func"
/>
<xsd:enumeration
value=
"protected-static-attrib"
/>
<xsd:enumeration
value=
"private-type"
/>
<xsd:enumeration
value=
"private-func"
/>
<xsd:enumeration
value=
"private-attrib"
/>
<xsd:enumeration
value=
"private-slot"
/>
<xsd:enumeration
value=
"private-static-func"
/>
<xsd:enumeration
value=
"private-static-attrib"
/>
<xsd:enumeration
value=
"friend"
/>
<xsd:enumeration
value=
"related"
/>
<xsd:enumeration
value=
"define"
/>
<xsd:enumeration
value=
"prototype"
/>
<xsd:enumeration
value=
"typedef"
/>
<xsd:enumeration
value=
"enum"
/>
<xsd:enumeration
value=
"func"
/>
<xsd:enumeration
value=
"var"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxHighlightClass"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:enumeration
value=
"comment"
/>
<xsd:enumeration
value=
"normal"
/>
<xsd:enumeration
value=
"preprocessor"
/>
<xsd:enumeration
value=
"keyword"
/>
<xsd:enumeration
value=
"keywordtype"
/>
<xsd:enumeration
value=
"keywordflow"
/>
<xsd:enumeration
value=
"stringliteral"
/>
<xsd:enumeration
value=
"charliteral"
/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType
name=
"DoxVersionNumber"
>
<xsd:restriction
base=
"xsd:string"
>
<xsd:pattern
value=
"\d+\.\d+.*"
/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
</xsd:schema>
src/compound_xsd.h
View file @
aee36e26
"<?xml version='1.0' encoding='utf-8' ?>
\n
"
"<xsd:schema xmlns:xsd=
\"
http://www.w3.org/2001/XMLSchema
\"
>
\n
"
"<xsd:schema xmlns:xsd=
\"
http://www.w3.org/2001/XMLSchema
\"
>
\n
"
" <xsd:element name=
\"
doxygen
\"
type=
\"
DoxygenType
\"
/>
\n
"
" <xsd:element name=
\"
doxygen
\"
type=
\"
DoxygenType
\"
/>
\n
"
"
\n
"
"
\n
"
" <!-- Complex types -->
\n
"
"
\n
"
" <xsd:complexType name=
\"
DoxygenType
\"
>
\n
"
" <xsd:complexType name=
\"
DoxygenType
\"
>
\n
"
" <xsd:sequence maxOccurs=
\"
unbounded
\"
>
\n
"
" <xsd:element name=
\"
compounddef
\"
type=
\"
compounddefType
\"
minOccurs=
\"
0
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
version
\"
type=
\"
DoxVersionNumber
\"
use=
\"
required
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
compounddefType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
compoundname
\"
type=
\"
xsd:string
\"
/>
\n
"
" <xsd:element name=
\"
title
\"
type=
\"
xsd:string
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
basecompoundref
\"
type=
\"
compoundRefType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
derivedcompoundref
\"
type=
\"
compoundRefType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
includes
\"
type=
\"
incType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
includedby
\"
type=
\"
incType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
incdepgraph
\"
type=
\"
graphType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
invincdepgraph
\"
type=
\"
graphType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
innerfile
\"
type=
\"
refType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
innerclass
\"
type=
\"
refType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
innernamespace
\"
type=
\"
refType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
innerpage
\"
type=
\"
refType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
innergroup
\"
type=
\"
refType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
templateparamlist
\"
type=
\"
templateparamlistType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
sectiondef
\"
type=
\"
sectiondefType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
briefdescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
detaileddescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
inheritancegraph
\"
type=
\"
graphType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
collaborationgraph
\"
type=
\"
graphType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
programlisting
\"
type=
\"
listingType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
location
\"
type=
\"
locationType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
listofallmembers
\"
type=
\"
listofallmembersType
\"
minOccurs=
\"
0
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
id
\"
/>
\n
"
" <xsd:attribute name=
\"
kind
\"
type=
\"
DoxCompoundKind
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
listofallmembersType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
member
\"
type=
\"
memberRefType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
memberRefType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
scope
\"
/>
\n
"
" <xsd:element name=
\"
name
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
prot
\"
type=
\"
DoxProtectionKind
\"
/>
\n
"
" <xsd:attribute name=
\"
virt
\"
type=
\"
DoxVirtualKind
\"
/>
\n
"
" <xsd:attribute name=
\"
ambiguityscope
\"
type=
\"
xsd:string
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
compoundRefType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
prot
\"
type=
\"
DoxProtectionKind
\"
/>
\n
"
" <xsd:attribute name=
\"
virt
\"
type=
\"
DoxVirtualKind
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
reimplementType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
incType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
local
\"
type=
\"
DoxBool
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
refType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
refTextType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
kindref
\"
/>
\n
"
" <xsd:attribute name=
\"
external
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
sectiondefType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
header
\"
type=
\"
xsd:string
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
memberdef
\"
type=
\"
memberdefType
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
kind
\"
type=
\"
DoxSectionKind
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
memberdefType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
type
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
definition
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
argsstring
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
name
\"
/>
\n
"
" <xsd:element name=
\"
reimplements
\"
type=
\"
reimplementType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
reimplementedby
\"
type=
\"
reimplementType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
param
\"
type=
\"
paramType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
enumvalue
\"
type=
\"
enumvalueType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
initializer
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
exceptions
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
briefdescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
detaileddescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
location
\"
type=
\"
locationType
\"
/>
\n
"
" <xsd:element name=
\"
references
\"
type=
\"
referenceType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" <xsd:element name=
\"
referencedby
\"
type=
\"
referenceType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
kind
\"
type=
\"
DoxMemberKind
\"
/>
\n
"
" <xsd:attribute name=
\"
id
\"
/>
\n
"
" <xsd:attribute name=
\"
prot
\"
type=
\"
DoxProtectionKind
\"
/>
\n
"
" <xsd:attribute name=
\"
static
\"
type=
\"
DoxBool
\"
/>
\n
"
" <xsd:attribute name=
\"
const
\"
type=
\"
DoxBool
\"
/>
\n
"
" <xsd:attribute name=
\"
explicit
\"
type=
\"
DoxBool
\"
/>
\n
"
" <xsd:attribute name=
\"
inline
\"
type=
\"
DoxBool
\"
/>
\n
"
" <xsd:attribute name=
\"
virt
\"
type=
\"
DoxVirtualKind
\"
/>
\n
"
" <xsd:attribute name=
\"
volatile
\"
type=
\"
DoxBool
\"
/>
\n
"
" <xsd:attribute name=
\"
mutable
\"
type=
\"
DoxBool
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
descriptionType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:any processContents=
\"
lax
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
enumvalueType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
name
\"
/>
\n
"
" <xsd:element name=
\"
briefdescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
detaileddescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
initializer
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
id
\"
/>
\n
"
" <xsd:attribute name=
\"
prot
\"
type=
\"
DoxProtectionKind
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
templateparamlistType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
param
\"
type=
\"
paramType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
paramType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
type
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
declname
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
defname
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
array
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
defval
\"
type=
\"
linkedTextType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
briefdescription
\"
type=
\"
descriptionType
\"
minOccurs=
\"
0
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
linkedTextType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
ref
\"
type=
\"
refTextType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
graphType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
node
\"
type=
\"
nodeType
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
nodeType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
label
\"
/>
\n
"
" <xsd:element name=
\"
link
\"
type=
\"
linkType
\"
minOccurs=
\"
0
\"
/>
\n
"
" <xsd:element name=
\"
childnode
\"
type=
\"
childnodeType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
id
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
childnodeType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
edgelabel
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
relation
\"
type=
\"
DoxGraphRelation
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
linkType
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
external
\"
use=
\"
optional
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
listingType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
codeline
\"
type=
\"
codelineType
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
version
\"
type=
\"
xsd:string
\"
use=
\"
required
\"
/>
\n
"
" </xsd:complexType>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
"
\n
"
" <xsd:complexType name=
\"
codelineType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:element name=
\"
highlight
\"
type=
\"
highlightType
\"
minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
lineno
\"
type=
\"
xsd:integer
\"
/>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
refkind
\"
type=
\"
DoxRefKind
\"
/>
\n
"
" <xsd:attribute name=
\"
external
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
highlightType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:choice minOccurs=
\"
0
\"
maxOccurs=
\"
unbounded
\"
>
\n
"
" <xsd:element name=
\"
sp
\"
/>
\n
"
" <xsd:element name=
\"
ref
\"
type=
\"
refTextType
\"
/>
\n
"
" </xsd:choice>
\n
"
" <xsd:attribute name=
\"
class
\"
type=
\"
DoxHighlightClass
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
referenceType
\"
mixed=
\"
true
\"
>
\n
"
" <xsd:attribute name=
\"
refid
\"
/>
\n
"
" <xsd:attribute name=
\"
compoundref
\"
use=
\"
optional
\"
/>
\n
"
" <xsd:attribute name=
\"
startline
\"
type=
\"
xsd:integer
\"
/>
\n
"
" <xsd:attribute name=
\"
endline
\"
type=
\"
xsd:integer
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <xsd:complexType name=
\"
locationType
\"
>
\n
"
" <xsd:attribute name=
\"
file
\"
/>
\n
"
" <xsd:attribute name=
\"
line
\"
type=
\"
xsd:integer
\"
/>
\n
"
" <xsd:attribute name=
\"
bodystart
\"
type=
\"
xsd:integer
\"
/>
\n
"
" <xsd:attribute name=
\"
bodyend
\"
type=
\"
xsd:integer
\"
/>
\n
"
" </xsd:complexType>
\n
"
"
\n
"
" <!-- Simple types -->
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxBool
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
yes
\"
/>
\n
"
" <xsd:enumeration value=
\"
no
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxGraphRelation
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
include
\"
/>
\n
"
" <xsd:enumeration value=
\"
usage
\"
/>
\n
"
" <xsd:enumeration value=
\"
template-instance
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-inheritance
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-inheritance
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-inheritance
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxRefKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
compound
\"
/>
\n
"
" <xsd:enumeration value=
\"
member
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxMemberKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
define
\"
/>
\n
"
" <xsd:enumeration value=
\"
property
\"
/>
\n
"
" <xsd:enumeration value=
\"
event
\"
/>
\n
"
" <xsd:enumeration value=
\"
variable
\"
/>
\n
"
" <xsd:enumeration value=
\"
typedef
\"
/>
\n
"
" <xsd:enumeration value=
\"
enum
\"
/>
\n
"
" <xsd:enumeration value=
\"
function
\"
/>
\n
"
" <xsd:enumeration value=
\"
signal
\"
/>
\n
"
" <xsd:enumeration value=
\"
prototype
\"
/>
\n
"
" <xsd:enumeration value=
\"
friend
\"
/>
\n
"
" <xsd:enumeration value=
\"
dcop
\"
/>
\n
"
" <xsd:enumeration value=
\"
slot
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxProtectionKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
public
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected
\"
/>
\n
"
" <xsd:enumeration value=
\"
private
\"
/>
\n
"
" <xsd:enumeration value=
\"
package
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxVirtualKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
non-virtual
\"
/>
\n
"
" <xsd:enumeration value=
\"
virtual
\"
/>
\n
"
" <xsd:enumeration value=
\"
pure-virtual
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxCompoundKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
class
\"
/>
\n
"
" <xsd:enumeration value=
\"
struct
\"
/>
\n
"
" <xsd:enumeration value=
\"
union
\"
/>
\n
"
" <xsd:enumeration value=
\"
interface
\"
/>
\n
"
" <xsd:enumeration value=
\"
exception
\"
/>
\n
"
" <xsd:enumeration value=
\"
file
\"
/>
\n
"
" <xsd:enumeration value=
\"
namespace
\"
/>
\n
"
" <xsd:enumeration value=
\"
group
\"
/>
\n
"
" <xsd:enumeration value=
\"
page
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxSectionKind
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
user-defined
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-type
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-slot
\"
/>
\n
"
" <xsd:enumeration value=
\"
signal
\"
/>
\n
"
" <xsd:enumeration value=
\"
dcop-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
property
\"
/>
\n
"
" <xsd:enumeration value=
\"
event
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-static-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
public-static-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-type
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-slot
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-static-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
protected-static-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-type
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-slot
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-static-func
\"
/>
\n
"
" <xsd:enumeration value=
\"
private-static-attrib
\"
/>
\n
"
" <xsd:enumeration value=
\"
friend
\"
/>
\n
"
" <xsd:enumeration value=
\"
related
\"
/>
\n
"
" <xsd:enumeration value=
\"
define
\"
/>
\n
"
" <xsd:enumeration value=
\"
prototype
\"
/>
\n
"
" <xsd:enumeration value=
\"
typedef
\"
/>
\n
"
" <xsd:enumeration value=
\"
enum
\"
/>
\n
"
" <xsd:enumeration value=
\"
func
\"
/>
\n
"
" <xsd:enumeration value=
\"
var
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxHighlightClass
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:enumeration value=
\"
comment
\"
/>
\n
"
" <xsd:enumeration value=
\"
normal
\"
/>
\n
"
" <xsd:enumeration value=
\"
preprocessor
\"
/>
\n
"
" <xsd:enumeration value=
\"
keyword
\"
/>
\n
"
" <xsd:enumeration value=
\"
keywordtype
\"
/>
\n
"
" <xsd:enumeration value=
\"
keywordflow
\"
/>
\n
"
" <xsd:enumeration value=
\"
stringliteral
\"
/>
\n
"
" <xsd:enumeration value=
\"
charliteral
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
" <xsd:simpleType name=
\"
DoxVersionNumber
\"
>
\n
"
" <xsd:restriction base=
\"
xsd:string
\"
>
\n
"
" <xsd:pattern value=
\"\\
d+
\\
.
\\
d+.*
\"
/>
\n
"
" </xsd:restriction>
\n
"
" </xsd:simpleType>
\n
"
"
\n
"
"
\n
"
"</xsd:schema>
\n
"
"</xsd:schema>
\n
"
"
\n
"
"
\n
"
src/definition.h
View file @
aee36e26
...
@@ -31,7 +31,7 @@ class MemberDef;
...
@@ -31,7 +31,7 @@ class MemberDef;
class
GroupDef
;
class
GroupDef
;
class
GroupList
;
class
GroupList
;
struct
ListItemInfo
;
struct
ListItemInfo
;
class
SectionInfo
;
struct
SectionInfo
;
/*! The common base class of all entity definitions found in the sources. */
/*! The common base class of all entity definitions found in the sources. */
class
Definition
class
Definition
...
...
src/doctokenizer.l
View file @
aee36e26
...
@@ -229,6 +229,29 @@ static void processSection()
...
@@ -229,6 +229,29 @@ static void processSection()
}
}
}
}
static void handleHtmlTag()
{
g_token->name = yytext;
g_token->attribs.clear();
int startNamePos=1;
if (g_token->name.at(1)=='/') startNamePos++;
int attSep=0;
while (attSep<yyleng && !isspace(yytext[attSep]))
{
attSep++;
}
if (attSep!=yyleng) // tag has one or more options
{
parseHtmlAttribs(g_token->name.mid(attSep+1,g_token->name.length()-attSep-2));
g_token->name=g_token->name.mid(startNamePos,attSep-1).lower();
}
else // tag without options, strip brackets
{
g_token->name=g_token->name.mid(startNamePos,g_token->name.length()-startNamePos-1).lower();
}
g_token->endTag = startNamePos==2;
}
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
#undef YY_INPUT
#undef YY_INPUT
...
@@ -255,7 +278,7 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
...
@@ -255,7 +278,7 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
OPTSTARS ("//"{BLANK}*)?"*"*{BLANK}*
OPTSTARS ("//"{BLANK}*)?"*"*{BLANK}*
LISTITEM {BLANK}*{OPTSTARS}"-"("#")?{WS}
LISTITEM {BLANK}*{OPTSTARS}"-"("#")?{WS}
ENDLIST {BLANK}*{OPTSTARS}"."{BLANK}*\n
ENDLIST {BLANK}*{OPTSTARS}"."{BLANK}*\n
ATTRIB {ID}
("="
(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'"><]+))?
ATTRIB {ID}
{WS}*("="{WS}*
(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'"><]+))?
URLCHAR [a-z_A-Z0-9\!\~\:\;\'\$\?\@\&\%\#\.\-\+\/\=]
URLCHAR [a-z_A-Z0-9\!\~\:\;\'\$\?\@\&\%\#\.\-\+\/\=]
URLMASK (([a-z_A-Z][^\>\"\n]*{URLCHAR})|({URLCHAR}+))([({]{URLCHAR}*[)}])?
URLMASK (([a-z_A-Z][^\>\"\n]*{URLCHAR})|({URLCHAR}+))([({]{URLCHAR}*[)}])?
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
...
@@ -283,7 +306,7 @@ WORD1 [^ \t\n\r\\@<>()\[\]:;\?{}&$#,.]+|"{"|"}"|("\""[^"\n]*"\"")
...
@@ -283,7 +306,7 @@ WORD1 [^ \t\n\r\\@<>()\[\]:;\?{}&$#,.]+|"{"|"}"|("\""[^"\n]*"\"")
WORD2 "."|","|"("|")"|"["|"]"|":"|";"|"\?"
WORD2 "."|","|"("|")"|"["|"]"|":"|";"|"\?"
WORD1NQ [^ \t\n\r\\@<>()\[\]:;\?{}&$#,."]+
WORD1NQ [^ \t\n\r\\@<>()\[\]:;\?{}&$#,."]+
WORD2NQ "."|","|"("|")"|"["|"]"|":"|";"|"\?"
WORD2NQ "."|","|"("|")"|"["|"]"|":"|";"|"\?"
HTMLTAG "<"(("/")?){ID}({WS}+{ATTRIB})*">"
HTMLTAG "<"(("/")?){ID}({WS}+{ATTRIB})*
{WS}*
">"
HTMLKEYL "strong"|"center"|"table"|"caption"|"small"|"code"|"dfn"|"var"|"img"|"pre"|"sub"|"sup"|"tr"|"td"|"th"|"ol"|"ul"|"li"|"tt"|"kbd"|"em"|"hr"|"dl"|"dt"|"dd"|"br"|"i"|"a"|"b"|"p"
HTMLKEYL "strong"|"center"|"table"|"caption"|"small"|"code"|"dfn"|"var"|"img"|"pre"|"sub"|"sup"|"tr"|"td"|"th"|"ol"|"ul"|"li"|"tt"|"kbd"|"em"|"hr"|"dl"|"dt"|"dd"|"br"|"i"|"a"|"b"|"p"
HTMLKEYU "STRONG"|"CENTER"|"TABLE"|"CAPTION"|"SMALL"|"CODE"|"DFN"|"VAR"|"IMG"|"PRE"|"SUB"|"SUP"|"TR"|"TD"|"TH"|"OL"|"UL"|"LI"|"TT"|"KBD"|"EM"|"HR"|"DL"|"DT"|"DD"|"BR"|"I"|"A"|"B"|"P"
HTMLKEYU "STRONG"|"CENTER"|"TABLE"|"CAPTION"|"SMALL"|"CODE"|"DFN"|"VAR"|"IMG"|"PRE"|"SUB"|"SUP"|"TR"|"TD"|"TH"|"OL"|"UL"|"LI"|"TT"|"KBD"|"EM"|"HR"|"DL"|"DT"|"DD"|"BR"|"I"|"A"|"B"|"P"
HTMLKEYW {HTMLKEYL}|{HTMLKEYU}
HTMLKEYW {HTMLKEYL}|{HTMLKEYU}
...
@@ -391,25 +414,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
...
@@ -391,25 +414,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
for (int i=value.length()-1;i>=0;i--) unput(value.at(i));
for (int i=value.length()-1;i>=0;i--) unput(value.at(i));
}
}
<St_Para>{HTMLTAG} { /* html tag */
<St_Para>{HTMLTAG} { /* html tag */
g_token->name = yytext;
handleHtmlTag();
g_token->attribs.clear();
int startNamePos=1;
if (g_token->name.at(1)=='/') startNamePos++;
int attSep=0;
while (attSep<yyleng && !isspace(yytext[attSep]))
{
attSep++;
}
if (attSep!=yyleng) // tag has one or more options
{
parseHtmlAttribs(g_token->name.mid(attSep+1,g_token->name.length()-attSep-2));
g_token->name=g_token->name.mid(startNamePos,attSep-1).lower();
}
else // tag without options, strip brackets
{
g_token->name=g_token->name.mid(startNamePos,g_token->name.length()-startNamePos-1).lower();
}
g_token->endTag = startNamePos==2;
return TK_HTMLTAG;
return TK_HTMLTAG;
}
}
<St_Para,St_Text>"&"{ID}";" { /* special symbol */
<St_Para,St_Text>"&"{ID}";" { /* special symbol */
...
@@ -538,6 +543,8 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
...
@@ -538,6 +543,8 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
g_token->name = yytext;
g_token->name = yytext;
return TK_SYMBOL;
return TK_SYMBOL;
}
}
<St_TitleN>{HTMLTAG} {
}
<St_TitleN>{SPCMD1} |
<St_TitleN>{SPCMD1} |
<St_TitleN>{SPCMD2} { /* special command */
<St_TitleN>{SPCMD2} { /* special command */
g_token->name = yytext+1;
g_token->name = yytext+1;
...
...
src/dot.cpp
View file @
aee36e26
...
@@ -612,10 +612,10 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
...
@@ -612,10 +612,10 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
if
(
urlPtr
)
if
(
urlPtr
)
{
{
*
urlPtr
++=
'\0'
;
*
urlPtr
++=
'\0'
;
t
<<
" <link
id=
\"
"
<<
urlPtr
<<
"
\"
"
;
t
<<
" <link
refid=
\"
"
<<
convertToXML
(
urlPtr
)
<<
"
\"
"
;
if
(
*
refPtr
!=
'\0'
)
if
(
*
refPtr
!=
'\0'
)
{
{
t
<<
" external=
\"
"
<<
refPtr
<<
"
\"
"
;
t
<<
" external=
\"
"
<<
convertToXML
(
refPtr
)
<<
"
\"
"
;
}
}
t
<<
"/>"
<<
endl
;
t
<<
"/>"
<<
endl
;
}
}
...
@@ -629,7 +629,7 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
...
@@ -629,7 +629,7 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
for
(;(
childNode
=
nli
.
current
());
++
nli
,
++
eli
)
for
(;(
childNode
=
nli
.
current
());
++
nli
,
++
eli
)
{
{
edgeInfo
=
eli
.
current
();
edgeInfo
=
eli
.
current
();
t
<<
" <childnode id=
\"
"
<<
childNode
->
m_number
<<
"
\"
relation=
\"
"
;
t
<<
" <childnode
ref
id=
\"
"
<<
childNode
->
m_number
<<
"
\"
relation=
\"
"
;
if
(
isClassGraph
)
if
(
isClassGraph
)
{
{
switch
(
edgeInfo
->
m_color
)
switch
(
edgeInfo
->
m_color
)
...
...
src/doxygen.cpp
View file @
aee36e26
...
@@ -235,7 +235,6 @@ static void addRelatedPage(Entry *root)
...
@@ -235,7 +235,6 @@ static void addRelatedPage(Entry *root)
}
}
}
}
static
void
buildGroupListFiltered
(
Entry
*
root
,
bool
additional
)
static
void
buildGroupListFiltered
(
Entry
*
root
,
bool
additional
)
{
{
if
(
root
->
section
==
Entry
::
GROUPDOC_SEC
&&
!
root
->
name
.
isEmpty
())
if
(
root
->
section
==
Entry
::
GROUPDOC_SEC
&&
!
root
->
name
.
isEmpty
())
...
@@ -6783,10 +6782,11 @@ static void readFiles(BufStr &output)
...
@@ -6783,10 +6782,11 @@ static void readFiles(BufStr &output)
int
fileNameSize
=
fileName
.
length
();
int
fileNameSize
=
fileName
.
length
();
bool
multiLineIsBrief
=
Config_getBool
(
"MULTILINE_CPP_IS_BRIEF"
);
//
bool multiLineIsBrief = Config_getBool("MULTILINE_CPP_IS_BRIEF");
BufStr
tempBuf
(
10000
);
BufStr
tempBuf
(
20000
);
BufStr
*
bufPtr
=
multiLineIsBrief
?
&
output
:
&
tempBuf
;
//BufStr *bufPtr = multiLineIsBrief ? &output : &tempBuf;
BufStr
*
bufPtr
=
&
tempBuf
;
// add begin filename marker
// add begin filename marker
bufPtr
->
addChar
(
0x06
);
bufPtr
->
addChar
(
0x06
);
...
@@ -6809,10 +6809,10 @@ static void readFiles(BufStr &output)
...
@@ -6809,10 +6809,10 @@ static void readFiles(BufStr &output)
bufPtr
->
addChar
(
'\n'
);
/* to prevent problems under Windows ? */
bufPtr
->
addChar
(
'\n'
);
/* to prevent problems under Windows ? */
if
(
!
multiLineIsBrief
)
//
if (!multiLineIsBrief)
{
//
{
convertCppComments
(
&
tempBuf
,
&
output
);
convertCppComments
(
&
tempBuf
,
&
output
);
}
//
}
s
=
inputFiles
.
next
();
s
=
inputFiles
.
next
();
//printf("-------> adding new line\n");
//printf("-------> adding new line\n");
...
...
src/entry.h
View file @
aee36e26
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
#include "qtbc.h"
#include "qtbc.h"
#include <qlist.h>
#include <qlist.h>
class
SectionInfo
;
struct
SectionInfo
;
enum
Protection
{
Public
,
Protected
,
Private
,
Package
}
;
enum
Protection
{
Public
,
Protected
,
Private
,
Package
}
;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
enum
Specifier
{
Normal
,
Virtual
,
Pure
}
;
...
...
src/index.xsd
View file @
aee36e26
<?xml version='1.0' encoding='utf-8' ?>
<xsd:schema
xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"
>
<xsd:schema
xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"
>
<xsd:element
name=
"doxygen"
type=
"DoxygenType"
/>
<xsd:element
name=
"doxygen
index
"
type=
"DoxygenType"
/>
<xsd:complexType
name=
"DoxygenType"
>
<xsd:complexType
name=
"DoxygenType"
>
<xsd:sequence>
<xsd:sequence>
...
@@ -47,6 +48,7 @@
...
@@ -47,6 +48,7 @@
<xsd:enumeration
value=
"variable"
/>
<xsd:enumeration
value=
"variable"
/>
<xsd:enumeration
value=
"typedef"
/>
<xsd:enumeration
value=
"typedef"
/>
<xsd:enumeration
value=
"enum"
/>
<xsd:enumeration
value=
"enum"
/>
<xsd:enumeration
value=
"enumvalue"
/>
<xsd:enumeration
value=
"function"
/>
<xsd:enumeration
value=
"function"
/>
<xsd:enumeration
value=
"signal"
/>
<xsd:enumeration
value=
"signal"
/>
<xsd:enumeration
value=
"prototype"
/>
<xsd:enumeration
value=
"prototype"
/>
...
...
src/index_xsd.h
View file @
aee36e26
"<?xml version='1.0' encoding='utf-8' ?>
\n
"
"<xsd:schema xmlns:xsd=
\"
http://www.w3.org/2001/XMLSchema
\"
>
\n
"
"<xsd:schema xmlns:xsd=
\"
http://www.w3.org/2001/XMLSchema
\"
>
\n
"
" <xsd:element name=
\"
doxygen
\"
type=
\"
DoxygenType
\"
/>
\n
"
" <xsd:element name=
\"
doxygen
index
\"
type=
\"
DoxygenType
\"
/>
\n
"
"
\n
"
"
\n
"
" <xsd:complexType name=
\"
DoxygenType
\"
>
\n
"
" <xsd:complexType name=
\"
DoxygenType
\"
>
\n
"
" <xsd:sequence>
\n
"
" <xsd:sequence>
\n
"
...
@@ -47,6 +48,7 @@
...
@@ -47,6 +48,7 @@
" <xsd:enumeration value=
\"
variable
\"
/>
\n
"
" <xsd:enumeration value=
\"
variable
\"
/>
\n
"
" <xsd:enumeration value=
\"
typedef
\"
/>
\n
"
" <xsd:enumeration value=
\"
typedef
\"
/>
\n
"
" <xsd:enumeration value=
\"
enum
\"
/>
\n
"
" <xsd:enumeration value=
\"
enum
\"
/>
\n
"
" <xsd:enumeration value=
\"
enumvalue
\"
/>
\n
"
" <xsd:enumeration value=
\"
function
\"
/>
\n
"
" <xsd:enumeration value=
\"
function
\"
/>
\n
"
" <xsd:enumeration value=
\"
signal
\"
/>
\n
"
" <xsd:enumeration value=
\"
signal
\"
/>
\n
"
" <xsd:enumeration value=
\"
prototype
\"
/>
\n
"
" <xsd:enumeration value=
\"
prototype
\"
/>
\n
"
...
...
src/memberdef.cpp
View file @
aee36e26
...
@@ -500,18 +500,10 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *cd,NamespaceDef *nd,
...
@@ -500,18 +500,10 @@ void MemberDef::writeLink(OutputList &ol,ClassDef *cd,NamespaceDef *nd,
else
// local link
else
// local link
{
{
QCString
sep
=
Config_getBool
(
"OPTIMIZE_OUTPUT_JAVA"
)
?
"."
:
"::"
;
QCString
sep
=
Config_getBool
(
"OPTIMIZE_OUTPUT_JAVA"
)
?
"."
:
"::"
;
if
(
cd
)
QCString
n
=
name
();
{
if
(
classDef
&&
gd
)
n
.
prepend
(
classDef
->
name
()
+
sep
);
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
cd
->
name
()
+
sep
+
name
());
else
if
(
nspace
&&
gd
)
n
.
prepend
(
nspace
->
name
()
+
sep
);
}
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
n
);
else
if
(
nd
)
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
nd
->
name
()
+
sep
+
name
());
}
else
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
name
());
}
}
}
}
}
...
...
src/scanner.l
View file @
aee36e26
...
@@ -4675,6 +4675,7 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
...
@@ -4675,6 +4675,7 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
<Doc,ClassDoc,PageDoc,ExampleDoc,AfterDoc>"\\"[a-z_A-Z][a-z_A-Z0-9]*[\\] { // directory type of text
<Doc,ClassDoc,PageDoc,ExampleDoc,AfterDoc>"\\"[a-z_A-Z][a-z_A-Z0-9]*[\\] { // directory type of text
current->doc+=yytext;
current->doc+=yytext;
}
}
/*
<SkipSection>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
<SkipSection>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
QCString *pValue=Doxygen::aliasDict[yytext+1];
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
if (pValue)
...
@@ -4686,6 +4687,7 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
...
@@ -4686,6 +4687,7 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
}
}
}
}
}
}
*/
<Doc,ClassDoc,PageDoc,ExampleDoc,AfterDoc,CopyArgComment>{CMD}{CMD}[a-z_A-Z][a-z_A-Z0-9]* { /* escaped command */
<Doc,ClassDoc,PageDoc,ExampleDoc,AfterDoc,CopyArgComment>{CMD}{CMD}[a-z_A-Z][a-z_A-Z0-9]* { /* escaped command */
if (YY_START==CopyArgComment)
if (YY_START==CopyArgComment)
fullArgString+=yytext;
fullArgString+=yytext;
...
@@ -4731,25 +4733,25 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
...
@@ -4731,25 +4733,25 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
}
}
if (!handled)
if (!handled)
{
{
QCString *pValue=Doxygen::aliasDict[yytext+1];
//
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
//
if (pValue)
{
//
{
int i,l=pValue->length();
//
int i,l=pValue->length();
char c;
//
char c;
for (i=l-1;i>=0;i--)
//
for (i=l-1;i>=0;i--)
{
//
{
c=pValue->at(i);
//
c=pValue->at(i);
unput(c);
//
unput(c);
if (c=='\n') yyLineNr--;
//
if (c=='\n') yyLineNr--;
}
//
}
}
//
}
else
//
else
{
//
{
if (YY_START==CopyArgComment)
if (YY_START==CopyArgComment)
fullArgString+=yytext;
fullArgString+=yytext;
else
else
current->doc+=yytext;
current->doc+=yytext;
}
//
}
}
}
}
}
<JavaDoc,LineDoc,ClassDocBrief,AfterDocBrief,AfterDocLine>"\\"[a-z_A-Z][a-z_A-Z0-9]*[\\] { // directory type of text
<JavaDoc,LineDoc,ClassDocBrief,AfterDocBrief,AfterDocLine>"\\"[a-z_A-Z][a-z_A-Z0-9]*[\\] { // directory type of text
...
@@ -4763,22 +4765,22 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
...
@@ -4763,22 +4765,22 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
current->brief+=yytext;
current->brief+=yytext;
}
}
<JavaDoc,LineDoc,ClassDocBrief,AfterDocBrief,AfterDocLine,CopyArgCommentLine>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
<JavaDoc,LineDoc,ClassDocBrief,AfterDocBrief,AfterDocLine,CopyArgCommentLine>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
QCString *pValue=Doxygen::aliasDict[yytext+1];
//
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
//
if (pValue)
{
//
{
int i,l=pValue->length();
//
int i,l=pValue->length();
for (i=l-1;i>=0;i--)
//
for (i=l-1;i>=0;i--)
{
//
{
unput(pValue->at(i));
//
unput(pValue->at(i));
}
//
}
}
//
}
else
//
else
{
//
{
if (YY_START==CopyArgCommentLine)
if (YY_START==CopyArgCommentLine)
fullArgString+=yytext;
fullArgString+=yytext;
else
else
current->brief+=yytext;
current->brief+=yytext;
}
//
}
}
}
<DefLineDoc,LineDoc,ClassDoc,PageDoc,ExampleDoc,Doc>"/*"|"//" { current->doc += yytext; }
<DefLineDoc,LineDoc,ClassDoc,PageDoc,ExampleDoc,Doc>"/*"|"//" { current->doc += yytext; }
<SkipCxxComment>.*/\n {
<SkipCxxComment>.*/\n {
...
...
src/translator_jp.h
View file @
aee36e26
...
@@ -64,7 +64,7 @@ class TranslatorJapaneseEn : public TranslatorEnglish
...
@@ -64,7 +64,7 @@ class TranslatorJapaneseEn : public TranslatorEnglish
}
}
};
};
class
TranslatorJapanese
:
public
Translator
Adapter_1_3
class
TranslatorJapanese
:
public
Translator
English
{
{
private
:
private
:
/*! The decode() can change euc into sjis */
/*! The decode() can change euc into sjis */
...
@@ -1394,7 +1394,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
...
@@ -1394,7 +1394,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
*/
*/
virtual
QCString
trDeprecatedList
()
virtual
QCString
trDeprecatedList
()
{
{
return
"非推奨一覧"
;
return
decode
(
"非推奨一覧"
)
;
}
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
...
@@ -1406,13 +1406,68 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
...
@@ -1406,13 +1406,68 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
*/
*/
virtual
QCString
trEvents
()
virtual
QCString
trEvents
()
{
{
return
"イベント"
;
return
decode
(
"イベント"
)
;
}
}
/*! Header used for the documentation section of a class' events. */
/*! Header used for the documentation section of a class' events. */
virtual
QCString
trEventDocumentation
()
virtual
QCString
trEventDocumentation
()
{
{
return
"イベントの解説"
;
return
decode
(
"イベントの解説"
)
;
}
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3
//////////////////////////////////////////////////////////////////////////
/*! Used as a heading for a list of Java class types with package scope.
*/
virtual
QCString
trPackageTypes
()
{
return
decode
(
"パッケージ内の型定義"
);
}
/*! Used as a heading for a list of Java class functions with package
* scope.
*/
virtual
QCString
trPackageMembers
()
{
return
decode
(
"関数"
);
}
/*! Used as a heading for a list of static Java class functions with
* package scope.
*/
virtual
QCString
trStaticPackageMembers
()
{
return
decode
(
"スタティック関数"
);
}
/*! Used as a heading for a list of Java class variables with package
* scope.
*/
virtual
QCString
trPackageAttribs
()
{
return
decode
(
"変数"
);
}
/*! Used as a heading for a list of static Java class variables with
* package scope.
*/
virtual
QCString
trStaticPackageAttribs
()
{
return
decode
(
"スタティック変数"
);
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3.1
//////////////////////////////////////////////////////////////////////////
/*! Used in the quick index of a class/file/namespace member list page
* to link to the unfiltered list of all members.
*/
virtual
QCString
trAll
()
{
return
decode
(
"全て"
);
}
/*! Put in front of the call graph for a function. */
virtual
QCString
trCallGraph
()
{
return
decode
(
"関数の呼び出しグラフ:"
);
}
};
};
#endif
#endif
src/translator_tw.h
View file @
aee36e26
...
@@ -13,6 +13,8 @@
...
@@ -13,6 +13,8 @@
* Documents produced by Doxygen are derivative works derived from the
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
* input used in their production; they are not affected by this license.
*
*
* The translation into Chinesetraditional was provided by
* Daniel YC Lin (daniel@twpda.com) since v1.2.16
*/
*/
#ifndef TRANSLATOR_TW_H
#ifndef TRANSLATOR_TW_H
...
@@ -1373,6 +1375,103 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
...
@@ -1373,6 +1375,103 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
return
"實作於 "
+
trWriteList
(
numEntries
)
+
"."
;
return
"實作於 "
+
trWriteList
(
numEntries
)
+
"."
;
}
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.16
//////////////////////////////////////////////////////////////////////////
/*! used in RTF documentation as a heading for the Table
* of Contents.
*/
virtual
QCString
trRTFTableOfContents
()
{
return
"目錄"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.17
//////////////////////////////////////////////////////////////////////////
/*! Used as the header of the list of item that have been
* flagged deprecated
*/
virtual
QCString
trDeprecatedList
()
{
return
"過時項目(Deprecated) 列表"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.18
//////////////////////////////////////////////////////////////////////////
/*! Used as a header for declaration section of the events found in
* a C# program
*/
virtual
QCString
trEvents
()
{
return
"Events"
;
}
/*! Header used for the documentation section of a class' events. */
virtual
QCString
trEventDocumentation
()
{
return
"Event 文件"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3
//////////////////////////////////////////////////////////////////////////
/*! Used as a heading for a list of Java class types with package scope.
*/
virtual
QCString
trPackageTypes
()
{
return
"Package 型別"
;
}
/*! Used as a heading for a list of Java class functions with package
* scope.
*/
virtual
QCString
trPackageMembers
()
{
return
"Package 函數列表"
;
}
/*! Used as a heading for a list of static Java class functions with
* package scope.
*/
virtual
QCString
trStaticPackageMembers
()
{
return
"靜態 Package 函數列表"
;
}
/*! Used as a heading for a list of Java class variables with package
* scope.
*/
virtual
QCString
trPackageAttribs
()
{
return
"Package 屬性"
;
}
/*! Used as a heading for a list of static Java class variables with
* package scope.
*/
virtual
QCString
trStaticPackageAttribs
()
{
return
"靜態 Package 屬性"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.3.1
//////////////////////////////////////////////////////////////////////////
/*! Used in the quick index of a class/file/namespace member list page
* to link to the unfiltered list of all members.
*/
virtual
QCString
trAll
()
{
return
"全部"
;
}
/*! Put in front of the call graph for a function. */
virtual
QCString
trCallGraph
()
{
return
"這是此函數的引用函數圖:"
;
}
};
};
#endif
#endif
src/util.h
View file @
aee36e26
...
@@ -48,7 +48,7 @@ struct TagInfo;
...
@@ -48,7 +48,7 @@ struct TagInfo;
class
MemberNameInfoSDict
;
class
MemberNameInfoSDict
;
struct
ListItemInfo
;
struct
ListItemInfo
;
class
PageDef
;
class
PageDef
;
class
SectionInfo
;
struct
SectionInfo
;
//--------------------------------------------------------------------
//--------------------------------------------------------------------
...
...
src/xmlgen.cpp
View file @
aee36e26
...
@@ -53,6 +53,12 @@ static const char index_xsd[] =
...
@@ -53,6 +53,12 @@ static const char index_xsd[] =
#include "index_xsd.h"
#include "index_xsd.h"
;
;
//------------------
//
static
const
char
compound_xsd
[]
=
#include "compound_xsd.h"
;
//------------------
//------------------
...
@@ -82,22 +88,28 @@ inline void writeXMLCodeString(QTextStream &t,const char *s)
...
@@ -82,22 +88,28 @@ inline void writeXMLCodeString(QTextStream &t,const char *s)
static
void
writeXMLHeader
(
QTextStream
&
t
)
static
void
writeXMLHeader
(
QTextStream
&
t
)
{
{
QCString
dtdName
=
Config_getString
(
"XML_DTD"
);
//QCString dtdName = Config_getString("XML_DTD");
QCString
schemaName
=
Config_getString
(
"XML_SCHEMA"
);
//QCString schemaName = Config_getString("XML_SCHEMA");
//t << "<?xml version='1.0' encoding='" << theTranslator->idLanguageCharset()
// << "' standalone='";
//if (dtdName.isEmpty() && schemaName.isEmpty()) t << "yes"; else t << "no";
//t << "'?>" << endl;
//if (!dtdName.isEmpty())
//{
// t << "<!DOCTYPE doxygen SYSTEM \"doxygen.dtd\">" << endl;
//}
//t << "<doxygen ";
//if (!schemaName.isEmpty())
//{
// t << "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" ";
// t << "xsi:noNamespaceSchemaLocation=\"doxygen.xsd\" ";
//}
//t << "version=\"" << versionString << "\">" << endl;
t
<<
"<?xml version='1.0' encoding='"
<<
theTranslator
->
idLanguageCharset
()
t
<<
"<?xml version='1.0' encoding='"
<<
theTranslator
->
idLanguageCharset
()
<<
"' standalone='"
;
<<
"' standalone='no'?>"
<<
endl
;;
if
(
dtdName
.
isEmpty
()
&&
schemaName
.
isEmpty
())
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"<doxygen xmlns:xsi=
\"
http://www.w3.org/2001/XMLSchema-instance
\"
"
;
t
<<
"'?>"
<<
endl
;
t
<<
"xsi:noNamespaceSchemaLocation=
\"
compound.xsd
\"
"
;
if
(
!
dtdName
.
isEmpty
())
{
t
<<
"<!DOCTYPE doxygen SYSTEM
\"
doxygen.dtd
\"
>"
<<
endl
;
}
t
<<
"<doxygen "
;
if
(
!
schemaName
.
isEmpty
())
{
t
<<
"xmlns:xsi=
\"
http://www.w3.org/2001/XMLSchema-instance
\"
"
;
t
<<
"xsi:noNamespaceSchemaLocation=
\"
doxygen.xsd
\"
"
;
}
t
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
t
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
}
}
...
@@ -422,7 +434,7 @@ static void writeMemberReference(QTextStream &t,Definition *def,MemberDef *rmd,c
...
@@ -422,7 +434,7 @@ static void writeMemberReference(QTextStream &t,Definition *def,MemberDef *rmd,c
{
{
name
.
prepend
(
scope
+
"::"
);
name
.
prepend
(
scope
+
"::"
);
}
}
t
<<
" <"
<<
tagName
<<
" id=
\"
"
;
t
<<
" <"
<<
tagName
<<
"
ref
id=
\"
"
;
t
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
"
;
t
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
"
;
if
(
rmd
->
getStartBodyLine
()
!=-
1
&&
rmd
->
getBodyDef
())
if
(
rmd
->
getStartBodyLine
()
!=-
1
&&
rmd
->
getBodyDef
())
{
{
...
@@ -529,7 +541,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
...
@@ -529,7 +541,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
t
<<
"
\"
virt=
\"
"
;
t
<<
"
\"
virt=
\"
"
;
switch
(
md
->
virtualness
())
switch
(
md
->
virtualness
())
{
{
case
Normal
:
t
<<
"no
rmal"
;
break
;
case
Normal
:
t
<<
"no
n-virtual"
;
break
;
case
Virtual
:
t
<<
"virtual"
;
break
;
case
Virtual
:
t
<<
"virtual"
;
break
;
case
Pure
:
t
<<
"pure-virtual"
;
break
;
case
Pure
:
t
<<
"pure-virtual"
;
break
;
default:
ASSERT
(
0
);
default:
ASSERT
(
0
);
...
@@ -572,9 +584,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
...
@@ -572,9 +584,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
MemberDef
*
rmd
=
md
->
reimplements
();
MemberDef
*
rmd
=
md
->
reimplements
();
if
(
rmd
)
if
(
rmd
)
{
{
t
<<
" <reimplements id=
\"
"
t
<<
" <reimplements
ref
id=
\"
"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplements>"
;
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplements>"
<<
endl
;
}
}
MemberList
*
rbml
=
md
->
reimplementedBy
();
MemberList
*
rbml
=
md
->
reimplementedBy
();
if
(
rbml
)
if
(
rbml
)
...
@@ -582,9 +594,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
...
@@ -582,9 +594,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
MemberListIterator
mli
(
*
rbml
);
MemberListIterator
mli
(
*
rbml
);
for
(
mli
.
toFirst
();(
rmd
=
mli
.
current
());
++
mli
)
for
(
mli
.
toFirst
();(
rmd
=
mli
.
current
());
++
mli
)
{
{
t
<<
" <reimplementedby id=
\"
"
t
<<
" <reimplementedby
ref
id=
\"
"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplementedby>"
;
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplementedby>"
<<
endl
;
}
}
}
}
...
@@ -919,18 +931,6 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
...
@@ -919,18 +931,6 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
}
}
}
}
ClassSDict
*
cl
=
cd
->
getInnerClasses
();
if
(
cl
)
{
ClassSDict
::
Iterator
cli
(
*
cl
);
ClassDef
*
cd
;
for
(
cli
.
toFirst
();(
cd
=
cli
.
current
());
++
cli
)
{
t
<<
" <innerclass refid=
\"
"
<<
cd
->
getOutputFileBase
()
<<
"
\"
>"
<<
convertToXML
(
cd
->
name
())
<<
"</innerclass>"
<<
endl
;
}
}
IncludeInfo
*
ii
=
cd
->
includeInfo
();
IncludeInfo
*
ii
=
cd
->
includeInfo
();
if
(
ii
)
if
(
ii
)
{
{
...
@@ -941,7 +941,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
...
@@ -941,7 +941,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
t
<<
" <includes"
;
t
<<
" <includes"
;
if
(
ii
->
fileDef
&&
!
ii
->
fileDef
->
isReference
())
// TODO: support external references
if
(
ii
->
fileDef
&&
!
ii
->
fileDef
->
isReference
())
// TODO: support external references
{
{
t
<<
" id=
\"
"
<<
ii
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
t
<<
"
ref
id=
\"
"
<<
ii
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
}
}
t
<<
" local=
\"
"
<<
(
ii
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
" local=
\"
"
<<
(
ii
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
nm
;
t
<<
nm
;
...
@@ -949,8 +949,20 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
...
@@ -949,8 +949,20 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
}
}
}
}
ClassSDict
*
cl
=
cd
->
getInnerClasses
();
if
(
cl
)
{
ClassSDict
::
Iterator
cli
(
*
cl
);
ClassDef
*
cd
;
for
(
cli
.
toFirst
();(
cd
=
cli
.
current
());
++
cli
)
{
t
<<
" <innerclass refid=
\"
"
<<
cd
->
getOutputFileBase
()
<<
"
\"
>"
<<
convertToXML
(
cd
->
name
())
<<
"</innerclass>"
<<
endl
;
}
}
writeTemplateList
(
cd
,
t
);
writeTemplateList
(
cd
,
t
);
writeListOfAllMembers
(
cd
,
t
);
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
memberGroupSDict
);
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
memberGroupSDict
);
MemberGroup
*
mg
;
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
...
@@ -1014,6 +1026,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
...
@@ -1014,6 +1026,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
<<
cd
->
getEndBodyLine
()
<<
"
\"
"
;
<<
cd
->
getEndBodyLine
()
<<
"
\"
"
;
}
}
t
<<
"/>"
<<
endl
;
t
<<
"/>"
<<
endl
;
writeListOfAllMembers
(
cd
,
t
);
t
<<
" </compounddef>"
<<
endl
;
t
<<
" </compounddef>"
<<
endl
;
t
<<
"</doxygen>"
<<
endl
;
t
<<
"</doxygen>"
<<
endl
;
...
@@ -1153,7 +1166,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
...
@@ -1153,7 +1166,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
t
<<
" <includes"
;
t
<<
" <includes"
;
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
{
{
t
<<
" id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
t
<<
"
ref
id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
}
}
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
inc
->
includeName
;
t
<<
inc
->
includeName
;
...
@@ -1166,7 +1179,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
...
@@ -1166,7 +1179,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
t
<<
" <includedby"
;
t
<<
" <includedby"
;
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
if
(
inc
->
fileDef
&&
!
inc
->
fileDef
->
isReference
())
// TODO: support external references
{
{
t
<<
" id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
t
<<
"
ref
id=
\"
"
<<
inc
->
fileDef
->
getOutputFileBase
()
<<
"
\"
"
;
}
}
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
" local=
\"
"
<<
(
inc
->
local
?
"yes"
:
"no"
)
<<
"
\"
>"
;
t
<<
inc
->
includeName
;
t
<<
inc
->
includeName
;
...
@@ -1466,6 +1479,16 @@ void generateXML()
...
@@ -1466,6 +1479,16 @@ void generateXML()
f
.
writeBlock
(
index_xsd
,
strlen
(
index_xsd
));
f
.
writeBlock
(
index_xsd
,
strlen
(
index_xsd
));
f
.
close
();
f
.
close
();
fileName
=
outputDirectory
+
"/compound.xsd"
;
f
.
setName
(
fileName
);
if
(
!
f
.
open
(
IO_WriteOnly
))
{
err
(
"Cannot open file %s for writing!
\n
"
,
fileName
.
data
());
return
;
}
f
.
writeBlock
(
compound_xsd
,
strlen
(
compound_xsd
));
f
.
close
();
fileName
=
outputDirectory
+
"/index.xml"
;
fileName
=
outputDirectory
+
"/index.xml"
;
f
.
setName
(
fileName
);
f
.
setName
(
fileName
);
if
(
!
f
.
open
(
IO_WriteOnly
))
if
(
!
f
.
open
(
IO_WriteOnly
))
...
@@ -1479,7 +1502,7 @@ void generateXML()
...
@@ -1479,7 +1502,7 @@ void generateXML()
// write index header
// write index header
t
<<
"<?xml version='1.0' encoding='"
<<
theTranslator
->
idLanguageCharset
()
t
<<
"<?xml version='1.0' encoding='"
<<
theTranslator
->
idLanguageCharset
()
<<
"' standalone='no'?>"
<<
endl
;;
<<
"' standalone='no'?>"
<<
endl
;;
t
<<
"<doxygen xmlns:xsi=
\"
http://www.w3.org/2001/XMLSchema-instance
\"
"
;
t
<<
"<doxygen
index
xmlns:xsi=
\"
http://www.w3.org/2001/XMLSchema-instance
\"
"
;
t
<<
"xsi:noNamespaceSchemaLocation=
\"
index.xsd
\"
"
;
t
<<
"xsi:noNamespaceSchemaLocation=
\"
index.xsd
\"
"
;
t
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
t
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
...
@@ -1487,12 +1510,14 @@ void generateXML()
...
@@ -1487,12 +1510,14 @@ void generateXML()
ClassDef
*
cd
;
ClassDef
*
cd
;
for
(
cli
.
toFirst
();(
cd
=
cli
.
current
());
++
cli
)
for
(
cli
.
toFirst
();(
cd
=
cli
.
current
());
++
cli
)
{
{
msg
(
"Generating XML output for class %s
\n
"
,
cd
->
name
().
data
());
generateXMLForClass
(
cd
,
t
);
generateXMLForClass
(
cd
,
t
);
}
}
NamespaceSDict
::
Iterator
nli
(
Doxygen
::
namespaceSDict
);
NamespaceSDict
::
Iterator
nli
(
Doxygen
::
namespaceSDict
);
NamespaceDef
*
nd
;
NamespaceDef
*
nd
;
for
(
nli
.
toFirst
();(
nd
=
nli
.
current
());
++
nli
)
for
(
nli
.
toFirst
();(
nd
=
nli
.
current
());
++
nli
)
{
{
msg
(
"Generating XML output for namespace %s
\n
"
,
nd
->
name
().
data
());
generateXMLForNamespace
(
nd
,
t
);
generateXMLForNamespace
(
nd
,
t
);
}
}
FileNameListIterator
fnli
(
Doxygen
::
inputNameList
);
FileNameListIterator
fnli
(
Doxygen
::
inputNameList
);
...
@@ -1503,6 +1528,7 @@ void generateXML()
...
@@ -1503,6 +1528,7 @@ void generateXML()
FileDef
*
fd
;
FileDef
*
fd
;
for
(;(
fd
=
fni
.
current
());
++
fni
)
for
(;(
fd
=
fni
.
current
());
++
fni
)
{
{
msg
(
"Generating XML output for file %s
\n
"
,
fd
->
name
().
data
());
generateXMLForFile
(
fd
,
t
);
generateXMLForFile
(
fd
,
t
);
}
}
}
}
...
@@ -1510,21 +1536,24 @@ void generateXML()
...
@@ -1510,21 +1536,24 @@ void generateXML()
GroupDef
*
gd
;
GroupDef
*
gd
;
for
(;(
gd
=
gli
.
current
());
++
gli
)
for
(;(
gd
=
gli
.
current
());
++
gli
)
{
{
msg
(
"Generating XML output for group %s
\n
"
,
gd
->
name
().
data
());
generateXMLForGroup
(
gd
,
t
);
generateXMLForGroup
(
gd
,
t
);
}
}
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageDef
*
pd
=
0
;
PageDef
*
pd
=
0
;
for
(
pdi
.
toFirst
();(
pd
=
pdi
.
current
());
++
pdi
)
for
(
pdi
.
toFirst
();(
pd
=
pdi
.
current
());
++
pdi
)
{
{
msg
(
"Generating XML output for page %s
\n
"
,
pd
->
name
().
data
());
generateXMLForPage
(
pd
,
t
);
generateXMLForPage
(
pd
,
t
);
}
}
if
(
Doxygen
::
mainPage
)
if
(
Doxygen
::
mainPage
)
{
{
msg
(
"Generating XML output for the main page
\n
"
);
generateXMLForPage
(
Doxygen
::
mainPage
,
t
);
generateXMLForPage
(
Doxygen
::
mainPage
,
t
);
}
}
//t << " </compoundlist>" << endl;
//t << " </compoundlist>" << endl;
t
<<
"</doxygen>"
<<
endl
;
t
<<
"</doxygen
index
>"
<<
endl
;
}
}
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