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
Hide 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
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
HAVE_DOT =
YES
HAVE_DOT =
NO
CLASS_GRAPH = YES
COLLABORATION_GRAPH = 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
(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.
...
...
@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
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
Wang Weihan: wangweihan@capinfo.com.cn
ChineseTraditional
Daniel YC Lin: daniel@twpda.com
Gary Lee: garylee@ecosine.com.tw
Croatian
...
...
packages/rpm/doxygen.spec
View file @
aee36e26
Summary: A documentation system for C/C++.
Name: doxygen
Version: 1.3.2_200307
08
Version: 1.3.2_200307
17
Release: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
...
...
src/commentcnv.l
View file @
aee36e26
...
...
@@ -26,12 +26,15 @@
#include "debug.h"
#include "message.h"
#include "config.h"
#include "doxygen.h"
static BufStr *g_inBuf;
static BufStr *g_outBuf;
static int g_inBufPos;
static int g_col;
static int g_blockHeadCol;
static bool g_mlBrief;
static int g_readLineCtx;
static void replaceCommentMarker(const char *s,int len)
{
...
...
@@ -105,18 +108,7 @@ static int yyread(char *buf,int max_size)
return bytesToCopy;
}
#define replaceComment(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); \
} \
void replaceComment(int offset);
%}
...
...
@@ -127,6 +119,7 @@ static int yyread(char *buf,int max_size)
%x SComment
%x CComment
%x Verbatim
%x ReadLine
%%
...
...
@@ -141,6 +134,7 @@ static int yyread(char *buf,int max_size)
copyToOutput(yytext,yyleng);
}
<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;
if (yytext[2]=='/')
{
...
...
@@ -152,14 +146,17 @@ static int yyread(char *buf,int max_size)
BEGIN(SComment);
}
<Scan>"//##Documentation".*/\n { /* Start of Rational Rose ANSI C++ comment block */
if (g_mlBrief) REJECT;
int i=17; //=strlen("//##Documentation");
g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
BEGIN(SComment);
}
<Scan>"//".*\n { /* one line C++ comment */
<Scan>"//"
/
.*\n { /* one line C++ comment */
copyToOutput(yytext,yyleng);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<Scan>"/*" { /* start of a C comment */
copyToOutput(yytext,yyleng);
...
...
@@ -198,7 +195,7 @@ static int yyread(char *buf,int max_size)
<SkipString>\n { /* new line inside string (illegal for some compilers) */
copyToOutput(yytext,yyleng);
}
<CComment>[^*\n]* { /* anything that is not a '*' */
<CComment>[^
\\@
*\n]* { /* anything that is not a '*' */
copyToOutput(yytext,yyleng);
}
<CComment>"*"+[^*/\n]* { /* stars without slashes */
...
...
@@ -211,44 +208,116 @@ static int yyread(char *buf,int max_size)
copyToOutput(yytext,yyleng);
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 {
replaceComment(0);
}
<SComment>\n[ \t]*"///"[\/]*/\n {
replaceComment(1);
}
<SComment>^[ \t]*"///"[^\/\n]
.*/
\n {
<SComment>^[ \t]*"///"[^\/\n]
/.*
\n {
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>\n[ \t]*"///"[^\/\n]
.*/
\n {
<SComment>\n[ \t]*"///"[^\/\n]
/.*
\n {
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>^[ \t]*"//!"
.*/
\n {
<SComment>^[ \t]*"//!"
/.*
\n {
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>\n[ \t]*"//!"
.*/
\n {
<SComment>\n[ \t]*"//!"
/.*
\n {
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>^[ \t]*"//##"
.*/
\n {
<SComment>^[ \t]*"//##"
/.*
\n {
replaceComment(0);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>\n[ \t]*"//##"
.*/
\n {
<SComment>\n[ \t]*"//##"
/.*
\n {
replaceComment(1);
g_readLineCtx=YY_START;
BEGIN(ReadLine);
}
<SComment>\n { /* end of special comment */
copyToOutput(" */",3);
copyToOutput(yytext,yyleng);
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)
{
g_inBuf = inBuf;
g_outBuf = outBuf;
g_inBufPos = 0;
g_col = 0;
g_mlBrief = Config_getBool("MULTILINE_CPP_IS_BRIEF");
BEGIN(Scan);
yylex();
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:element
name=
"doxygen"
type=
"DoxygenType"
/>
<!-- Complex types -->
<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:element
name=
"codeline"
type=
"codelineType"
maxOccurs=
"unbounded"
/>
</xsd:sequence>
<xsd:attribute
name=
"version"
type=
"xsd:string"
use=
"required"
/>
</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>
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:element name=
\"
doxygen
\"
type=
\"
DoxygenType
\"
/>
\n
"
"
\n
"
" <!-- Complex types -->
\n
"
"
\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:element name=
\"
codeline
\"
type=
\"
codelineType
\"
maxOccurs=
\"
unbounded
\"
/>
\n
"
" </xsd:sequence>
\n
"
" <xsd:attribute name=
\"
version
\"
type=
\"
xsd:string
\"
use=
\"
required
\"
/>
\n
"
" </xsd:complexType>
\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
"
"
\n
"
src/definition.h
View file @
aee36e26
...
...
@@ -31,7 +31,7 @@ class MemberDef;
class
GroupDef
;
class
GroupList
;
struct
ListItemInfo
;
class
SectionInfo
;
struct
SectionInfo
;
/*! The common base class of all entity definitions found in the sources. */
class
Definition
...
...
src/doctokenizer.l
View file @
aee36e26
...
...
@@ -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
...
...
@@ -255,7 +278,7 @@ ID [a-z_A-Z][a-z_A-Z0-9]*
OPTSTARS ("//"{BLANK}*)?"*"*{BLANK}*
LISTITEM {BLANK}*{OPTSTARS}"-"("#")?{WS}
ENDLIST {BLANK}*{OPTSTARS}"."{BLANK}*\n
ATTRIB {ID}
("="
(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'"><]+))?
ATTRIB {ID}
{WS}*("="{WS}*
(("\""[^\"]*"\"")|("'"[^\']*"'")|[^ \t\r\n'"><]+))?
URLCHAR [a-z_A-Z0-9\!\~\:\;\'\$\?\@\&\%\#\.\-\+\/\=]
URLMASK (([a-z_A-Z][^\>\"\n]*{URLCHAR})|({URLCHAR}+))([({]{URLCHAR}*[)}])?
FILESCHAR [a-z_A-Z0-9\\:\\\/\-\+]
...
...
@@ -283,7 +306,7 @@ WORD1 [^ \t\n\r\\@<>()\[\]:;\?{}&$#,.]+|"{"|"}"|("\""[^"\n]*"\"")
WORD2 "."|","|"("|")"|"["|"]"|":"|";"|"\?"
WORD1NQ [^ \t\n\r\\@<>()\[\]:;\?{}&$#,."]+
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"
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}
...
...
@@ -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));
}
<St_Para>{HTMLTAG} { /* html tag */
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;
handleHtmlTag();
return TK_HTMLTAG;
}
<St_Para,St_Text>"&"{ID}";" { /* special symbol */
...
...
@@ -538,6 +543,8 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
g_token->name = yytext;
return TK_SYMBOL;
}
<St_TitleN>{HTMLTAG} {
}
<St_TitleN>{SPCMD1} |
<St_TitleN>{SPCMD2} { /* special command */
g_token->name = yytext+1;
...
...
src/dot.cpp
View file @
aee36e26
...
...
@@ -612,10 +612,10 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
if
(
urlPtr
)
{
*
urlPtr
++=
'\0'
;
t
<<
" <link
id=
\"
"
<<
urlPtr
<<
"
\"
"
;
t
<<
" <link
refid=
\"
"
<<
convertToXML
(
urlPtr
)
<<
"
\"
"
;
if
(
*
refPtr
!=
'\0'
)
{
t
<<
" external=
\"
"
<<
refPtr
<<
"
\"
"
;
t
<<
" external=
\"
"
<<
convertToXML
(
refPtr
)
<<
"
\"
"
;
}
t
<<
"/>"
<<
endl
;
}
...
...
@@ -629,7 +629,7 @@ void DotNode::writeXML(QTextStream &t,bool isClassGraph)
for
(;(
childNode
=
nli
.
current
());
++
nli
,
++
eli
)
{
edgeInfo
=
eli
.
current
();
t
<<
" <childnode id=
\"
"
<<
childNode
->
m_number
<<
"
\"
relation=
\"
"
;
t
<<
" <childnode
ref
id=
\"
"
<<
childNode
->
m_number
<<
"
\"
relation=
\"
"
;
if
(
isClassGraph
)
{
switch
(
edgeInfo
->
m_color
)
...
...
src/doxygen.cpp
View file @
aee36e26
...
...
@@ -235,7 +235,6 @@ static void addRelatedPage(Entry *root)
}
}
static
void
buildGroupListFiltered
(
Entry
*
root
,
bool
additional
)
{
if
(
root
->
section
==
Entry
::
GROUPDOC_SEC
&&
!
root
->
name
.
isEmpty
())
...
...
@@ -6783,10 +6782,11 @@ static void readFiles(BufStr &output)
int
fileNameSize
=
fileName
.
length
();
bool
multiLineIsBrief
=
Config_getBool
(
"MULTILINE_CPP_IS_BRIEF"
);
//
bool multiLineIsBrief = Config_getBool("MULTILINE_CPP_IS_BRIEF");
BufStr
tempBuf
(
10000
);
BufStr
*
bufPtr
=
multiLineIsBrief
?
&
output
:
&
tempBuf
;
BufStr
tempBuf
(
20000
);
//BufStr *bufPtr = multiLineIsBrief ? &output : &tempBuf;
BufStr
*
bufPtr
=
&
tempBuf
;
// add begin filename marker
bufPtr
->
addChar
(
0x06
);
...
...
@@ -6809,10 +6809,10 @@ static void readFiles(BufStr &output)
bufPtr
->
addChar
(
'\n'
);
/* to prevent problems under Windows ? */
if
(
!
multiLineIsBrief
)
{
//
if (!multiLineIsBrief)
//
{
convertCppComments
(
&
tempBuf
,
&
output
);
}
//
}
s
=
inputFiles
.
next
();
//printf("-------> adding new line\n");
...
...
src/entry.h
View file @
aee36e26
...
...
@@ -21,7 +21,7 @@
#include "qtbc.h"
#include <qlist.h>
class
SectionInfo
;
struct
SectionInfo
;
enum
Protection
{
Public
,
Protected
,
Private
,
Package
}
;
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:element
name=
"doxygen"
type=
"DoxygenType"
/>
<xsd:element
name=
"doxygen
index
"
type=
"DoxygenType"
/>
<xsd:complexType
name=
"DoxygenType"
>
<xsd:sequence>
...
...
@@ -47,6 +48,7 @@
<xsd:enumeration
value=
"variable"
/>
<xsd:enumeration
value=
"typedef"
/>
<xsd:enumeration
value=
"enum"
/>
<xsd:enumeration
value=
"enumvalue"
/>
<xsd:enumeration
value=
"function"
/>
<xsd:enumeration
value=
"signal"
/>
<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:element name=
\"
doxygen
\"
type=
\"
DoxygenType
\"
/>
\n
"
" <xsd:element name=
\"
doxygen
index
\"
type=
\"
DoxygenType
\"
/>
\n
"
"
\n
"
" <xsd:complexType name=
\"
DoxygenType
\"
>
\n
"
" <xsd:sequence>
\n
"
...
...
@@ -47,6 +48,7 @@
" <xsd:enumeration value=
\"
variable
\"
/>
\n
"
" <xsd:enumeration value=
\"
typedef
\"
/>
\n
"
" <xsd:enumeration value=
\"
enum
\"
/>
\n
"
" <xsd:enumeration value=
\"
enumvalue
\"
/>
\n
"
" <xsd:enumeration value=
\"
function
\"
/>
\n
"
" <xsd:enumeration value=
\"
signal
\"
/>
\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,
else
// local link
{
QCString
sep
=
Config_getBool
(
"OPTIMIZE_OUTPUT_JAVA"
)
?
"."
:
"::"
;
if
(
cd
)
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
cd
->
name
()
+
sep
+
name
());
}
else
if
(
nd
)
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
nd
->
name
()
+
sep
+
name
());
}
else
{
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
name
());
}
QCString
n
=
name
();
if
(
classDef
&&
gd
)
n
.
prepend
(
classDef
->
name
()
+
sep
);
else
if
(
nspace
&&
gd
)
n
.
prepend
(
nspace
->
name
()
+
sep
);
ol
.
writeObjectLink
(
d
->
getReference
(),
d
->
getOutputFileBase
(),
anchor
(),
n
);
}
}
...
...
src/scanner.l
View file @
aee36e26
...
...
@@ -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
current->doc+=yytext;
}
/*
<SkipSection>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
...
...
@@ -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 */
if (YY_START==CopyArgComment)
fullArgString+=yytext;
...
...
@@ -4731,25 +4733,25 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
}
if (!handled)
{
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
{
int i,l=pValue->length();
char c;
for (i=l-1;i>=0;i--)
{
c=pValue->at(i);
unput(c);
if (c=='\n') yyLineNr--;
}
}
else
{
if (YY_START==CopyArgComment)
fullArgString+=yytext;
else
current->doc+=yytext;
}
//
QCString *pValue=Doxygen::aliasDict[yytext+1];
//
if (pValue)
//
{
//
int i,l=pValue->length();
//
char c;
//
for (i=l-1;i>=0;i--)
//
{
//
c=pValue->at(i);
//
unput(c);
//
if (c=='\n') yyLineNr--;
//
}
//
}
//
else
//
{
if (YY_START==CopyArgComment)
fullArgString+=yytext;
else
current->doc+=yytext;
//
}
}
}
<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_;]
current->brief+=yytext;
}
<JavaDoc,LineDoc,ClassDocBrief,AfterDocBrief,AfterDocLine,CopyArgCommentLine>{CMD}[a-z_A-Z][a-z_A-Z0-9]* {
QCString *pValue=Doxygen::aliasDict[yytext+1];
if (pValue)
{
int i,l=pValue->length();
for (i=l-1;i>=0;i--)
{
unput(pValue->at(i));
}
}
else
{
//
QCString *pValue=Doxygen::aliasDict[yytext+1];
//
if (pValue)
//
{
//
int i,l=pValue->length();
//
for (i=l-1;i>=0;i--)
//
{
//
unput(pValue->at(i));
//
}
//
}
//
else
//
{
if (YY_START==CopyArgCommentLine)
fullArgString+=yytext;
else
current->brief+=yytext;
}
//
}
}
<DefLineDoc,LineDoc,ClassDoc,PageDoc,ExampleDoc,Doc>"/*"|"//" { current->doc += yytext; }
<SkipCxxComment>.*/\n {
...
...
src/translator_jp.h
View file @
aee36e26
...
...
@@ -64,7 +64,7 @@ class TranslatorJapaneseEn : public TranslatorEnglish
}
};
class
TranslatorJapanese
:
public
Translator
Adapter_1_3
class
TranslatorJapanese
:
public
Translator
English
{
private
:
/*! The decode() can change euc into sjis */
...
...
@@ -1394,7 +1394,7 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
*/
virtual
QCString
trDeprecatedList
()
{
return
"非推奨一覧"
;
return
decode
(
"非推奨一覧"
)
;
}
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1406,13 +1406,68 @@ class TranslatorJapanese : public TranslatorAdapter_1_3
*/
virtual
QCString
trEvents
()
{
return
"イベント"
;
return
decode
(
"イベント"
)
;
}
/*! Header used for the documentation section of a class' events. */
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
src/translator_tw.h
View file @
aee36e26
/******************************************************************************
*
*
*
*
* Copyright (C) 1997-2003 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* Documents produced by Doxygen are derivative works derived from the
* 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
...
...
@@ -44,19 +46,19 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
public
:
// --- Language control methods -------------------
/*! Used for identification of the language. The identification
* should not be translated. It should be replaced by the name
/*! Used for identification of the language. The identification
* should not be translated. It should be replaced by the name
* of the language in English using lower-case characters only
* (e.g. "czech", "japanese", "russian", etc.). It should be equal to
* (e.g. "czech", "japanese", "russian", etc.). It should be equal to
* the identification used in language.cpp.
*/
virtual
QCString
idLanguage
()
{
return
"chinese-traditional"
;
}
/*! Used to get the LaTeX command(s) for the language support.
/*! Used to get the LaTeX command(s) for the language support.
* This method should return string with commands that switch
* LaTeX to the desired language. For example
* LaTeX to the desired language. For example
* <pre>"\\usepackage[german]{babel}\n"
* </pre>
* or
...
...
@@ -64,7 +66,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
* "\\usepackage[latin2]{inputenc}\n"
* "\\usepackage[T1]{fontenc}\n"
* </pre>
*
*
* The English LaTeX does not use such commands. Because of this
* the empty string is returned in this implementation.
*/
...
...
@@ -96,30 +98,30 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! header that is put before the list of typedefs. */
virtual
QCString
trMemberTypedefDocumentation
()
{
return
"型態定義成員說明文件"
;
}
/*! header that is put before the list of enumerations. */
virtual
QCString
trMemberEnumerationDocumentation
()
{
return
"列舉型態成員說明文件"
;
}
/*! header that is put before the list of member functions. */
virtual
QCString
trMemberFunctionDocumentation
()
{
return
"函式成員說明文件"
;
}
/*! header that is put before the list of member attributes. */
virtual
QCString
trMemberDataDocumentation
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"欄位說明文件"
;
return
"欄位說明文件"
;
}
else
{
return
"資料成員說明文件"
;
return
"資料成員說明文件"
;
}
}
/*! this is the text of a link put after brief descriptions. */
virtual
QCString
trMore
()
virtual
QCString
trMore
()
{
return
"更多..."
;
}
/*! put in the class documentation */
...
...
@@ -137,54 +139,54 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! this is the remainder of the sentence after the class name */
virtual
QCString
trIncludingInheritedMembers
()
{
return
", 包含所有繼承的成員"
;
}
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
*/
virtual
QCString
trGeneratedAutomatically
(
const
char
*
s
)
{
QCString
result
=
"本文件由Doxygen"
;
if
(
s
)
result
+=
(
QCString
)
" 自 "
+
s
;
result
+=
" 的原始碼中自動產生."
;
result
+=
" 的原始碼中自動產生."
;
return
result
;
}
/*! put after an enum name in the list of all members */
virtual
QCString
trEnumName
()
{
return
"列舉型態名稱"
;
}
/*! put after an enum value in the list of all members */
virtual
QCString
trEnumValue
()
{
return
"列舉值"
;
}
/*! put after an undocumented member in the list of all members */
virtual
QCString
trDefinedIn
()
{
return
"被定義於"
;
}
// quick reference sections
/*! This is put above each page as a link to the list of all groups of
/*! This is put above each page as a link to the list of all groups of
* compounds or files (see the \\group command).
*/
virtual
QCString
trModules
()
{
return
"模組"
;
}
/*! This is put above each page as a link to the class hierarchy */
virtual
QCString
trClassHierarchy
()
{
return
"類別階層"
;
}
/*! This is put above each page as a link to the list of annotated classes */
virtual
QCString
trCompoundList
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"資料結構"
;
}
else
{
return
"複合列表"
;
return
"複合列表"
;
}
}
/*! This is put above each page as a link to the list of documented files */
virtual
QCString
trFileList
()
{
return
"檔案列表"
;
}
...
...
@@ -195,27 +197,27 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! This is put above each page as a link to all members of compounds. */
virtual
QCString
trCompoundMembers
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"資料欄位"
;
return
"資料欄位"
;
}
else
{
return
"複合成員"
;
return
"複合成員"
;
}
}
/*! This is put above each page as a link to all members of files. */
virtual
QCString
trFileMembers
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"全域資料"
;
return
"全域資料"
;
}
else
{
return
"檔案成員"
;
return
"檔案成員"
;
}
}
...
...
@@ -247,16 +249,16 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! This is an introduction to the annotated compound list. */
virtual
QCString
trCompoundListDescription
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"這是附帶簡略說明的資料結構:"
;
return
"這是附帶簡略說明的資料結構:"
;
}
else
{
return
"這是附帶簡略說明的類別,結構,"
"聯合型態(unions)及介面(interfaces):"
;
"聯合型態(unions)及介面(interfaces):"
;
}
}
...
...
@@ -277,7 +279,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
result
+=
"類別成員"
;
}
result
+=
", 並且帶有連結至"
;
if
(
!
extractAll
)
if
(
!
extractAll
)
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
...
...
@@ -288,7 +290,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
result
+=
"每個成員的類別說明文件:"
;
}
}
else
else
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
...
...
@@ -307,7 +309,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
QCString
result
=
"這是全部"
;
if
(
!
extractAll
)
result
+=
"文件化的"
;
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
result
+=
"函式,變數,定義,列舉,及型態定義"
;
...
...
@@ -317,9 +319,9 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
result
+=
"檔案成員"
;
}
result
+=
",並且帶有連結至"
;
if
(
extractAll
)
if
(
extractAll
)
result
+=
"這些檔案所屬:"
;
else
else
result
+=
"說明文件:"
;
return
result
;
}
...
...
@@ -341,49 +343,49 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return
"所有模組列表:"
;
}
/*! This sentences is used in the annotated class/file lists if no brief
* description is given.
* description is given.
*/
virtual
QCString
trNoDescriptionAvailable
()
{
return
"沒有可用的說明描述"
;
}
// index titles (the project name is prepended for these)
// index titles (the project name is prepended for these)
/*! This is used in HTML as the title of index.html. */
virtual
QCString
trDocumentation
()
{
return
"說明文件"
;
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* index of all groups.
*/
virtual
QCString
trModuleIndex
()
{
return
"模組索引"
;
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* class hierarchy.
*/
virtual
QCString
trHierarchicalIndex
()
{
return
"階層索引"
;
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
*/
virtual
QCString
trCompoundIndex
()
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
{
return
"資料結構索引"
;
}
else
{
return
"複合索引"
;
return
"複合索引"
;
}
}
/*! This is used in LaTeX as the title of the chapter with the
* list of all files.
*/
virtual
QCString
trFileIndex
()
virtual
QCString
trFileIndex
()
{
return
"檔案索引"
;
}
/*! This is used in LaTeX as the title of the chapter containing
...
...
@@ -396,14 +398,14 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
* the documentation of all classes, structs and unions.
*/
virtual
QCString
trClassDocumentation
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"資料結構說明文件"
;
return
"資料結構說明文件"
;
}
else
{
return
"類別說明文件"
;
return
"類別說明文件"
;
}
}
...
...
@@ -428,111 +430,111 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! This is used in LaTeX as the title of the document */
virtual
QCString
trReferenceManual
()
{
return
"參考手冊"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
virtual
QCString
trDefines
()
{
return
"定義"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
*/
virtual
QCString
trFuncProtos
()
{
return
"函式原型"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of typedefs
*/
virtual
QCString
trTypedefs
()
{
return
"型態定義"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
virtual
QCString
trEnumerations
()
{
return
"列舉型態"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
*/
virtual
QCString
trFunctions
()
{
return
"函式"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual
QCString
trVariables
()
{
return
"變數"
;
}
/*! This is used in the documentation of a file as a header before the
/*! This is used in the documentation of a file as a header before the
* list of (global) variables
*/
virtual
QCString
trEnumerationValues
()
{
return
"列舉值"
;
}
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
*/
virtual
QCString
trDefineDocumentation
()
{
return
"定義巨集說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for function prototypes
*/
virtual
QCString
trFunctionPrototypeDocumentation
()
{
return
"函式原型說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for typedefs
*/
virtual
QCString
trTypedefDocumentation
()
{
return
"型態定義說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration types
*/
virtual
QCString
trEnumerationTypeDocumentation
()
{
return
"列舉型態說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
virtual
QCString
trEnumerationValueDocumentation
()
{
return
"列舉值說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
*/
virtual
QCString
trFunctionDocumentation
()
{
return
"函式說明文件"
;
}
/*! This is used in the documentation of a file/namespace before the list
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for variables
*/
virtual
QCString
trVariableDocumentation
()
{
return
"變數說明文件"
;
}
/*! This is used in the documentation of a file/namespace/group before
/*! This is used in the documentation of a file/namespace/group before
* the list of links to documented compounds
*/
virtual
QCString
trCompounds
()
{
{
if
(
Config_getBool
(
"OPTIMIZE_OUTPUT_FOR_C"
))
{
return
"資料結構"
;
return
"資料結構"
;
}
else
{
return
"複合項目"
;
return
"複合項目"
;
}
}
/*! This is used in the standard footer of each page and indicates when
* the page was generated
/*! This is used in the standard footer of each page and indicates when
* the page was generated
*/
virtual
QCString
trGeneratedAt
(
const
char
*
date
,
const
char
*
projName
)
{
{
QCString
result
=
(
QCString
)
"產生日期:"
+
date
;
if
(
projName
)
result
+=
(
QCString
)
", 專案:"
+
projName
;
result
+=
(
QCString
)
", 產生器:"
;
...
...
@@ -550,7 +552,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return
(
QCString
)
"類別"
+
clName
+
"的繼承圖:"
;
}
/*! this text is generated when the \\internal command is used. */
virtual
QCString
trForInternalUseOnly
()
{
return
"僅供內部使用."
;
}
...
...
@@ -590,7 +592,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! this text is generated when the
\\
exception command is used. */
virtual QCString trExceptions()
{ return "
例外
"; }
/*! this text is used in the title page of a LaTeX document. */
virtual QCString trGeneratedBy()
{ return "
產生者
:
"; }
...
...
@@ -598,7 +600,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990307
//////////////////////////////////////////////////////////////////////////
/*! used as the title of page containing all the index of all namespaces. */
virtual QCString trNamespaceList()
{ return "
命名空間
(
name
space
)
列表
"; }
...
...
@@ -617,17 +619,17 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
*/
virtual QCString trFriends()
{ return "
類別朋友
(
Friends
)
"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990405
//////////////////////////////////////////////////////////////////////////
/*! used in the class documentation as a header before the list of all
* related classes
* related classes
*/
virtual QCString trRelatedFunctionDocumentation()
{ return "
類別朋友及相關函式說明文件
"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
//////////////////////////////////////////////////////////////////////////
...
...
@@ -655,7 +657,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
virtual QCString trFileReference(const char *fileName)
{
QCString result=fileName;
result+="
檔案參考文件
";
result+="
檔案參考文件
";
return result;
}
...
...
@@ -666,7 +668,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
result+="
命名空間
(
Namespace
)
參考文件
";
return result;
}
virtual QCString trPublicMembers()
{ return "
公開方法
(
Public
Methods
)
"; }
virtual QCString trPublicSlots()
...
...
@@ -687,7 +689,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{ return "
私有插槽
(
Private
Slots
)
"; }
virtual QCString trStaticPrivateMembers()
{ return "
靜態私有方法
(
Static
Private
Methods
)
"; }
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
*/
...
...
@@ -696,23 +698,23 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
QCString result;
int i;
// the inherits list contain `numEntries' classes
for (i=0;i<numEntries;i++)
for (i=0;i<numEntries;i++)
{
// use generateMarker to generate placeholders for the class links!
result+=generateMarker(i); // generate marker for entry i in the list
result+=generateMarker(i); // generate marker for entry i in the list
// (order is left to right)
if (i!=numEntries-1) // not the last entry, so we need a separator
{
if (i<numEntries-2) // not the fore last entry
if (i<numEntries-2) // not the fore last entry
result+="
,
";
else // the fore last entry
result+="
,
及
";
}
}
return result;
return result;
}
/*! used in class documentation to produce a list of base classes,
* if class diagrams are disabled.
*/
...
...
@@ -729,7 +731,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
return "
被
"+trWriteList(numEntries)+"
繼承
.
";
}
/*! used in member documentation blocks to produce a list of
/*! used in member documentation blocks to produce a list of
* members that are hidden by this one.
*/
virtual QCString trReimplementedFromList(int numEntries)
...
...
@@ -751,17 +753,17 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! This is an introduction to the page with all namespace members */
virtual QCString trNamespaceMemberDescription(bool extractAll)
{
{
QCString result="
此處列表為所有
";
if (!extractAll) result+="
文件化的
";
result+="
命名空間
(
namespace
)
成員,並且附帶連結至
";
if (extractAll)
if (extractAll)
result+="
每個成員的說明文件
:
";
else
else
result+="
該命名空間所屬之處
:
";
return result;
}
/*! This is used in LaTeX as the title of the chapter with the
/*! This is used in LaTeX as the title of the chapter with the
* index of all namespaces.
*/
virtual QCString trNamespaceIndex()
...
...
@@ -827,7 +829,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
virtual QCString trMainPage()
{ return "
主頁面
"; }
/*! This is used in references to page that are put in the LaTeX
/*! This is used in references to page that are put in the LaTeX
* documentation. It should be an abbreviation of the word page.
*/
virtual QCString trPageAbbreviation()
...
...
@@ -876,7 +878,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! header that is put before the list of constructor/destructors. */
virtual QCString trConstructorDocumentation()
{
return "
建構子與解構子說明文件
";
return "
建構子與解構子說明文件
";
}
/*! Used in the file documentation to point to the corresponding sources. */
virtual QCString trGotoSourceCode()
...
...
@@ -933,7 +935,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
//////////////////////////////////////////////////////////////////////////
// new since 1.1.0
//////////////////////////////////////////////////////////////////////////
virtual QCString trNote()
{
return "
註
";
...
...
@@ -1022,7 +1024,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return "
自
";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.1.5
//////////////////////////////////////////////////////////////////////////
...
...
@@ -1032,12 +1034,12 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return "
圖示
";
}
/*! page explaining how the dot graph's should be interpreted
/*! page explaining how the dot graph's should be interpreted
* The %A in the text below are to prevent link to classes called "
A
".
*/
virtual QCString trLegendDocs()
{
return
return
"
本頁解釋如何解譯這些由
doxygen
所產生的圖示
"
"
.
<
p
>
\
n
"
"
請看下面範例
:
\
n
"
...
...
@@ -1102,11 +1104,11 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return
"圖示"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.0
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a test item */
virtual
QCString
trTest
()
{
...
...
@@ -1194,11 +1196,11 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return
"巨集內容:"
;
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.5
//////////////////////////////////////////////////////////////////////////
/*! Used as a marker that is put before a \\bug item */
virtual
QCString
trBug
()
{
...
...
@@ -1214,9 +1216,9 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
// new since 1.2.6
//////////////////////////////////////////////////////////////////////////
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value and
/*! Used as ansicpg for RTF file
*
* The following table shows the correlation of Charset name, Charset Value and
* <pre>
* Codepage number:
* Charset Name Charset Value(hex) Codepage number
...
...
@@ -1237,15 +1239,15 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
* GB2313_CHARSET 134 (x86) 936
* CHINESEBIG5_CHARSET 136 (x88) 950
* </pre>
*
*
*/
virtual
QCString
trRTFansicp
()
{
return
"950"
;
}
/*! Used as ansicpg for RTF fcharset
/*! Used as ansicpg for RTF fcharset
* \see trRTFansicp() for a table of possible values.
*/
virtual
QCString
trRTFCharSet
()
...
...
@@ -1258,76 +1260,76 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
{
return
"索引"
;
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trClass
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"類別"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trFile
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"檔案"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trNamespace
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"命名空間"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGroup
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"群組"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trPage
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"頁面"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trMember
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"成員"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trField
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"欄位"
);
}
/*! This is used for translation of the word that will possibly
* be followed by a single name or by a list of names
* be followed by a single name or by a list of names
* of the category.
*/
virtual
QCString
trGlobal
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"全域"
);
}
...
...
@@ -1338,7 +1340,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
/*! This text is generated when the \\author command is used and
* for the author section in man pages. */
virtual
QCString
trAuthor
(
bool
/*first_capital*/
,
bool
/*singular*/
)
{
{
return
QCString
(
"作者"
);
}
...
...
@@ -1357,7 +1359,7 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
// new since 1.2.13
//////////////////////////////////////////////////////////////////////////
/*! used in member documentation blocks to produce a list of
/*! used in member documentation blocks to produce a list of
* members that are implemented by this one.
*/
virtual
QCString
trImplementedFromList
(
int
numEntries
)
...
...
@@ -1373,6 +1375,103 @@ class TranslatorChinesetraditional : public TranslatorAdapter_1_2_16
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
src/util.h
View file @
aee36e26
...
...
@@ -48,7 +48,7 @@ struct TagInfo;
class
MemberNameInfoSDict
;
struct
ListItemInfo
;
class
PageDef
;
class
SectionInfo
;
struct
SectionInfo
;
//--------------------------------------------------------------------
...
...
src/xmlgen.cpp
View file @
aee36e26
...
...
@@ -53,6 +53,12 @@ static const char index_xsd[] =
#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)
static
void
writeXMLHeader
(
QTextStream
&
t
)
{
QCString
dtdName
=
Config_getString
(
"XML_DTD"
);
QCString
schemaName
=
Config_getString
(
"XML_SCHEMA"
);
//QCString dtdName = Config_getString("XML_DTD");
//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
()
<<
"' 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
\"
"
;
}
<<
"' standalone='no'?>"
<<
endl
;;
t
<<
"<doxygen xmlns:xsi=
\"
http://www.w3.org/2001/XMLSchema-instance
\"
"
;
t
<<
"xsi:noNamespaceSchemaLocation=
\"
compound.xsd
\"
"
;
t
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
}
...
...
@@ -422,7 +434,7 @@ static void writeMemberReference(QTextStream &t,Definition *def,MemberDef *rmd,c
{
name
.
prepend
(
scope
+
"::"
);
}
t
<<
" <"
<<
tagName
<<
" id=
\"
"
;
t
<<
" <"
<<
tagName
<<
"
ref
id=
\"
"
;
t
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
"
;
if
(
rmd
->
getStartBodyLine
()
!=-
1
&&
rmd
->
getBodyDef
())
{
...
...
@@ -529,7 +541,7 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
t
<<
"
\"
virt=
\"
"
;
switch
(
md
->
virtualness
())
{
case
Normal
:
t
<<
"no
rmal"
;
break
;
case
Normal
:
t
<<
"no
n-virtual"
;
break
;
case
Virtual
:
t
<<
"virtual"
;
break
;
case
Pure
:
t
<<
"pure-virtual"
;
break
;
default:
ASSERT
(
0
);
...
...
@@ -544,8 +556,8 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
t
<<
" volatile=
\"
"
;
if
(
al
&&
al
->
volatileSpecifier
)
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"
\"
mutable=
\"
"
;
if
(
md
->
isMutable
())
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"
\"
mutable=
\"
"
;
if
(
md
->
isMutable
())
t
<<
"yes"
;
else
t
<<
"no"
;
t
<<
"
\"
"
;
}
...
...
@@ -572,9 +584,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
MemberDef
*
rmd
=
md
->
reimplements
();
if
(
rmd
)
{
t
<<
" <reimplements id=
\"
"
t
<<
" <reimplements
ref
id=
\"
"
<<
rmd
->
getOutputFileBase
()
<<
"_1"
<<
rmd
->
anchor
()
<<
"
\"
>"
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplements>"
;
<<
convertToXML
(
rmd
->
name
())
<<
"</reimplements>"
<<
endl
;
}
MemberList
*
rbml
=
md
->
reimplementedBy
();
if
(
rbml
)
...
...
@@ -582,9 +594,9 @@ static void generateXMLForMember(MemberDef *md,QTextStream &ti,QTextStream &t,De
MemberListIterator
mli
(
*
rbml
);
for
(
mli
.
toFirst
();(
rmd
=
mli
.
current
());
++
mli
)
{
t
<<
" <reimplementedby id=
\"
"
t
<<
" <reimplementedby
ref
id=
\"
"
<<
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)
}
}
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
();
if
(
ii
)
{
...
...
@@ -941,7 +941,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
t
<<
" <includes"
;
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
<<
nm
;
...
...
@@ -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
);
writeListOfAllMembers
(
cd
,
t
);
MemberGroupSDict
::
Iterator
mgli
(
*
cd
->
memberGroupSDict
);
MemberGroup
*
mg
;
for
(;(
mg
=
mgli
.
current
());
++
mgli
)
...
...
@@ -1014,6 +1026,7 @@ static void generateXMLForClass(ClassDef *cd,QTextStream &ti)
<<
cd
->
getEndBodyLine
()
<<
"
\"
"
;
}
t
<<
"/>"
<<
endl
;
writeListOfAllMembers
(
cd
,
t
);
t
<<
" </compounddef>"
<<
endl
;
t
<<
"</doxygen>"
<<
endl
;
...
...
@@ -1153,7 +1166,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
t
<<
" <includes"
;
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
<<
inc
->
includeName
;
...
...
@@ -1166,7 +1179,7 @@ static void generateXMLForFile(FileDef *fd,QTextStream &ti)
t
<<
" <includedby"
;
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
<<
inc
->
includeName
;
...
...
@@ -1466,6 +1479,16 @@ void generateXML()
f
.
writeBlock
(
index_xsd
,
strlen
(
index_xsd
));
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"
;
f
.
setName
(
fileName
);
if
(
!
f
.
open
(
IO_WriteOnly
))
...
...
@@ -1479,7 +1502,7 @@ void generateXML()
// write index header
t
<<
"<?xml version='1.0' encoding='"
<<
theTranslator
->
idLanguageCharset
()
<<
"' 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
<<
"version=
\"
"
<<
versionString
<<
"
\"
>"
<<
endl
;
...
...
@@ -1487,12 +1510,14 @@ void generateXML()
ClassDef
*
cd
;
for
(
cli
.
toFirst
();(
cd
=
cli
.
current
());
++
cli
)
{
msg
(
"Generating XML output for class %s
\n
"
,
cd
->
name
().
data
());
generateXMLForClass
(
cd
,
t
);
}
NamespaceSDict
::
Iterator
nli
(
Doxygen
::
namespaceSDict
);
NamespaceDef
*
nd
;
for
(
nli
.
toFirst
();(
nd
=
nli
.
current
());
++
nli
)
{
msg
(
"Generating XML output for namespace %s
\n
"
,
nd
->
name
().
data
());
generateXMLForNamespace
(
nd
,
t
);
}
FileNameListIterator
fnli
(
Doxygen
::
inputNameList
);
...
...
@@ -1503,6 +1528,7 @@ void generateXML()
FileDef
*
fd
;
for
(;(
fd
=
fni
.
current
());
++
fni
)
{
msg
(
"Generating XML output for file %s
\n
"
,
fd
->
name
().
data
());
generateXMLForFile
(
fd
,
t
);
}
}
...
...
@@ -1510,21 +1536,24 @@ void generateXML()
GroupDef
*
gd
;
for
(;(
gd
=
gli
.
current
());
++
gli
)
{
msg
(
"Generating XML output for group %s
\n
"
,
gd
->
name
().
data
());
generateXMLForGroup
(
gd
,
t
);
}
PageSDict
::
Iterator
pdi
(
*
Doxygen
::
pageSDict
);
PageDef
*
pd
=
0
;
for
(
pdi
.
toFirst
();(
pd
=
pdi
.
current
());
++
pdi
)
{
msg
(
"Generating XML output for page %s
\n
"
,
pd
->
name
().
data
());
generateXMLForPage
(
pd
,
t
);
}
if
(
Doxygen
::
mainPage
)
{
msg
(
"Generating XML output for the main page
\n
"
);
generateXMLForPage
(
Doxygen
::
mainPage
,
t
);
}
//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