1 /////////////////////////////////////////////////////////////////////////////////////////////// 2 // checkstyle: Checks Java source code and other text files for adherence to a set of rules. 3 // Copyright (C) 2001-2025 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 com.puppycrawl.tools.checkstyle.grammar.javadoc.JavadocParser; 23 24 /** 25 * Contains the constants for all the tokens contained in the Abstract 26 * Syntax Tree for the javadoc grammar. 27 * 28 * @see <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html"> 29 * javadoc - The Java API Documentation Generator</a> 30 */ 31 public final class JavadocTokenTypes { 32 33 // ------------------------------------------------------------------------------------------ // 34 // ----------------- JAVADOC TAGS ------------------------------------------- // 35 // ------------------------------------------------------------------------------------------ // 36 37 /** 38 * '@return' literal in {@code @return} Javadoc tag. 39 * 40 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 41 * 42 * <p><b>Example:</b></p> 43 * <pre>{@code @return true if file exists}</pre> 44 * <b>Tree:</b> 45 * <pre>{@code 46 * JAVADOC_TAG -> JAVADOC_TAG 47 * |--RETURN_LITERAL -> @return 48 * |--WS -> 49 * `--DESCRIPTION -> DESCRIPTION 50 * |--TEXT -> true if file exists 51 * }</pre> 52 * 53 * @see 54 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCDBGG"> 55 * Oracle Docs</a> 56 * @see #JAVADOC_TAG 57 */ 58 public static final int RETURN_LITERAL = JavadocParser.RETURN_LITERAL; 59 60 /** 61 * '{@literal @}deprecated' literal in {@literal @}deprecated Javadoc tag. 62 * 63 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 64 * 65 * <p><b>Example:</b></p> 66 * <pre>{@code @deprecated It is deprecated method}</pre> 67 * <b>Tree:</b> 68 * <pre>{@code 69 * JAVADOC_TAG -> JAVADOC_TAG 70 * |--DEPRECATED_LITERAL -> @deprecated 71 * |--WS -> 72 * `--DESCRIPTION -> DESCRIPTION 73 * |--TEXT -> It is deprecated method 74 * }</pre> 75 * 76 * @see 77 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#deprecated"> 78 * Oracle Docs</a> 79 * @see #JAVADOC_TAG 80 */ 81 public static final int DEPRECATED_LITERAL = JavadocParser.DEPRECATED_LITERAL; 82 83 /** 84 * '@since' literal in {@code @since} Javadoc tag. 85 * 86 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 87 * 88 * <p><b>Example:</b></p> 89 * <pre>{@code @since 3.4 RELEASE}</pre> 90 * <b>Tree:</b> 91 * <pre>{@code 92 * JAVADOC_TAG -> JAVADOC_TAG 93 * |--SINCE_LITERAL -> @since 94 * |--WS -> 95 * `--DESCRIPTION -> DESCRIPTION 96 * |--TEXT -> 3.4 RELEASE 97 * }</pre> 98 * 99 * @see 100 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHGJGD"> 101 * Oracle Docs</a> 102 * @see #JAVADOC_TAG 103 */ 104 public static final int SINCE_LITERAL = JavadocParser.SINCE_LITERAL; 105 106 /** 107 * '@serialData' literal in {@code @serialData} Javadoc tag. 108 * 109 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 110 * 111 * <p><b>Example:</b></p> 112 * <pre>{@code @serialData Two values of Integer type}</pre> 113 * <b>Tree:</b> 114 * <pre>{@code 115 * JAVADOC_TAG -> JAVADOC_TAG 116 * |--SERIAL_DATA_LITERAL -> @serialData 117 * |--WS -> 118 * `--DESCRIPTION -> DESCRIPTION 119 * |--TEXT -> Two values of Integer type 120 * } 121 * </pre> 122 * 123 * @see 124 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDJBFDB"> 125 * Oracle Docs</a> 126 * @see #JAVADOC_TAG 127 */ 128 public static final int SERIAL_DATA_LITERAL = JavadocParser.SERIAL_DATA_LITERAL; 129 130 /** 131 * '@serialField' literal in {@code @serialField} Javadoc tag. 132 * 133 * <p>Such Javadoc tag can have three arguments:</p> 134 * <ol> 135 * <li>{@link #FIELD_NAME}</li> 136 * <li>{@link #FIELD_TYPE}</li> 137 * <li>{@link #DESCRIPTION}</li> 138 * </ol> 139 * 140 * <p><b>Example:</b></p> 141 * <pre>{@code @serialField counter Integer objects counter}</pre> 142 * <b>Tree:</b> 143 * <pre>{@code 144 * JAVADOC_TAG -> JAVADOC_TAG 145 * |--SERIAL_FIELD_LITERAL -> @serialField 146 * |--WS -> 147 * |--FIELD_NAME -> counter 148 * |--WS -> 149 * |--FIELD_TYPE -> Integer 150 * |--WS -> 151 * `--DESCRIPTION -> DESCRIPTION 152 * |--TEXT -> objects counter 153 * }</pre> 154 * 155 * @see 156 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGHIDG"> 157 * Oracle Docs</a> 158 * @see #JAVADOC_TAG 159 */ 160 public static final int SERIAL_FIELD_LITERAL = JavadocParser.SERIAL_FIELD_LITERAL; 161 162 /** 163 * '@param' literal in {@code @param} Javadoc tag. 164 * 165 * <p>Such Javadoc tag can have two arguments:</p> 166 * <ol> 167 * <li>{@link #PARAMETER_NAME}</li> 168 * <li>{@link #DESCRIPTION}</li> 169 * </ol> 170 * 171 * <p><b>Example:</b></p> 172 * <pre>{@code @param value The parameter of method.}</pre> 173 * <b>Tree:</b> 174 * <pre>{@code 175 * JAVADOC_TAG -> JAVADOC_TAG 176 * |--PARAM_LITERAL -> @param 177 * |--WS -> 178 * |--PARAMETER_NAME -> value 179 * |--WS -> 180 * `--DESCRIPTION -> DESCRIPTION 181 * |--TEXT -> The parameter of method. 182 * }</pre> 183 * 184 * @see 185 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHJECF"> 186 * Oracle Docs</a> 187 * @see #JAVADOC_TAG 188 */ 189 public static final int PARAM_LITERAL = JavadocParser.PARAM_LITERAL; 190 191 /** 192 * '@see' literal in {@code @see} Javadoc tag. 193 * 194 * <p>Such Javadoc tag can have one argument - {@link #REFERENCE}</p> 195 * 196 * <p><b>Example:</b></p> 197 * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre> 198 * <b>Tree:</b> 199 * <pre>{@code 200 * JAVADOC_TAG -> JAVADOC_TAG 201 * |--SEE_LITERAL -> @see 202 * |--WS -> 203 * |--REFERENCE -> REFERENCE 204 * |--PACKAGE_CLASS -> org.apache.utils.Lists.Comparator 205 * |--HASH -> # 206 * |--MEMBER -> compare 207 * `--PARAMETERS -> PARAMETERS 208 * |--LEFT_BRACE -> ( 209 * |--ARGUMENT -> Object 210 * `--RIGHT_BRACE -> ) 211 * }</pre> 212 * 213 * @see 214 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDIEDI"> 215 * Oracle Docs</a> 216 * @see #JAVADOC_TAG 217 */ 218 public static final int SEE_LITERAL = JavadocParser.SEE_LITERAL; 219 220 /** 221 * '@serial' literal in {@code @serial} Javadoc tag. 222 * 223 * <p>Such Javadoc tag can have one argument - {@link #REFERENCE} or {@link #LITERAL_EXCLUDE} 224 * or {@link #LITERAL_INCLUDE}</p> 225 * 226 * <p><b>Example:</b></p> 227 * <pre>{@code @serial include}</pre> 228 * <b>Tree:</b> 229 * <pre>{@code 230 * |--JAVADOC_TAG -> JAVADOC_TAG 231 * |--SERIAL_LITERAL -> @serial 232 * |--WS 233 * |--LITERAL_INCLUDE -> include 234 * }</pre> 235 * 236 * <p><b>Example:</b></p> 237 * <pre>{@code @serial serialized company name}</pre> 238 * <b>Tree:</b> 239 * <pre>{@code 240 * |--JAVADOC_TAG-> JAVADOC_TAG 241 * |--SERIAL_LITERAL -> @serial 242 * |--WS 243 * |--DESCRIPTION -> DESCRIPTION 244 * |--TEXT -> serialized company name 245 * }</pre> 246 * 247 * @see 248 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF"> 249 * Oracle Docs</a> 250 * @see #JAVADOC_TAG 251 */ 252 public static final int SERIAL_LITERAL = JavadocParser.SERIAL_LITERAL; 253 254 /** 255 * '@version' literal in {@code @version} Javadoc tag. 256 * 257 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 258 * 259 * <p><b>Example:</b></p> 260 * <pre>{@code @version 1.3}</pre> 261 * <b>Tree:</b> 262 * <pre>{@code 263 * JAVADOC_TAG -> JAVADOC_TAG 264 * |--VERSION_LITERAL -> @version 265 * |--WS -> 266 * `--DESCRIPTION -> DESCRIPTION 267 * |--TEXT -> 1.3 268 * }</pre> 269 * 270 * @see 271 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCHBAE"> 272 * Oracle Docs</a> 273 * @see #JAVADOC_TAG 274 */ 275 public static final int VERSION_LITERAL = JavadocParser.VERSION_LITERAL; 276 277 /** 278 * '@exception' literal in {@code @exception} Javadoc tag. 279 * 280 * <p>Such Javadoc tag can have two argument - {@link #CLASS_NAME} and {@link #DESCRIPTION}</p> 281 * 282 * <p><b>Example:</b></p> 283 * <pre>{@code @exception SQLException if query is not correct}</pre> 284 * <b>Tree:</b> 285 * <pre>{@code 286 * JAVADOC_TAG -> JAVADOC_TAG 287 * |--EXCEPTION_LITERAL -> @exception 288 * |--WS -> 289 * |--CLASS_NAME -> SQLException 290 * |--WS -> 291 * `--DESCRIPTION -> DESCRIPTION 292 * `--TEXT -> if query is not correct 293 * }</pre> 294 * 295 * @see 296 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCEAHH"> 297 * Oracle Docs</a> 298 * @see #JAVADOC_TAG 299 */ 300 public static final int EXCEPTION_LITERAL = JavadocParser.EXCEPTION_LITERAL; 301 302 /** 303 * '@throws' literal in {@code @throws} Javadoc tag. 304 * 305 * <p>Such Javadoc tag can have two argument - {@link #CLASS_NAME} and {@link #DESCRIPTION}</p> 306 * 307 * <p><b>Example:</b></p> 308 * <pre>{@code @throws SQLException if query is not correct}</pre> 309 * <b>Tree:</b> 310 * <pre>{@code 311 * JAVADOC_TAG -> JAVADOC_TAG 312 * |--THROWS_LITERAL -> @throws 313 * |--WS -> 314 * |--CLASS_NAME -> SQLException 315 * |--WS -> 316 * `--DESCRIPTION -> DESCRIPTION 317 * `--TEXT -> if query is not correct 318 * }</pre> 319 * 320 * @see 321 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCHAHD"> 322 * Oracle Docs</a> 323 * @see #JAVADOC_TAG 324 */ 325 public static final int THROWS_LITERAL = JavadocParser.THROWS_LITERAL; 326 327 /** 328 * '@author' literal in {@code @author} Javadoc tag. 329 * 330 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 331 * 332 * <p><b>Example:</b></p> 333 * <pre>{@code @author Baratali Izmailov}</pre> 334 * <b>Tree:</b> 335 * <pre>{@code 336 * JAVADOC_TAG -> JAVADOC_TAG 337 * |--AUTHOR_LITERAL -> @author 338 * |--WS -> 339 * `--DESCRIPTION -> DESCRIPTION 340 * |--TEXT -> Baratali Izmailov 341 * |--NEWLINE -> \r\n 342 * }</pre> 343 * 344 * @see 345 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCBAHA"> 346 * Oracle Docs</a> 347 * @see #JAVADOC_TAG 348 */ 349 public static final int AUTHOR_LITERAL = JavadocParser.AUTHOR_LITERAL; 350 351 /** 352 * Name of custom Javadoc tag (or Javadoc inline tag). 353 * 354 * <p>Such Javadoc tag can have one argument - {@link #DESCRIPTION}</p> 355 * 356 * <p><b>Example:</b></p> 357 * <pre>{@code @myJavadocTag some magic}</pre> 358 * <b>Tree:</b> 359 * <pre>{@code 360 * JAVADOC_TAG --> JAVADOC_TAG 361 * |--CUSTOM_NAME --> @myJavadocTag 362 * |--WS --> 363 * `--DESCRIPTION --> DESCRIPTION 364 * |--TEXT --> some magic 365 * }</pre> 366 */ 367 public static final int CUSTOM_NAME = JavadocParser.CUSTOM_NAME; 368 369 /** 370 * First child of {@link #JAVADOC_INLINE_TAG} that represents left curly brace '{'. 371 * 372 * <p><b>Example:</b></p> 373 * <pre><code>{@code Comparable<E>}</code></pre> 374 * <b>Tree:</b> 375 * <pre> 376 * <code> JAVADOC_INLINE_TAG --> JAVADOC_INLINE_TAG 377 * |--JAVADOC_INLINE_TAG_START --> { 378 * |--CODE_LITERAL --> @code 379 * |--WS --> 380 * |--TEXT --> Comparable<E> 381 * `--JAVADOC_INLINE_TAG_END --> } 382 * </code> 383 * </pre> 384 * 385 * @noinspection HtmlTagCanBeJavadocTag 386 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 387 * replaced with Javadoc tag 388 */ 389 public static final int JAVADOC_INLINE_TAG_START = JavadocParser.JAVADOC_INLINE_TAG_START; 390 391 /** 392 * Last child of {@link #JAVADOC_INLINE_TAG} that represents right curly brace '}'. 393 * 394 * <p><b>Example:</b></p> 395 * <pre><code>{@code Comparable<E>}</code></pre> 396 * <b>Tree:</b> 397 * <pre> 398 * <code>JAVADOC_INLINE_TAG --> JAVADOC_INLINE_TAG 399 * |--JAVADOC_INLINE_TAG_START --> { 400 * |--CODE_LITERAL --> @code 401 * |--WS --> 402 * |--TEXT --> Comparable<E> 403 * `--JAVADOC_INLINE_TAG_END --> } 404 * 405 * </code> 406 * </pre> 407 * 408 * @noinspection HtmlTagCanBeJavadocTag 409 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 410 * replaced with Javadoc tag 411 */ 412 public static final int JAVADOC_INLINE_TAG_END = JavadocParser.JAVADOC_INLINE_TAG_END; 413 414 /** 415 * '@code' literal in {@code} Javadoc inline tag. 416 * 417 * <p>Such Javadoc inline tag can have such child nodes:</p> 418 * <ul> 419 * <li>{@link #NEWLINE}</li> 420 * <li>{@link #WS}</li> 421 * <li>{@link #TEXT}</li> 422 * </ul> 423 * 424 * <p><b>Example:</b></p> 425 * <pre><code>{@code Comparable<E>}</code></pre> 426 * <b>Tree:</b> 427 * <pre> 428 * <code>JAVADOC_TAG -> JAVADOC_TAG 429 * |--CUSTOM_NAME -> @code 430 * |--WS -> 431 * `--DESCRIPTION -> DESCRIPTION 432 * |--TEXT -> Comparable<E> 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 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 442 * replaced with Javadoc tag 443 */ 444 public static final int CODE_LITERAL = JavadocParser.CODE_LITERAL; 445 446 /** 447 * '@docRoot' literal in {@docRoot} Javadoc inline tag. 448 * 449 * <p>Such Javadoc inline tag does not have any arguments and can have such child nodes:</p> 450 * <ul> 451 * <li>{@link #NEWLINE}</li> 452 * <li>{@link #WS}</li> 453 * </ul> 454 * 455 * <p><b>Example:</b></p> 456 * <pre><code>{@docRoot}</code></pre> 457 * <b>Tree:</b> 458 * <pre> 459 * <code> 460 * |--JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 461 * |--JAVADOC_INLINE_TAG_START -> { 462 * |--DOC_ROOT_LITERAL -> @docRoot 463 * `--JAVADOC_INLINE_TAG_END -> } 464 * </code> 465 * </pre> 466 * 467 * <pre><code>Example :{@docRoot 468 * } in a Javadoc comment. 469 * </code></pre> 470 * <b>Tree:</b> 471 * <pre> 472 * <code> 473 * |--JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 474 * |--JAVADOC_INLINE_TAG_START -> { 475 * |--DOC_ROOT_LITERAL -> @docRoot 476 * |--NEWLINE -> \r\n 477 * |--LEADING_ASTERISK -> * 478 * |--WS -> 479 * `--JAVADOC_INLINE_TAG_END -> } 480 * </code> 481 * </pre> 482 * 483 * @see 484 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDBACBF"> 485 * Oracle Docs</a> 486 * @see #JAVADOC_INLINE_TAG 487 * @noinspection HtmlTagCanBeJavadocTag 488 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 489 * replaced with Javadoc tag 490 */ 491 public static final int DOC_ROOT_LITERAL = JavadocParser.DOC_ROOT_LITERAL; 492 493 /** 494 * '@link' literal in {@link} Javadoc inline tag. 495 * 496 * <p>Such Javadoc inline tag can have one argument - {@link #REFERENCE}</p> 497 * 498 * <p><b>Example:</b></p> 499 * 500 * <pre><code>{@link org.apache.utils.Lists.Comparator#compare(Object)}</code></pre> 501 * 502 * <p><b>Tree:</b></p> 503 * 504 * <pre> 505 * <code> 506 * JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 507 * |--JAVADOC_INLINE_TAG_START -> { 508 * |--LINK_LITERAL -> @link 509 * |--WS -> 510 * |--REFERENCE -> REFERENCE 511 * | |--PACKAGE_CLASS -> org.apache.utils.Lists.Comparator 512 * | |--HASH -> # 513 * | |--MEMBER -> compare 514 * | `--PARAMETERS -> PARAMETERS 515 * | |--LEFT_BRACE -> ( 516 * | |--ARGUMENT -> Object 517 * | `--RIGHT_BRACE -> ) 518 * `--JAVADOC_INLINE_TAG_END -> } 519 * </code> 520 * </pre> 521 * 522 * @see 523 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDIECH"> 524 * Oracle Docs</a> 525 * @see #JAVADOC_INLINE_TAG 526 * @noinspection HtmlTagCanBeJavadocTag 527 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 528 * replaced with Javadoc tag 529 */ 530 public static final int LINK_LITERAL = JavadocParser.LINK_LITERAL; 531 532 /** 533 * '@inheritDoc' literal in {@inheritDoc} Javadoc inline tag. 534 * 535 * <p>Such Javadoc inline tag does not have any arguments and can have such child nodes:</p> 536 * <ul> 537 * <li>{@link #NEWLINE}</li> 538 * <li>{@link #WS}</li> 539 * </ul> 540 * 541 * <p><b>Example:</b></p> 542 * <pre><code>{@inheritDoc}</code></pre> 543 * <b>Tree:</b> 544 * <pre>{@code 545 * JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 546 * |--JAVADOC_INLINE_TAG_START -> { 547 * |--INHERIT_DOC_LITERAL -> @inheritDoc 548 * |--JAVADOC_INLINE_TAG_END -> } 549 * }</pre> 550 * 551 * @see 552 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGJCHC"> 553 * Oracle Docs</a> 554 * @see #JAVADOC_INLINE_TAG 555 * @noinspection HtmlTagCanBeJavadocTag 556 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 557 * replaced with Javadoc tag 558 */ 559 public static final int INHERIT_DOC_LITERAL = JavadocParser.INHERIT_DOC_LITERAL; 560 561 /** 562 * '@linkplain' literal in {@linkplain} Javadoc inline tag. 563 * 564 * <p>Such Javadoc inline tag can have one argument - {@link #REFERENCE}</p> 565 * 566 * <p><b>Example:</b></p> 567 * <pre><code>{@linkplain org.apache.utils.Lists.Comparator#compare(Object) compare}</code> 568 * </pre> 569 * <b>Tree:</b> 570 * <pre>{@code 571 * JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 572 * |--JAVADOC_INLINE_TAG_START -> { 573 * |--LINKPLAIN_LITERAL -> @linkplain 574 * |--WS -> 575 * |--REFERENCE -> org.apache.utils.Lists.Comparator#compare(Object) 576 * |--PACKAGE_CLASS -> org.apache.utils 577 * |--DOT -> . 578 * |--CLASS -> Lists 579 * |--DOT -> . 580 * |--CLASS -> Comparator 581 * |--HASH -> # 582 * |--MEMBER -> compare 583 * |--PARAMETERS -> (Object) 584 * |--LEFT_BRACE -> ( 585 * |--ARGUMENT -> Object 586 * |--RIGHT_BRACE -> ) 587 * |--DESCRIPTION -> compare 588 * |--TEXT -> compare 589 * |--JAVADOC_INLINE_TAG_END -> } 590 * }</pre> 591 * 592 * @see 593 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDGBICD"> 594 * Oracle Docs</a> 595 * @see #JAVADOC_INLINE_TAG 596 * @noinspection HtmlTagCanBeJavadocTag 597 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 598 * replaced with Javadoc tag 599 */ 600 public static final int LINKPLAIN_LITERAL = JavadocParser.LINKPLAIN_LITERAL; 601 602 /** 603 * '@literal' literal in {@literal} Javadoc inline tag. 604 * 605 * <p>Such Javadoc inline tag can have such child nodes:</p> 606 * <ul> 607 * <li>{@link #NEWLINE}</li> 608 * <li>{@link #WS}</li> 609 * <li>{@link #TEXT}</li> 610 * </ul> 611 * 612 * <p><b>Example:</b></p> 613 * <pre><code>{@literal #compare(Object)}</code></pre> 614 * <b>Tree:</b> 615 * <pre> 616 * <code> 617 * |--JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 618 * |--JAVADOC_INLINE_TAG_START -> { 619 * |--LITERAL_LITERAL -> @literal 620 * |--WS -> 621 * |--TEXT -> #compare(Object) 622 * `--JAVADOC_INLINE_TAG_END -> } 623 * </code> 624 * </pre> 625 * 626 * @see 627 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDCFJDG"> 628 * Oracle Docs</a> 629 * @see #JAVADOC_INLINE_TAG 630 * @noinspection HtmlTagCanBeJavadocTag 631 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 632 * replaced with Javadoc tag 633 */ 634 public static final int LITERAL_LITERAL = JavadocParser.LITERAL_LITERAL; 635 636 /** 637 * '@value' literal in {@value} Javadoc inline tag. 638 * 639 * <p>Such Javadoc inline tag has one argument {@link #REFERENCE} 640 * and can have such child nodes:</p> 641 * <ul> 642 * <li>{@link #NEWLINE}</li> 643 * <li>{@link #WS}</li> 644 * </ul> 645 * 646 * <p><b>Example:</b></p> 647 * <pre><code>{@value Integer#MAX_VALUE}</code></pre> 648 * <b>Tree:</b> 649 * <pre> 650 * <code> JAVADOC_INLINE_TAG --> JAVADOC_INLINE_TAG 651 * |--JAVADOC_INLINE_TAG_START --> { 652 * |--VALUE_LITERAL --> @value 653 * |--WS --> 654 * |--REFERENCE --> REFERENCE 655 * | |--PACKAGE_CLASS --> Integer 656 * | |--HASH --> # 657 * | `--MEMBER --> MAX_VALUE 658 * `--JAVADOC_INLINE_TAG_END --> } 659 * </code> 660 * </pre> 661 * 662 * @see 663 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDDCDHH"> 664 * Oracle Docs</a> 665 * @see #JAVADOC_INLINE_TAG 666 * @noinspection HtmlTagCanBeJavadocTag 667 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 668 * replaced with Javadoc tag 669 */ 670 public static final int VALUE_LITERAL = JavadocParser.VALUE_LITERAL; 671 672 /** 673 * PACKAGE_CLASS represents the package or class which has been referenced in the `@see`, 674 * `@link`, `@linkplain` or `@value` javadoc tags. In the javadoc tree it shall be a child 675 * of {@link #REFERENCE}. 676 * <br> 677 * <strong>IMPORTANT:</strong> Constructs like 678 * {@code package.Class.NestedClassAtDepth1.NestedClassAtDepth2#member} are recognized by 679 * the javadoc tool from oracle, and no assumptions like, package names wouldn't consist of 680 * uppercase characters or class names begin with an uppercase character, are made. 681 * Also, <i>the reference</i> in a javadoc tag can consist just a package name or a 682 * simple class name or even a full class name. Thus, PACKAGE_CLASS can represent a 683 * package name or a simple class name or a full class name i.e. checkstyle doesn't 684 * resolve references at present. 685 * 686 * <p><b>Example:</b></p> 687 * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre> 688 * <b>Tree:</b> 689 * <pre> 690 * {@code 691 * JAVADOC_TAG -> JAVADOC_TAG 692 * |--SEE_LITERAL -> @see 693 * |--WS -> 694 * |--REFERENCE -> REFERENCE 695 * | |--PACKAGE_CLASS -> org.apache.utils.Lists.Comparator 696 * | |--HASH -> # 697 * | |--MEMBER -> compare 698 * | `--PARAMETERS -> PARAMETERS 699 * | |--LEFT_BRACE -> ( 700 * | |--ARGUMENT -> Object 701 * | `--RIGHT_BRACE -> ) 702 * |--NEWLINE -> \r\n 703 * `--WS -> 704 * } 705 * </pre> 706 */ 707 public static final int PACKAGE_CLASS = JavadocParser.PACKAGE_CLASS; 708 709 /** 710 * Hash character in {@link #REFERENCE}. 711 * Hash character is used before specifying a class member. 712 * 713 * <p><b>Example:</b></p> 714 * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre> 715 * <b>Tree:</b> 716 * <pre> 717 * {@code 718 * JAVADOC_TAG -> JAVADOC_TAG 719 * |--SEE_LITERAL -> @see 720 * |--WS -> 721 * |--REFERENCE -> REFERENCE 722 * |--PACKAGE_CLASS -> org.apache.utils.Lists.Comparator 723 * |--HASH -> # 724 * |--MEMBER -> compare 725 * `--PARAMETERS -> PARAMETERS 726 * |--LEFT_BRACE -> ( 727 * |--ARGUMENT -> Object 728 * `--RIGHT_BRACE -> ) 729 * } 730 * </pre> 731 */ 732 public static final int HASH = JavadocParser.HASH; 733 734 /** 735 * A class member in {@link #REFERENCE}. 736 * Class member is specified after {@link #HASH} symbol. 737 * 738 * <p><b>Example:</b></p> 739 * <pre>{@code @see org.apache.utils.Lists.Comparator#compare(Object)}</pre> 740 * <b>Tree:</b> 741 * <pre> 742 * {@code 743 * JAVADOC_TAG -> JAVADOC_TAG 744 * |--SEE_LITERAL -> @see 745 * |--WS -> 746 * |--REFERENCE -> REFERENCE 747 * |--PACKAGE_CLASS -> org.apache.utils.Lists.Comparator 748 * |--HASH -> # 749 * |--MEMBER -> compare 750 * `--PARAMETERS -> PARAMETERS 751 * |--LEFT_BRACE -> ( 752 * |--ARGUMENT -> Object 753 * `--RIGHT_BRACE -> ) 754 * } 755 * </pre> 756 */ 757 public static final int MEMBER = JavadocParser.MEMBER; 758 759 /** 760 * Left brace in {@link #PARAMETERS} part of {@link #REFERENCE}. 761 * 762 * <p><b>Example:</b></p> 763 * <pre>{@code @see #method(Processor, String)}</pre> 764 * <b>Tree:</b> 765 * <pre> 766 * {@code JAVADOC_TAG -> JAVADOC_TAG 767 * |--SEE_LITERAL -> @see 768 * |--WS -> 769 * |--REFERENCE -> REFERENCE 770 * | |--HASH -> # 771 * | |--MEMBER -> method 772 * | `--PARAMETERS -> PARAMETERS 773 * | |--LEFT_BRACE -> ( 774 * | |--ARGUMENT -> Processor 775 * | |--COMMA -> , 776 * | |--WS -> 777 * | |--ARGUMENT -> String 778 * | `--RIGHT_BRACE -> ) 779 * } 780 * </pre> 781 */ 782 public static final int LEFT_BRACE = JavadocParser.LEFT_BRACE; 783 784 /** 785 * Right brace in {@link #PARAMETERS} part of {@link #REFERENCE}. 786 * 787 * <p><b>Example:</b></p> 788 * <pre>{@code @see #method(Processor, String)}</pre> 789 * <b>Tree:</b> 790 * <pre> 791 * {@code JAVADOC_TAG -> JAVADOC_TAG 792 * |--SEE_LITERAL -> @see 793 * |--WS -> 794 * |--REFERENCE -> REFERENCE 795 * | |--HASH -> # 796 * | |--MEMBER -> method 797 * | `--PARAMETERS -> PARAMETERS 798 * | |--LEFT_BRACE -> ( 799 * | |--ARGUMENT -> Processor 800 * | |--COMMA -> , 801 * | |--WS -> 802 * | |--ARGUMENT -> String 803 * | `--RIGHT_BRACE -> ) 804 * } 805 * </pre> 806 */ 807 public static final int RIGHT_BRACE = JavadocParser.RIGHT_BRACE; 808 809 /** 810 * Argument definition in {@link #PARAMETERS} part of {@link #REFERENCE}. 811 * 812 * <p><b>Example:</b></p> 813 * <pre>{@code @see #method(Processor, String)}</pre> 814 * <b>Tree:</b> 815 * <pre> 816 * {@code JAVADOC_TAG -> JAVADOC_TAG 817 * |--SEE_LITERAL -> @see 818 * |--WS -> 819 * |--REFERENCE -> REFERENCE 820 * | |--HASH -> # 821 * | |--MEMBER -> method 822 * | `--PARAMETERS -> PARAMETERS 823 * | |--LEFT_BRACE -> ( 824 * | |--ARGUMENT -> Processor 825 * | |--COMMA -> , 826 * | |--WS -> 827 * | |--ARGUMENT -> String 828 * | `--RIGHT_BRACE -> ) 829 * `--NEWLINE -> \n 830 * } 831 * </pre> 832 */ 833 public static final int ARGUMENT = JavadocParser.ARGUMENT; 834 835 /** 836 * Comma separator between parameters in {@link #PARAMETERS} part of {@link #REFERENCE}. 837 * 838 * <p><b>Example:</b></p> 839 * <pre>{@code @see #method(Processor, String)}</pre> 840 * <b>Tree:</b> 841 * <pre> 842 * {@code 843 * JAVADOC_TAG -> JAVADOC_TAG 844 * |--SEE_LITERAL -> @see 845 * |--WS -> 846 * |--REFERENCE -> REFERENCE 847 * | |--HASH -> # 848 * | |--MEMBER -> method 849 * | `--PARAMETERS -> PARAMETERS 850 * | |--LEFT_BRACE -> ( 851 * | |--ARGUMENT -> Processor 852 * | |--COMMA -> , 853 * | |--WS -> 854 * | |--ARGUMENT -> String 855 * | `--RIGHT_BRACE -> ) 856 * |--NEWLINE -> \r\n 857 * `--WS -> 858 * } 859 * </pre> 860 * 861 * @see #PARAMETERS 862 * @see #REFERENCE 863 * @see #ARGUMENT 864 */ 865 public static final int COMMA = JavadocParser.COMMA; 866 867 /** 868 * Quoted text. 869 * One of possible {@code @see} tag arguments. 870 * 871 * <p><b>Example:</b></p> 872 * <pre>{@code @see "Spring Framework"}</pre> 873 * <b>Tree:</b> 874 * <pre> 875 * {@code 876 * JAVADOC_TAG -> JAVADOC_TAG 877 * |--SEE_LITERAL -> @see 878 * |--WS -> 879 * |--STRING -> "Spring Framework" 880 * |--NEWLINE -> \r\n 881 * `--WS -> 882 * } 883 * </pre> 884 * 885 * @see #SEE_LITERAL 886 */ 887 public static final int STRING = JavadocParser.STRING; 888 889 /** 890 * Exception class name. First argument in {@link #THROWS_LITERAL @throws} and 891 * {@link #EXCEPTION_LITERAL @exception} Javadoc tags. 892 * 893 * <p><b>Example:</b></p> 894 * <pre>{@code @throws IOException connection problems}</pre> 895 * <b>Tree:</b> 896 * <pre> 897 * {@code 898 * JAVADOC_TAG -> JAVADOC_TAG 899 * |--THROWS_LITERAL -> @throws 900 * |--WS -> 901 * |--CLASS_NAME -> IOException 902 * |--WS -> 903 * `--DESCRIPTION -> DESCRIPTION 904 * |--TEXT -> connection problems 905 * |--NEWLINE -> \r\n 906 * `--TEXT -> 907 * } 908 * </pre> 909 * 910 * @see #EXCEPTION_LITERAL 911 * @see #THROWS_LITERAL 912 */ 913 public static final int CLASS_NAME = JavadocParser.CLASS_NAME; 914 915 /** 916 * First argument in {@link #PARAM_LITERAL @param} Javadoc tag. 917 * 918 * <p><b>Example:</b></p> 919 * <pre>{@code @param T The bar.}</pre> 920 * <b>Tree:</b> 921 * <pre> 922 * {@code JAVADOC_TAG -> JAVADOC_TAG 923 * |--PARAM_LITERAL -> @param 924 * |--WS -> 925 * |--PARAMETER_NAME -> T 926 * |--WS -> 927 * `--DESCRIPTION -> DESCRIPTION 928 * |--TEXT -> The bar. 929 * |--NEWLINE -> \r\n 930 * `--TEXT -> 931 * } 932 * </pre> 933 * 934 * @see 935 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHJECF"> 936 * Oracle Docs</a> 937 * @see #PARAM_LITERAL 938 */ 939 public static final int PARAMETER_NAME = JavadocParser.PARAMETER_NAME; 940 941 /** 942 * 'exclude' literal. 943 * One of three possible {@link #SERIAL_LITERAL @serial} tag arguments. 944 * 945 * <p><b>Example:</b></p> 946 * <pre>{@code @serial exclude}</pre> 947 * <b>Tree:</b> 948 * <pre> 949 * {@code 950 * JAVADOC_TAG -> JAVADOC_TAG 951 * |--SERIAL_LITERAL -> @serial 952 * |--WS -> 953 * `--DESCRIPTION -> DESCRIPTION 954 * |--TEXT -> serialized company name 955 * |--NEWLINE -> \r\n 956 * `--TEXT -> 957 * } 958 * </pre> 959 * 960 * @see 961 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF"> 962 * Oracle Docs</a> 963 * @see #SERIAL_LITERAL 964 */ 965 public static final int LITERAL_EXCLUDE = JavadocParser.LITERAL_EXCLUDE; 966 967 /** 968 * 'include' literal. 969 * One of three possible {@link #SERIAL_LITERAL @serial} tag arguments. 970 * 971 * <p><b>Example:</b></p> 972 * <pre>{@code @serial include}</pre> 973 * <b>Tree:</b> 974 * <pre> 975 * {@code 976 * JAVADOC_TAG -> JAVADOC_TAG 977 * |--SERIAL_LITERAL -> @serial 978 * |--WS -> 979 * |--LITERAL_INCLUDE -> include 980 * |--NEWLINE -> \r\n 981 * `--WS -> 982 * } 983 * </pre> 984 * 985 * @see 986 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF"> 987 * Oracle Docs</a> 988 * @see #SERIAL_LITERAL 989 */ 990 public static final int LITERAL_INCLUDE = JavadocParser.LITERAL_INCLUDE; 991 992 /** 993 * Field name. First argument of {@link #SERIAL_FIELD_LITERAL @serialField} Javadoc tag. 994 * 995 * <p><b>Example:</b></p> 996 * <pre>{@code @serialField counter Integer objects counter}</pre> 997 * <b>Tree:</b> 998 * <pre> 999 * {@code 1000 * JAVADOC_TAG -> JAVADOC_TAG 1001 * |--SERIAL_FIELD_LITERAL -> @serialField 1002 * |--WS -> 1003 * |--FIELD_NAME -> counter 1004 * |--WS -> 1005 * |--FIELD_TYPE -> Integer 1006 * |--WS -> 1007 * `--DESCRIPTION -> DESCRIPTION 1008 * |--TEXT -> objects counter 1009 * |--NEWLINE -> \r\n 1010 * `--TEXT -> 1011 * }</pre> 1012 * 1013 * @see 1014 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF"> 1015 * Oracle Docs</a> 1016 * @see #SERIAL_FIELD_LITERAL 1017 */ 1018 public static final int FIELD_NAME = JavadocParser.FIELD_NAME; 1019 1020 /** 1021 * Field type. Second argument of {@link #SERIAL_FIELD_LITERAL @serialField} Javadoc tag. 1022 * 1023 * <p><b>Example:</b></p> 1024 * <pre>{@code @serialField counter Integer objects counter}</pre> 1025 * <b>Tree:</b> 1026 * <pre> 1027 * {@code JAVADOC_TAG -> JAVADOC_TAG 1028 * |--SERIAL_FIELD_LITERAL -> @serialField 1029 * |--WS -> 1030 * |--FIELD_NAME -> counter 1031 * |--WS -> 1032 * |--FIELD_TYPE -> Integer 1033 * |--WS -> 1034 * `--DESCRIPTION -> DESCRIPTION 1035 * |--TEXT -> objects counter 1036 * `--NEWLINE -> \n 1037 * } 1038 * </pre> 1039 * 1040 * @see 1041 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#CHDHDECF"> 1042 * Oracle Docs</a> 1043 * @see #SERIAL_FIELD_LITERAL 1044 */ 1045 public static final int FIELD_TYPE = JavadocParser.FIELD_TYPE; 1046 1047 // ------------------------------------------------------------------------------------------ // 1048 // ----------------- HTML TAGS ---------------------------------------------- // 1049 // ------------------------------------------------------------------------------------------ // 1050 1051 /** 1052 * Identifier inside HTML tag: tag name or attribute name. 1053 */ 1054 public static final int HTML_TAG_NAME = JavadocParser.HTML_TAG_NAME; 1055 1056 // HTML tag components 1057 1058 /** 1059 * Start html tag component: {@code '<'}. 1060 */ 1061 public static final int START = JavadocParser.START; 1062 1063 /** 1064 * Slash html tag component: {@code '/'}. 1065 */ 1066 public static final int SLASH = JavadocParser.SLASH; 1067 1068 /** 1069 * End html tag component: {@code '>'}. 1070 */ 1071 public static final int END = JavadocParser.END; 1072 1073 /** 1074 * Slash close html tag component: {@code '/>'}. 1075 */ 1076 public static final int SLASH_END = JavadocParser.SLASH_END; 1077 1078 /** 1079 * Equals html tag component: {@code '='}. 1080 */ 1081 public static final int EQUALS = JavadocParser.EQUALS; 1082 1083 /** 1084 * Attribute value html tag component. 1085 */ 1086 public static final int ATTR_VALUE = JavadocParser.ATTR_VALUE; 1087 1088 /////////////////////// HTML TAGS WITH OPTIONAL END TAG ///////////////////////////////////// 1089 1090 /** 1091 * Paragraph tag name. 1092 * 1093 * <p><b>Example:</b></p> 1094 * <pre>{@code <p>Paragraph Tag.</p>}</pre> 1095 * <b>Tree:</b> 1096 * <pre> 1097 * {@code 1098 * JAVADOC -> JAVADOC 1099 * |--NEWLINE -> \r\n 1100 * |--LEADING_ASTERISK -> * 1101 * |--TEXT -> 1102 * |--HTML_ELEMENT -> HTML_ELEMENT 1103 * `--PARAGRAPH -> PARAGRAPH 1104 * |--P_TAG_START -> P_TAG_START 1105 * | |--START -> < 1106 * | |--P_HTML_TAG_NAME -> p 1107 * | `--END -> > 1108 * |--TEXT -> Paragraph Tag. 1109 * `--P_TAG_END -> P_TAG_END 1110 * |--START -> < 1111 * |--SLASH -> / 1112 * |--P_HTML_TAG_NAME -> p 1113 * `--END -> > 1114 * } 1115 * </pre> 1116 * 1117 * @see 1118 * <a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/javadoc.html#JSSOR647"> 1119 * Comments are written in HTML</a> 1120 * @see #P_HTML_TAG_NAME 1121 */ 1122 public static final int P_HTML_TAG_NAME = JavadocParser.P_HTML_TAG_NAME; 1123 1124 /** List item tag name. */ 1125 public static final int LI_HTML_TAG_NAME = JavadocParser.LI_HTML_TAG_NAME; 1126 1127 /** Table row tag name. */ 1128 public static final int TR_HTML_TAG_NAME = JavadocParser.TR_HTML_TAG_NAME; 1129 1130 /** Table cell tag name. */ 1131 public static final int TD_HTML_TAG_NAME = JavadocParser.TD_HTML_TAG_NAME; 1132 1133 /** Table header cell tag name. */ 1134 public static final int TH_HTML_TAG_NAME = JavadocParser.TH_HTML_TAG_NAME; 1135 1136 /** Body tag name. */ 1137 public static final int BODY_HTML_TAG_NAME = JavadocParser.BODY_HTML_TAG_NAME; 1138 1139 /** Colgroup tag name. */ 1140 public static final int COLGROUP_HTML_TAG_NAME = JavadocParser.COLGROUP_HTML_TAG_NAME; 1141 1142 /** Description of a term tag name. */ 1143 public static final int DD_HTML_TAG_NAME = JavadocParser.DD_HTML_TAG_NAME; 1144 1145 /** Description term tag name. */ 1146 public static final int DT_HTML_TAG_NAME = JavadocParser.DT_HTML_TAG_NAME; 1147 1148 /** Head tag name. */ 1149 public static final int HEAD_HTML_TAG_NAME = JavadocParser.HEAD_HTML_TAG_NAME; 1150 1151 /** Html tag name. */ 1152 public static final int HTML_HTML_TAG_NAME = JavadocParser.HTML_HTML_TAG_NAME; 1153 1154 /** Option tag name. */ 1155 public static final int OPTION_HTML_TAG_NAME = JavadocParser.OPTION_HTML_TAG_NAME; 1156 1157 /** Table body tag name. */ 1158 public static final int TBODY_HTML_TAG_NAME = JavadocParser.TBODY_HTML_TAG_NAME; 1159 1160 /** Table foot tag name. */ 1161 public static final int TFOOT_HTML_TAG_NAME = JavadocParser.TFOOT_HTML_TAG_NAME; 1162 1163 /** Table head tag name. */ 1164 public static final int THEAD_HTML_TAG_NAME = JavadocParser.THEAD_HTML_TAG_NAME; 1165 1166 /** `optgroup` tag name. */ 1167 public static final int OPTGROUP_HTML_TAG_NAME = JavadocParser.OPTGROUP_HTML_TAG_NAME; 1168 1169 /** `rb` tag name. */ 1170 public static final int RB_HTML_TAG_NAME = JavadocParser.RB_HTML_TAG_NAME; 1171 1172 /** `rt` tag name. */ 1173 public static final int RT_HTML_TAG_NAME = JavadocParser.RT_HTML_TAG_NAME; 1174 1175 /** `rtc` tag name. */ 1176 public static final int RTC_HTML_TAG_NAME = JavadocParser.RTC_HTML_TAG_NAME; 1177 1178 /** `rp` tag name. */ 1179 public static final int RP_HTML_TAG_NAME = JavadocParser.RP_HTML_TAG_NAME; 1180 /////////////////////////////////////////////////////////////////////////////////////////////// 1181 1182 /////////////////////// SINGLETON HTML TAGS ////////////////////////////////////////////////// 1183 /** 1184 * Area tag name. 1185 * 1186 * <p><b>Example:</b></p> 1187 * <pre>{@code < area shape="rect" >}</pre> 1188 * <b>Tree:</b> 1189 * <pre> 1190 * {@code 1191 * JAVADOC -> JAVADOC 1192 * |--NEWLINE -> \n 1193 * |--LEADING_ASTERISK -> * 1194 * |--TEXT -> 1195 * |--HTML_ELEMENT -> HTML_ELEMENT 1196 * | `--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 1197 * | `--AREA_TAG -> AREA_TAG 1198 * | |--START -> < 1199 * | |--AREA_HTML_TAG_NAME -> area 1200 * | |--WS -> 1201 * | |--ATTRIBUTE -> ATTRIBUTE 1202 * | | |--HTML_TAG_NAME -> shape 1203 * | | |--EQUALS -> = 1204 * | | `--ATTR_VALUE -> "rect" 1205 * | `--END -> > 1206 * |--TEXT -> 1207 * |--NEWLINE -> \n 1208 * |--TEXT -> 1209 * } 1210 * </pre> 1211 */ 1212 1213 public static final int AREA_HTML_TAG_NAME = JavadocParser.AREA_HTML_TAG_NAME; 1214 1215 /** Base tag name. */ 1216 public static final int BASE_HTML_TAG_NAME = JavadocParser.BASE_HTML_TAG_NAME; 1217 1218 /** Basefont tag name. */ 1219 public static final int BASEFONT_HTML_TAG_NAME = JavadocParser.BASEFONT_HTML_TAG_NAME; 1220 1221 /** 1222 * Br tag name. 1223 * 1224 * <p><b>Example:</b></p> 1225 * <pre>{@code text before break < br > text after break}</pre> 1226 * <b>Tree:</b> 1227 * <pre> 1228 * {@code 1229 * JAVADOC -> JAVADOC 1230 * |--NEWLINE -> \r\n 1231 * |--LEADING_ASTERISK -> * 1232 * |--TEXT -> text before break 1233 * |--HTML_ELEMENT -> HTML_ELEMENT 1234 * | `--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 1235 * | `--BR_TAG -> BR_TAG 1236 * | |--START -> -< 1237 * | |--BR_HTML_TAG_NAME -> br 1238 * | `--END -> > 1239 * |--TEXT -> text after break 1240 * |--NEWLINE -> \r\n 1241 * |--TEXT -> 1242 * } 1243 * </pre> 1244 */ 1245 1246 public static final int BR_HTML_TAG_NAME = JavadocParser.BR_HTML_TAG_NAME; 1247 1248 /** Col tag name. */ 1249 public static final int COL_HTML_TAG_NAME = JavadocParser.COL_HTML_TAG_NAME; 1250 1251 /** Frame tag name. */ 1252 public static final int FRAME_HTML_TAG_NAME = JavadocParser.FRAME_HTML_TAG_NAME; 1253 1254 /** Hr tag name. */ 1255 public static final int HR_HTML_TAG_NAME = JavadocParser.HR_HTML_TAG_NAME; 1256 1257 /** Img tag name. */ 1258 public static final int IMG_HTML_TAG_NAME = JavadocParser.IMG_HTML_TAG_NAME; 1259 1260 /** Input tag name. */ 1261 public static final int INPUT_HTML_TAG_NAME = JavadocParser.INPUT_HTML_TAG_NAME; 1262 1263 /** Isindex tag name. */ 1264 public static final int ISINDEX_HTML_TAG_NAME = JavadocParser.ISINDEX_HTML_TAG_NAME; 1265 1266 /** Link tag name. */ 1267 public static final int LINK_HTML_TAG_NAME = JavadocParser.LINK_HTML_TAG_NAME; 1268 1269 /** Meta tag name. */ 1270 public static final int META_HTML_TAG_NAME = JavadocParser.META_HTML_TAG_NAME; 1271 1272 /** Param tag name. */ 1273 public static final int PARAM_HTML_TAG_NAME = JavadocParser.PARAM_HTML_TAG_NAME; 1274 /** "embed" tag name. */ 1275 public static final int EMBED_HTML_TAG_NAME = JavadocParser.EMBED_HTML_TAG_NAME; 1276 /** "keygen" tag name. */ 1277 public static final int KEYGEN_HTML_TAG_NAME = JavadocParser.KEYGEN_HTML_TAG_NAME; 1278 /** "source" tag name. */ 1279 public static final int SOURCE_HTML_TAG_NAME = JavadocParser.SOURCE_HTML_TAG_NAME; 1280 /** "track" tag name. */ 1281 public static final int TRACK_HTML_TAG_NAME = JavadocParser.TRACK_HTML_TAG_NAME; 1282 /** "wbr" tag name. */ 1283 public static final int WBR_HTML_TAG_NAME = JavadocParser.WBR_HTML_TAG_NAME; 1284 /////////////////////////////////////////////////////////////////////////////////////////////// 1285 1286 /** 1287 * HTML comment start symbol '<!--'. 1288 */ 1289 public static final int HTML_COMMENT_START = JavadocParser.HTML_COMMENT_START; 1290 1291 /** 1292 * HTML comment end symbol '-->'. 1293 */ 1294 public static final int HTML_COMMENT_END = JavadocParser.HTML_COMMENT_END; 1295 1296 // ------------------------------------------------------------------------------------------ // 1297 // ----------------- OTHER -------------------------------------------------- // 1298 // ------------------------------------------------------------------------------------------ // 1299 1300 /** Leading asterisk. */ 1301 public static final int LEADING_ASTERISK = JavadocParser.LEADING_ASTERISK; 1302 1303 /** 1304 * Newline symbol - '\n'. 1305 */ 1306 public static final int NEWLINE = JavadocParser.NEWLINE; 1307 1308 /** 1309 * Any other symbol. 1310 */ 1311 public static final int CHAR = JavadocParser.CHAR; 1312 1313 /** 1314 * Whitespace or tab ('\t') symbol. 1315 */ 1316 public static final int WS = JavadocParser.WS; 1317 1318 /** 1319 * End Of File symbol. Copied from 1320 * {@link org.antlr.v4.runtime.Recognizer#EOF} to avoid ANTLR dependency in 1321 * API. 1322 */ 1323 public static final int EOF = -1; 1324 1325 // ------------------------------------------------------------------------------------------ // 1326 // ------ JAVADOC TAGS DEPENDING ON RULE TYPES OFFSET --------------------------------------- // 1327 // ------------------------------------------------------------------------------------------ // 1328 1329 /** 1330 * Rule types offset. 1331 * RULE_TYPES_OFFSET constant is used to split lexer tokens types and parser rules types. 1332 * We need unique numbers for all tokens, 1333 * ANTLR do not need this and that is why these types are mixed by used values. 1334 * All values we can take a look at 1335 * target/generated-sources/antlr/com/puppycrawl/tools/checkstyle/grammar/javadoc/JavadocParser.java 1336 * For example: LEADING_ASTERISK=1 and RULE_htmlElement = 1. 1337 * RULE_TYPES_OFFSET required to shift parser rules, 1338 * to let them not overlap with types that have prefix "RULE_". 1339 */ 1340 private static final int RULE_TYPES_OFFSET = 10000; 1341 1342 /** 1343 * Root node of any Javadoc comment. 1344 * Last child is always {@link #EOF}. 1345 * 1346 * <p><b>Tree for example:</b></p> 1347 * <pre>{@code 1348 * JAVADOC -> JAVADOC 1349 * |--NEWLINE -> \n 1350 * |--LEADING_ASTERISK -> * 1351 * |--WS -> 1352 * |--JAVADOC_TAG -> JAVADOC_TAG 1353 * | |--PARAM_LITERAL -> @param 1354 * | |--WS -> 1355 * | |--PARAMETER_NAME -> T 1356 * | |--WS -> 1357 * | `--DESCRIPTION -> DESCRIPTION 1358 * | |--TEXT -> The bar. 1359 * | |--NEWLINE -> \n 1360 * | `--TEXT -> 1361 * `--EOF -> <EOF> 1362 * }</pre> 1363 */ 1364 public static final int JAVADOC = JavadocParser.RULE_javadoc + RULE_TYPES_OFFSET; 1365 1366 /** 1367 * Javadoc tag. 1368 * 1369 * <p>Type of Javadoc tag is resolved by literal node that is first child of this node.</p> 1370 * 1371 * <p>As literal could be:</p> 1372 * <ul> 1373 * <li>{@link #RETURN_LITERAL}</li> 1374 * <li>{@link #DEPRECATED_LITERAL}</li> 1375 * <li>{@link #SINCE_LITERAL}</li> 1376 * <li>{@link #SERIAL_DATA_LITERAL}</li> 1377 * <li>{@link #SERIAL_FIELD_LITERAL}</li> 1378 * <li>{@link #PARAM_LITERAL}</li> 1379 * <li>{@link #SEE_LITERAL}</li> 1380 * <li>{@link #SERIAL_LITERAL}</li> 1381 * <li>{@link #VERSION_LITERAL}</li> 1382 * <li>{@link #EXCEPTION_LITERAL}</li> 1383 * <li>{@link #THROWS_LITERAL}</li> 1384 * <li>{@link #AUTHOR_LITERAL}</li> 1385 * <li>or {@link #CUSTOM_NAME} if it is custom Javadoc tag.</li> 1386 * </ul> 1387 * 1388 * <p><b>Example</b></p> 1389 * <pre>{@code @param T The bar.}</pre> 1390 * <b>Tree</b> 1391 * <pre>{@code 1392 * JAVADOC_TAG -> JAVADOC_TAG 1393 * |--PARAM_LITERAL -> @param 1394 * |--WS -> 1395 * |--PARAMETER_NAME -> T 1396 * |--WS -> 1397 * `--DESCRIPTION -> DESCRIPTION 1398 * |--TEXT -> The bar. 1399 * |--NEWLINE -> \r\n 1400 * `--TEXT -> 1401 * }</pre> 1402 */ 1403 1404 public static final int JAVADOC_TAG = JavadocParser.RULE_javadocTag + RULE_TYPES_OFFSET; 1405 /** 1406 * Javadoc inline tag. 1407 * 1408 * <p>Type of Javadoc inline tag is resolved by literal node that is second child of this node. 1409 * First child is always {@link #JAVADOC_INLINE_TAG_START} and last node is always 1410 * {@link #JAVADOC_INLINE_TAG_END}.</p> 1411 * 1412 * <p>As literal could be:</p> 1413 * <ul> 1414 * <li>{@link #CODE_LITERAL}</li> 1415 * <li>{@link #DOC_ROOT_LITERAL}</li> 1416 * <li>{@link #LINK_LITERAL}</li> 1417 * <li>{@link #INHERIT_DOC_LITERAL}</li> 1418 * <li>{@link #LINKPLAIN_LITERAL}</li> 1419 * <li>{@link #LITERAL_LITERAL}</li> 1420 * <li>{@link #VALUE_LITERAL}</li> 1421 * <li>or {@link #CUSTOM_NAME} if it is custom Javadoc inline tag.</li> 1422 * </ul> 1423 * 1424 * <p><b>Example:</b></p> 1425 * <pre><code>{@link String}</code></pre> 1426 * <b>Tree:</b> 1427 * <pre> 1428 * {@code 1429 * JAVADOC_INLINE_TAG -> JAVADOC_INLINE_TAG 1430 * |--JAVADOC_INLINE_TAG_START -> { 1431 * |--LINK_LITERAL -> @link 1432 * |--WS -> 1433 * |--REFERENCE -> REFERENCE 1434 * `--PACKAGE_CLASS -> String 1435 * `--JAVADOC_INLINE_TAG_END -> } 1436 * } 1437 * </pre> 1438 * 1439 * @noinspection HtmlTagCanBeJavadocTag 1440 * @noinspection HtmlTagCanBeJavadocTag 1441 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 1442 * replaced with Javadoc tag 1443 */ 1444 public static final int JAVADOC_INLINE_TAG = JavadocParser.RULE_javadocInlineTag 1445 + RULE_TYPES_OFFSET; 1446 1447 /** 1448 * Parameter of the Javadoc tags listed below. 1449 * <ul> 1450 * <li>{@link #SEE_LITERAL @see}</li> 1451 * <li>{@link #LINK_LITERAL {@link}}</li> 1452 * <li>{@link #LINKPLAIN_LITERAL {@linkplain}}</li> 1453 * <li>{@link #VALUE_LITERAL {@value}}</li> 1454 * </ul> 1455 */ 1456 public static final int REFERENCE = JavadocParser.RULE_reference + RULE_TYPES_OFFSET; 1457 1458 /** 1459 * Parameters part in {@link #REFERENCE}. 1460 * It is used to specify parameters for {@link #MEMBER method}. 1461 * Always contains {@link #LEFT_BRACE} as first child and {@link #RIGHT_BRACE} as last child. 1462 * Each parameter is represented by {@link #ARGUMENT} node. 1463 * Arguments in braces are separated by {@link #COMMA} (and optional {@link #WS}). 1464 * 1465 * <p><b>Example:</b></p> 1466 * <pre>{@code @see #method(Processor, String)}</pre> 1467 * <b>Tree:</b> 1468 * <pre> 1469 * {@code 1470 * JAVADOC_TAG -> JAVADOC_TAG 1471 * |--SEE_LITERAL -> @see 1472 * |--WS -> 1473 * |--REFERENCE -> REFERENCE 1474 * |--HASH -> # 1475 * |--MEMBER -> method 1476 * `--PARAMETERS -> PARAMETERS 1477 * |--LEFT_BRACE -> ( 1478 * |--ARGUMENT -> Processor 1479 * |--COMMA -> , 1480 * |--WS -> 1481 * |--ARGUMENT -> String 1482 * `--RIGHT_BRACE -> ) 1483 * } 1484 * </pre> 1485 */ 1486 public static final int PARAMETERS = JavadocParser.RULE_parameters + RULE_TYPES_OFFSET; 1487 1488 /** 1489 * Description node. It contains: 1490 * <ul> 1491 * <li>{@link #TEXT}</li> 1492 * <li>{@link #WS}</li> 1493 * <li>{@link #NEWLINE}</li> 1494 * <li>{@link #HTML_ELEMENT}</li> 1495 * </ul> 1496 * 1497 * <p>It is argument for many Javadoc tags and inline tags.</p> 1498 * 1499 * <p><b>Example:</b></p> 1500 * <pre>{@code @throws IOException if <b>connection</b> problems occur}</pre> 1501 * <b>Tree:</b> 1502 * <pre> 1503 * {@code 1504 * --JAVADOC_TAG -> JAVADOC_TAG 1505 * |--THROWS_LITERAL -> @throws 1506 * |--WS -> 1507 * |--CLASS_NAME -> IOException 1508 * |--WS -> 1509 * `--DESCRIPTION -> DESCRIPTION 1510 * |--TEXT -> if 1511 * |--HTML_ELEMENT -> HTML_ELEMENT 1512 * | `--HTML_TAG -> HTML_TAG 1513 * | |--HTML_ELEMENT_START -> HTML_ELEMENT_START 1514 * | | |--START -> < 1515 * | | |--HTML_TAG_NAME -> b 1516 * | | `--END -> > 1517 * | |--TEXT -> connection 1518 * | `--HTML_ELEMENT_END -> HTML_ELEMENT_END 1519 * | |--START -> < 1520 * | |--SLASH -> / 1521 * | |--HTML_TAG_NAME -> b 1522 * | `--END -> > 1523 * |--TEXT -> problems occur 1524 * } 1525 * </pre> 1526 */ 1527 public static final int DESCRIPTION = JavadocParser.RULE_description + RULE_TYPES_OFFSET; 1528 1529 // ------------------------------------------------------------------------------------------ // 1530 // -------- HTML TAGS DEPENDING ON RULE TYPES OFFSET ---------------------------------------- // 1531 // ------------------------------------------------------------------------------------------ // 1532 1533 /** 1534 * Parent node for all html tags. 1535 */ 1536 public static final int HTML_ELEMENT = JavadocParser.RULE_htmlElement 1537 + RULE_TYPES_OFFSET; 1538 1539 /** 1540 * Start html tag: <XXXX>. 1541 */ 1542 public static final int HTML_ELEMENT_START = JavadocParser.RULE_htmlElementStart 1543 + RULE_TYPES_OFFSET; 1544 1545 /** 1546 * End html tag: <XXXX>. 1547 */ 1548 public static final int HTML_ELEMENT_END = JavadocParser.RULE_htmlElementEnd 1549 + RULE_TYPES_OFFSET; 1550 1551 /** 1552 * Non-special HTML tag. 1553 */ 1554 public static final int HTML_TAG = JavadocParser.RULE_htmlTag + RULE_TYPES_OFFSET; 1555 1556 /** 1557 * Html tag attribute. Parent node for: {@code HTML_TAG_IDENT, EQUALS, ATTR_VALUE}. 1558 */ 1559 public static final int ATTRIBUTE = JavadocParser.RULE_attribute 1560 + RULE_TYPES_OFFSET; 1561 1562 /////////////////////// HTML TAGS WITH OPTIONAL END TAG ///////////////////////////////////// 1563 /** 1564 * Paragraph html tag. 1565 * 1566 * <p><b>Example:</b></p> 1567 * <pre>{@code <p>Sample text</p>}</pre> 1568 * <b>Tree:</b> 1569 * <pre> 1570 * {@code 1571 * `--JAVADOC -> JAVADOC 1572 * |--NEWLINE -> \r\n 1573 * |--LEADING_ASTERISK -> * 1574 * |--TEXT -> 1575 * |--HTML_ELEMENT -> HTML_ELEMENT 1576 * | `--PARAGRAPH -> PARAGRAPH 1577 * | |--P_TAG_START -> P_TAG_START 1578 * | | |--START -> < 1579 * | | |--P_HTML_TAG_NAME -> p 1580 * | | `--END -> > 1581 * | |--TEXT -> Sample text 1582 * | `--P_TAG_END -> P_TAG_END 1583 * | |--START -> < 1584 * | |--SLASH -> / 1585 * | |--P_HTML_TAG_NAME -> p 1586 * | `--END -> > 1587 * |--NEWLINE -> \r\n 1588 * |--TEXT -> 1589 * } 1590 * </pre> 1591 */ 1592 public static final int PARAGRAPH = JavadocParser.RULE_paragraph + RULE_TYPES_OFFSET; 1593 /** Start paragraph tag. */ 1594 public static final int P_TAG_START = JavadocParser.RULE_pTagStart + RULE_TYPES_OFFSET; 1595 /** End paragraph tag. */ 1596 public static final int P_TAG_END = JavadocParser.RULE_pTagEnd + RULE_TYPES_OFFSET; 1597 1598 /** 1599 * List items html tag. 1600 * 1601 * <p><b>Example:</b></p> 1602 * <pre>{@code 1603 * <ul> 1604 * <li>Item 1</li> 1605 * </ul> 1606 * }</pre> 1607 * <b>Tree:</b> 1608 * <pre> 1609 * {@code 1610 * --JAVADOC -> JAVADOC 1611 * |--NEWLINE -> \n 1612 * |--LEADING_ASTERISK -> * 1613 * |--TEXT -> 1614 * |--HTML_ELEMENT -> HTML_ELEMENT 1615 * | `--HTML_TAG -> HTML_TAG 1616 * | |--HTML_ELEMENT_START -> HTML_ELEMENT_START 1617 * | | |--START -> < 1618 * | | |--HTML_TAG_NAME -> ul 1619 * | | `--END -> > 1620 * | |--NEWLINE -> \n 1621 * | |--LEADING_ASTERISK -> * 1622 * | |--TEXT -> 1623 * | |--HTML_ELEMENT -> HTML_ELEMENT 1624 * | | `--LI -> LI 1625 * | | |--LI_TAG_START -> LI_TAG_START 1626 * | | | |--START -> < 1627 * | | | |--LI_HTML_TAG_NAME -> li 1628 * | | | `--END -> > 1629 * | | |--TEXT -> Item 1 1630 * | | `--LI_TAG_END -> LI_TAG_END 1631 * | | |--START -> < 1632 * | | |--SLASH -> / 1633 * | | |--LI_HTML_TAG_NAME -> li 1634 * | | `--END -> > 1635 * | |--NEWLINE -> \n 1636 * | |--LEADING_ASTERISK -> * 1637 * | |--TEXT -> 1638 * | `--HTML_ELEMENT_END -> HTML_ELEMENT_END 1639 * | |--START -> < 1640 * | |--SLASH -> / 1641 * | |--HTML_TAG_NAME -> ul 1642 * | `--END -> > 1643 * |--NEWLINE -> \n 1644 * |--TEXT -> 1645 * } 1646 * </pre> 1647 */ 1648 public static final int LI = JavadocParser.RULE_li + RULE_TYPES_OFFSET; 1649 /** Start list item tag. */ 1650 public static final int LI_TAG_START = JavadocParser.RULE_liTagStart + RULE_TYPES_OFFSET; 1651 /** End list item tag. */ 1652 public static final int LI_TAG_END = JavadocParser.RULE_liTagEnd + RULE_TYPES_OFFSET; 1653 1654 /** 1655 * Table row html tag. 1656 * 1657 * <p><b>Example:</b></p> 1658 * <pre>{@code <tr></tr>}</pre> 1659 * <b>Tree:</b> 1660 * <pre> 1661 * {@code 1662 * JAVADOC -> JAVADOC 1663 * |--NEWLINE -> \r\n 1664 * |--LEADING_ASTERISK -> * 1665 * |--TEXT -> 1666 * |--HTML_ELEMENT -> HTML_ELEMENT 1667 * | `--TR -> TR 1668 * | |--TR_TAG_START -> TR_TAG_START 1669 * | | |--START -> < 1670 * | | |--TR_HTML_TAG_NAME -> tr 1671 * | | `--END -> > 1672 * | `--TR_TAG_END -> TR_TAG_END 1673 * | |--START -> < 1674 * | |--SLASH -> / 1675 * | |--TR_HTML_TAG_NAME -> tr 1676 * | `--END -> > 1677 * |--NEWLINE -> \r\n 1678 * |--TEXT -> 1679 * } 1680 * </pre> 1681 */ 1682 public static final int TR = JavadocParser.RULE_tr + RULE_TYPES_OFFSET; 1683 /** Start table row tag. */ 1684 public static final int TR_TAG_START = JavadocParser.RULE_trTagStart + RULE_TYPES_OFFSET; 1685 /** End table row tag. */ 1686 public static final int TR_TAG_END = JavadocParser.RULE_trTagEnd + RULE_TYPES_OFFSET; 1687 1688 /** Table cell html tag: {@code <td></td>}. */ 1689 public static final int TD = JavadocParser.RULE_td + RULE_TYPES_OFFSET; 1690 /** Start table cell tag. */ 1691 public static final int TD_TAG_START = JavadocParser.RULE_tdTagStart + RULE_TYPES_OFFSET; 1692 /** End table cell tag. */ 1693 public static final int TD_TAG_END = JavadocParser.RULE_tdTagEnd + RULE_TYPES_OFFSET; 1694 1695 /** Table header cell html tag: {@code <th></th>}. */ 1696 public static final int TH = JavadocParser.RULE_th + RULE_TYPES_OFFSET; 1697 /** Start table header cell tag. */ 1698 public static final int TH_TAG_START = JavadocParser.RULE_thTagStart + RULE_TYPES_OFFSET; 1699 /** End table header cell tag. */ 1700 public static final int TH_TAG_END = JavadocParser.RULE_thTagEnd + RULE_TYPES_OFFSET; 1701 1702 /** Body html tag. */ 1703 public static final int BODY = JavadocParser.RULE_body + RULE_TYPES_OFFSET; 1704 1705 /** 1706 * Start body tag. 1707 * 1708 * <p><b>Example:</b></p> 1709 * <pre>{@code 1710 * <body> 1711 * This is a test 1712 * </body> 1713 * }</pre> 1714 * <b>Tree:</b> 1715 * <pre> 1716 * {@code 1717 * JAVADOC -> JAVADOC 1718 * |--TEXT -> /** 1719 * |--NEWLINE -> \n 1720 * |--LEADING_ASTERISK -> * 1721 * |--TEXT -> 1722 * |--HTML_ELEMENT -> HTML_ELEMENT 1723 * | `--BODY -> BODY 1724 * | |--BODY_TAG_START -> BODY_TAG_START 1725 * | | |--START -> < 1726 * | | |--BODY_HTML_TAG_NAME -> body 1727 * | | `--END -> > 1728 * | |--NEWLINE -> \n 1729 * | |--LEADING_ASTERISK -> * 1730 * | |--TEXT -> This is inside the body tag. 1731 * | |--NEWLINE -> \n 1732 * | |--LEADING_ASTERISK -> * 1733 * | |--TEXT -> 1734 * | `--BODY_TAG_END -> BODY_TAG_END 1735 * | |--START -> < 1736 * | |--SLASH -> / 1737 * | |--BODY_HTML_TAG_NAME -> body 1738 * | `--END -> > 1739 * |--NEWLINE -> \n 1740 * |--LEADING_ASTERISK -> * 1741 * |--TEXT -> / 1742 * |--NEWLINE -> \n 1743 * |--TEXT -> public class Test { 1744 * |--NEWLINE -> \n 1745 * |--TEXT -> } 1746 * |--NEWLINE -> \n 1747 * } 1748 * </pre> 1749 */ 1750 public static final int BODY_TAG_START = JavadocParser.RULE_bodyTagStart + RULE_TYPES_OFFSET; 1751 1752 /** 1753 * End body tag. 1754 * 1755 * <p><b>Example:</b></p> 1756 * <pre>{@code 1757 * <body> 1758 * This is a test 1759 * </body> 1760 * }</pre> 1761 * <b>Tree:</b> 1762 * <pre> 1763 * {@code 1764 * JAVADOC -> JAVADOC 1765 * |--TEXT -> /** 1766 * |--NEWLINE -> \n 1767 * |--LEADING_ASTERISK -> * 1768 * |--TEXT -> 1769 * |--HTML_ELEMENT -> HTML_ELEMENT 1770 * | `--BODY -> BODY 1771 * | |--BODY_TAG_START -> BODY_TAG_START 1772 * | | |--START -> < 1773 * | | |--BODY_HTML_TAG_NAME -> body 1774 * | | `--END -> > 1775 * | |--NEWLINE -> \n 1776 * | |--LEADING_ASTERISK -> * 1777 * | |--TEXT -> This is inside the body tag. 1778 * | |--NEWLINE -> \n 1779 * | |--LEADING_ASTERISK -> * 1780 * | |--TEXT -> 1781 * | `--BODY_TAG_END -> BODY_TAG_END 1782 * | |--START -> < 1783 * | |--SLASH -> / 1784 * | |--BODY_HTML_TAG_NAME -> body 1785 * | `--END -> > 1786 * |--NEWLINE -> \n 1787 * |--LEADING_ASTERISK -> * 1788 * |--TEXT -> / 1789 * |--NEWLINE -> \n 1790 * |--TEXT -> public class Test { 1791 * |--NEWLINE -> \n 1792 * |--TEXT -> } 1793 * |--NEWLINE -> \n 1794 * } 1795 * </pre> 1796 */ 1797 public static final int BODY_TAG_END = JavadocParser.RULE_bodyTagEnd + RULE_TYPES_OFFSET; 1798 1799 /** 1800 * Colgroup html tag. 1801 * 1802 * <p><b>Example:</b></p> 1803 * <pre>{@code 1804 * <colgroup> 1805 * <col /> 1806 * <col span="2" class="batman" /> 1807 * </colgroup> 1808 * }</pre> 1809 * <b>Tree:</b> 1810 * <pre> 1811 * {@code 1812 * --JAVADOC -> JAVADOC 1813 * |--NEWLINE -> \n 1814 * |--LEADING_ASTERISK -> * 1815 * |--TEXT -> 1816 * |--HTML_ELEMENT -> HTML_ELEMENT 1817 * | `--COLGROUP -> COLGROUP 1818 * | |--COLGROUP_TAG_START -> COLGROUP_TAG_START 1819 * | | |--START -> < 1820 * | | |--COLGROUP_HTML_TAG_NAME -> colgroup 1821 * | | | `--END -> > 1822 * | |--NEWLINE -> \n 1823 * | |--LEADING_ASTERISK -> * 1824 * | |--TEXT -> 1825 * | |--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 1826 * | | `--COL_TAG -> COL_TAG 1827 * | | |--START -> < 1828 * | | |--COL_HTML_TAG_NAME -> col 1829 * | | |--WS -> 1830 * | | `--SLASH_END -> /> 1831 * | |--NEWLINE -> \n 1832 * | |--LEADING_ASTERISK -> * 1833 * | |--TEXT -> 1834 * | |--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 1835 * | | `--COL_TAG -> COL_TAG 1836 * | | |--START -> < 1837 * | | |--COL_HTML_TAG_NAME -> col 1838 * | | |--WS -> 1839 * | | |--ATTRIBUTE -> ATTRIBUTE 1840 * | | | |--HTML_TAG_NAME -> span 1841 * | | | |--EQUALS -> = 1842 * | | | `--ATTR_VALUE -> "2" 1843 * | | |--WS -> 1844 * | | |--ATTRIBUTE -> ATTRIBUTE 1845 * | | | |--HTML_TAG_NAME -> class 1846 * | | | |--EQUALS -> = 1847 * | | | `--ATTR_VALUE -> "batman" 1848 * | | |--WS -> 1849 * | | `--SLASH_END -> /> 1850 * | |--NEWLINE -> \n 1851 * | |--LEADING_ASTERISK -> * 1852 * | |--TEXT -> 1853 * | `--COLGROUP_TAG_END -> COLGROUP_TAG_END 1854 * | | |--START -> < 1855 * | | |--SLASH -> / 1856 * | | |--COLGROUP_HTML_TAG_NAME -> colgroup 1857 * | | `--END -> > 1858 * |--NEWLINE -> \n 1859 * |--TEXT -> 1860 * } 1861 * </pre> 1862 */ 1863 public static final int COLGROUP = JavadocParser.RULE_colgroup + RULE_TYPES_OFFSET; 1864 /** Start colgroup tag. */ 1865 public static final int COLGROUP_TAG_START = JavadocParser.RULE_colgroupTagStart 1866 + RULE_TYPES_OFFSET; 1867 /** End colgroup tag. */ 1868 public static final int COLGROUP_TAG_END = JavadocParser.RULE_colgroupTagEnd 1869 + RULE_TYPES_OFFSET; 1870 1871 /** Description of a term html tag: {@code <dd></dd>}. */ 1872 public static final int DD = JavadocParser.RULE_dd + RULE_TYPES_OFFSET; 1873 /** Start description of a term tag. */ 1874 public static final int DD_TAG_START = JavadocParser.RULE_ddTagStart + RULE_TYPES_OFFSET; 1875 /** End description of a term tag. */ 1876 public static final int DD_TAG_END = JavadocParser.RULE_ddTagEnd + RULE_TYPES_OFFSET; 1877 1878 /** Description term html tag: {@code <dt></dt>}. */ 1879 public static final int DT = JavadocParser.RULE_dt + RULE_TYPES_OFFSET; 1880 /** Start description term tag. */ 1881 public static final int DT_TAG_START = JavadocParser.RULE_dtTagStart + RULE_TYPES_OFFSET; 1882 /** End description term tag. */ 1883 public static final int DT_TAG_END = JavadocParser.RULE_dtTagEnd + RULE_TYPES_OFFSET; 1884 1885 /** Head html tag. */ 1886 public static final int HEAD = JavadocParser.RULE_head + RULE_TYPES_OFFSET; 1887 /** Start head tag. */ 1888 public static final int HEAD_TAG_START = JavadocParser.RULE_headTagStart + RULE_TYPES_OFFSET; 1889 /** End head tag. */ 1890 public static final int HEAD_TAG_END = JavadocParser.RULE_headTagEnd + RULE_TYPES_OFFSET; 1891 1892 /** Html html tag. */ 1893 public static final int HTML = JavadocParser.RULE_html + RULE_TYPES_OFFSET; 1894 /** Start html tag. */ 1895 public static final int HTML_TAG_START = JavadocParser.RULE_htmlTagStart + RULE_TYPES_OFFSET; 1896 /** End html tag. */ 1897 public static final int HTML_TAG_END = JavadocParser.RULE_htmlTagEnd + RULE_TYPES_OFFSET; 1898 1899 /** Option html tag. */ 1900 public static final int OPTION = JavadocParser.RULE_option + RULE_TYPES_OFFSET; 1901 /** Start option tag. */ 1902 public static final int OPTION_TAG_START = 1903 JavadocParser.RULE_optionTagStart + RULE_TYPES_OFFSET; 1904 /** End option tag. */ 1905 public static final int OPTION_TAG_END = JavadocParser.RULE_optionTagEnd 1906 + RULE_TYPES_OFFSET; 1907 1908 /** Table body html tag. */ 1909 public static final int TBODY = JavadocParser.RULE_tbody + RULE_TYPES_OFFSET; 1910 /** Start table body tag. */ 1911 public static final int TBODY_TAG_START = JavadocParser.RULE_tbodyTagStart + RULE_TYPES_OFFSET; 1912 /** End table body tag. */ 1913 public static final int TBODY_TAG_END = JavadocParser.RULE_tbodyTagEnd + RULE_TYPES_OFFSET; 1914 1915 /** Table foot html tag. */ 1916 public static final int TFOOT = JavadocParser.RULE_tfoot + RULE_TYPES_OFFSET; 1917 /** Start table foot tag. */ 1918 public static final int TFOOT_TAG_START = JavadocParser.RULE_tfootTagStart + RULE_TYPES_OFFSET; 1919 /** End table foot tag. */ 1920 public static final int TFOOT_TAG_END = JavadocParser.RULE_tfootTagEnd + RULE_TYPES_OFFSET; 1921 1922 /** Table head html tag. */ 1923 public static final int THEAD = JavadocParser.RULE_thead + RULE_TYPES_OFFSET; 1924 /** Start table head tag. */ 1925 public static final int THEAD_TAG_START = JavadocParser.RULE_theadTagStart + RULE_TYPES_OFFSET; 1926 /** End table head tag. */ 1927 public static final int THEAD_TAG_END = JavadocParser.RULE_theadTagEnd + RULE_TYPES_OFFSET; 1928 1929 /** `optgroup` html tag. */ 1930 public static final int OPTGROUP = JavadocParser.RULE_optgroup + RULE_TYPES_OFFSET; 1931 /** `optgroup` tag start. */ 1932 public static final int OPTGROUP_TAG_START = 1933 JavadocParser.RULE_optgroupTagStart + RULE_TYPES_OFFSET; 1934 /** `optgroup` tag end. */ 1935 public static final int OPTGROUP_TAG_END = 1936 JavadocParser.RULE_optgroupTagEnd + RULE_TYPES_OFFSET; 1937 1938 /** `rb` html tag. */ 1939 public static final int RB = JavadocParser.RULE_rb + RULE_TYPES_OFFSET; 1940 /** `rb` tag start. */ 1941 public static final int RB_TAG_START = 1942 JavadocParser.RULE_rbTagStart + RULE_TYPES_OFFSET; 1943 /** `rb` tag end. */ 1944 public static final int RB_TAG_END = 1945 JavadocParser.RULE_rbTagEnd + RULE_TYPES_OFFSET; 1946 1947 /** `rt` html tag. */ 1948 public static final int RT = JavadocParser.RULE_rt + RULE_TYPES_OFFSET; 1949 /** `rt` tag start. */ 1950 public static final int RT_TAG_START = 1951 JavadocParser.RULE_rtTagStart + RULE_TYPES_OFFSET; 1952 /** `rt` tag end. */ 1953 public static final int RT_TAG_END = 1954 JavadocParser.RULE_rtTagEnd + RULE_TYPES_OFFSET; 1955 1956 /** `rtc` html tag. */ 1957 public static final int RTC = JavadocParser.RULE_rtc + RULE_TYPES_OFFSET; 1958 /** `rtc` tag start. */ 1959 public static final int RTC_TAG_START = 1960 JavadocParser.RULE_rtcTagStart + RULE_TYPES_OFFSET; 1961 /** `rtc` tag end. */ 1962 public static final int RTC_TAG_END = 1963 JavadocParser.RULE_rtcTagEnd + RULE_TYPES_OFFSET; 1964 1965 /** `rp` html tag. */ 1966 public static final int RP = JavadocParser.RULE_rp + RULE_TYPES_OFFSET; 1967 /** `rp` tag start. */ 1968 public static final int RP_TAG_START = 1969 JavadocParser.RULE_rpTagStart + RULE_TYPES_OFFSET; 1970 /** `rp` tag end. */ 1971 public static final int RP_TAG_END = 1972 JavadocParser.RULE_rpTagEnd + RULE_TYPES_OFFSET; 1973 1974 /////////////////////// SINGLETON HTML TAGS ////////////////////////////////////////////////// 1975 /** 1976 * Parent node for all singleton html tags. 1977 */ 1978 public static final int SINGLETON_ELEMENT = JavadocParser.RULE_singletonElement 1979 + RULE_TYPES_OFFSET; 1980 1981 /** 1982 * Non-special empty html tag. 1983 */ 1984 public static final int EMPTY_TAG = JavadocParser.RULE_emptyTag 1985 + RULE_TYPES_OFFSET; 1986 1987 /** 1988 * Area html tag. 1989 * 1990 * <p><b>Example:</b></p> 1991 * <pre>{@code < area shape="rect" >}</pre> 1992 * <b>Tree:</b> 1993 * <pre> 1994 * {@code 1995 * JAVADOC -> JAVADOC 1996 * |--NEWLINE -> \n 1997 * |--LEADING_ASTERISK -> * 1998 * |--TEXT -> 1999 * |--HTML_ELEMENT -> HTML_ELEMENT 2000 * | `--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 2001 * | `--AREA_TAG -> AREA_TAG 2002 * | |--START -> < 2003 * | |--AREA_HTML_TAG_NAME -> area 2004 * | |--WS -> 2005 * | |--ATTRIBUTE -> ATTRIBUTE 2006 * | | |--HTML_TAG_NAME -> shape 2007 * | | |--EQUALS -> = 2008 * | | `--ATTR_VALUE -> "rect" 2009 * | `--END -> > 2010 * |--TEXT -> 2011 * |--NEWLINE -> \n 2012 * |--TEXT -> 2013 * } 2014 * </pre> 2015 */ 2016 public static final int AREA_TAG = JavadocParser.RULE_areaTag + RULE_TYPES_OFFSET; 2017 2018 /** Base html tag. */ 2019 public static final int BASE_TAG = JavadocParser.RULE_baseTag + RULE_TYPES_OFFSET; 2020 2021 /** Basefont html tag. */ 2022 public static final int BASEFONT_TAG = JavadocParser.RULE_basefontTag + RULE_TYPES_OFFSET; 2023 2024 /** Br html tag. */ 2025 public static final int BR_TAG = JavadocParser.RULE_brTag + RULE_TYPES_OFFSET; 2026 2027 /** Col html tag. */ 2028 public static final int COL_TAG = JavadocParser.RULE_colTag + RULE_TYPES_OFFSET; 2029 2030 /** Frame html tag. */ 2031 public static final int FRAME_TAG = JavadocParser.RULE_frameTag + RULE_TYPES_OFFSET; 2032 2033 /** Hr html tag. */ 2034 public static final int HR_TAG = JavadocParser.RULE_hrTag + RULE_TYPES_OFFSET; 2035 2036 /** Img html tag. */ 2037 public static final int IMG_TAG = JavadocParser.RULE_imgTag + RULE_TYPES_OFFSET; 2038 2039 /** 2040 * Input html tag. 2041 * 2042 * <p><b>Example:</b></p> 2043 * <pre>{@code Type here: <input type="text" id="id" name="name"> }</pre> 2044 * <b>Tree:</b> 2045 * <pre> 2046 * {@code 2047 * JAVADOC -> JAVADOC 2048 * |--NEWLINE -> \r\n 2049 * |--LEADING_ASTERISK -> * 2050 * |--TEXT -> Type here: 2051 * |--HTML_ELEMENT -> HTML_ELEMENT 2052 * | `--SINGLETON_ELEMENT -> SINGLETON_ELEMENT 2053 * | `--INPUT_TAG -> INPUT_TAG 2054 * | |--START -> < 2055 * | |--INPUT_HTML_TAG_NAME -> input 2056 * | |--WS -> 2057 * | |--ATTRIBUTE -> ATTRIBUTE 2058 * | | |--HTML_TAG_NAME -> type 2059 * | | |--EQUALS -> = 2060 * | | `--ATTR_VALUE -> "text" 2061 * | |--WS -> 2062 * | |--ATTRIBUTE -> ATTRIBUTE 2063 * | | |--HTML_TAG_NAME -> id 2064 * | | |--EQUALS -> = 2065 * | | `--ATTR_VALUE -> "id" 2066 * | |--WS -> 2067 * | |--ATTRIBUTE -> ATTRIBUTE 2068 * | | |--HTML_TAG_NAME -> name 2069 * | | |--EQUALS -> = 2070 * | | `--ATTR_VALUE -> "name" 2071 * | `--END -> > 2072 * |--NEWLINE -> \r\n 2073 * |--TEXT -> 2074 * } 2075 * </pre> 2076 */ 2077 public static final int INPUT_TAG = JavadocParser.RULE_inputTag + RULE_TYPES_OFFSET; 2078 2079 /** Isindex html tag. */ 2080 public static final int ISINDEX_TAG = JavadocParser.RULE_isindexTag + RULE_TYPES_OFFSET; 2081 2082 /** Link html tag. */ 2083 public static final int LINK_TAG = JavadocParser.RULE_linkTag + RULE_TYPES_OFFSET; 2084 2085 /** Meta html tag. */ 2086 public static final int META_TAG = JavadocParser.RULE_metaTag + RULE_TYPES_OFFSET; 2087 2088 /** Param html tag. */ 2089 public static final int PARAM_TAG = JavadocParser.RULE_paramTag + RULE_TYPES_OFFSET; 2090 2091 /** 2092 * HTML void element {@code <embed>}. 2093 * 2094 * @see #SINGLETON_ELEMENT 2095 * @see <a href="https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-embed"> 2096 * W3 docs</a> 2097 */ 2098 public static final int EMBED_TAG = JavadocParser.RULE_embedTag + RULE_TYPES_OFFSET; 2099 2100 /** 2101 * HTML void element {@code <keygen>}. 2102 * 2103 * @see #SINGLETON_ELEMENT 2104 * @see <a href="https://www.w3.org/TR/html51/sec-forms.html#elementdef-keygen"> 2105 * W3 docs</a> 2106 */ 2107 public static final int KEYGEN_TAG = JavadocParser.RULE_keygenTag + RULE_TYPES_OFFSET; 2108 2109 /** 2110 * HTML void element {@code <source>}. 2111 * 2112 * @see #SINGLETON_ELEMENT 2113 * @see <a href= 2114 * "https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-media-source"> 2115 * W3 docs</a> 2116 */ 2117 public static final int SOURCE_TAG = JavadocParser.RULE_sourceTag + RULE_TYPES_OFFSET; 2118 2119 /** 2120 * HTML void element {@code <track>}. 2121 * 2122 * @see #SINGLETON_ELEMENT 2123 * @see <a 2124 * href="https://www.w3.org/TR/html51/semantics-embedded-content.html#elementdef-track"> 2125 * W3 docs</a> 2126 */ 2127 public static final int TRACK_TAG = JavadocParser.RULE_trackTag + RULE_TYPES_OFFSET; 2128 2129 /** 2130 * HTML void element {@code <wbr>}. 2131 * 2132 * @see #SINGLETON_ELEMENT 2133 * @see <a href="https://www.w3.org/TR/html51/textlevel-semantics.html#elementdef-wbr"> 2134 * W3 docs</a> 2135 */ 2136 public static final int WBR_TAG = JavadocParser.RULE_wbrTag + RULE_TYPES_OFFSET; 2137 2138 /////////////////////////////////////////////////////////////////////////////////////////////// 2139 2140 /** 2141 * Html comment: <code><!-- --></code>. 2142 * 2143 * @noinspection HtmlTagCanBeJavadocTag 2144 * @noinspectionreason HtmlTagCanBeJavadocTag - encoded symbols were not decoded when 2145 * replaced with Javadoc tag 2146 */ 2147 public static final int HTML_COMMENT = JavadocParser.RULE_htmlComment 2148 + RULE_TYPES_OFFSET; 2149 /** 2150 * CHAR and WS sequence. 2151 */ 2152 public static final int TEXT = JavadocParser.RULE_text + RULE_TYPES_OFFSET; 2153 2154 /** Empty private constructor of the current class. */ 2155 private JavadocTokenTypes() { 2156 } 2157 2158 }