org.codehaus.groovy.syntax

## Class Types

- java.lang.Object
- - org.codehaus.groovy.syntax.Types

-     public class Types
      extends Object

  Typing information for the CST system. The types here are those used by CSTNode, Token, and Reduction.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `ANY`
    `static int` | `ANY_END_OF_STATEMENT`
    `static int` | `ARRAY_EXPRESSION`
    `static int` | `ARRAY_ITEM_TERMINATORS`
    `static int` | `ASSIGN`
    `static int` | `ASSIGNMENT_OPERATOR`
    `static int` | `BITWISE_AND`
    `static int` | `BITWISE_AND_EQUAL`
    `static int` | `BITWISE_NEGATION`
    `static int` | `BITWISE_OPERATOR`
    `static int` | `BITWISE_OR`
    `static int` | `BITWISE_OR_EQUAL`
    `static int` | `BITWISE_XOR`
    `static int` | `BITWISE_XOR_EQUAL`
    `static int` | `COLON`
    `static int` | `COMMA`
    `static int` | `COMPARE_EQUAL`
    `static int` | `COMPARE_GREATER_THAN`
    `static int` | `COMPARE_GREATER_THAN_EQUAL`
    `static int` | `COMPARE_IDENTICAL`
    `static int` | `COMPARE_LESS_THAN`
    `static int` | `COMPARE_LESS_THAN_EQUAL`
    `static int` | `COMPARE_NOT_EQUAL`
    `static int` | `COMPARE_NOT_IDENTICAL`
    `static int` | `COMPARE_TO`
    `static int` | `COMPARISON_OPERATOR`
    `static int` | `COMPLEX_EXPRESSION`
    `static int` | `CREATABLE_PRIMITIVE_TYPE`
    `static int` | `CREATABLE_TYPE_NAME`
    `static int` | `DECIMAL_NUMBER`
    `static int` | `DECLARATION_MODIFIER`
    `static int` | `DEREFERENCE_OPERATOR`
    `static int` | `DIVIDE`
    `static int` | `DIVIDE_EQUAL`
    `static int` | `DOT`
    `static int` | `DOT_DOT`
    `static int` | `DOT_DOT_DOT`
    `static int` | `DOUBLE_PIPE`
    `static int` | `EOF`
    `static int` | `EQUAL`
    `static int` | `EQUALS`
    `static int` | `EXPRESSION`
    `static int` | `FIND_REGEX`
    `static int` | `GENERAL_END_OF_STATEMENT`
    `static int` | `GSTRING_END`
    `static int` | `GSTRING_EXPRESSION_END`
    `static int` | `GSTRING_EXPRESSION_START`
    `static int` | `GSTRING_START`
    `static int` | `IDENTIFIER`
    `static int` | `INFIX_OPERATOR`
    `static int` | `INSTANCEOF_OPERATOR`
    `static int` | `INTDIV`
    `static int` | `INTDIV_EQUAL`
    `static int` | `INTEGER_NUMBER`
    `static int` | `KEYWORD`
    `static int` | `KEYWORD_ABSTRACT`
    `static int` | `KEYWORD_AS`
    `static int` | `KEYWORD_ASSERT`
    `static int` | `KEYWORD_BOOLEAN`
    `static int` | `KEYWORD_BREAK`
    `static int` | `KEYWORD_BYTE`
    `static int` | `KEYWORD_CASE`
    `static int` | `KEYWORD_CATCH`
    `static int` | `KEYWORD_CHAR`
    `static int` | `KEYWORD_CLASS`
    `static int` | `KEYWORD_CONST`
    `static int` | `KEYWORD_CONTINUE`
    `static int` | `KEYWORD_DEF`
    `static int` | `KEYWORD_DEFAULT`
    `static int` | `KEYWORD_DEFMACRO`
    `static int` | `KEYWORD_DO`
    `static int` | `KEYWORD_DOUBLE`
    `static int` | `KEYWORD_ELSE`
    `static int` | `KEYWORD_EXPRESSION`
    `static int` | `KEYWORD_EXTENDS`
    `static int` | `KEYWORD_FALSE`
    `static int` | `KEYWORD_FINAL`
    `static int` | `KEYWORD_FINALLY`
    `static int` | `KEYWORD_FLOAT`
    `static int` | `KEYWORD_FOR`
    `static int` | `KEYWORD_GOTO`
    `static int` | `KEYWORD_IDENTIFIER`
    `static int` | `KEYWORD_IF`
    `static int` | `KEYWORD_IMPLEMENTS`
    `static int` | `KEYWORD_IMPORT`
    `static int` | `KEYWORD_IN`
    `static int` | `KEYWORD_INSTANCEOF`
    `static int` | `KEYWORD_INT`
    `static int` | `KEYWORD_INTERFACE`
    `static int` | `KEYWORD_LONG`
    `static int` | `KEYWORD_MIXIN`
    `static int` | `KEYWORD_NATIVE`
    `static int` | `KEYWORD_NEW`
    `static int` | `KEYWORD_NULL`
    `static int` | `KEYWORD_PACKAGE`
    `static int` | `KEYWORD_PRIVATE`
    `static int` | `KEYWORD_PROPERTY`
    `static int` | `KEYWORD_PROTECTED`
    `static int` | `KEYWORD_PUBLIC`
    `static int` | `KEYWORD_RETURN`
    `static int` | `KEYWORD_SHORT`
    `static int` | `KEYWORD_STATIC`
    `static int` | `KEYWORD_SUPER`
    `static int` | `KEYWORD_SWITCH`
    `static int` | `KEYWORD_SYNCHRONIZED`
    `static int` | `KEYWORD_THIS`
    `static int` | `KEYWORD_THROW`
    `static int` | `KEYWORD_THROWS`
    `static int` | `KEYWORD_TRANSIENT`
    `static int` | `KEYWORD_TRUE`
    `static int` | `KEYWORD_TRY`
    `static int` | `KEYWORD_VOID`
    `static int` | `KEYWORD_VOLATILE`
    `static int` | `KEYWORD_WHILE`
    `static int` | `LEFT_CURLY_BRACE`
    `static int` | `LEFT_OF_MATCHED_CONTAINER`
    `static int` | `LEFT_PARENTHESIS`
    `static int` | `LEFT_SHIFT`
    `static int` | `LEFT_SHIFT_EQUAL`
    `static int` | `LEFT_SQUARE_BRACKET`
    `static int` | `LITERAL`
    `static int` | `LITERAL_EXPRESSION`
    `static int` | `LOGICAL_AND`
    `static int` | `LOGICAL_AND_EQUAL`
    `static int` | `LOGICAL_OPERATOR`
    `static int` | `LOGICAL_OR`
    `static int` | `LOGICAL_OR_EQUAL`
    `static int` | `LOOP`
    `static int` | `MATCH_REGEX`
    `static int` | `MATCHED_CONTAINER`
    `static int` | `MATH_OPERATOR`
    `static int` | `METHOD_CALL_STARTERS`
    `static int` | `MINUS`
    `static int` | `MINUS_EQUAL`
    `static int` | `MINUS_MINUS`
    `static int` | `MOD`
    `static int` | `MOD_EQUAL`
    `static int` | `MULTIPLY`
    `static int` | `MULTIPLY_EQUAL`
    `static int` | `NAMED_VALUE`
    `static int` | `NAVIGATE`
    `static int` | `NEWLINE`
    `static int` | `NOT`
    `static int` | `NOT_EOF`
    `static int` | `NUMBER`
    `static int` | `OPERATOR_EXPRESSION`
    `static int` | `OPTIONAL_DATATYPE_FOLLOWERS`
    `static int` | `PARAMETER_TERMINATORS`
    `static int` | `PIPE`
    `static int` | `PLUS`
    `static int` | `PLUS_EQUAL`
    `static int` | `PLUS_PLUS`
    `static int` | `POSTFIX_MINUS_MINUS`
    `static int` | `POSTFIX_OPERATOR`
    `static int` | `POSTFIX_PLUS_PLUS`
    `static int` | `POWER`
    `static int` | `POWER_EQUAL`
    `static int` | `PRECLUDES_CAST_OPERATOR`
    `static int` | `PREFIX_MINUS`
    `static int` | `PREFIX_MINUS_MINUS`
    `static int` | `PREFIX_OPERATOR`
    `static int` | `PREFIX_OR_INFIX_OPERATOR`
    `static int` | `PREFIX_PLUS`
    `static int` | `PREFIX_PLUS_PLUS`
    `static int` | `PRIMITIVE_TYPE`
    `static int` | `PURE_PREFIX_OPERATOR`
    `static int` | `QUESTION`
    `static int` | `RANGE_OPERATOR`
    `static int` | `REGEX_COMPARISON_OPERATOR`
    `static int` | `REGEX_PATTERN`
    `static int` | `RESERVED_KEYWORD`
    `static int` | `RIGHT_CURLY_BRACE`
    `static int` | `RIGHT_OF_MATCHED_CONTAINER`
    `static int` | `RIGHT_PARENTHESIS`
    `static int` | `RIGHT_SHIFT`
    `static int` | `RIGHT_SHIFT_EQUAL`
    `static int` | `RIGHT_SHIFT_UNSIGNED`
    `static int` | `RIGHT_SHIFT_UNSIGNED_EQUAL`
    `static int` | `RIGHT_SQUARE_BRACKET`
    `static int` | `SEMICOLON`
    `static int` | `SIGN`
    `static int` | `SIMPLE_EXPRESSION`
    `static int` | `STAR`
    `static int` | `STAR_STAR`
    `static int` | `STRING`
    `static int` | `SWITCH_BLOCK_TERMINATORS`
    `static int` | `SWITCH_ENTRIES`
    `static int` | `SYMBOL`
    `static int` | `SYNTH_BLOCK`
    `static int` | `SYNTH_CAST`
    `static int` | `SYNTH_CLASS`
    `static int` | `SYNTH_CLOSURE`
    `static int` | `SYNTH_COMPILATION_UNIT`
    `static int` | `SYNTH_EXPRESSION`
    `static int` | `SYNTH_GSTRING`
    `static int` | `SYNTH_INTERFACE`
    `static int` | `SYNTH_LABEL`
    `static int` | `SYNTH_LIST`
    `static int` | `SYNTH_MAP`
    `static int` | `SYNTH_METHOD`
    `static int` | `SYNTH_METHOD_CALL`
    `static int` | `SYNTH_MIXIN`
    `static int` | `SYNTH_PARAMETER_DECLARATION`
    `static int` | `SYNTH_PROPERTY`
    `static int` | `SYNTH_TERNARY`
    `static int` | `SYNTH_TUPLE`
    `static int` | `SYNTH_VARIABLE_DECLARATION`
    `static int` | `SYNTHETIC`
    `static int` | `TRUTH_VALUE`
    `static int` | `TYPE_DECLARATION`
    `static int` | `TYPE_LIST_TERMINATORS`
    `static int` | `TYPE_NAME`
    `static int` | `UNKNOWN`
    `static int` | `UNSAFE_OVER_NEWLINES`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Types()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `canMean(int actual, int preferred)` Given two types, returns true if the first can be viewed as the second.
    `static String` | `getDescription(int type)` Gets the description for the specified type.
    `static Collection<String>` | `getKeywords()`
    `static int` | `getPrecedence(int type, boolean throwIfInvalid)` Returns the precedence of the specified operator.
    `static String` | `getText(int type)` Returns the text for the specified type.
    `static boolean` | `isKeyword(String text)`
    `static int` | `lookup(String text, int filter)` Returns the type for the specified symbol/keyword text.
    `static int` | `lookupKeyword(String text)` Returns the type for the specified keyword text.
    `static int` | `lookupSymbol(String text)` Returns the type for the specified symbol text.
    `static void` | `makePostfix(CSTNode node, boolean throwIfInvalid)` Converts a node from a generic type to a specific postfix type.
    `static void` | `makePrefix(CSTNode node, boolean throwIfInvalid)` Converts a node from a generic type to a specific prefix type.
    `static boolean` | `ofType(int specific, int general)` Given two types, returns true if the second describes the first.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### EOF

          public static final int EOF

      See Also:
        Constant Field Values

    - #### UNKNOWN

          public static final int UNKNOWN

      See Also:
        Constant Field Values

    - #### NEWLINE

          public static final int NEWLINE

      See Also:
        Constant Field Values

    - #### LEFT_CURLY_BRACE

          public static final int LEFT_CURLY_BRACE

      See Also:
        Constant Field Values

    - #### RIGHT_CURLY_BRACE

          public static final int RIGHT_CURLY_BRACE

      See Also:
        Constant Field Values

    - #### LEFT_SQUARE_BRACKET

          public static final int LEFT_SQUARE_BRACKET

      See Also:
        Constant Field Values

    - #### RIGHT_SQUARE_BRACKET

          public static final int RIGHT_SQUARE_BRACKET

      See Also:
        Constant Field Values

    - #### LEFT_PARENTHESIS

          public static final int LEFT_PARENTHESIS

      See Also:
        Constant Field Values

    - #### RIGHT_PARENTHESIS

          public static final int RIGHT_PARENTHESIS

      See Also:
        Constant Field Values

    - #### DOT

          public static final int DOT

      See Also:
        Constant Field Values

    - #### DOT_DOT

          public static final int DOT_DOT

      See Also:
        Constant Field Values

    - #### DOT_DOT_DOT

          public static final int DOT_DOT_DOT

      See Also:
        Constant Field Values

    - #### NAVIGATE

          public static final int NAVIGATE

      See Also:
        Constant Field Values

    - #### FIND_REGEX

          public static final int FIND_REGEX

      See Also:
        Constant Field Values

    - #### MATCH_REGEX

          public static final int MATCH_REGEX

      See Also:
        Constant Field Values

    - #### REGEX_PATTERN

          public static final int REGEX_PATTERN

      See Also:
        Constant Field Values

    - #### EQUAL

          public static final int EQUAL

      See Also:
        Constant Field Values

    - #### EQUALS

          public static final int EQUALS

      See Also:
        Constant Field Values

    - #### ASSIGN

          public static final int ASSIGN

      See Also:
        Constant Field Values

    - #### COMPARE_NOT_EQUAL

          public static final int COMPARE_NOT_EQUAL

      See Also:
        Constant Field Values

    - #### COMPARE_IDENTICAL

          public static final int COMPARE_IDENTICAL

      See Also:
        Constant Field Values

    - #### COMPARE_NOT_IDENTICAL

          public static final int COMPARE_NOT_IDENTICAL

      See Also:
        Constant Field Values

    - #### COMPARE_EQUAL

          public static final int COMPARE_EQUAL

      See Also:
        Constant Field Values

    - #### COMPARE_LESS_THAN

          public static final int COMPARE_LESS_THAN

      See Also:
        Constant Field Values

    - #### COMPARE_LESS_THAN_EQUAL

          public static final int COMPARE_LESS_THAN_EQUAL

      See Also:
        Constant Field Values

    - #### COMPARE_GREATER_THAN

          public static final int COMPARE_GREATER_THAN

      See Also:
        Constant Field Values

    - #### COMPARE_GREATER_THAN_EQUAL

          public static final int COMPARE_GREATER_THAN_EQUAL

      See Also:
        Constant Field Values

    - #### COMPARE_TO

          public static final int COMPARE_TO

      See Also:
        Constant Field Values

    - #### NOT

          public static final int NOT

      See Also:
        Constant Field Values

    - #### LOGICAL_OR

          public static final int LOGICAL_OR

      See Also:
        Constant Field Values

    - #### LOGICAL_AND

          public static final int LOGICAL_AND

      See Also:
        Constant Field Values

    - #### LOGICAL_OR_EQUAL

          public static final int LOGICAL_OR_EQUAL

      See Also:
        Constant Field Values

    - #### LOGICAL_AND_EQUAL

          public static final int LOGICAL_AND_EQUAL

      See Also:
        Constant Field Values

    - #### PLUS

          public static final int PLUS

      See Also:
        Constant Field Values

    - #### MINUS

          public static final int MINUS

      See Also:
        Constant Field Values

    - #### MULTIPLY

          public static final int MULTIPLY

      See Also:
        Constant Field Values

    - #### DIVIDE

          public static final int DIVIDE

      See Also:
        Constant Field Values

    - #### INTDIV

          public static final int INTDIV

      See Also:
        Constant Field Values

    - #### MOD

          public static final int MOD

      See Also:
        Constant Field Values

    - #### STAR_STAR

          public static final int STAR_STAR

      See Also:
        Constant Field Values

    - #### POWER

          public static final int POWER

      See Also:
        Constant Field Values

    - #### PLUS_EQUAL

          public static final int PLUS_EQUAL

      See Also:
        Constant Field Values

    - #### MINUS_EQUAL

          public static final int MINUS_EQUAL

      See Also:
        Constant Field Values

    - #### MULTIPLY_EQUAL

          public static final int MULTIPLY_EQUAL

      See Also:
        Constant Field Values

    - #### DIVIDE_EQUAL

          public static final int DIVIDE_EQUAL

      See Also:
        Constant Field Values

    - #### INTDIV_EQUAL

          public static final int INTDIV_EQUAL

      See Also:
        Constant Field Values

    - #### MOD_EQUAL

          public static final int MOD_EQUAL

      See Also:
        Constant Field Values

    - #### POWER_EQUAL

          public static final int POWER_EQUAL

      See Also:
        Constant Field Values

    - #### PLUS_PLUS

          public static final int PLUS_PLUS

      See Also:
        Constant Field Values

    - #### PREFIX_PLUS_PLUS

          public static final int PREFIX_PLUS_PLUS

      See Also:
        Constant Field Values

    - #### POSTFIX_PLUS_PLUS

          public static final int POSTFIX_PLUS_PLUS

      See Also:
        Constant Field Values

    - #### PREFIX_PLUS

          public static final int PREFIX_PLUS

      See Also:
        Constant Field Values

    - #### MINUS_MINUS

          public static final int MINUS_MINUS

      See Also:
        Constant Field Values

    - #### PREFIX_MINUS_MINUS

          public static final int PREFIX_MINUS_MINUS

      See Also:
        Constant Field Values

    - #### POSTFIX_MINUS_MINUS

          public static final int POSTFIX_MINUS_MINUS

      See Also:
        Constant Field Values

    - #### PREFIX_MINUS

          public static final int PREFIX_MINUS

      See Also:
        Constant Field Values

    - #### LEFT_SHIFT

          public static final int LEFT_SHIFT

      See Also:
        Constant Field Values

    - #### RIGHT_SHIFT

          public static final int RIGHT_SHIFT

      See Also:
        Constant Field Values

    - #### RIGHT_SHIFT_UNSIGNED

          public static final int RIGHT_SHIFT_UNSIGNED

      See Also:
        Constant Field Values

    - #### LEFT_SHIFT_EQUAL

          public static final int LEFT_SHIFT_EQUAL

      See Also:
        Constant Field Values

    - #### RIGHT_SHIFT_EQUAL

          public static final int RIGHT_SHIFT_EQUAL

      See Also:
        Constant Field Values

    - #### RIGHT_SHIFT_UNSIGNED_EQUAL

          public static final int RIGHT_SHIFT_UNSIGNED_EQUAL

      See Also:
        Constant Field Values

    - #### STAR

          public static final int STAR

      See Also:
        Constant Field Values

    - #### COMMA

          public static final int COMMA

      See Also:
        Constant Field Values

    - #### COLON

          public static final int COLON

      See Also:
        Constant Field Values

    - #### SEMICOLON

          public static final int SEMICOLON

      See Also:
        Constant Field Values

    - #### QUESTION

          public static final int QUESTION

      See Also:
        Constant Field Values

    - #### PIPE

          public static final int PIPE

      See Also:
        Constant Field Values

    - #### DOUBLE_PIPE

          public static final int DOUBLE_PIPE

      See Also:
        Constant Field Values

    - #### BITWISE_OR

          public static final int BITWISE_OR

      See Also:
        Constant Field Values

    - #### BITWISE_AND

          public static final int BITWISE_AND

      See Also:
        Constant Field Values

    - #### BITWISE_XOR

          public static final int BITWISE_XOR

      See Also:
        Constant Field Values

    - #### BITWISE_OR_EQUAL

          public static final int BITWISE_OR_EQUAL

      See Also:
        Constant Field Values

    - #### BITWISE_AND_EQUAL

          public static final int BITWISE_AND_EQUAL

      See Also:
        Constant Field Values

    - #### BITWISE_XOR_EQUAL

          public static final int BITWISE_XOR_EQUAL

      See Also:
        Constant Field Values

    - #### BITWISE_NEGATION

          public static final int BITWISE_NEGATION

      See Also:
        Constant Field Values

    - #### STRING

          public static final int STRING

      See Also:
        Constant Field Values

    - #### IDENTIFIER

          public static final int IDENTIFIER

      See Also:
        Constant Field Values

    - #### INTEGER_NUMBER

          public static final int INTEGER_NUMBER

      See Also:
        Constant Field Values

    - #### DECIMAL_NUMBER

          public static final int DECIMAL_NUMBER

      See Also:
        Constant Field Values

    - #### KEYWORD_PRIVATE

          public static final int KEYWORD_PRIVATE

      See Also:
        Constant Field Values

    - #### KEYWORD_PROTECTED

          public static final int KEYWORD_PROTECTED

      See Also:
        Constant Field Values

    - #### KEYWORD_PUBLIC

          public static final int KEYWORD_PUBLIC

      See Also:
        Constant Field Values

    - #### KEYWORD_ABSTRACT

          public static final int KEYWORD_ABSTRACT

      See Also:
        Constant Field Values

    - #### KEYWORD_FINAL

          public static final int KEYWORD_FINAL

      See Also:
        Constant Field Values

    - #### KEYWORD_NATIVE

          public static final int KEYWORD_NATIVE

      See Also:
        Constant Field Values

    - #### KEYWORD_TRANSIENT

          public static final int KEYWORD_TRANSIENT

      See Also:
        Constant Field Values

    - #### KEYWORD_VOLATILE

          public static final int KEYWORD_VOLATILE

      See Also:
        Constant Field Values

    - #### KEYWORD_SYNCHRONIZED

          public static final int KEYWORD_SYNCHRONIZED

      See Also:
        Constant Field Values

    - #### KEYWORD_STATIC

          public static final int KEYWORD_STATIC

      See Also:
        Constant Field Values

    - #### KEYWORD_DEF

          public static final int KEYWORD_DEF

      See Also:
        Constant Field Values

    - #### KEYWORD_DEFMACRO

          public static final int KEYWORD_DEFMACRO

      See Also:
        Constant Field Values

    - #### KEYWORD_CLASS

          public static final int KEYWORD_CLASS

      See Also:
        Constant Field Values

    - #### KEYWORD_INTERFACE

          public static final int KEYWORD_INTERFACE

      See Also:
        Constant Field Values

    - #### KEYWORD_MIXIN

          public static final int KEYWORD_MIXIN

      See Also:
        Constant Field Values

    - #### KEYWORD_IMPLEMENTS

          public static final int KEYWORD_IMPLEMENTS

      See Also:
        Constant Field Values

    - #### KEYWORD_EXTENDS

          public static final int KEYWORD_EXTENDS

      See Also:
        Constant Field Values

    - #### KEYWORD_THIS

          public static final int KEYWORD_THIS

      See Also:
        Constant Field Values

    - #### KEYWORD_SUPER

          public static final int KEYWORD_SUPER

      See Also:
        Constant Field Values

    - #### KEYWORD_INSTANCEOF

          public static final int KEYWORD_INSTANCEOF

      See Also:
        Constant Field Values

    - #### KEYWORD_PROPERTY

          public static final int KEYWORD_PROPERTY

      See Also:
        Constant Field Values

    - #### KEYWORD_NEW

          public static final int KEYWORD_NEW

      See Also:
        Constant Field Values

    - #### KEYWORD_PACKAGE

          public static final int KEYWORD_PACKAGE

      See Also:
        Constant Field Values

    - #### KEYWORD_IMPORT

          public static final int KEYWORD_IMPORT

      See Also:
        Constant Field Values

    - #### KEYWORD_AS

          public static final int KEYWORD_AS

      See Also:
        Constant Field Values

    - #### KEYWORD_RETURN

          public static final int KEYWORD_RETURN

      See Also:
        Constant Field Values

    - #### KEYWORD_IF

          public static final int KEYWORD_IF

      See Also:
        Constant Field Values

    - #### KEYWORD_ELSE

          public static final int KEYWORD_ELSE

      See Also:
        Constant Field Values

    - #### KEYWORD_DO

          public static final int KEYWORD_DO

      See Also:
        Constant Field Values

    - #### KEYWORD_WHILE

          public static final int KEYWORD_WHILE

      See Also:
        Constant Field Values

    - #### KEYWORD_FOR

          public static final int KEYWORD_FOR

      See Also:
        Constant Field Values

    - #### KEYWORD_IN

          public static final int KEYWORD_IN

      See Also:
        Constant Field Values

    - #### KEYWORD_BREAK

          public static final int KEYWORD_BREAK

      See Also:
        Constant Field Values

    - #### KEYWORD_CONTINUE

          public static final int KEYWORD_CONTINUE

      See Also:
        Constant Field Values

    - #### KEYWORD_SWITCH

          public static final int KEYWORD_SWITCH

      See Also:
        Constant Field Values

    - #### KEYWORD_CASE

          public static final int KEYWORD_CASE

      See Also:
        Constant Field Values

    - #### KEYWORD_DEFAULT

          public static final int KEYWORD_DEFAULT

      See Also:
        Constant Field Values

    - #### KEYWORD_TRY

          public static final int KEYWORD_TRY

      See Also:
        Constant Field Values

    - #### KEYWORD_CATCH

          public static final int KEYWORD_CATCH

      See Also:
        Constant Field Values

    - #### KEYWORD_FINALLY

          public static final int KEYWORD_FINALLY

      See Also:
        Constant Field Values

    - #### KEYWORD_THROW

          public static final int KEYWORD_THROW

      See Also:
        Constant Field Values

    - #### KEYWORD_THROWS

          public static final int KEYWORD_THROWS

      See Also:
        Constant Field Values

    - #### KEYWORD_ASSERT

          public static final int KEYWORD_ASSERT

      See Also:
        Constant Field Values

    - #### KEYWORD_VOID

          public static final int KEYWORD_VOID

      See Also:
        Constant Field Values

    - #### KEYWORD_BOOLEAN

          public static final int KEYWORD_BOOLEAN

      See Also:
        Constant Field Values

    - #### KEYWORD_BYTE

          public static final int KEYWORD_BYTE

      See Also:
        Constant Field Values

    - #### KEYWORD_SHORT

          public static final int KEYWORD_SHORT

      See Also:
        Constant Field Values

    - #### KEYWORD_INT

          public static final int KEYWORD_INT

      See Also:
        Constant Field Values

    - #### KEYWORD_LONG

          public static final int KEYWORD_LONG

      See Also:
        Constant Field Values

    - #### KEYWORD_FLOAT

          public static final int KEYWORD_FLOAT

      See Also:
        Constant Field Values

    - #### KEYWORD_DOUBLE

          public static final int KEYWORD_DOUBLE

      See Also:
        Constant Field Values

    - #### KEYWORD_CHAR

          public static final int KEYWORD_CHAR

      See Also:
        Constant Field Values

    - #### KEYWORD_TRUE

          public static final int KEYWORD_TRUE

      See Also:
        Constant Field Values

    - #### KEYWORD_FALSE

          public static final int KEYWORD_FALSE

      See Also:
        Constant Field Values

    - #### KEYWORD_NULL

          public static final int KEYWORD_NULL

      See Also:
        Constant Field Values

    - #### KEYWORD_CONST

          public static final int KEYWORD_CONST

      See Also:
        Constant Field Values

    - #### KEYWORD_GOTO

          public static final int KEYWORD_GOTO

      See Also:
        Constant Field Values

    - #### SYNTH_COMPILATION_UNIT

          public static final int SYNTH_COMPILATION_UNIT

      See Also:
        Constant Field Values

    - #### SYNTH_CLASS

          public static final int SYNTH_CLASS

      See Also:
        Constant Field Values

    - #### SYNTH_INTERFACE

          public static final int SYNTH_INTERFACE

      See Also:
        Constant Field Values

    - #### SYNTH_MIXIN

          public static final int SYNTH_MIXIN

      See Also:
        Constant Field Values

    - #### SYNTH_METHOD

          public static final int SYNTH_METHOD

      See Also:
        Constant Field Values

    - #### SYNTH_PROPERTY

          public static final int SYNTH_PROPERTY

      See Also:
        Constant Field Values

    - #### SYNTH_PARAMETER_DECLARATION

          public static final int SYNTH_PARAMETER_DECLARATION

      See Also:
        Constant Field Values

    - #### SYNTH_LIST

          public static final int SYNTH_LIST

      See Also:
        Constant Field Values

    - #### SYNTH_MAP

          public static final int SYNTH_MAP

      See Also:
        Constant Field Values

    - #### SYNTH_GSTRING

          public static final int SYNTH_GSTRING

      See Also:
        Constant Field Values

    - #### SYNTH_METHOD_CALL

          public static final int SYNTH_METHOD_CALL

      See Also:
        Constant Field Values

    - #### SYNTH_CAST

          public static final int SYNTH_CAST

      See Also:
        Constant Field Values

    - #### SYNTH_BLOCK

          public static final int SYNTH_BLOCK

      See Also:
        Constant Field Values

    - #### SYNTH_CLOSURE

          public static final int SYNTH_CLOSURE

      See Also:
        Constant Field Values

    - #### SYNTH_LABEL

          public static final int SYNTH_LABEL

      See Also:
        Constant Field Values

    - #### SYNTH_TERNARY

          public static final int SYNTH_TERNARY

      See Also:
        Constant Field Values

    - #### SYNTH_TUPLE

          public static final int SYNTH_TUPLE

      See Also:
        Constant Field Values

    - #### SYNTH_VARIABLE_DECLARATION

          public static final int SYNTH_VARIABLE_DECLARATION

      See Also:
        Constant Field Values

    - #### GSTRING_START

          public static final int GSTRING_START

      See Also:
        Constant Field Values

    - #### GSTRING_END

          public static final int GSTRING_END

      See Also:
        Constant Field Values

    - #### GSTRING_EXPRESSION_START

          public static final int GSTRING_EXPRESSION_START

      See Also:
        Constant Field Values

    - #### GSTRING_EXPRESSION_END

          public static final int GSTRING_EXPRESSION_END

      See Also:
        Constant Field Values

    - #### ANY

          public static final int ANY

      See Also:
        Constant Field Values

    - #### NOT_EOF

          public static final int NOT_EOF

      See Also:
        Constant Field Values

    - #### GENERAL_END_OF_STATEMENT

          public static final int GENERAL_END_OF_STATEMENT

      See Also:
        Constant Field Values

    - #### ANY_END_OF_STATEMENT

          public static final int ANY_END_OF_STATEMENT

      See Also:
        Constant Field Values

    - #### ASSIGNMENT_OPERATOR

          public static final int ASSIGNMENT_OPERATOR

      See Also:
        Constant Field Values

    - #### COMPARISON_OPERATOR

          public static final int COMPARISON_OPERATOR

      See Also:
        Constant Field Values

    - #### MATH_OPERATOR

          public static final int MATH_OPERATOR

      See Also:
        Constant Field Values

    - #### LOGICAL_OPERATOR

          public static final int LOGICAL_OPERATOR

      See Also:
        Constant Field Values

    - #### RANGE_OPERATOR

          public static final int RANGE_OPERATOR

      See Also:
        Constant Field Values

    - #### REGEX_COMPARISON_OPERATOR

          public static final int REGEX_COMPARISON_OPERATOR

      See Also:
        Constant Field Values

    - #### DEREFERENCE_OPERATOR

          public static final int DEREFERENCE_OPERATOR

      See Also:
        Constant Field Values

    - #### BITWISE_OPERATOR

          public static final int BITWISE_OPERATOR

      See Also:
        Constant Field Values

    - #### INSTANCEOF_OPERATOR

          public static final int INSTANCEOF_OPERATOR

      See Also:
        Constant Field Values

    - #### PREFIX_OPERATOR

          public static final int PREFIX_OPERATOR

      See Also:
        Constant Field Values

    - #### POSTFIX_OPERATOR

          public static final int POSTFIX_OPERATOR

      See Also:
        Constant Field Values

    - #### INFIX_OPERATOR

          public static final int INFIX_OPERATOR

      See Also:
        Constant Field Values

    - #### PREFIX_OR_INFIX_OPERATOR

          public static final int PREFIX_OR_INFIX_OPERATOR

      See Also:
        Constant Field Values

    - #### PURE_PREFIX_OPERATOR

          public static final int PURE_PREFIX_OPERATOR

      See Also:
        Constant Field Values

    - #### KEYWORD

          public static final int KEYWORD

      See Also:
        Constant Field Values

    - #### SYMBOL

          public static final int SYMBOL

      See Also:
        Constant Field Values

    - #### LITERAL

          public static final int LITERAL

      See Also:
        Constant Field Values

    - #### NUMBER

          public static final int NUMBER

      See Also:
        Constant Field Values

    - #### SIGN

          public static final int SIGN

      See Also:
        Constant Field Values

    - #### NAMED_VALUE

          public static final int NAMED_VALUE

      See Also:
        Constant Field Values

    - #### TRUTH_VALUE

          public static final int TRUTH_VALUE

      See Also:
        Constant Field Values

    - #### PRIMITIVE_TYPE

          public static final int PRIMITIVE_TYPE

      See Also:
        Constant Field Values

    - #### CREATABLE_PRIMITIVE_TYPE

          public static final int CREATABLE_PRIMITIVE_TYPE

      See Also:
        Constant Field Values

    - #### LOOP

          public static final int LOOP

      See Also:
        Constant Field Values

    - #### RESERVED_KEYWORD

          public static final int RESERVED_KEYWORD

      See Also:
        Constant Field Values

    - #### KEYWORD_IDENTIFIER

          public static final int KEYWORD_IDENTIFIER

      See Also:
        Constant Field Values

    - #### SYNTHETIC

          public static final int SYNTHETIC

      See Also:
        Constant Field Values

    - #### TYPE_DECLARATION

          public static final int TYPE_DECLARATION

      See Also:
        Constant Field Values

    - #### DECLARATION_MODIFIER

          public static final int DECLARATION_MODIFIER

      See Also:
        Constant Field Values

    - #### TYPE_NAME

          public static final int TYPE_NAME

      See Also:
        Constant Field Values

    - #### CREATABLE_TYPE_NAME

          public static final int CREATABLE_TYPE_NAME

      See Also:
        Constant Field Values

    - #### MATCHED_CONTAINER

          public static final int MATCHED_CONTAINER

      See Also:
        Constant Field Values

    - #### LEFT_OF_MATCHED_CONTAINER

          public static final int LEFT_OF_MATCHED_CONTAINER

      See Also:
        Constant Field Values

    - #### RIGHT_OF_MATCHED_CONTAINER

          public static final int RIGHT_OF_MATCHED_CONTAINER

      See Also:
        Constant Field Values

    - #### EXPRESSION

          public static final int EXPRESSION

      See Also:
        Constant Field Values

    - #### OPERATOR_EXPRESSION

          public static final int OPERATOR_EXPRESSION

      See Also:
        Constant Field Values

    - #### SYNTH_EXPRESSION

          public static final int SYNTH_EXPRESSION

      See Also:
        Constant Field Values

    - #### KEYWORD_EXPRESSION

          public static final int KEYWORD_EXPRESSION

      See Also:
        Constant Field Values

    - #### LITERAL_EXPRESSION

          public static final int LITERAL_EXPRESSION

      See Also:
        Constant Field Values

    - #### ARRAY_EXPRESSION

          public static final int ARRAY_EXPRESSION

      See Also:
        Constant Field Values

    - #### SIMPLE_EXPRESSION

          public static final int SIMPLE_EXPRESSION

      See Also:
        Constant Field Values

    - #### COMPLEX_EXPRESSION

          public static final int COMPLEX_EXPRESSION

      See Also:
        Constant Field Values

    - #### PARAMETER_TERMINATORS

          public static final int PARAMETER_TERMINATORS

      See Also:
        Constant Field Values

    - #### ARRAY_ITEM_TERMINATORS

          public static final int ARRAY_ITEM_TERMINATORS

      See Also:
        Constant Field Values

    - #### TYPE_LIST_TERMINATORS

          public static final int TYPE_LIST_TERMINATORS

      See Also:
        Constant Field Values

    - #### OPTIONAL_DATATYPE_FOLLOWERS

          public static final int OPTIONAL_DATATYPE_FOLLOWERS

      See Also:
        Constant Field Values

    - #### SWITCH_BLOCK_TERMINATORS

          public static final int SWITCH_BLOCK_TERMINATORS

      See Also:
        Constant Field Values

    - #### SWITCH_ENTRIES

          public static final int SWITCH_ENTRIES

      See Also:
        Constant Field Values

    - #### METHOD_CALL_STARTERS

          public static final int METHOD_CALL_STARTERS

      See Also:
        Constant Field Values

    - #### UNSAFE_OVER_NEWLINES

          public static final int UNSAFE_OVER_NEWLINES

      See Also:
        Constant Field Values

    - #### PRECLUDES_CAST_OPERATOR

          public static final int PRECLUDES_CAST_OPERATOR

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Types

          public Types()

  - ### Method Detail

    - #### ofType

          public static boolean ofType(int specific,
                                       int general)

      Given two types, returns true if the second describes the first.

    - #### canMean

          public static boolean canMean(int actual,
                                        int preferred)

      Given two types, returns true if the first can be viewed as the second. NOTE that `canMean()` is orthogonal to `ofType()`.

    - #### makePrefix

          public static void makePrefix(CSTNode node,
                                        boolean throwIfInvalid)

      Converts a node from a generic type to a specific prefix type. Throws a `GroovyBugError` if the type can't be converted and requested.

    - #### makePostfix

          public static void makePostfix(CSTNode node,
                                         boolean throwIfInvalid)

      Converts a node from a generic type to a specific postfix type. Throws a `GroovyBugError` if the type can't be converted.

    - #### getPrecedence

          public static int getPrecedence(int type,
                                          boolean throwIfInvalid)

      Returns the precedence of the specified operator. Non-operator's will receive -1 or a GroovyBugError, depending on your preference.

    - #### getKeywords

          public static Collection<String> getKeywords()

    - #### isKeyword

          public static boolean isKeyword(String text)

    - #### lookup

          public static int lookup(String text,
                                   int filter)

      Returns the type for the specified symbol/keyword text. Returns UNKNOWN if the text isn't found. You can filter finds on a type.

    - #### lookupKeyword

          public static int lookupKeyword(String text)

      Returns the type for the specified keyword text. Returns UNKNOWN if the text isn't found.

    - #### lookupSymbol

          public static int lookupSymbol(String text)

      Returns the type for the specified symbol text. Returns UNKNOWN if the text isn't found.

    - #### getText

          public static String getText(int type)

      Returns the text for the specified type. Returns "" if the text isn't found.

    - #### getDescription

          public static String getDescription(int type)

      Gets the description for the specified type.