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