View Javadoc
1   ////////////////////////////////////////////////////////////////////////////////
2   // checkstyle: Checks Java source code for adherence to a set of rules.
3   // Copyright (C) 2001-2018 the original author or authors.
4   //
5   // This library is free software; you can redistribute it and/or
6   // modify it under the terms of the GNU Lesser General Public
7   // License as published by the Free Software Foundation; either
8   // version 2.1 of the License, or (at your option) any later version.
9   //
10  // This library is distributed in the hope that it will be useful,
11  // but WITHOUT ANY WARRANTY; without even the implied warranty of
12  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  // Lesser General Public License for more details.
14  //
15  // You should have received a copy of the GNU Lesser General Public
16  // License along with this library; if not, write to the Free Software
17  // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  ////////////////////////////////////////////////////////////////////////////////
19  
20  package com.puppycrawl.tools.checkstyle.api;
21  
22  import org.antlr.v4.runtime.Recognizer;
23  
24  import com.puppycrawl.tools.checkstyle.grammars.javadoc.JavadocParser;
25  
26  /**
27   * Contains the constants for all the tokens contained in the Abstract
28   * Syntax Tree for the javadoc grammar.
29   *
30   * @author Baratali Izmailov
31   * @see <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html">
32   * javadoc - The Java API Documentation Generator</a>
33   */
34  public final class JavadocTokenTypes {
35  
36      //--------------------------------------------------------------------------------------------//
37      //------------------        JAVADOC TAGS          --------------------------------------------//
38      //--------------------------------------------------------------------------------------------//
39  
40      /**
41       * '@return' literal in @return Javadoc tag.
42       *
43       * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
44       *
45       * <p><b>Example:</b></p>
46       * <pre>{@code @return true if file exists}</pre>
47       * <b>Tree:</b>
48       * <pre>{@code
49       *   |--JAVADOC_TAG[4x3] : [@return true if file exists]
50       *       |--RETURN_LITERAL[4x3] : [@return]
51       *       |--WS[4x10] : [ ]
52       *       |--DESCRIPTION[4x11] : [true if file exists]
53       *           |--TEXT[4x11] : [true if file exists]
54       * }</pre>
55       *
56       * @see
57       * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCDBGG">
58       * Oracle Docs</a>
59       * @see #JAVADOC_TAG
60       */
61      public static final int RETURN_LITERAL = JavadocParser.RETURN_LITERAL;
62  
63      /**
64       * '{@literal @}deprecated' literal in {@literal @}deprecated Javadoc tag.
65       *
66       * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
67       *
68       * <p><b>Example:</b></p>
69       * <pre>{@code @deprecated it is deprecated method}</pre>
70       * <b>Tree:</b>
71       * <pre>{@code
72       *   |--JAVADOC_TAG[3x0] : [@deprecated it is deprecated method]
73       *   |--DEPRECATED_LITERAL[3x0] : [@deprecated]
74       *   |--WS[3x11] : [ ]
75       *   |--DESCRIPTION[3x12] : [it is deprecated method]
76       *       |--TEXT[3x12] : [it is deprecated method]
77       * }</pre>
78       *
79       * @see
80       * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#deprecated">
81       * Oracle Docs</a>
82       * @see #JAVADOC_TAG
83       */
84      public static final int DEPRECATED_LITERAL = JavadocParser.DEPRECATED_LITERAL;
85  
86      /**
87       * '@since' literal in @since Javadoc tag.
88       *
89       * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
90       *
91       * <p><b>Example:</b></p>
92       * <pre>{@code @since 3.4 RELEASE}</pre>
93       * <b>Tree:</b>
94       * <pre>{@code
95       *   |--JAVADOC_TAG[3x0] : [@since 3.4 RELEASE]
96       *       |--SINCE_LITERAL[3x0] : [@since]
97       *       |--WS[3x6] : [ ]
98       *       |--DESCRIPTION[3x7] : [3.4 RELEASE]
99       *           |--TEXT[3x7] : [3.4 RELEASE]
100      * }</pre>
101      *
102      * @see
103      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHGJGD">
104      * Oracle Docs</a>
105      * @see #JAVADOC_TAG
106      */
107     public static final int SINCE_LITERAL = JavadocParser.SINCE_LITERAL;
108 
109     /**
110      * '@serialData' literal in @serialData Javadoc tag.
111      *
112      * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
113      *
114      * <p><b>Example:</b></p>
115      * <pre>{@code @serialData two values of Integer type}</pre>
116      * <b>Tree:</b>
117      * <pre>{@code
118      *   |--JAVADOC_TAG[3x0] : [@serialData two values of Integer type ]
119      *       |--SERIAL_DATA_LITERAL[3x0] : [@serialData]
120      *       |--WS[3x11] : [ ]
121      *       |--DESCRIPTION[3x12] : [two values of Integer type ]
122      *           |--TEXT[3x12] : [two values of Integer type ]
123      * }
124      * </pre>
125      *
126      * @see
127      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDJBFDB">
128      * Oracle Docs</a>
129      * @see #JAVADOC_TAG
130      */
131     public static final int SERIAL_DATA_LITERAL = JavadocParser.SERIAL_DATA_LITERAL;
132 
133     /**
134      * '@serialField' literal in @serialField Javadoc tag.
135      *
136      * <p>Such Javadoc tag can have three arguments:</p>
137      * <ol>
138      * <li>{@link #FIELD_NAME}</li>
139      * <li>{@link #FIELD_TYPE}</li>
140      * <li>{@link #DESCRIPTION}</li>
141      * </ol>
142      *
143      * <p><b>Example:</b></p>
144      * <pre>{@code @serialField counter Integer objects counter}</pre>
145      * <b>Tree:</b>
146      * <pre>{@code
147      *   |--JAVADOC_TAG[3x0] : [@serialField counter Integer objects counter]
148      *       |--SERIAL_FIELD_LITERAL[3x0] : [@serialField]
149      *       |--WS[3x12] : [ ]
150      *       |--FIELD_NAME[3x13] : [counter]
151      *       |--WS[3x20] : [ ]
152      *       |--FIELD_TYPE[3x21] : [Integer]
153      *       |--WS[3x28] : [ ]
154      *       |--DESCRIPTION[3x29] : [objects counter]
155      *           |--TEXT[3x29] : [objects counter]
156      * }</pre>
157      *
158      * @see
159      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGHIDG">
160      * Oracle Docs</a>
161      * @see #JAVADOC_TAG
162      */
163     public static final int SERIAL_FIELD_LITERAL = JavadocParser.SERIAL_FIELD_LITERAL;
164 
165     /**
166      * '@param' literal in @param Javadoc tag.
167      *
168      * <p>Such Javadoc tag can have two arguments:</p>
169      * <ol>
170      * <li>{@link #PARAMETER_NAME}</li>
171      * <li>{@link #DESCRIPTION}</li>
172      * </ol>
173      *
174      * <p><b>Example:</b></p>
175      * <pre>{@code @param T The bar.}</pre>
176      * <b>Tree:</b>
177      * <pre>{@code
178      *   |--JAVADOC_TAG[4x3] : [@param T The bar.]
179      *       |--PARAM_LITERAL[4x3] : [@param]
180      *       |--WS[4x9] : [ ]
181      *       |--PARAMETER_NAME[4x10] : [T]
182      *       |--WS[4x11] : [ ]
183      *       |--DESCRIPTION[4x12] : [The bar.]
184      *           |--TEXT[4x12] : [The bar.]
185      * }</pre>
186      *
187      * @see
188      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHJECF">
189      * Oracle Docs</a>
190      * @see #JAVADOC_TAG
191      */
192     public static final int PARAM_LITERAL = JavadocParser.PARAM_LITERAL;
193 
194     /**
195      * '@see' literal in @see Javadoc tag.
196      *
197      * <p>Such Javadoc tag can have one argument - {@link #REFERENCE}</p>
198      *
199      * <p><b>Example:</b></p>
200      * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre>
201      * <b>Tree:</b>
202      * <pre>{@code
203      *   |--JAVADOC_TAG[3x0] : [@see org.apache.utils.Lists.Comparator#compare(Object)]
204      *       |--SEE_LITERAL[3x0] : [@see]
205      *       |--WS[3x4] : [ ]
206      *       |--REFERENCE[3x5] : [org.apache.utils.Lists.Comparator#compare(Object)]
207      *           |--PACKAGE_CLASS[3x5] : [org.apache.utils]
208      *           |--DOT[3x21] : [.]
209      *           |--CLASS[3x22] : [Lists]
210      *           |--DOT[3x27] : [.]
211      *           |--CLASS[3x28] : [Comparator]
212      *           |--HASH[3x38] : [#]
213      *           |--MEMBER[3x39] : [compare]
214      *           |--PARAMETERS[3x46] : [(Object)]
215      *               |--LEFT_BRACE[3x46] : [(]
216      *               |--ARGUMENT[3x47] : [Object]
217      *               |--RIGHT_BRACE[3x53] : [)]
218      * }</pre>
219      *
220      * @see
221      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDIEDI">
222      * Oracle Docs</a>
223      * @see #JAVADOC_TAG
224      */
225     public static final int SEE_LITERAL = JavadocParser.SEE_LITERAL;
226 
227     /**
228      * '@serial' literal in @serial Javadoc tag.
229      *
230      * <p>Such Javadoc tag can have one argument - {@link #REFERENCE} or {@link #LITERAL_EXCLUDE}
231      * or {@link #LITERAL_INCLUDE}</p>
232      *
233      * <p><b>Example:</b></p>
234      * <pre>{@code @serial include}</pre>
235      * <b>Tree:</b>
236      * <pre>{@code
237      *   |--JAVADOC_TAG[3x0] : [@serial include]
238      *       |--SERIAL_LITERAL[3x0] : [@serial]
239      *       |--WS[3x7] : [ ]
240      *       |--LITERAL_INCLUDE[3x8] : [include]
241      * }</pre>
242      *
243      * <p><b>Example:</b></p>
244      * <pre>{@code @serial serialized company name}</pre>
245      * <b>Tree:</b>
246      * <pre>{@code
247      *   |--JAVADOC_TAG[3x0] : [@serial serialized company name]
248      *       |--SERIAL_LITERAL[3x0] : [@serial]
249      *       |--WS[3x7] : [ ]
250      *       |--DESCRIPTION[3x8] : [serialized company name]
251      *           |--TEXT[3x8] : [serialized company name]
252      * }</pre>
253      *
254      * @see
255      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF">
256      * Oracle Docs</a>
257      * @see #JAVADOC_TAG
258      */
259     public static final int SERIAL_LITERAL = JavadocParser.SERIAL_LITERAL;
260 
261     /**
262      * '@version' literal in @version Javadoc tag.
263      *
264      * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
265      *
266      * <p><b>Example:</b></p>
267      * <pre>{@code @version 1.3}</pre>
268      * <b>Tree:</b>
269      * <pre>{@code
270      *   |--JAVADOC_TAG[3x0] : [@version 1.3]
271      *       |--VERSION_LITERAL[3x0] : [@version]
272      *       |--WS[3x8] : [ ]
273      *       |--DESCRIPTION[3x9] : [1.3]
274      *           |--TEXT[3x9] : [1.3]
275      * }</pre>
276      *
277      * @see
278      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCHBAE">
279      * Oracle Docs</a>
280      * @see #JAVADOC_TAG
281      */
282     public static final int VERSION_LITERAL = JavadocParser.VERSION_LITERAL;
283 
284     /**
285      * '@exception' literal in @exception Javadoc tag.
286      *
287      * <p>Such Javadoc tag can have two argument - {@link #CLASS_NAME} and {@link #DESCRIPTION}</p>
288      *
289      * <p><b>Example:</b></p>
290      * <pre>{@code @exception SQLException if query is not correct}</pre>
291      * <b>Tree:</b>
292      * <pre>{@code
293      *   |--JAVADOC_TAG[3x0] : [@exception SQLException if query is not correct]
294      *       |--EXCEPTION_LITERAL[3x0] : [@exception]
295      *       |--WS[3x10] : [ ]
296      *       |--CLASS_NAME[3x11] : [SQLException]
297      *       |--WS[3x23] : [ ]
298      *       |--DESCRIPTION[3x24] : [if query is not correct]
299      *           |--TEXT[3x24] : [if query is not correct]
300      * }</pre>
301      *
302      * @see
303      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCEAHH">
304      * Oracle Docs</a>
305      * @see #JAVADOC_TAG
306      */
307     public static final int EXCEPTION_LITERAL = JavadocParser.EXCEPTION_LITERAL;
308 
309     /**
310      * '@throws' literal in @throws Javadoc tag.
311      *
312      * <p>Such Javadoc tag can have two argument - {@link #CLASS_NAME} and {@link #DESCRIPTION}</p>
313      *
314      * <p><b>Example:</b></p>
315      * <pre>{@code @throws SQLException if query is not correct}</pre>
316      * <b>Tree:</b>
317      * <pre>{@code
318      *   |--JAVADOC_TAG[3x0] : [@throws SQLException if query is not correct]
319      *       |--THROWS_LITERAL[3x0] : [@throws]
320      *       |--WS[3x7] : [ ]
321      *       |--CLASS_NAME[3x8] : [SQLException]
322      *       |--WS[3x20] : [ ]
323      *       |--DESCRIPTION[3x21] : [if query is not correct]
324      *           |--TEXT[3x21] : [if query is not correct]
325      * }</pre>
326      *
327      * @see
328      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCHAHD">
329      * Oracle Docs</a>
330      * @see #JAVADOC_TAG
331      */
332     public static final int THROWS_LITERAL = JavadocParser.THROWS_LITERAL;
333 
334     /**
335      * '@author' literal in @author Javadoc tag.
336      *
337      * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
338      *
339      * <p><b>Example:</b></p>
340      * <pre>{@code @author Baratali Izmailov}</pre>
341      * <b>Tree:</b>
342      * <pre>{@code
343      *   |--JAVADOC_TAG[3x0] : [@author Baratali Izmailov]
344      *       |--AUTHOR_LITERAL[3x0] : [@author]
345      *       |--WS[3x7] : [ ]
346      *       |--DESCRIPTION[3x8] : [Baratali Izmailov]
347      *           |--TEXT[3x8] : [Baratali Izmailov]
348      * }</pre>
349      *
350      * @see
351      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCBAHA">
352      * Oracle Docs</a>
353      * @see #JAVADOC_TAG
354      */
355     public static final int AUTHOR_LITERAL = JavadocParser.AUTHOR_LITERAL;
356 
357     /**
358      * Name of custom Javadoc tag (or Javadoc inline tag).
359      *
360      * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p>
361      *
362      * <p><b>Example:</b></p>
363      * <pre>{@code @myJavadocTag some magic}</pre>
364      * <b>Tree:</b>
365      * <pre>{@code
366      *   |--JAVADOC_TAG[3x0] : [@myJavadocTag some magic]
367      *       |--CUSTOM_NAME[3x0] : [@myJavadocTag]
368      *       |--WS[3x13] : [ ]
369      *       |--DESCRIPTION[3x14] : [some magic]
370      *           |--TEXT[3x14] : [some magic]
371      * }</pre>
372      */
373     public static final int CUSTOM_NAME = JavadocParser.CUSTOM_NAME;
374 
375     /**
376      * First child of {@link #JAVADOC_INLINE_TAG} that represents left curly brace '{'.
377      *
378      * <p><b>Example:</b></p>
379      * <pre><code>{&#64;code Comparable&lt;E&gt;}</code></pre>
380      * <b>Tree:</b>
381      * <pre>
382      * <code> |--JAVADOC_INLINE_TAG[3x0] : [{&#64;code Comparable&lt;E&gt;}]
383      *         |--JAVADOC_INLINE_TAG_START[3x0] : [{]
384      *         |--CODE_LITERAL[3x1] : [@code]
385      *         |--WS[3x6] : [ ]
386      *         |--TEXT[3x7] : [Comparable&lt;E&gt;]
387      *         |--JAVADOC_INLINE_TAG_END[3x21] : [}]
388      * </code>
389      * </pre>
390      * @noinspection HtmlTagCanBeJavadocTag
391      */
392     public static final int JAVADOC_INLINE_TAG_START = JavadocParser.JAVADOC_INLINE_TAG_START;
393 
394     /**
395      * Last child of {@link #JAVADOC_INLINE_TAG} that represents right curly brace '}'.
396      *
397      * <p><b>Example:</b></p>
398      * <pre><code>{&#64;code Comparable&lt;E&gt;}</code></pre>
399      * <b>Tree:</b>
400      * <pre>
401      * <code> |--JAVADOC_INLINE_TAG[3x0] : [{&#64;code Comparable&lt;E&gt;}]
402      *         |--JAVADOC_INLINE_TAG_START[3x0] : [{]
403      *         |--CODE_LITERAL[3x1] : [@code]
404      *         |--WS[3x6] : [ ]
405      *         |--TEXT[3x7] : [Comparable&lt;E&gt;]
406      *         |--JAVADOC_INLINE_TAG_END[3x21] : [}]
407      * </code>
408      * </pre>
409      * @noinspection HtmlTagCanBeJavadocTag
410      */
411     public static final int JAVADOC_INLINE_TAG_END = JavadocParser.JAVADOC_INLINE_TAG_END;
412 
413     /**
414      * '@code' literal in {&#64;code} Javadoc inline tag.
415      *
416      * <p>Such Javadoc inline tag can have such child nodes:</p>
417      * <ul>
418      * <li>{@link #NEWLINE}</li>
419      * <li>{@link #WS}</li>
420      * <li>{@link #TEXT}</li>
421      * </ul>
422      *
423      * <p><b>Example:</b></p>
424      * <pre><code>{&#64;code Comparable&lt;E&gt;}</code></pre>
425      * <b>Tree:</b>
426      * <pre>
427      * <code> |--JAVADOC_INLINE_TAG[3x0] : [{&#64;code Comparable&lt;E&gt;}]
428      *         |--JAVADOC_INLINE_TAG_START[3x0] : [{]
429      *         |--CODE_LITERAL[3x1] : [@code]
430      *         |--WS[3x6] : [ ]
431      *         |--TEXT[3x7] : [Comparable&lt;E&gt;]
432      *         |--JAVADOC_INLINE_TAG_END[3x21] : [}]
433      * </code>
434      * </pre>
435      *
436      * @see
437      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDFHHBB">
438      * Oracle Docs</a>
439      * @see #JAVADOC_INLINE_TAG
440      * @noinspection HtmlTagCanBeJavadocTag
441      */
442     public static final int CODE_LITERAL = JavadocParser.CODE_LITERAL;
443 
444     /**
445      * '@docRoot' literal in {&#64;docRoot} Javadoc inline tag.
446      *
447      * <p>Such Javadoc inline tag does not have any arguments and can have such child nodes:</p>
448      * <ul>
449      * <li>{@link #NEWLINE}</li>
450      * <li>{@link #WS}</li>
451      * </ul>
452      *
453      * <p><b>Example:</b></p>
454      * <pre><code>{&#64;docRoot}</code></pre>
455      * <b>Tree:</b>
456      * <pre>
457      * <code>  |--JAVADOC_INLINE_TAG[1x0] : [{&#64;docRoot}]
458      *            |--JAVADOC_INLINE_TAG_START[1x0] : [{]
459      *            |--DOC_ROOT_LITERAL[1x1] : [@docRoot]
460      *            |--JAVADOC_INLINE_TAG_END[2x0] : [}]
461      * </code>
462      * </pre>
463      *
464      * <p><b>Example:</b></p>
465      * <pre><code>{&#64;docRoot
466      *}</code></pre>
467      * <b>Tree:</b>
468      * <pre>
469      * <code>  |--JAVADOC_INLINE_TAG[1x0] : [{&#64;docRoot \n}]
470      *            |--JAVADOC_INLINE_TAG_START[1x0] : [{]
471      *            |--DOC_ROOT_LITERAL[1x1] : [@docRoot]
472      *            |--WS[1x9] : [ ]
473      *            |--NEWLINE[1x10] : [\n]
474      *            |--JAVADOC_INLINE_TAG_END[2x0] : [}]
475      * </code>
476      * </pre>
477      *
478      * @see
479      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDBACBF">
480      * Oracle Docs</a>
481      * @see #JAVADOC_INLINE_TAG
482      * @noinspection HtmlTagCanBeJavadocTag
483      */
484     public static final int DOC_ROOT_LITERAL = JavadocParser.DOC_ROOT_LITERAL;
485 
486     /**
487      * '@link' literal in {&#64;link} Javadoc inline tag.
488      * <p>Such Javadoc inline tag can have one argument - {@link #REFERENCE}</p>
489      * <p><b>Example:</b></p>
490      * <pre><code>{&#64;link org.apache.utils.Lists.Comparator#compare(Object)}</code></pre>
491      * <p><b>Tree:</b></p>
492      * <pre>
493      * <code> |--JAVADOC_INLINE_TAG[1x0] :
494      *               [{&#64;link org.apache.utils.Lists.Comparator#compare(Object)}]
495      *        |--JAVADOC_INLINE_TAG_START[1x0] : [{]
496      *        |--LINK_LITERAL[1x1] : [@link]
497      *        |--WS[1x6] : [ ]
498      *        |--REFERENCE[1x7] : [org.apache.utils.Lists.Comparator#compare(Object)]
499      *            |--PACKAGE_CLASS[1x7] : [org.apache.utils]
500      *            |--DOT[1x23] : [.]
501      *            |--CLASS[1x24] : [Lists]
502      *            |--DOT[1x29] : [.]
503      *            |--CLASS[1x30] : [Comparator]
504      *            |--HASH[1x40] : [#]
505      *            |--MEMBER[1x41] : [compare]
506      *            |--PARAMETERS[1x48] : [(Object)]
507      *                |--LEFT_BRACE[1x48] : [(]
508      *                |--ARGUMENT[1x49] : [Object]
509      *                |--RIGHT_BRACE[1x55] : [)]
510      *        |--JAVADOC_INLINE_TAG_END[1x56] : [}]
511      * </code>
512      * </pre>
513      *
514      * @see
515      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDIECH">
516      * Oracle Docs</a>
517      * @see #JAVADOC_INLINE_TAG
518      * @noinspection HtmlTagCanBeJavadocTag
519      */
520     public static final int LINK_LITERAL = JavadocParser.LINK_LITERAL;
521 
522     /**
523      * '@inheritDoc' literal in {&#64;inheritDoc} Javadoc inline tag.
524      *
525      * <p>Such Javadoc inline tag does not have any arguments and can have such child nodes:</p>
526      * <ul>
527      * <li>{@link #NEWLINE}</li>
528      * <li>{@link #WS}</li>
529      * </ul>
530      *
531      * <p><b>Example:</b></p>
532      * <pre><code>{&#64;inheritDoc}</code></pre>
533      * <b>Tree:</b>
534      * <pre>
535      * <code>  |--JAVADOC_INLINE_TAG[1x0] : [{&#64;inheritDoc}]
536      *            |--JAVADOC_INLINE_TAG_START[1x0] : [{]
537      *            |--INHERIT_DOC_LITERAL[1x1] : [@inheritDoc]
538      *            |--JAVADOC_INLINE_TAG_END[1x12] : [}]
539      * </code>
540      * </pre>
541      *
542      * @see
543      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGJCHC">
544      * Oracle Docs</a>
545      * @see #JAVADOC_INLINE_TAG
546      * @noinspection HtmlTagCanBeJavadocTag
547      */
548     public static final int INHERIT_DOC_LITERAL = JavadocParser.INHERIT_DOC_LITERAL;
549 
550     /**
551      * '@linkplain' literal in {&#64;linkplain} Javadoc inline tag.
552      *
553      * <p>Such Javadoc inline tag can have one argument - {@link #REFERENCE}</p>
554      *
555      * <p><b>Example:</b></p>
556      * <pre><code>{&#64;linkplain org.apache.utils.Lists.Comparator#compare(Object) compare}</code>
557      * </pre>
558      * <b>Tree:</b>
559      * <pre>
560      * <code> |--JAVADOC_INLINE_TAG[1x0] :
561      *               [{&#64;linkplain org.apache.utils.Lists.Comparator#compare(Object) compare}]
562      *        |--JAVADOC_INLINE_TAG_START[1x0] : [{]
563      *        |--LINKPLAIN_LITERAL[1x1] : [@linkplain]
564      *        |--WS[1x11] : [ ]
565      *        |--REFERENCE[1x12] : [org.apache.utils.Lists.Comparator#compare(Object)]
566      *            |--PACKAGE_CLASS[1x12] : [org.apache.utils]
567      *            |--DOT[1x28] : [.]
568      *            |--CLASS[1x29] : [Lists]
569      *            |--DOT[1x34] : [.]
570      *            |--CLASS[1x35] : [Comparator]
571      *            |--HASH[1x45] : [#]
572      *            |--MEMBER[1x46] : [compare]
573      *            |--PARAMETERS[1x53] : [(Object)]
574      *                |--LEFT_BRACE[1x53] : [(]
575      *                |--ARGUMENT[1x54] : [Object]
576      *                |--RIGHT_BRACE[1x60] : [)]
577      *        |--DESCRIPTION[1x61] : [ compare]
578      *            |--TEXT[1x61] : [ compare]
579      *        |--JAVADOC_INLINE_TAG_END[1x69] : [}]
580      * </code>
581      * </pre>
582      *
583      * @see
584      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGBICD">
585      * Oracle Docs</a>
586      * @see #JAVADOC_INLINE_TAG
587      * @noinspection HtmlTagCanBeJavadocTag
588      */
589     public static final int LINKPLAIN_LITERAL = JavadocParser.LINKPLAIN_LITERAL;
590 
591     /**
592      * '@literal' literal in {&#64;literal} Javadoc inline tag.
593      *
594      * <p>Such Javadoc inline tag can have such child nodes:</p>
595      * <ul>
596      * <li>{@link #NEWLINE}</li>
597      * <li>{@link #WS}</li>
598      * <li>{@link #TEXT}</li>
599      * </ul>
600      *
601      * <p><b>Example:</b></p>
602      * <pre><code>{&#64;literal #compare(Object)}</code></pre>
603      * <b>Tree:</b>
604      * <pre>
605      * <code> |--JAVADOC_INLINE_TAG[1x0] : [{&#64;literal #compare(Object)}]
606      *        |--JAVADOC_INLINE_TAG_START[1x0] : [{]
607      *        |--LITERAL_LITERAL[1x1] : [@literal]
608      *        |--WS[1x9] : [ ]
609      *        |--TEXT[1x10] : [#compare(Object)]
610      *        |--JAVADOC_INLINE_TAG_END[1x27] : [}]
611      * </code>
612      * </pre>
613      *
614      * @see
615      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCFJDG">
616      * Oracle Docs</a>
617      * @see #JAVADOC_INLINE_TAG
618      * @noinspection HtmlTagCanBeJavadocTag
619      */
620     public static final int LITERAL_LITERAL = JavadocParser.LITERAL_LITERAL;
621 
622     /**
623      * '@value' literal in {&#64;value} Javadoc inline tag.
624      *
625      * <p>Such Javadoc inline tag has one argument {@link #REFERENCE}
626      * and can have such child nodes:</p>
627      * <ul>
628      * <li>{@link #NEWLINE}</li>
629      * <li>{@link #WS}</li>
630      * </ul>
631      *
632      * <p><b>Example:</b></p>
633      * <pre><code>{&#64;value Integer#MAX_VALUE}</code></pre>
634      * <b>Tree:</b>
635      * <pre>
636      * <code> |--JAVADOC_INLINE_TAG[1x0] : [&#64;value Integer#MAX_VALUE}]
637      *        |--JAVADOC_INLINE_TAG_START[1x0] : [{]
638      *        |--VALUE_LITERAL[1x1] : [@value]
639      *        |--WS[1x7] : [ ]
640      *        |--REFERENCE[1x8] : [Integer#MAX_VALUE]
641      *            |--CLASS[1x8] : [Integer]
642      *            |--HASH[1x15] : [#]
643      *            |--MEMBER[1x16] : [MAX_VALUE]
644      *        |--JAVADOC_INLINE_TAG_END[1x25] : [}]
645      * </code>
646      * </pre>
647      *
648      * @see
649      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDCDHH">
650      * Oracle Docs</a>
651      * @see #JAVADOC_INLINE_TAG
652      * @noinspection HtmlTagCanBeJavadocTag
653      */
654     public static final int VALUE_LITERAL = JavadocParser.VALUE_LITERAL;
655 
656     /**
657      * PACKAGE_CLASS represents the package or class which has been referenced in the `@see`,
658      * `@link`, `@linkplain` or `@value` javadoc tags. In the javadoc tree it shall be a child
659      * of {@link #REFERENCE}.
660      * <br>
661      * <strong>IMPORTANT:</strong> Constructs like
662      * {@code package.Class.NestedClassAtDepth1.NestedClassAtDepth2#member} are recognized by
663      * the javadoc tool from oracle, and no assumptions like, package names wouldn't consist of
664      * uppercase characters or class names begin with an uppercase character, are made.
665      * Also, <i>the reference</i> in a javadoc tag can consist just a package name or a
666      * simple class name or even a full class name. Thus, PACKAGE_CLASS can represent a
667      * package name or a simple class name or a full class name i.e checkstyle doesn't
668      * resolve references at present.
669      *
670      * <p><b>Example:</b></p>
671      * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre>
672      * <b>Tree:</b>
673      * <pre>
674      * {@code |--JAVADOC_TAG[3x0] : [@see org.apache.utils.Lists.Comparator#compare(Object)]
675      *        |--SEE_LITERAL[3x0] : [@see]
676      *        |--WS[3x4] : [ ]
677      *        |--REFERENCE[3x5] : [org.apache.utils.Lists.Comparator#compare(Object)]
678      *            |--PACKAGE_CLASS[3x5] : [org.apache.utils]
679      *            |--DOT[3x21] : [.]
680      *            |--CLASS[3x22] : [Lists]
681      *            |--DOT[3x27] : [.]
682      *            |--CLASS[3x28] : [Comparator]
683      *            |--HASH[3x38] : [#]
684      *            |--MEMBER[3x39] : [compare]
685      *            |--PARAMETERS[3x46] : [(Object)]
686      *                |--LEFT_BRACE[3x46] : [(]
687      *                |--ARGUMENT[3x47] : [Object]
688      *                |--RIGHT_BRACE[3x53] : [)]
689      * }
690      * </pre>
691      */
692     public static final int PACKAGE_CLASS = JavadocParser.PACKAGE_CLASS;
693 
694     /**
695      * Hash character in {@link #REFERENCE}.
696      * Hash character is used before specifying a class member.
697      *
698      * <p><b>Example:</b></p>
699      * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre>
700      * <b>Tree:</b>
701      * <pre>
702      * {@code |--JAVADOC_TAG[3x0] : [@see org.apache.utils.Lists.Comparator#compare(Object)]
703      *        |--SEE_LITERAL[3x0] : [@see]
704      *        |--WS[3x4] : [ ]
705      *        |--REFERENCE[3x5] : [org.apache.utils.Lists.Comparator#compare(Object)]
706      *            |--PACKAGE_CLASS[3x5] : [org.apache.utils]
707      *            |--DOT[3x21] : [.]
708      *            |--CLASS[3x22] : [Lists]
709      *            |--DOT[3x27] : [.]
710      *            |--CLASS[3x28] : [Comparator]
711      *            |--HASH[3x38] : [#]
712      *            |--MEMBER[3x39] : [compare]
713      *            |--PARAMETERS[3x46] : [(Object)]
714      *                |--LEFT_BRACE[3x46] : [(]
715      *                |--ARGUMENT[3x47] : [Object]
716      *                |--RIGHT_BRACE[3x53] : [)]
717      * }
718      * </pre>
719      */
720     public static final int HASH = JavadocParser.HASH;
721 
722     /**
723      * A class member in {@link #REFERENCE}.
724      * Class member is specified after {@link #HASH} symbol.
725      *
726      * <p><b>Example:</b></p>
727      * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre>
728      * <b>Tree:</b>
729      * <pre>
730      * {@code |--JAVADOC_TAG[3x0] : [@see org.apache.utils.Lists.Comparator#compare(Object)]
731      *        |--SEE_LITERAL[3x0] : [@see]
732      *        |--WS[3x4] : [ ]
733      *        |--REFERENCE[3x5] : [org.apache.utils.Lists.Comparator#compare(Object)]
734      *            |--PACKAGE_CLASS[3x5] : [org.apache.utils]
735      *            |--DOT[3x21] : [.]
736      *            |--CLASS[3x22] : [Lists]
737      *            |--DOT[3x27] : [.]
738      *            |--CLASS[3x28] : [Comparator]
739      *            |--HASH[3x38] : [#]
740      *            |--MEMBER[3x39] : [compare]
741      *            |--PARAMETERS[3x46] : [(Object)]
742      *                |--LEFT_BRACE[3x46] : [(]
743      *                |--ARGUMENT[3x47] : [Object]
744      *                |--RIGHT_BRACE[3x53] : [)]
745      * }
746      * </pre>
747      */
748     public static final int MEMBER = JavadocParser.MEMBER;
749 
750     /**
751      * Left brace in {@link #PARAMETERS} part of {@link #REFERENCE}.
752      *
753      * <p><b>Example:</b></p>
754      * <pre>{@code @see #method(Processor, String)}</pre>
755      * <b>Tree:</b>
756      * <pre>
757      * {@code |--JAVADOC_TAG[1x0] : [@see #method(Processor, String)]
758      *        |--SEE_LITERAL[1x0] : [@see]
759      *        |--WS[1x4] : [ ]
760      *        |--REFERENCE[1x5] : [#method(Processor, String)]
761      *            |--HASH[1x5] : [#]
762      *            |--MEMBER[1x6] : [method]
763      *            |--PARAMETERS[1x12] : [(Processor, String)]
764      *                |--LEFT_BRACE[1x12] : [(]
765      *                |--ARGUMENT[1x13] : [Processor]
766      *                |--COMMA[1x22] : [,]
767      *                |--WS[1x23] : [ ]
768      *                |--ARGUMENT[1x24] : [String]
769      *                |--RIGHT_BRACE[1x30] : [)]
770      * }
771      * </pre>
772      */
773     public static final int LEFT_BRACE = JavadocParser.LEFT_BRACE;
774 
775     /**
776      * Right brace in {@link #PARAMETERS} part of {@link #REFERENCE}.
777      *
778      * <p><b>Example:</b></p>
779      * <pre>{@code @see #method(Processor, String)}</pre>
780      * <b>Tree:</b>
781      * <pre>
782      * {@code |--JAVADOC_TAG[1x0] : [@see #method(Processor, String)]
783      *        |--SEE_LITERAL[1x0] : [@see]
784      *        |--WS[1x4] : [ ]
785      *        |--REFERENCE[1x5] : [#method(Processor, String)]
786      *            |--HASH[1x5] : [#]
787      *            |--MEMBER[1x6] : [method]
788      *            |--PARAMETERS[1x12] : [(Processor, String)]
789      *                |--LEFT_BRACE[1x12] : [(]
790      *                |--ARGUMENT[1x13] : [Processor]
791      *                |--COMMA[1x22] : [,]
792      *                |--WS[1x23] : [ ]
793      *                |--ARGUMENT[1x24] : [String]
794      *                |--RIGHT_BRACE[1x30] : [)]
795      * }
796      * </pre>
797      */
798     public static final int RIGHT_BRACE = JavadocParser.RIGHT_BRACE;
799 
800     /**
801      * Argument definition in {@link #PARAMETERS} part of {@link #REFERENCE}.
802      *
803      * <p><b>Example:</b></p>
804      * <pre>{@code @see #method(Processor, String)}</pre>
805      * <b>Tree:</b>
806      * <pre>
807      * {@code |--JAVADOC_TAG[1x0] : [@see #method(Processor, String)]
808      *        |--SEE_LITERAL[1x0] : [@see]
809      *        |--WS[1x4] : [ ]
810      *        |--REFERENCE[1x5] : [#method(Processor, String)]
811      *            |--HASH[1x5] : [#]
812      *            |--MEMBER[1x6] : [method]
813      *            |--PARAMETERS[1x12] : [(Processor, String)]
814      *                |--LEFT_BRACE[1x12] : [(]
815      *                |--ARGUMENT[1x13] : [Processor]
816      *                |--COMMA[1x22] : [,]
817      *                |--WS[1x23] : [ ]
818      *                |--ARGUMENT[1x24] : [String]
819      *                |--RIGHT_BRACE[1x30] : [)]
820      * }
821      * </pre>
822      */
823     public static final int ARGUMENT = JavadocParser.ARGUMENT;
824 
825     /**
826      * Comma separator between parameters in {@link #PARAMETERS} part of {@link #REFERENCE}.
827      *
828      * <p><b>Example:</b></p>
829      * <pre>{@code @see #method(Processor, String)}</pre>
830      * <b>Tree:</b>
831      * <pre>
832      * {@code |--JAVADOC_TAG[1x0] : [@see #method(Processor, String)]
833      *        |--SEE_LITERAL[1x0] : [@see]
834      *        |--WS[1x4] : [ ]
835      *        |--REFERENCE[1x5] : [#method(Processor, String)]
836      *            |--HASH[1x5] : [#]
837      *            |--MEMBER[1x6] : [method]
838      *            |--PARAMETERS[1x12] : [(Processor, String)]
839      *                |--LEFT_BRACE[1x12] : [(]
840      *                |--ARGUMENT[1x13] : [Processor]
841      *                |--COMMA[1x22] : [,]
842      *                |--WS[1x23] : [ ]
843      *                |--ARGUMENT[1x24] : [String]
844      *                |--RIGHT_BRACE[1x30] : [)]
845      * }
846      * </pre>
847      *
848      * @see #PARAMETERS
849      * @see #REFERENCE
850      * @see #ARGUMENT
851      */
852     public static final int COMMA = JavadocParser.COMMA;
853 
854     /**
855      * Quoted text.
856      * One of possible @see tag arguments.
857      *
858      * <p><b>Example:</b></p>
859      * <pre>{@code @see "Spring Framework"}</pre>
860      * <b>Tree:</b>
861      * <pre>
862      * {@code |--JAVADOC_TAG[1x0] : [@see "Spring Framework"]
863      *        |--SEE_LITERAL[1x0] : [@see]
864      *        |--WS[1x4] : [ ]
865      *        |--STRING[1x5] : ["Spring Framework"]
866      * }
867      * </pre>
868      *
869      * @see #SEE_LITERAL
870      */
871     public static final int STRING = JavadocParser.STRING;
872 
873     /**
874      * Exception class name. First argument in {@link #THROWS_LITERAL @throws} and
875      * {@link #EXCEPTION_LITERAL @exception} Javadoc tags.
876      *
877      * <p><b>Example:</b></p>
878      * <pre>{@code @throws IOException connection problems}</pre>
879      * <b>Tree:</b>
880      * <pre>
881      * {@code |--JAVADOC_TAG[1x0] : [@throws IOException connection problems]
882      *        |--THROWS_LITERAL[1x0] : [@throws]
883      *        |--WS[1x7] : [ ]
884      *        |--CLASS_NAME[1x8] : [IOException]
885      *        |--WS[1x19] : [ ]
886      *        |--DESCRIPTION[1x20] : [connection problems]
887      *            |--TEXT[1x20] : [connection problems]
888      * }
889      * </pre>
890      *
891      * @see #EXCEPTION_LITERAL
892      * @see #THROWS_LITERAL
893      */
894     public static final int CLASS_NAME = JavadocParser.CLASS_NAME;
895 
896     /**
897      * First argument in {@link #PARAM_LITERAL @param} Javadoc tag.
898      *
899      * <p><b>Example:</b></p>
900      * <pre>{@code @param T The bar.}</pre>
901      * <b>Tree:</b>
902      * <pre>
903      * {@code |--JAVADOC_TAG[4x3] : [@param T The bar.]
904      *        |--PARAM_LITERAL[4x3] : [@param]
905      *        |--WS[4x9] : [ ]
906      *        |--PARAMETER_NAME[4x10] : [T]
907      *        |--WS[4x11] : [ ]
908      *        |--DESCRIPTION[4x12] : [The bar.]
909      *            |--TEXT[4x12] : [The bar.]
910      * }
911      * </pre>
912      *
913      * @see
914      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHJECF">
915      * Oracle Docs</a>
916      * @see #PARAM_LITERAL
917      */
918     public static final int PARAMETER_NAME = JavadocParser.PARAMETER_NAME;
919 
920     /**
921      * 'exclude' literal.
922      * One of three possible {@link #SERIAL_LITERAL @serial} tag arguments.
923      *
924      * <p><b>Example:</b></p>
925      * <pre>{@code @serial exclude}</pre>
926      * <b>Tree:</b>
927      * <pre>
928      * {@code |--JAVADOC_TAG[1x0] : [@serial exclude]
929      *        |--SERIAL_LITERAL[1x0] : [@serial]
930      *        |--WS[1x7] : [ ]
931      *        |--LITERAL_EXCLUDE[1x8] : [exclude]
932      * }
933      * </pre>
934      *
935      * @see
936      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF">
937      * Oracle Docs</a>
938      * @see #SERIAL_LITERAL
939      */
940     public static final int LITERAL_EXCLUDE = JavadocParser.LITERAL_EXCLUDE;
941 
942     /**
943      * 'include' literal.
944      * One of three possible {@link #SERIAL_LITERAL @serial} tag arguments.
945      *
946      * <p><b>Example:</b></p>
947      * <pre>{@code @serial include}</pre>
948      * <b>Tree:</b>
949      * <pre>
950      * {@code |--JAVADOC_TAG[1x0] : [@serial include]
951      *        |--SERIAL_LITERAL[1x0] : [@serial]
952      *        |--WS[1x7] : [ ]
953      *        |--LITERAL_INCLUDE[1x8] : [include]
954      * }
955      * </pre>
956      *
957      * @see
958      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF">
959      * Oracle Docs</a>
960      * @see #SERIAL_LITERAL
961      */
962     public static final int LITERAL_INCLUDE = JavadocParser.LITERAL_INCLUDE;
963 
964     /**
965      * Field name. First argument of {@link #SERIAL_FIELD_LITERAL @serialField} Javadoc tag.
966      *
967      * <p><b>Example:</b></p>
968      * <pre>{@code @serialField counter Integer objects counter}</pre>
969      * <b>Tree:</b>
970      * <pre>
971      * {@code |--JAVADOC_TAG[3x0] : [@serialField counter Integer objects counter]
972      *        |--SERIAL_FIELD_LITERAL[3x0] : [@serialField]
973      *        |--WS[3x12] : [ ]
974      *        |--FIELD_NAME[3x13] : [counter]
975      *        |--WS[3x20] : [ ]
976      *        |--FIELD_TYPE[3x21] : [Integer]
977      *        |--WS[3x28] : [ ]
978      *        |--DESCRIPTION[3x29] : [objects counter]
979      *            |--TEXT[3x29] : [objects counter]
980      * }
981      * </pre>
982      *
983      * @see
984      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF">
985      * Oracle Docs</a>
986      * @see #SERIAL_FIELD_LITERAL
987      */
988     public static final int FIELD_NAME = JavadocParser.FIELD_NAME;
989 
990     /**
991      * Field type. Second argument of {@link #SERIAL_FIELD_LITERAL @serialField} Javadoc tag.
992      *
993      * <p><b>Example:</b></p>
994      * <pre>{@code @serialField counter Integer objects counter}</pre>
995      * <b>Tree:</b>
996      * <pre>
997      * {@code |--JAVADOC_TAG[3x0] : [@serialField counter Integer objects counter]
998      *        |--SERIAL_FIELD_LITERAL[3x0] : [@serialField]
999      *        |--WS[3x12] : [ ]
1000      *        |--FIELD_NAME[3x13] : [counter]
1001      *        |--WS[3x20] : [ ]
1002      *        |--FIELD_TYPE[3x21] : [Integer]
1003      *        |--WS[3x28] : [ ]
1004      *        |--DESCRIPTION[3x29] : [objects counter]
1005      *            |--TEXT[3x29] : [objects counter]
1006      * }
1007      * </pre>
1008      *
1009      * @see
1010      * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF">
1011      * Oracle Docs</a>
1012      * @see #SERIAL_FIELD_LITERAL
1013      */
1014     public static final int FIELD_TYPE = JavadocParser.FIELD_TYPE;
1015 
1016     //--------------------------------------------------------------------------------------------//
1017     //------------------        HTML TAGS          -----------------------------------------------//
1018     //--------------------------------------------------------------------------------------------//
1019 
1020     /**
1021      * Identifier inside HTML tag: tag name or attribute name.
1022      */
1023     public static final int HTML_TAG_NAME = JavadocParser.HTML_TAG_NAME;
1024 
1025     // HTML tag components
1026 
1027     /**
1028      * Start html tag component: {@code '<'}.
1029      */
1030     public static final int START = JavadocParser.START;
1031 
1032     /**
1033      * Slash html tag component: {@code '/'}.
1034      */
1035     public static final int SLASH = JavadocParser.SLASH;
1036 
1037     /**
1038      * End html tag component: {@code '>'}.
1039      */
1040     public static final int END = JavadocParser.END;
1041 
1042     /**
1043      * Slash close html tag component: {@code '/>'}.
1044      */
1045     public static final int SLASH_END = JavadocParser.SLASH_END;
1046 
1047     /**
1048      * Equals html tag component: {@code '='}.
1049      */
1050     public static final int EQUALS = JavadocParser.EQUALS;
1051 
1052     /**
1053      * Attribute value html tag component.
1054      */
1055     public static final int ATTR_VALUE = JavadocParser.ATTR_VALUE;
1056 
1057     /////////////////////// HTML TAGS WITH OPTIONAL END TAG /////////////////////////////////////
1058     /** Paragraph tag name. */
1059     public static final int P_HTML_TAG_NAME = JavadocParser.P_HTML_TAG_NAME;
1060 
1061     /** List item tag name. */
1062     public static final int LI_HTML_TAG_NAME = JavadocParser.LI_HTML_TAG_NAME;
1063 
1064     /** Table row tag name. */
1065     public static final int TR_HTML_TAG_NAME = JavadocParser.TR_HTML_TAG_NAME;
1066 
1067     /** Table cell tag name. */
1068     public static final int TD_HTML_TAG_NAME = JavadocParser.TD_HTML_TAG_NAME;
1069 
1070     /** Table header cell tag name. */
1071     public static final int TH_HTML_TAG_NAME = JavadocParser.TH_HTML_TAG_NAME;
1072 
1073     /** Body tag name. */
1074     public static final int BODY_HTML_TAG_NAME = JavadocParser.BODY_HTML_TAG_NAME;
1075 
1076     /** Colgroup tag name. */
1077     public static final int COLGROUP_HTML_TAG_NAME = JavadocParser.COLGROUP_HTML_TAG_NAME;
1078 
1079     /** Description of a term tag name. */
1080     public static final int DD_HTML_TAG_NAME = JavadocParser.DD_HTML_TAG_NAME;
1081 
1082     /** Description term tag name. */
1083     public static final int DT_HTML_TAG_NAME = JavadocParser.DT_HTML_TAG_NAME;
1084 
1085     /** Head tag name. */
1086     public static final int HEAD_HTML_TAG_NAME = JavadocParser.HEAD_HTML_TAG_NAME;
1087 
1088     /** Html tag name. */
1089     public static final int HTML_HTML_TAG_NAME = JavadocParser.HTML_HTML_TAG_NAME;
1090 
1091     /** Option tag name. */
1092     public static final int OPTION_HTML_TAG_NAME = JavadocParser.OPTION_HTML_TAG_NAME;
1093 
1094     /** Table body tag name. */
1095     public static final int TBODY_HTML_TAG_NAME = JavadocParser.TBODY_HTML_TAG_NAME;
1096 
1097     /** Table foot tag name. */
1098     public static final int TFOOT_HTML_TAG_NAME = JavadocParser.TFOOT_HTML_TAG_NAME;
1099 
1100     /** Table head tag name. */
1101     public static final int THEAD_HTML_TAG_NAME = JavadocParser.THEAD_HTML_TAG_NAME;
1102     ///////////////////////////////////////////////////////////////////////////////////////////////
1103 
1104     /////////////////////// SINGLETON HTML TAGS  //////////////////////////////////////////////////
1105     /** Area tag name. */
1106     public static final int AREA_HTML_TAG_NAME = JavadocParser.AREA_HTML_TAG_NAME;
1107 
1108     /** Base tag name. */
1109     public static final int BASE_HTML_TAG_NAME = JavadocParser.BASE_HTML_TAG_NAME;
1110 
1111     /** Basefont tag name. */
1112     public static final int BASEFONT_HTML_TAG_NAME = JavadocParser.BASEFONT_HTML_TAG_NAME;
1113 
1114     /** Br tag name. */
1115     public static final int BR_HTML_TAG_NAME = JavadocParser.BR_HTML_TAG_NAME;
1116 
1117     /** Col tag name. */
1118     public static final int COL_HTML_TAG_NAME = JavadocParser.COL_HTML_TAG_NAME;
1119 
1120     /** Frame tag name. */
1121     public static final int FRAME_HTML_TAG_NAME = JavadocParser.FRAME_HTML_TAG_NAME;
1122 
1123     /** Hr tag name. */
1124     public static final int HR_HTML_TAG_NAME = JavadocParser.HR_HTML_TAG_NAME;
1125 
1126     /** Img tag name. */
1127     public static final int IMG_HTML_TAG_NAME = JavadocParser.IMG_HTML_TAG_NAME;
1128 
1129     /** Input tag name. */
1130     public static final int INPUT_HTML_TAG_NAME = JavadocParser.INPUT_HTML_TAG_NAME;
1131 
1132     /** Isindex tag name. */
1133     public static final int ISINDEX_HTML_TAG_NAME = JavadocParser.ISINDEX_HTML_TAG_NAME;
1134 
1135     /** Link tag name. */
1136     public static final int LINK_HTML_TAG_NAME = JavadocParser.LINK_HTML_TAG_NAME;
1137 
1138     /** Meta tag name. */
1139     public static final int META_HTML_TAG_NAME = JavadocParser.META_HTML_TAG_NAME;
1140 
1141     /** Param tag name. */
1142     public static final int PARAM_HTML_TAG_NAME = JavadocParser.PARAM_HTML_TAG_NAME;
1143     /** "embed" tag name. */
1144     public static final int EMBED_HTML_TAG_NAME = JavadocParser.EMBED_HTML_TAG_NAME;
1145     /** "keygen" tag name. */
1146     public static final int KEYGEN_HTML_TAG_NAME = JavadocParser.KEYGEN_HTML_TAG_NAME;
1147     /** "source" tag name. */
1148     public static final int SOURCE_HTML_TAG_NAME = JavadocParser.SOURCE_HTML_TAG_NAME;
1149     /** "track" tag name. */
1150     public static final int TRACK_HTML_TAG_NAME = JavadocParser.TRACK_HTML_TAG_NAME;
1151     /** "wbr" tag name. */
1152     public static final int WBR_HTML_TAG_NAME = JavadocParser.WBR_HTML_TAG_NAME;
1153     ///////////////////////////////////////////////////////////////////////////////////////////////
1154 
1155     /**
1156      * HTML comment start symbol '&lt;&#33;--'.
1157      */
1158     public static final int HTML_COMMENT_START = JavadocParser.HTML_COMMENT_START;
1159 
1160     /**
1161      * HTML comment end symbol '--&gt;'.
1162      */
1163     public static final int HTML_COMMENT_END = JavadocParser.HTML_COMMENT_END;
1164 
1165     /**
1166      * &lt;&#33;[CDATA[&#46;&#46;&#46;]]&gt; block.
1167      */
1168     public static final int CDATA = JavadocParser.CDATA;
1169 
1170     //--------------------------------------------------------------------------------------------//
1171     //------------------        OTHER          ---------------------------------------------------//
1172     //--------------------------------------------------------------------------------------------//
1173 
1174     /** Leading asterisk. */
1175     public static final int LEADING_ASTERISK = JavadocParser.LEADING_ASTERISK;
1176 
1177     /**
1178      * Newline symbol - '\n'.
1179      */
1180     public static final int NEWLINE = JavadocParser.NEWLINE;
1181 
1182     /**
1183      * Any other symbol.
1184      */
1185     public static final int CHAR = JavadocParser.CHAR;
1186 
1187     /**
1188      * Whitespace or tab ('\t') symbol.
1189      */
1190     public static final int WS = JavadocParser.WS;
1191 
1192     /**
1193      * End Of File symbol.
1194      */
1195     public static final int EOF = Recognizer.EOF;
1196 
1197     //--------------------------------------------------------------------------------------------//
1198     //------- JAVADOC TAGS DEPENDING ON RULE TYPES OFFSET ----------------------------------------//
1199     //--------------------------------------------------------------------------------------------//
1200 
1201     /** Rule types offset.
1202      * RULE_TYPES_OFFSET constant is used to split lexer tokens types and parser rules types.
1203      * We need unique numbers for all tokens,
1204      * ANTLR do not need this and that is why this types are mixed by used values.
1205      * All values we can take a look at
1206      * target/generated-sources/antlr/com/puppycrawl/tools/checkstyle/grammars/javadoc/JavadocParser.java
1207      * For example: LEADING_ASTERISK=1 and RULE_htmlElement = 1.
1208      * RULE_TYPES_OFFSET required to shift parser rules,
1209      * to let them not overlap with types that have prefix "RULE_".
1210      */
1211     private static final int RULE_TYPES_OFFSET = 10000;
1212 
1213     /**
1214      * Root node of any Javadoc comment.
1215      * Last child is always {@link #EOF}.
1216      *
1217      * <p><b>Tree for example:</b></p>
1218      * <pre>{@code
1219      * JAVADOC[3x0]
1220      *   |--NEWLINE[3x0] : [\n]
1221      *   |--LEADING_ASTERISK[4x0] : [ *]
1222      *   |--WS[4x2] : [ ]
1223      *   |--JAVADOC_TAG[4x3] : [@param T The bar.\n ]
1224      *       |--PARAM_LITERAL[4x3] : [@param]
1225      *       |--WS[4x9] : [ ]
1226      *       |--PARAMETER_NAME[4x10] : [T]
1227      *       |--WS[4x11] : [ ]
1228      *       |--DESCRIPTION[4x12] : [The bar.\n ]
1229      *           |--TEXT[4x12] : [The bar.]
1230      *           |--NEWLINE[4x20] : [\n]
1231      *           |--TEXT[5x0] : [ ]
1232      *   |--EOF[5x1] : [<EOF>]
1233      * }</pre>
1234      */
1235     public static final int JAVADOC = JavadocParser.RULE_javadoc + RULE_TYPES_OFFSET;
1236 
1237     /**
1238      * Javadoc tag.
1239      *
1240      * <p>Type of Javadoc tag is resolved by literal node that is first child of this node.</p>
1241      *
1242      * <p>As literal could be:</p>
1243      * <ul>
1244      * <li>{@link #RETURN_LITERAL}</li>
1245      * <li>{@link #DEPRECATED_LITERAL}</li>
1246      * <li>{@link #SINCE_LITERAL}</li>
1247      * <li>{@link #SERIAL_DATA_LITERAL}</li>
1248      * <li>{@link #SERIAL_FIELD_LITERAL}</li>
1249      * <li>{@link #PARAM_LITERAL}</li>
1250      * <li>{@link #SEE_LITERAL}</li>
1251      * <li>{@link #SERIAL_LITERAL}</li>
1252      * <li>{@link #VERSION_LITERAL}</li>
1253      * <li>{@link #EXCEPTION_LITERAL}</li>
1254      * <li>{@link #THROWS_LITERAL}</li>
1255      * <li>{@link #AUTHOR_LITERAL}</li>
1256      * <li>or {@link #CUSTOM_NAME} if it is custom Javadoc tag.</li>
1257      * </ul>
1258      *
1259      * <p><b>Example</b></p>
1260      * <pre>{@code &#64;param T The bar.}</pre>
1261      * <b>Tree</b>
1262      * <pre>{@code
1263      *   |--JAVADOC_TAG[4x3] : [@param T The bar.]
1264      *       |--PARAM_LITERAL[4x3] : [@param]
1265      *       |--WS[4x9] : [ ]
1266      *       |--PARAMETER_NAME[4x10] : [T]
1267      *       |--WS[4x11] : [ ]
1268      *       |--DESCRIPTION[4x12] : [The bar.]
1269      *           |--TEXT[4x12] : [The bar.]
1270      * }</pre>
1271      */
1272 
1273     public static final int JAVADOC_TAG = JavadocParser.RULE_javadocTag + RULE_TYPES_OFFSET;
1274     /**
1275      * Javadoc inline tag.
1276      *
1277      * <p>Type of Javadoc inline tag is resolved by literal node that is second child of this node.
1278      * First child is always {@link #JAVADOC_INLINE_TAG_START} and last node is always
1279      * {@link #JAVADOC_INLINE_TAG_END}.</p>
1280      *
1281      * <p>As literal could be:</p>
1282      * <ul>
1283      * <li>{@link #CODE_LITERAL}</li>
1284      * <li>{@link #DOC_ROOT_LITERAL}</li>
1285      * <li>{@link #LINK_LITERAL}</li>
1286      * <li>{@link #INHERIT_DOC_LITERAL}</li>
1287      * <li>{@link #LINKPLAIN_LITERAL}</li>
1288      * <li>{@link #LITERAL_LITERAL}</li>
1289      * <li>{@link #VALUE_LITERAL}</li>
1290      * <li>or {@link #CUSTOM_NAME} if it is custom Javadoc inline tag.</li>
1291      * </ul>
1292      *
1293      * <p><b>Example:</b></p>
1294      * <pre><code>{&#64;link String}</code></pre>
1295      * <b>Tree:</b>
1296      * <pre>
1297      * <code> |--JAVADOC_INLINE_TAG[4x3] : [&#64;link String}]
1298      *        |--JAVADOC_INLINE_TAG_START[4x3] : [{]
1299      *        |--LINK_LITERAL[4x4] : [@link]
1300      *        |--WS[4x9] : [ ]
1301      *        |--REFERENCE[4x10] : [String]
1302      *            |--CLASS[4x10] : [String]
1303      *        |--JAVADOC_INLINE_TAG_END[4x16] : [}]
1304      * </code>
1305      * </pre>
1306      * @noinspection HtmlTagCanBeJavadocTag
1307      */
1308     public static final int JAVADOC_INLINE_TAG = JavadocParser.RULE_javadocInlineTag
1309             + RULE_TYPES_OFFSET;
1310 
1311     /**
1312      * Parameter of the Javadoc tags listed below.
1313      * <ul>
1314      * <li>{@link #SEE_LITERAL @see}</li>
1315      * <li>{@link #LINK_LITERAL &#123;&#64;link&#125;}</li>
1316      * <li>{@link #LINKPLAIN_LITERAL &#123;&#64;linkplain&#125;}</li>
1317      * <li>{@link #VALUE_LITERAL &#123;&#64;value&#125;}</li>
1318      * </ul>
1319      */
1320     public static final int REFERENCE = JavadocParser.RULE_reference + RULE_TYPES_OFFSET;
1321 
1322     /**
1323      * Parameters part in {@link #REFERENCE}.
1324      * It is used to specify parameters for {@link #MEMBER method}.
1325      * Always contains {@link #LEFT_BRACE} as first child and {@link #RIGHT_BRACE} as last child.
1326      * Each parameter is represented by {@link #ARGUMENT} node.
1327      * Arguments in braces are separated by {@link #COMMA} (and optional {@link #WS}).
1328      *
1329      * <p><b>Example:</b></p>
1330      * <pre>{@code @see #method(Processor, String)}</pre>
1331      * <b>Tree:</b>
1332      * <pre>
1333      * {@code |--JAVADOC_TAG[1x0] : [@see #method(Processor, String)]
1334      *        |--SEE_LITERAL[1x0] : [@see]
1335      *        |--WS[1x4] : [ ]
1336      *        |--REFERENCE[1x5] : [#method(Processor, String)]
1337      *            |--HASH[1x5] : [#]
1338      *            |--MEMBER[1x6] : [method]
1339      *            |--PARAMETERS[1x12] : [(Processor, String)]
1340      *                |--LEFT_BRACE[1x12] : [(]
1341      *                |--ARGUMENT[1x13] : [Processor]
1342      *                |--COMMA[1x22] : [,]
1343      *                |--WS[1x23] : [ ]
1344      *                |--ARGUMENT[1x24] : [String]
1345      *                |--RIGHT_BRACE[1x30] : [)]
1346      * }
1347      * </pre>
1348      */
1349     public static final int PARAMETERS = JavadocParser.RULE_parameters + RULE_TYPES_OFFSET;
1350 
1351     /**
1352      * Description node. It contains:
1353      * <ul>
1354      * <li>{@link #TEXT}</li>
1355      * <li>{@link #WS}</li>
1356      * <li>{@link #NEWLINE}</li>
1357      * <li>{@link #HTML_ELEMENT}</li>
1358      * </ul>
1359      *
1360      * <p>It is argument for many Javadoc tags and inline tags.</p>
1361      *
1362      * <p><b>Example:</b></p>
1363      * <pre>{@code @throws IOException if <b>connection</b> problems occur}</pre>
1364      * <b>Tree:</b>
1365      * <pre>
1366      * {@code |--JAVADOC_TAG[1x0] : [@throws IOException if <b>connection</b> problems occur]
1367      *        |--THROWS_LITERAL[1x0] : [@throws]
1368      *        |--WS[1x7] : [ ]
1369      *        |--CLASS_NAME[1x8] : [IOException]
1370      *        |--WS[1x19] : [ ]
1371      *        |--DESCRIPTION[1x20] : [if <b>connection</b> problems occur]
1372      *            |--TEXT[1x20] : [if ]
1373      *            |--HTML_ELEMENT[1x23] : [<b>connection</b>]
1374      *                |--HTML_TAG[1x23] : [<b>connection</b>]
1375      *                    |--HTML_ELEMENT_START[1x23] : [<b>]
1376      *                        |--START[1x23] : [<]
1377      *                        |--HTML_TAG_NAME[1x24] : [b]
1378      *                        |--END[1x25] : [>]
1379      *                    |--TEXT[1x26] : [connection]
1380      *                    |--HTML_ELEMENT_END[1x36] : [</b>]
1381      *                        |--START[1x36] : [<]
1382      *                        |--SLASH[1x37] : [/]
1383      *                        |--HTML_TAG_NAME[1x38] : [b]
1384      *                        |--END[1x39] : [>]
1385      *            |--TEXT[1x40] : [ problems occur]
1386      * }
1387      * </pre>
1388      */
1389     public static final int DESCRIPTION = JavadocParser.RULE_description + RULE_TYPES_OFFSET;
1390 
1391     //--------------------------------------------------------------------------------------------//
1392     //--------- HTML TAGS DEPENDING ON RULE TYPES OFFSET -----------------------------------------//
1393     //--------------------------------------------------------------------------------------------//
1394 
1395     /**
1396      * Parent node for all html tags.
1397      */
1398     public static final int HTML_ELEMENT = JavadocParser.RULE_htmlElement
1399             + RULE_TYPES_OFFSET;
1400 
1401     /**
1402      * Start html tag: &lt;XXX&gt;.
1403      */
1404     public static final int HTML_ELEMENT_START = JavadocParser.RULE_htmlElementStart
1405             + RULE_TYPES_OFFSET;
1406 
1407     /**
1408      * End html tag: &lt;XXX&gt;.
1409      */
1410     public static final int HTML_ELEMENT_END = JavadocParser.RULE_htmlElementEnd
1411             + RULE_TYPES_OFFSET;
1412 
1413     /**
1414      * Non-special HTML tag.
1415      */
1416     public static final int HTML_TAG = JavadocParser.RULE_htmlTag + RULE_TYPES_OFFSET;
1417 
1418     /**
1419      * Html tag attribute. Parent node for: {@code HTML_TAG_IDENT, EQUALS, ATTR_VALUE}.
1420      */
1421     public static final int ATTRIBUTE = JavadocParser.RULE_attribute
1422             + RULE_TYPES_OFFSET;
1423 
1424     /////////////////////// HTML TAGS WITH OPTIONAL END TAG /////////////////////////////////////
1425     /** Paragraph html tag: {@code <p></p>}. */
1426     public static final int PARAGRAPH = JavadocParser.RULE_paragraph + RULE_TYPES_OFFSET;
1427     /** Start paragraph tag. */
1428     public static final int P_TAG_START = JavadocParser.RULE_pTagStart + RULE_TYPES_OFFSET;
1429     /** End paragraph tag. */
1430     public static final int P_TAG_END = JavadocParser.RULE_pTagEnd + RULE_TYPES_OFFSET;
1431     /** List item html tag: {@code <li></li>}. */
1432 
1433     public static final int LI = JavadocParser.RULE_li + RULE_TYPES_OFFSET;
1434     /** Start list item tag. */
1435     public static final int LI_TAG_START = JavadocParser.RULE_liTagStart + RULE_TYPES_OFFSET;
1436     /** End list item tag. */
1437     public static final int LI_TAG_END = JavadocParser.RULE_liTagEnd + RULE_TYPES_OFFSET;
1438 
1439     /** Table row html tag: {@code <tr></tr>}. */
1440     public static final int TR = JavadocParser.RULE_tr + RULE_TYPES_OFFSET;
1441     /** Start table row tag. */
1442     public static final int TR_TAG_START = JavadocParser.RULE_trTagStart + RULE_TYPES_OFFSET;
1443     /** End table row tag. */
1444     public static final int TR_TAG_END = JavadocParser.RULE_trTagEnd + RULE_TYPES_OFFSET;
1445 
1446     /** Table cell html tag: {@code <td></td>}. */
1447     public static final int TD = JavadocParser.RULE_td + RULE_TYPES_OFFSET;
1448     /** Start table cell tag. */
1449     public static final int TD_TAG_START = JavadocParser.RULE_tdTagStart + RULE_TYPES_OFFSET;
1450     /** End table cell tag. */
1451     public static final int TD_TAG_END = JavadocParser.RULE_tdTagEnd + RULE_TYPES_OFFSET;
1452 
1453     /** Table header cell html tag: {@code <th></th>}. */
1454     public static final int TH = JavadocParser.RULE_th + RULE_TYPES_OFFSET;
1455     /** Start table header cell tag. */
1456     public static final int TH_TAG_START = JavadocParser.RULE_thTagStart + RULE_TYPES_OFFSET;
1457     /** End table header cell tag. */
1458     public static final int TH_TAG_END = JavadocParser.RULE_thTagEnd + RULE_TYPES_OFFSET;
1459 
1460     /** Body html tag. */
1461     public static final int BODY = JavadocParser.RULE_body + RULE_TYPES_OFFSET;
1462     /** Start body tag. */
1463     public static final int BODY_TAG_START = JavadocParser.RULE_bodyTagStart + RULE_TYPES_OFFSET;
1464     /** End body tag. */
1465     public static final int BODY_TAG_END = JavadocParser.RULE_bodyTagEnd + RULE_TYPES_OFFSET;
1466 
1467     /** Colgroup html tag. */
1468     public static final int COLGROUP = JavadocParser.RULE_colgroup + RULE_TYPES_OFFSET;
1469     /** Start colgroup tag. */
1470     public static final int COLGROUP_TAG_START = JavadocParser.RULE_colgroupTagStart
1471             + RULE_TYPES_OFFSET;
1472     /** End colgroup tag. */
1473     public static final int COLGROUP_TAG_END = JavadocParser.RULE_colgroupTagEnd
1474             + RULE_TYPES_OFFSET;
1475 
1476     /** Description of a term html tag: {@code <dd></dd>}. */
1477     public static final int DD = JavadocParser.RULE_dd + RULE_TYPES_OFFSET;
1478     /** Start description of a term tag. */
1479     public static final int DD_TAG_START = JavadocParser.RULE_ddTagStart + RULE_TYPES_OFFSET;
1480     /** End description of a term tag. */
1481     public static final int DD_TAG_END = JavadocParser.RULE_ddTagEnd + RULE_TYPES_OFFSET;
1482 
1483     /** Description term html tag: {@code <dt></dt>}. */
1484     public static final int DT = JavadocParser.RULE_dt + RULE_TYPES_OFFSET;
1485     /** Start description term tag. */
1486     public static final int DT_TAG_START = JavadocParser.RULE_dtTagStart + RULE_TYPES_OFFSET;
1487     /** End description term tag. */
1488     public static final int DT_TAG_END = JavadocParser.RULE_dtTagEnd + RULE_TYPES_OFFSET;
1489 
1490     /** Head html tag. */
1491     public static final int HEAD = JavadocParser.RULE_head + RULE_TYPES_OFFSET;
1492     /** Start head tag. */
1493     public static final int HEAD_TAG_START = JavadocParser.RULE_headTagStart + RULE_TYPES_OFFSET;
1494     /** End head tag. */
1495     public static final int HEAD_TAG_END = JavadocParser.RULE_headTagEnd + RULE_TYPES_OFFSET;
1496 
1497     /** Html html tag. */
1498     public static final int HTML = JavadocParser.RULE_html + RULE_TYPES_OFFSET;
1499     /** Start html tag. */
1500     public static final int HTML_TAG_START = JavadocParser.RULE_htmlTagStart + RULE_TYPES_OFFSET;
1501     /** End html tag. */
1502     public static final int HTML_TAG_END = JavadocParser.RULE_htmlTagEnd + RULE_TYPES_OFFSET;
1503 
1504     /** Option html tag. */
1505     public static final int OPTION = JavadocParser.RULE_option + RULE_TYPES_OFFSET;
1506     /** Start option tag. */
1507     public static final int OPTION_TAG_START =
1508             JavadocParser.RULE_optionTagStart + RULE_TYPES_OFFSET;
1509     /** End option tag. */
1510     public static final int OPTION_TAG_END = JavadocParser.RULE_optionTagEnd
1511             + RULE_TYPES_OFFSET;
1512 
1513     /** Table body html tag. */
1514     public static final int TBODY = JavadocParser.RULE_tbody + RULE_TYPES_OFFSET;
1515     /** Start table body tag. */
1516     public static final int TBODY_TAG_START = JavadocParser.RULE_tbodyTagStart + RULE_TYPES_OFFSET;
1517     /** End table body tag. */
1518     public static final int TBODY_TAG_END = JavadocParser.RULE_tbodyTagEnd + RULE_TYPES_OFFSET;
1519 
1520     /** Table foot html tag. */
1521     public static final int TFOOT = JavadocParser.RULE_tfoot + RULE_TYPES_OFFSET;
1522     /** Start table foot tag. */
1523     public static final int TFOOT_TAG_START = JavadocParser.RULE_tfootTagStart + RULE_TYPES_OFFSET;
1524     /** End table foot tag. */
1525     public static final int TFOOT_TAG_END = JavadocParser.RULE_tfootTagEnd + RULE_TYPES_OFFSET;
1526 
1527     /** Table head html tag. */
1528     public static final int THEAD = JavadocParser.RULE_thead + RULE_TYPES_OFFSET;
1529     /** Start table head tag. */
1530     public static final int THEAD_TAG_START = JavadocParser.RULE_theadTagStart + RULE_TYPES_OFFSET;
1531     /** End table head tag. */
1532     public static final int THEAD_TAG_END = JavadocParser.RULE_theadTagEnd + RULE_TYPES_OFFSET;
1533 
1534     /////////////////////// SINGLETON HTML TAGS  //////////////////////////////////////////////////
1535     /**
1536      * Parent node for all singleton html tags.
1537      */
1538     public static final int SINGLETON_ELEMENT = JavadocParser.RULE_singletonElement
1539             + RULE_TYPES_OFFSET;
1540 
1541     /**
1542      * Non-special empty html tag.
1543      */
1544     public static final int EMPTY_TAG = JavadocParser.RULE_emptyTag
1545             + RULE_TYPES_OFFSET;
1546 
1547     /** Area html tag. */
1548     public static final int AREA_TAG = JavadocParser.RULE_areaTag + RULE_TYPES_OFFSET;
1549 
1550     /** Base html tag. */
1551     public static final int BASE_TAG = JavadocParser.RULE_baseTag + RULE_TYPES_OFFSET;
1552 
1553     /** Basefont html tag. */
1554     public static final int BASEFONT_TAG = JavadocParser.RULE_basefontTag + RULE_TYPES_OFFSET;
1555 
1556     /** Br html tag. */
1557     public static final int BR_TAG = JavadocParser.RULE_brTag + RULE_TYPES_OFFSET;
1558 
1559     /** Col html tag. */
1560     public static final int COL_TAG = JavadocParser.RULE_colTag + RULE_TYPES_OFFSET;
1561 
1562     /** Frame html tag. */
1563     public static final int FRAME_TAG = JavadocParser.RULE_frameTag + RULE_TYPES_OFFSET;
1564 
1565     /** Hr html tag. */
1566     public static final int HR_TAG = JavadocParser.RULE_hrTag + RULE_TYPES_OFFSET;
1567 
1568     /** Img html tag. */
1569     public static final int IMG_TAG = JavadocParser.RULE_imgTag + RULE_TYPES_OFFSET;
1570 
1571     /** Input html tag. */
1572     public static final int INPUT_TAG = JavadocParser.RULE_inputTag + RULE_TYPES_OFFSET;
1573 
1574     /** Isindex html tag. */
1575     public static final int ISINDEX_TAG = JavadocParser.RULE_isindexTag + RULE_TYPES_OFFSET;
1576 
1577     /** Link html tag. */
1578     public static final int LINK_TAG = JavadocParser.RULE_linkTag + RULE_TYPES_OFFSET;
1579 
1580     /** Meta html tag. */
1581     public static final int META_TAG = JavadocParser.RULE_metaTag + RULE_TYPES_OFFSET;
1582 
1583     /** Param html tag. */
1584     public static final int PARAM_TAG = JavadocParser.RULE_paramTag + RULE_TYPES_OFFSET;
1585 
1586     /**
1587      * HTML void element {@code <embed>}.
1588      * @see #SINGLETON_ELEMENT
1589      * @see <a href="https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-embed">
1590      *     W3 docs</a>
1591      */
1592     public static final int EMBED_TAG = JavadocParser.RULE_embedTag + RULE_TYPES_OFFSET;
1593 
1594     /**
1595      * HTML void element {@code <keygen>}.
1596      * @see #SINGLETON_ELEMENT
1597      * @see <a href="https://www.w3.org/TR/html51/sec-forms.html#elementdef-keygen">
1598      *     W3 docs</a>
1599      */
1600     public static final int KEYGEN_TAG = JavadocParser.RULE_keygenTag + RULE_TYPES_OFFSET;
1601 
1602     /**
1603      * HTML void element {@code <source>}.
1604      * @see #SINGLETON_ELEMENT
1605      * @see <a href=
1606      *     "https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-media-source">
1607      *     W3 docs</a>
1608      */
1609     public static final int SOURCE_TAG = JavadocParser.RULE_sourceTag + RULE_TYPES_OFFSET;
1610 
1611     /**
1612      * HTML void element {@code <track>}.
1613      * @see #SINGLETON_ELEMENT
1614      * @see <a
1615      *     href="https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-track">
1616      *     W3 docs</a>
1617      */
1618     public static final int TRACK_TAG = JavadocParser.RULE_trackTag + RULE_TYPES_OFFSET;
1619 
1620     /**
1621      * HTML void element {@code <wbr>}.
1622      * @see #SINGLETON_ELEMENT
1623      * @see <a href="https://www.w3.org/TR/html51/textlevel-semantics.html#elementdef-wbr">
1624      *     W3 docs</a>
1625      */
1626     public static final int WBR_TAG = JavadocParser.RULE_wbrTag + RULE_TYPES_OFFSET;
1627 
1628     ///////////////////////////////////////////////////////////////////////////////////////////////
1629 
1630     /** Html comment: <code>&lt;&#33;-- --&gt;</code>.
1631      * @noinspection HtmlTagCanBeJavadocTag
1632      */
1633     public static final int HTML_COMMENT = JavadocParser.RULE_htmlComment
1634             + RULE_TYPES_OFFSET;
1635     /**
1636      * CHAR and WS sequence.
1637      */
1638     public static final int TEXT = JavadocParser.RULE_text + RULE_TYPES_OFFSET;
1639 
1640     /** Empty private constructor of the current class. */
1641     private JavadocTokenTypes() {
1642     }
1643 
1644 }