groovy for-in parser fix
[fedora-idea.git] / plugins / groovy / src / org / jetbrains / plugins / groovy / lang / lexer / TokenSets.java
blobf91b4f8755261cb4afdd7d74210381186f71e6ac
1 /*
2 * Copyright 2000-2009 JetBrains s.r.o.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.jetbrains.plugins.groovy.lang.lexer;
19 import com.intellij.psi.tree.TokenSet;
21 /**
22 * Utility classdef, tha contains various useful TokenSets
24 * @author ilyas
26 public abstract class TokenSets implements GroovyTokenTypes {
28 public static TokenSet COMMENTS_TOKEN_SET = TokenSet.create(
29 mSL_COMMENT,
30 mML_COMMENT,
31 GROOVY_DOC_COMMENT
34 public static TokenSet SEPARATORS = TokenSet.create(
35 mNLS,
36 mSEMI
40 public static TokenSet WHITE_SPACE_TOKEN_SET = TokenSet.create(
41 mWS,
42 mGDOC_WHITESPACE
45 public static TokenSet SUSPICIOUS_EXPRESSION_STATEMENT_START_TOKEN_SET = TokenSet.create(
46 mMINUS,
47 mPLUS,
48 mLBRACK,
49 mLPAREN,
50 mLCURLY
53 public static final TokenSet NUMBERS = TokenSet.create(mNUM_INT,
54 mNUM_BIG_DECIMAL,
55 mNUM_BIG_INT,
56 mNUM_DOUBLE,
57 mNUM_FLOAT,
58 mNUM_LONG);
61 public static final TokenSet CONSTANTS = TokenSet.create(
62 mNUM_INT,
63 mNUM_BIG_DECIMAL,
64 mNUM_BIG_INT,
65 mNUM_DOUBLE,
66 mNUM_FLOAT,
67 mNUM_LONG,
68 kTRUE,
69 kFALSE,
70 kNULL,
71 mSTRING_LITERAL,
72 mGSTRING_LITERAL,
73 mREGEX_LITERAL
76 public static final TokenSet BUILT_IN_TYPE = TokenSet.create(
77 kVOID,
78 kBOOLEAN,
79 kBYTE,
80 kCHAR,
81 kSHORT,
82 kINT,
83 kFLOAT,
84 kLONG,
85 kDOUBLE
88 public static TokenSet KEYWORD_REFERENCE_NAMES = TokenSet.orSet(TokenSet.create(
89 kCLASS,
90 kIN,
91 kAS,
92 kDEF,
93 kIF,
94 kELSE,
95 kFOR,
96 kWHILE,
97 kSWITCH,
98 kTRY,
99 kCATCH,
100 kFINALLY,
101 kSTATIC,
102 kDEFAULT
103 ), BUILT_IN_TYPE);
105 public static final TokenSet PROPERTY_NAMES = TokenSet.create(mIDENT, mSTRING_LITERAL, mGSTRING_LITERAL);
107 public static TokenSet REFERENCE_NAMES = TokenSet.orSet(KEYWORD_REFERENCE_NAMES, PROPERTY_NAMES);
110 public static TokenSet VISIBILITY_MODIFIERS = TokenSet.create(
111 kPRIVATE,
112 kPROTECTED,
113 kPUBLIC
116 public static TokenSet MODIFIERS = TokenSet.create(
117 kABSTRACT,
118 kPRIVATE,
119 kPUBLIC,
120 kPROTECTED,
121 kSTATIC,
122 kTRANSIENT,
123 kFINAL,
124 kABSTRACT,
125 kNATIVE,
126 kSYNCHRONIZED,
127 kSTRICTFP,
128 kVOLATILE,
129 kSTRICTFP
132 public static TokenSet STRING_LITERALS = TokenSet.create(
133 mSTRING_LITERAL,
134 mREGEX_LITERAL,
135 mGSTRING_LITERAL
138 public static TokenSet FOR_IN_DELIMITERS = TokenSet.create(kIN, mCOLON);