blob: 65d0a90e76f73daf5a3bbce65eeb526392dc2278 [file] [log] [blame]
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.plugins.groovy.lang.lexer;
import com.intellij.psi.tree.IElementType;
/**
* Interface that contains all tokens returned by GroovyLexer
*
* @author ilyas
*/
public interface GroovyTokenTypes {
/**
* Wrong token. Use for debug needs
*/
IElementType mWRONG = new GroovyElementType("wrong token");
/* **************************************************************************************************
* Whitespaces & NewLines
* ****************************************************************************************************/
IElementType mNLS = new GroovyElementType("new line");
/* **************************************************************************************************
* Comments
* ****************************************************************************************************/
IElementType mSH_COMMENT = new GroovyElementType("shell comment");
IElementType mSL_COMMENT = new GroovyElementType("line comment");
IElementType mML_COMMENT = new GroovyElementType("block comment");
/* **************************************************************************************************
* Identifiers
* ****************************************************************************************************/
IElementType mIDENT = new GroovyElementType("identifier");
/* **************************************************************************************************
* Integers & floats
* ****************************************************************************************************/
IElementType mNUM_INT = new GroovyElementType("Integer");
IElementType mNUM_LONG = new GroovyElementType("Long");
IElementType mNUM_BIG_INT = new GroovyElementType("BigInteger");
IElementType mNUM_BIG_DECIMAL = new GroovyElementType("BigDecimal");
IElementType mNUM_FLOAT = new GroovyElementType("Float");
IElementType mNUM_DOUBLE = new GroovyElementType("Double");
/* **************************************************************************************************
* Strings & regular expressions
* ****************************************************************************************************/
IElementType mSTRING_LITERAL = new GroovyElementType("string");
IElementType mGSTRING_LITERAL = new GroovyElementType("Gstring");
IElementType mGSTRING_BEGIN = new GroovyElementType("Gstring begin");
IElementType mGSTRING_CONTENT = new GroovyElementType("Gstring content");
IElementType mGSTRING_END = new GroovyElementType("Gstring end");
IElementType mREGEX_BEGIN = new GroovyElementType("regex begin");
IElementType mREGEX_CONTENT = new GroovyElementType("regex content");
IElementType mREGEX_END = new GroovyElementType("regex end");
IElementType mREGEX_LITERAL = new GroovyElementType("regex literal");
IElementType mDOLLAR_SLASH_REGEX_BEGIN = new GroovyElementType("$/ regex begin");
IElementType mDOLLAR_SLASH_REGEX_CONTENT = new GroovyElementType("$/ regex content");
IElementType mDOLLAR_SLASH_REGEX_END = new GroovyElementType("$/ regex end");
IElementType mDOLLAR_SLASH_REGEX_LITERAL = new GroovyElementType("$/ regex literal");
/* **************************************************************************************************
* Common tokens: operators, braces etc.
* ****************************************************************************************************/
IElementType mQUESTION = new GroovyElementType("?");
IElementType mDIV = new GroovyElementType("/");
IElementType mDIV_ASSIGN = new GroovyElementType("/=");
IElementType mLPAREN = new GroovyElementType("(");
IElementType mRPAREN = new GroovyElementType(")");
IElementType mLBRACK = new GroovyElementType("[");
IElementType mRBRACK = new GroovyElementType("]");
IElementType mLCURLY = new GroovyElementType("{");
IElementType mRCURLY = new GroovyElementType("}");
IElementType mCOLON = new GroovyElementType(":");
IElementType mCOMMA = new GroovyElementType(",");
IElementType mDOT = new GroovyElementType(".");
IElementType mASSIGN = new GroovyElementType("=");
IElementType mCOMPARE_TO = new GroovyElementType("<=>");
IElementType mEQUAL = new GroovyElementType("==");
IElementType mLNOT = new GroovyElementType("!");
IElementType mELVIS = new GroovyElementType("?:");
IElementType mBNOT = new GroovyElementType("~");
IElementType mNOT_EQUAL = new GroovyElementType("!=");
IElementType mPLUS = new GroovyElementType("+");
IElementType mPLUS_ASSIGN = new GroovyElementType("+=");
IElementType mINC = new GroovyElementType("++");
IElementType mMINUS = new GroovyElementType("-");
IElementType mMINUS_ASSIGN = new GroovyElementType("-=");
IElementType mDEC = new GroovyElementType("--");
IElementType mSTAR = new GroovyElementType("*");
IElementType mSTAR_ASSIGN = new GroovyElementType("*=");
IElementType mMOD = new GroovyElementType("%");
IElementType mMOD_ASSIGN = new GroovyElementType("%=");
IElementType mBSR_ASSIGN = new GroovyElementType(">>>=");
IElementType mSR_ASSIGN = new GroovyElementType(">>=");
IElementType mGE = new GroovyElementType(">=");
IElementType mGT = new GroovyElementType(">");
IElementType mSL_ASSIGN = new GroovyElementType("<<=");
IElementType mLE = new GroovyElementType("<=");
IElementType mLT = new GroovyElementType("<");
IElementType mBXOR = new GroovyElementType("^");
IElementType mBXOR_ASSIGN = new GroovyElementType("^=");
IElementType mBOR = new GroovyElementType("|");
IElementType mBOR_ASSIGN = new GroovyElementType("|=");
IElementType mLOR = new GroovyElementType("||");
IElementType mBAND = new GroovyElementType("&");
IElementType mBAND_ASSIGN = new GroovyElementType("&=");
IElementType mLAND = new GroovyElementType("&&");
IElementType mSEMI = new GroovyElementType(";");
IElementType mDOLLAR = new GroovyElementType("$");
IElementType mRANGE_INCLUSIVE = new GroovyElementType("..");
IElementType mRANGE_EXCLUSIVE = new GroovyElementType("..<");
IElementType mTRIPLE_DOT = new GroovyElementType("...");
IElementType mSPREAD_DOT = new GroovyElementType("*.");
IElementType mOPTIONAL_DOT = new GroovyElementType("?.");
IElementType mMEMBER_POINTER = new GroovyElementType(".&");
IElementType mREGEX_FIND = new GroovyElementType("=~");
IElementType mREGEX_MATCH = new GroovyElementType("==~");
IElementType mSTAR_STAR = new GroovyElementType("**");
IElementType mSTAR_STAR_ASSIGN = new GroovyElementType("**=");
IElementType mCLOSABLE_BLOCK_OP = new GroovyElementType("->");
IElementType mAT = new GroovyElementType("@");
/* **************************************************************************************************
* Keywords (in alphabetic order)
* ****************************************************************************************************/
IElementType kABSTRACT = new GroovyElementType("abstract");
IElementType kAS = new GroovyElementType("as");
IElementType kASSERT = new GroovyElementType("assert");
IElementType kBOOLEAN = new GroovyElementType("boolean");
IElementType kBREAK = new GroovyElementType("break");
IElementType kBYTE = new GroovyElementType("byte");
IElementType kCASE = new GroovyElementType("case");
IElementType kCATCH = new GroovyElementType("catch");
IElementType kCHAR = new GroovyElementType("char");
IElementType kCLASS = new GroovyElementType("class");
IElementType kCONTINUE = new GroovyElementType("continue");
IElementType kDEF = new GroovyElementType("def");
IElementType kDEFAULT = new GroovyElementType("default");
IElementType kDO = new GroovyElementType("do");
IElementType kDOUBLE = new GroovyElementType("double");
IElementType kELSE = new GroovyElementType("else");
IElementType kEXTENDS = new GroovyElementType("extends");
IElementType kENUM = new GroovyElementType("enum");
IElementType kFALSE = new GroovyElementType("false");
IElementType kFINAL = new GroovyElementType("final");
IElementType kFLOAT = new GroovyElementType("float");
IElementType kFOR = new GroovyElementType("for");
IElementType kFINALLY = new GroovyElementType("finally");
IElementType kIF = new GroovyElementType("if");
IElementType kIMPLEMENTS = new GroovyElementType("implements");
IElementType kIMPORT = new GroovyElementType("import");
IElementType kIN = new GroovyElementType("in");
IElementType kINSTANCEOF = new GroovyElementType("instanceof");
IElementType kINT = new GroovyElementType("int");
IElementType kINTERFACE = new GroovyElementType("interface");
IElementType kLONG = new GroovyElementType("long");
IElementType kNATIVE = new GroovyElementType("native");
IElementType kNEW = new GroovyElementType("new");
IElementType kNULL = new GroovyElementType("null");
IElementType kPACKAGE = new GroovyElementType("package");
IElementType kPRIVATE = new GroovyElementType("private");
IElementType kPROTECTED = new GroovyElementType("protected");
IElementType kPUBLIC = new GroovyElementType("public");
IElementType kRETURN = new GroovyElementType("return");
IElementType kSHORT = new GroovyElementType("short");
IElementType kSTATIC = new GroovyElementType("static");
IElementType kSTRICTFP = new GroovyElementType("strictfp");
IElementType kSUPER = new GroovyElementType("super");
IElementType kSWITCH = new GroovyElementType("switch");
IElementType kSYNCHRONIZED = new GroovyElementType("synchronized");
IElementType kTHIS = new GroovyElementType("this");
IElementType kTHROW = new GroovyElementType("throw");
IElementType kTHROWS = new GroovyElementType("throws");
IElementType kTRAIT = new GroovyElementType("trait");
IElementType kTRANSIENT = new GroovyElementType("transient");
IElementType kTRUE = new GroovyElementType("true");
IElementType kTRY = new GroovyElementType("try");
IElementType kVOID = new GroovyElementType("void");
IElementType kVOLATILE = new GroovyElementType("volatile");
IElementType kWHILE = new GroovyElementType("while");
}