// This is a generated file. Not intended for manual editing. package com.haskforce.psi; import com.intellij.psi.tree.IElementType; import com.intellij.psi.PsiElement; import com.intellij.lang.ASTNode; import com.haskforce.psi.impl.HaskellElementTypeFactory; import com.haskforce.psi.impl.*; public interface HaskellTypes { IElementType AKIND = new HaskellElementType("AKIND"); IElementType ALT = new HaskellElementType("ALT"); IElementType ATYPE = new HaskellElementType("ATYPE"); IElementType BKIND = new HaskellElementType("BKIND"); IElementType BODY = new HaskellElementType("BODY"); IElementType CDECL = new HaskellElementType("CDECL"); IElementType CLASSDECL = new HaskellElementType("CLASSDECL"); IElementType CLSCONTEXT = new HaskellElementType("CLSCONTEXT"); IElementType CON = new HaskellElementType("CON"); IElementType CONID = HaskellElementTypeFactory.factory("CONID"); IElementType CONOP = new HaskellElementType("CONOP"); IElementType CONSTR = new HaskellElementType("CONSTR"); IElementType CONSYM = new HaskellElementType("CONSYM"); IElementType CTYPE = new HaskellElementType("CTYPE"); IElementType DATADECL = new HaskellElementType("DATADECL"); IElementType DEFAULTDECL = new HaskellElementType("DEFAULTDECL"); IElementType DERIVINGDECL = new HaskellElementType("DERIVINGDECL"); IElementType EXP = new HaskellElementType("EXP"); IElementType EXPORT = new HaskellElementType("EXPORT"); IElementType EXPORTS = new HaskellElementType("EXPORTS"); IElementType EXPORTSEMPTY = new HaskellElementType("EXPORTSEMPTY"); IElementType FIXITY = new HaskellElementType("FIXITY"); IElementType FOREIGNDECL = new HaskellElementType("FOREIGNDECL"); IElementType FUNORPATDECL = new HaskellElementType("FUNORPATDECL"); IElementType GCONSYM = new HaskellElementType("GCONSYM"); IElementType GENDECL = new HaskellElementType("GENDECL"); IElementType GUARD = new HaskellElementType("GUARD"); IElementType IDECL = new HaskellElementType("IDECL"); IElementType IMPDECL = new HaskellElementType("IMPDECL"); IElementType IMPEMPTY = new HaskellElementType("IMPEMPTY"); IElementType IMPORTT = new HaskellElementType("IMPORTT"); IElementType INSTANCEDECL = new HaskellElementType("INSTANCEDECL"); IElementType KIND = new HaskellElementType("KIND"); IElementType LETEXP = new HaskellElementType("LETEXP"); IElementType LISTLIKE = new HaskellElementType("LISTLIKE"); IElementType MODULEDECL = new HaskellElementType("MODULEDECL"); IElementType NEWCONSTR = new HaskellElementType("NEWCONSTR"); IElementType NEWTYPEDECL = new HaskellElementType("NEWTYPEDECL"); IElementType OP = new HaskellElementType("OP"); IElementType OQTYCON = new HaskellElementType("OQTYCON"); IElementType PAT = new HaskellElementType("PAT"); IElementType PPRAGMA = new HaskellElementType("PPRAGMA"); IElementType PSTRINGTOKEN = new HaskellElementType("PSTRINGTOKEN"); IElementType QCON = new HaskellElementType("QCON"); IElementType QCONID = new HaskellElementType("QCONID"); IElementType QCONOP = new HaskellElementType("QCONOP"); IElementType QCONSYM = new HaskellElementType("QCONSYM"); IElementType QOP = new HaskellElementType("QOP"); IElementType QQBLOB = new HaskellElementType("QQBLOB"); IElementType QTYCLS = new HaskellElementType("QTYCLS"); IElementType QTYCON = new HaskellElementType("QTYCON"); IElementType QTYCONOP = new HaskellElementType("QTYCONOP"); IElementType QTYCONSYM = new HaskellElementType("QTYCONSYM"); IElementType QVAR = new HaskellElementType("QVAR"); IElementType QVARID = new HaskellElementType("QVARID"); IElementType QVAROP = new HaskellElementType("QVAROP"); IElementType QVARS = new HaskellElementType("QVARS"); IElementType QVARSYM = new HaskellElementType("QVARSYM"); IElementType RHS = new HaskellElementType("RHS"); IElementType SHEBANG = new HaskellElementType("SHEBANG"); IElementType STMTS = new HaskellElementType("STMTS"); IElementType TV_BNDR = new HaskellElementType("TV_BNDR"); IElementType TYCLS = new HaskellElementType("TYCLS"); IElementType TYCON = new HaskellElementType("TYCON"); IElementType TYCONSYM = new HaskellElementType("TYCONSYM"); IElementType TYPEDECL = new HaskellElementType("TYPEDECL"); IElementType TYPEE = new HaskellElementType("TYPEE"); IElementType TYVAR = new HaskellElementType("TYVAR"); IElementType VARID = HaskellElementTypeFactory.factory("VARID"); IElementType VAROP = new HaskellElementType("VAROP"); IElementType VARS = new HaskellElementType("VARS"); IElementType VARSYM = new HaskellElementType("VARSYM"); IElementType AMPERSAND = new HaskellTokenType("&"); IElementType AMPERSAT = new HaskellTokenType("@"); IElementType AS = new HaskellTokenType("as"); IElementType ASTERISK = new HaskellTokenType("*"); IElementType BACKSLASH = new HaskellTokenType("\\"); IElementType BACKTICK = new HaskellTokenType("`"); IElementType BADSTRINGTOKEN = new HaskellTokenType("badstringtoken"); IElementType CARET = new HaskellTokenType("^"); IElementType CASE = new HaskellTokenType("case"); IElementType CHARTOKEN = new HaskellTokenType("chartoken"); IElementType CLASSTOKEN = new HaskellTokenType("class"); IElementType CLOSECOM = new HaskellTokenType("-}"); IElementType CLOSEPRAGMA = new HaskellTokenType("#-}"); IElementType COLON = new HaskellTokenType(":"); IElementType COMMA = new HaskellTokenType(","); IElementType COMMENT = new HaskellTokenType("comment"); IElementType COMMENTTEXT = new HaskellTokenType("commenttext"); IElementType CONIDREGEXP = new HaskellTokenType("conidRegexp"); IElementType CONSYMTOK = new HaskellTokenType("Consym"); IElementType CPPDEFINE = new HaskellTokenType("CPPDEFINE"); IElementType CPPELIF = new HaskellTokenType("CPPELIF"); IElementType CPPELSE = new HaskellTokenType("#else"); IElementType CPPENDIF = new HaskellTokenType("#endif"); IElementType CPPIF = new HaskellTokenType("CPPIF"); IElementType CPPIFDEF = new HaskellTokenType("CPPIFDEF"); IElementType CPPINCLUDE = new HaskellTokenType("CPPINCLUDE"); IElementType CPPLINE = new HaskellTokenType("CPPLINE"); IElementType CPPPRAGMA = new HaskellTokenType("CPPPRAGMA"); IElementType CPPUNDEF = new HaskellTokenType("CPPUNDEF"); IElementType DASHES = new HaskellTokenType("dashes"); IElementType DATA = new HaskellTokenType("data"); IElementType DEFAULT = new HaskellTokenType("default"); IElementType DERIVING = new HaskellTokenType("deriving"); IElementType DO = new HaskellTokenType("do"); IElementType DOLLAR = new HaskellTokenType("$"); IElementType DOUBLEARROW = new HaskellTokenType("=>"); IElementType DOUBLECOLON = new HaskellTokenType("::"); IElementType DOUBLEHASH = new HaskellTokenType("##"); IElementType DOUBLEPERIOD = new HaskellTokenType(".."); IElementType DOUBLEQUOTE = new HaskellTokenType("\""); IElementType ELSE = new HaskellTokenType("else"); IElementType EQUALS = new HaskellTokenType("="); IElementType EXCLAMATION = new HaskellTokenType("!"); IElementType EXPORTTOKEN = new HaskellTokenType("export"); IElementType FALSE = new HaskellTokenType("false"); IElementType FAMILYTOKEN = new HaskellTokenType("family"); IElementType FLOATTOKEN = new HaskellTokenType("floattoken"); IElementType FORALLTOKEN = new HaskellTokenType("forall"); IElementType FOREIGN = new HaskellTokenType("foreign"); IElementType GREATERTHAN = new HaskellTokenType(">"); IElementType HADDOCK = new HaskellTokenType("haddock"); IElementType HASH = new HaskellTokenType("#"); IElementType HIDING = new HaskellTokenType("hiding"); IElementType IDSPLICE = new HaskellTokenType("idsplice"); IElementType IF = new HaskellTokenType("if"); IElementType IMPORT = new HaskellTokenType("import"); IElementType IN = new HaskellTokenType("in"); IElementType INFIX = new HaskellTokenType("infix"); IElementType INFIXL = new HaskellTokenType("infixl"); IElementType INFIXR = new HaskellTokenType("infixr"); IElementType INFIXVARID = new HaskellTokenType("Infix varid"); IElementType INSTANCE = new HaskellTokenType("instance"); IElementType INTEGERTOKEN = new HaskellTokenType("integertoken"); IElementType LBRACE = new HaskellTokenType("{"); IElementType LBRACKET = new HaskellTokenType("["); IElementType LCASETOK = new HaskellTokenType("\\case"); IElementType LEFTARROW = new HaskellTokenType("<-"); IElementType LESSTHAN = new HaskellTokenType("<"); IElementType LET = new HaskellTokenType("let"); IElementType LPAREN = new HaskellTokenType("("); IElementType LTHOPEN = new HaskellTokenType("[|"); IElementType LUNBOXPAREN = new HaskellTokenType("(#"); IElementType MDOTOK = new HaskellTokenType("mdo"); IElementType MINUS = new HaskellTokenType("-"); IElementType MODULETOKEN = new HaskellTokenType("module"); IElementType NEWTYPE = new HaskellTokenType("newtype"); IElementType NULLCHARACTER = new HaskellTokenType("\\&"); IElementType OF = new HaskellTokenType("of"); IElementType OPENCOM = new HaskellTokenType("{-"); IElementType OPENPRAGMA = new HaskellTokenType("{-#"); IElementType PARENSPLICE = new HaskellTokenType("$("); IElementType PERCENT = new HaskellTokenType("%"); IElementType PERIOD = new HaskellTokenType("."); IElementType PIPE = new HaskellTokenType("|"); IElementType PLUS = new HaskellTokenType("+"); IElementType PRAGMA = new HaskellTokenType("PRAGMA"); IElementType QQOPEN = new HaskellTokenType("Quasi-["); IElementType QQTEXT = new HaskellTokenType("Quasi-stuff"); IElementType QUALIFIED = new HaskellTokenType("qualified"); IElementType QUESTION = new HaskellTokenType("?"); IElementType RBRACE = new HaskellTokenType("}"); IElementType RBRACKET = new HaskellTokenType("]"); IElementType RECTOK = new HaskellTokenType("rec"); IElementType RIGHTARROW = new HaskellTokenType("->"); IElementType RPAREN = new HaskellTokenType(")"); IElementType RTHCLOSE = new HaskellTokenType("|]"); IElementType RUNBOXPAREN = new HaskellTokenType("#)"); IElementType SEMICOLON = new HaskellTokenType(";"); IElementType SHEBANGPATH = new HaskellTokenType("Synthetic shebang path"); IElementType SHEBANGSTART = new HaskellTokenType("Synthetic shebang start \"#!\""); IElementType SINGLEQUOTE = new HaskellTokenType("'"); IElementType SLASH = new HaskellTokenType("/"); IElementType STRINGTOKEN = new HaskellTokenType("STRINGTOKEN"); IElementType THEN = new HaskellTokenType("then"); IElementType THQUOTE = new HaskellTokenType("''"); IElementType TILDE = new HaskellTokenType("~"); IElementType TRUE = new HaskellTokenType("true"); IElementType TYPE = new HaskellTokenType("type"); IElementType UNDERSCORE = new HaskellTokenType("_"); IElementType VARIDREGEXP = new HaskellTokenType("varidRegexp"); IElementType VARSYMTOK = new HaskellTokenType("Varsym"); IElementType VARSYMTOKPLUS = new HaskellTokenType("VarsymPlus"); IElementType WHERE = new HaskellTokenType("where"); IElementType WHITESPACELBRACETOK = new HaskellTokenType("Synthetic leftbrace"); IElementType WHITESPACERBRACETOK = new HaskellTokenType("Synthetic rightbrace"); IElementType WHITESPACESEMITOK = new HaskellTokenType("Synthetic semicolon"); class Factory { public static PsiElement createElement(ASTNode node) { IElementType type = node.getElementType(); if (type == AKIND) { return new HaskellAkindImpl(node); } else if (type == ALT) { return new HaskellAltImpl(node); } else if (type == ATYPE) { return new HaskellAtypeImpl(node); } else if (type == BKIND) { return new HaskellBkindImpl(node); } else if (type == BODY) { return new HaskellBodyImpl(node); } else if (type == CDECL) { return new HaskellCdeclImpl(node); } else if (type == CLASSDECL) { return new HaskellClassdeclImpl(node); } else if (type == CLSCONTEXT) { return new HaskellClscontextImpl(node); } else if (type == CON) { return new HaskellConImpl(node); } else if (type == CONID) { return new HaskellConidImpl(node); } else if (type == CONOP) { return new HaskellConopImpl(node); } else if (type == CONSTR) { return new HaskellConstrImpl(node); } else if (type == CONSYM) { return new HaskellConsymImpl(node); } else if (type == CTYPE) { return new HaskellCtypeImpl(node); } else if (type == DATADECL) { return new HaskellDatadeclImpl(node); } else if (type == DEFAULTDECL) { return new HaskellDefaultdeclImpl(node); } else if (type == DERIVINGDECL) { return new HaskellDerivingdeclImpl(node); } else if (type == EXP) { return new HaskellExpImpl(node); } else if (type == EXPORT) { return new HaskellExportImpl(node); } else if (type == EXPORTS) { return new HaskellExportsImpl(node); } else if (type == EXPORTSEMPTY) { return new HaskellExportsemptyImpl(node); } else if (type == FIXITY) { return new HaskellFixityImpl(node); } else if (type == FOREIGNDECL) { return new HaskellForeigndeclImpl(node); } else if (type == FUNORPATDECL) { return new HaskellFunorpatdeclImpl(node); } else if (type == GCONSYM) { return new HaskellGconsymImpl(node); } else if (type == GENDECL) { return new HaskellGendeclImpl(node); } else if (type == GUARD) { return new HaskellGuardImpl(node); } else if (type == IDECL) { return new HaskellIdeclImpl(node); } else if (type == IMPDECL) { return new HaskellImpdeclImpl(node); } else if (type == IMPEMPTY) { return new HaskellImpemptyImpl(node); } else if (type == IMPORTT) { return new HaskellImporttImpl(node); } else if (type == INSTANCEDECL) { return new HaskellInstancedeclImpl(node); } else if (type == KIND) { return new HaskellKindImpl(node); } else if (type == LETEXP) { return new HaskellLetexpImpl(node); } else if (type == LISTLIKE) { return new HaskellListlikeImpl(node); } else if (type == MODULEDECL) { return new HaskellModuledeclImpl(node); } else if (type == NEWCONSTR) { return new HaskellNewconstrImpl(node); } else if (type == NEWTYPEDECL) { return new HaskellNewtypedeclImpl(node); } else if (type == OP) { return new HaskellOpImpl(node); } else if (type == OQTYCON) { return new HaskellOqtyconImpl(node); } else if (type == PAT) { return new HaskellPatImpl(node); } else if (type == PPRAGMA) { return new HaskellPpragmaImpl(node); } else if (type == PSTRINGTOKEN) { return new HaskellPstringtokenImpl(node); } else if (type == QCON) { return new HaskellQconImpl(node); } else if (type == QCONID) { return new HaskellQconidImpl(node); } else if (type == QCONOP) { return new HaskellQconopImpl(node); } else if (type == QCONSYM) { return new HaskellQconsymImpl(node); } else if (type == QOP) { return new HaskellQopImpl(node); } else if (type == QQBLOB) { return new HaskellQqblobImpl(node); } else if (type == QTYCLS) { return new HaskellQtyclsImpl(node); } else if (type == QTYCON) { return new HaskellQtyconImpl(node); } else if (type == QTYCONOP) { return new HaskellQtyconopImpl(node); } else if (type == QTYCONSYM) { return new HaskellQtyconsymImpl(node); } else if (type == QVAR) { return new HaskellQvarImpl(node); } else if (type == QVARID) { return new HaskellQvaridImpl(node); } else if (type == QVAROP) { return new HaskellQvaropImpl(node); } else if (type == QVARS) { return new HaskellQvarsImpl(node); } else if (type == QVARSYM) { return new HaskellQvarsymImpl(node); } else if (type == RHS) { return new HaskellRhsImpl(node); } else if (type == SHEBANG) { return new HaskellShebangImpl(node); } else if (type == STMTS) { return new HaskellStmtsImpl(node); } else if (type == TV_BNDR) { return new HaskellTvBndrImpl(node); } else if (type == TYCLS) { return new HaskellTyclsImpl(node); } else if (type == TYCON) { return new HaskellTyconImpl(node); } else if (type == TYCONSYM) { return new HaskellTyconsymImpl(node); } else if (type == TYPEDECL) { return new HaskellTypedeclImpl(node); } else if (type == TYPEE) { return new HaskellTypeeImpl(node); } else if (type == TYVAR) { return new HaskellTyvarImpl(node); } else if (type == VARID) { return new HaskellVaridImpl(node); } else if (type == VAROP) { return new HaskellVaropImpl(node); } else if (type == VARS) { return new HaskellVarsImpl(node); } else if (type == VARSYM) { return new HaskellVarsymImpl(node); } throw new AssertionError("Unknown element type: " + type); } } }