1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
|
import doxygen_misc_constructs.*;
import java.util.HashMap;
public class doxygen_misc_constructs_runme {
static {
try {
System.loadLibrary("doxygen_misc_constructs");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
System.exit(1);
}
}
public static void main(String argv[])
{
CommentParser.parse("doxygen_misc_constructs");
HashMap<String, String> wantedComments = new HashMap<String, String>();
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.getConnection()",
"\n" +
"\n" +
" This function returns connection id.\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.getAddress(doxygen_misc_constructs.SWIGTYPE_p_int, int)",
" Returns address of file line.\n" +
" \n" +
" @param fileName name of the file, where the source line is located\n" +
" @param line line number\n" +
" {@link Connection::getId() }<br>\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.getG_zipCode()",
" Tag endlink must be recognized also when it is the last token\n" +
" in the comment.\n" +
" \n" +
" {@link Connection::getId() }<br>\n" +
" {@link debugIdeTraceProfilerCoverageSample.py Python example. }\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.setG_zipCode(int)",
" Tag endlink must be recognized also when it is the last token\n" +
" in the comment.\n" +
"\n" +
" {@link Connection::getId() }<br>\n" +
" {@link debugIdeTraceProfilerCoverageSample.py Python example. }\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.getG_counter()",
" Tag endlink must be recognized also when followed by nonspace character.\n" +
"\n" +
" {@link Connection::getId() }<br>\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.waitTime(int)",
" Determines how long the <code>isystem.connect</code> should wait for running\n" +
" instances to respond. Only one of <code>lfWaitXXX</code> flags from IConnect::ELaunchFlags\n" +
" may be specified.\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.CConnectionConfig",
" This class contains information for connection to winIDEA. Its methods\n" +
" return reference to self, so we can use it like this:\n" +
" <pre>\n" +
" CConnectionConfig config = new CConnectionConfig();\n" +
" config.discoveryPort(5534).dllPath(\"C:\\\\myWinIDEA\\\\connect.dll\").id(\"main\");\n" +
" </pre>\n" +
"\n" +
" All parameters are optional. Set only what is required, default values are\n" +
" used for unspecified parameters.\n" +
" <p>\n" +
"\n" +
" {@link advancedWinIDEALaunching.py Python example. }<br>\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.getAddress(doxygen_misc_constructs.SWIGTYPE_p_int, int, boolean)",
" Returns address of file line.\n" +
"\n" +
" @param fileName name of the file, where the source line is located\n" +
" @param line line number\n" +
" @param isGetSize if set, for every object location both address and size are returned\n" +
"\n" +
" {@link Connection::getId() }<br>\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.setG_counter(char)",
" Tag endlink must be recognized also when followed by nonspace character.\n" +
"\n" +
" {@link Connection::getId() }<br>\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.ClassWithNestedEnum",
" Class description.\n" +
"\n");
wantedComments.put("doxygen_misc_constructs.ClassWithNestedEnum.ENested",
" Enum description.\n" +
"\n");
wantedComments.put("doxygen_misc_constructs.ClassWithNestedEnum.ENested.ONE",
" desc of one\n");
wantedComments.put("doxygen_misc_constructs.ClassWithNestedEnum.ENested.TWO",
" desc of two\n");
wantedComments.put("doxygen_misc_constructs.ClassWithNestedEnum.ENested.THREE",
" desc of three\n");
wantedComments.put("doxygen_misc_constructs.StructWithReturnComment",
" @return This is a bad place for this tag, but it should be ignored.");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.showList()",
" An example of a list in a documentation comment.<br>\n" +
" <br>\n" +
" - The first item of the list.<br>\n" +
" - The second list item, on<br>\n" +
" several indented lines,<br>\n" +
" showing that the indentation<br>\n" +
" is preserved.<br>\n" +
" - And the final list item after it.<br>\n" +
" <br>\n" +
" And this is not a list item any more.\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.isNoSpaceValidA()",
" This comment without space after '*' is valid in Doxygen.\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.isNoSpaceValidB()",
" .This comment without space after '*' is valid in Doxygen.\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.backslashA()",
" Backslash following<code>word</code> is a valid doxygen command. Output contains\n" +
" 'followingword' with 'word' in code font.\n" +
"\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.backslashB()",
" Doxy command without trailing space is ignored - nothing appears\n" +
" on output. Standalone \\ and '\\' get to output.\n" +
" Standalone @ and '@' get to output.\n" +
" Commands \"in quoted \\b strings are treated as plain text\".\n" +
" Commands not recognized by Doxygen are ignored.\n" +
" Backslashes in DOS paths d:and words\n" +
" following them do not appear on output, we must quote them with\n" +
" double quotes: \"d:\\xyz\\qwe\\myfile\", \"@something\". Single quotes do not help:\n" +
" 'd:'. Escaping works: d:\\xyz\\qwe\\myfile. Unix\n" +
" paths of course have no such problems: /xyz/qwe/myfile\n" +
" Commands for escaped symbols:\n" +
" $ @ \\ & ~ < > # % " . :: @text ::text" +
"\n");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.backslashC()",
" Backslash e at end of <i>line</i> froze SWIG\n" +
" <i>with</i> old comment parser.\n" +
" @see MyClass#fun(char,float)\n" +
"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.cycle(int, java.lang.String)",
" The next line contains expression:\n" +
" <pre>\n" +
" ['retVal < 10', 'g_counter == 23 && g_mode & 3']\n" +
" </pre>\n" +
"\n" +
" Both words should be emphasized <b>isystem.connect</b>.\n" +
" But not the last period. For <b>example</b>, comma should not be emphasized.\n" +
" Similar <b>for</b>: double colon.\n" +
"\n" +
" Spaces at the start of line should be taken into account:\n" +
" @param id used as prefix in log\n" +
" statements. The default value is empty string, which is OK if\n" +
" there is only one app. instance. Example:\n" +
" <pre>\n" +
" ctrl.setBP(\"func1\");\n" +
" </pre>\n" +
" If we set the id to <code>main_</code>, we get:\n" +
" <pre>\n" +
" main_ctrl.setBP(\"func1\");\n" +
" </pre>\n" +
"\n" +
" @param fileName name of the log file\n");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.doc_ends_with_quote()",
"This doc comment ends with a quote: \"and that's ok\"");
wantedComments.put("doxygen_misc_constructs.doxygen_misc_constructs.doc_with_triple_quotes()",
"This comment contains embedded triple-quoted string:\n" +
"\"\"\"How quaint\"\"\"");
// and ask the parser to check comments for us
System.exit(CommentParser.check(wantedComments));
}
}
|