diff --git a/gen/intellij/haskell/_HaskellLexer.java b/gen/intellij/haskell/_HaskellLexer.java
index b1c4e326d..85e6f685c 100644
--- a/gen/intellij/haskell/_HaskellLexer.java
+++ b/gen/intellij/haskell/_HaskellLexer.java
@@ -15,13 +15,19 @@
*/
public class _HaskellLexer implements FlexLexer {
- /** This character denotes the end of file */
+ /**
+ * This character denotes the end of file
+ */
public static final int YYEOF = -1;
- /** initial size of the lookahead buffer */
+ /**
+ * initial size of the lookahead buffer
+ */
private static final int ZZ_BUFFERSIZE = 16384;
- /** lexical states */
+ /**
+ * lexical states
+ */
public static final int YYINITIAL = 0;
public static final int NCOMMENT = 2;
public static final int NHADDOCK = 4;
@@ -31,7 +37,7 @@ public class _HaskellLexer implements FlexLexer {
/**
* ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
* ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l
- * at the beginning of a line
+ * at the beginning of a line
* l is of the form l = 2*k, k a non negative integer
*/
private static final int ZZ_LEXSTATE[] = {
@@ -87,22 +93,22 @@ public static int ZZ_CMAP(int ch) {
"\6\5\1\47\1\50\3\5\1\51\4\5\1\52\2\5" +
"\2\0\1\53\1\0\2\5\1\11\4\0\1\54\5\0" +
"\2\22\1\23\3\0\1\55\1\0\1\56\4\5\1\57" +
- "\1\60\1\61\1\62\1\63\3\0\1\42\2\0\1\44" +
- "\1\53\2\44\4\0\1\64\17\5\1\65\2\5\20\0" +
- "\1\5\1\66\1\0\1\66\3\54\1\67\1\70\1\71" +
- "\20\0\1\72\1\73\4\5\1\74\16\44\1\71\17\44" +
- "\6\0\1\64\15\5\1\75\1\76\2\5\1\77\13\0" +
- "\1\54\1\100\1\54\15\0\1\101\1\102\2\5\27\44" +
- "\7\0\1\64\3\5\1\103\6\5\1\104\3\0\1\5" +
- "\1\105\3\0\1\5\1\106\1\107\1\5\1\110\4\5" +
- "\6\0\1\111\1\0\3\5\1\112\1\5\1\113\2\0" +
- "\1\100\3\0\1\64\1\114\1\0\1\115\2\0\2\100" +
- "\3\0\1\64\7\0\1\64\7\0\1\116\5\0\1\117" +
- "\1\116\2\0\1\54\5\0\1\120\1\121\1\122\3\0" +
- "\1\100";
+ "\1\60\1\61\1\62\1\63\3\0\1\42\1\0\1\44" +
+ "\1\0\1\44\1\53\2\44\4\0\1\64\17\5\1\65" +
+ "\2\5\20\0\1\5\1\66\1\0\1\66\3\54\1\67" +
+ "\1\70\1\71\20\0\1\72\1\73\4\5\1\74\16\44" +
+ "\1\71\17\44\6\0\1\64\15\5\1\75\1\76\2\5" +
+ "\1\77\13\0\1\54\1\100\1\54\15\0\1\101\1\102" +
+ "\2\5\27\44\7\0\1\64\3\5\1\103\6\5\1\104" +
+ "\3\0\1\5\1\105\3\0\1\5\1\106\1\107\1\5" +
+ "\1\110\4\5\6\0\1\111\1\0\3\5\1\112\1\5" +
+ "\1\113\2\0\1\100\3\0\1\64\1\114\1\0\1\115" +
+ "\2\0\2\100\3\0\1\64\7\0\1\64\7\0\1\116" +
+ "\5\0\1\117\1\116\2\0\1\54\5\0\1\120\1\121" +
+ "\1\122\3\0\1\100";
private static int[] zzUnpackAction() {
- int[] result = new int[423];
+ int[] result = new int[424];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
@@ -143,46 +149,46 @@ private static int zzUnpackAction(String packed, int offset, int[] result) {
"\0\u1bc0\0\u1c20\0\u1c80\0\u1ce0\0\u1d40\0\u1da0\0\u1da0\0\u0cc0" +
"\0\u1e00\0\u1e60\0\u1e00\0\u1ec0\0\u1f20\0\u1f80\0\u1fe0\0\u2040" +
"\0\u20a0\0\u01e0\0\u01e0\0\u01e0\0\u01e0\0\u01e0\0\u10e0\0\u2100" +
- "\0\u2160\0\u2100\0\u21c0\0\u2220\0\u2280\0\u11a0\0\u22e0\0\u2340" +
+ "\0\u2160\0\u2100\0\u21c0\0\u2220\0\u2280\0\u22e0\0\u11a0\0\u2340" +
"\0\u23a0\0\u2400\0\u2460\0\u24c0\0\u2520\0\u2580\0\u25e0\0\u2640" +
"\0\u26a0\0\u2700\0\u2760\0\u27c0\0\u2820\0\u2880\0\u28e0\0\u2940" +
- "\0\u29a0\0\u2a00\0\u2a60\0\u2ac0\0\u05a0\0\u2b20\0\u2b80\0\u2be0" +
+ "\0\u29a0\0\u2a00\0\u2a60\0\u2ac0\0\u2b20\0\u05a0\0\u2b80\0\u2be0" +
"\0\u2c40\0\u2ca0\0\u2d00\0\u2d60\0\u2dc0\0\u2e20\0\u2e80\0\u2ee0" +
"\0\u2f40\0\u2fa0\0\u3000\0\u3060\0\u30c0\0\u3120\0\u3180\0\u31e0" +
- "\0\u3240\0\u3240\0\u32a0\0\u3300\0\u3360\0\u33c0\0\u1bc0\0\u1c20" +
- "\0\u01e0\0\u3420\0\u3480\0\u34e0\0\u3540\0\u35a0\0\u3600\0\u3660" +
+ "\0\u3240\0\u32a0\0\u32a0\0\u3300\0\u3360\0\u33c0\0\u3420\0\u1bc0" +
+ "\0\u1c20\0\u01e0\0\u3480\0\u34e0\0\u3540\0\u35a0\0\u3600\0\u3660" +
"\0\u36c0\0\u3720\0\u3780\0\u37e0\0\u3840\0\u38a0\0\u3900\0\u3960" +
- "\0\u39c0\0\u01e0\0\u01e0\0\u3a20\0\u3a80\0\u3ae0\0\u3b40\0\u01e0" +
- "\0\u3ba0\0\u3c00\0\u3c60\0\u3cc0\0\u3d20\0\u3d80\0\u3de0\0\u3e40" +
- "\0\u3ea0\0\u3f00\0\u3f60\0\u3fc0\0\u4020\0\u4080\0\u11a0\0\u40e0" +
+ "\0\u39c0\0\u3a20\0\u01e0\0\u01e0\0\u3a80\0\u3ae0\0\u3b40\0\u3ba0" +
+ "\0\u01e0\0\u3c00\0\u3c60\0\u3cc0\0\u3d20\0\u3d80\0\u3de0\0\u3e40" +
+ "\0\u3ea0\0\u3f00\0\u3f60\0\u3fc0\0\u4020\0\u4080\0\u40e0\0\u11a0" +
"\0\u4140\0\u41a0\0\u4200\0\u4260\0\u42c0\0\u4320\0\u4380\0\u43e0" +
"\0\u4440\0\u44a0\0\u4500\0\u4560\0\u45c0\0\u4620\0\u4680\0\u46e0" +
"\0\u4740\0\u47a0\0\u4800\0\u4860\0\u48c0\0\u4920\0\u4980\0\u49e0" +
"\0\u4a40\0\u4aa0\0\u4b00\0\u4b60\0\u4bc0\0\u4c20\0\u4c80\0\u4ce0" +
- "\0\u4d40\0\u4da0\0\u05a0\0\u05a0\0\u4e00\0\u4e60\0\u05a0\0\u4ec0" +
+ "\0\u4d40\0\u4da0\0\u4e00\0\u05a0\0\u05a0\0\u4e60\0\u4ec0\0\u05a0" +
"\0\u4f20\0\u4f80\0\u4fe0\0\u5040\0\u50a0\0\u5100\0\u5160\0\u51c0" +
"\0\u5220\0\u5280\0\u52e0\0\u5340\0\u53a0\0\u5400\0\u5460\0\u54c0" +
"\0\u5520\0\u5580\0\u55e0\0\u5640\0\u56a0\0\u5700\0\u5760\0\u57c0" +
- "\0\u5820\0\u5880\0\u58e0\0\u05a0\0\u5940\0\u59a0\0\u5a00\0\u5a60" +
+ "\0\u5820\0\u5880\0\u58e0\0\u5940\0\u05a0\0\u59a0\0\u5a00\0\u5a60" +
"\0\u5ac0\0\u5b20\0\u5b80\0\u5be0\0\u5c40\0\u5ca0\0\u5d00\0\u5d60" +
"\0\u5dc0\0\u5e20\0\u5e80\0\u5ee0\0\u5f40\0\u5fa0\0\u6000\0\u6060" +
"\0\u60c0\0\u6120\0\u6180\0\u61e0\0\u6240\0\u62a0\0\u6300\0\u6360" +
"\0\u63c0\0\u6420\0\u6480\0\u64e0\0\u6540\0\u65a0\0\u6600\0\u6660" +
- "\0\u66c0\0\u6720\0\u6780\0\u67e0\0\u6840\0\u68a0\0\u6900\0\u05a0" +
- "\0\u6960\0\u69c0\0\u6a20\0\u6a80\0\u05a0\0\u6ae0\0\u6b40\0\u6ba0" +
- "\0\u6c00\0\u05a0\0\u05a0\0\u6c60\0\u05a0\0\u6cc0\0\u6d20\0\u6d80" +
- "\0\u6de0\0\u6e40\0\u6ea0\0\u6f00\0\u6f60\0\u6fc0\0\u7020\0\u05a0" +
- "\0\u7080\0\u70e0\0\u7140\0\u71a0\0\u05a0\0\u7200\0\u05a0\0\u7260" +
- "\0\u72c0\0\u7320\0\u7380\0\u73e0\0\u7440\0\u74a0\0\u05a0\0\u7500" +
- "\0\u05a0\0\u7560\0\u75c0\0\u7620\0\u7680\0\u76e0\0\u7740\0\u77a0" +
+ "\0\u66c0\0\u6720\0\u6780\0\u67e0\0\u6840\0\u68a0\0\u6900\0\u6960" +
+ "\0\u05a0\0\u69c0\0\u6a20\0\u6a80\0\u6ae0\0\u05a0\0\u6b40\0\u6ba0" +
+ "\0\u6c00\0\u6c60\0\u05a0\0\u05a0\0\u6cc0\0\u05a0\0\u6d20\0\u6d80" +
+ "\0\u6de0\0\u6e40\0\u6ea0\0\u6f00\0\u6f60\0\u6fc0\0\u7020\0\u7080" +
+ "\0\u05a0\0\u70e0\0\u7140\0\u71a0\0\u7200\0\u05a0\0\u7260\0\u05a0" +
+ "\0\u72c0\0\u7320\0\u7380\0\u73e0\0\u7440\0\u74a0\0\u7500\0\u05a0" +
+ "\0\u7560\0\u05a0\0\u75c0\0\u7620\0\u7680\0\u76e0\0\u7740\0\u77a0" +
"\0\u7800\0\u7860\0\u78c0\0\u7920\0\u7980\0\u79e0\0\u7a40\0\u7aa0" +
"\0\u7b00\0\u7b60\0\u7bc0\0\u7c20\0\u7c80\0\u7ce0\0\u7d40\0\u7da0" +
- "\0\u2520\0\u7e00\0\u7e60\0\u7ec0\0\u7f20\0\u7f80\0\u01e0\0\u01e0" +
- "\0\u7fe0\0\u8040\0\u01e0\0\u80a0\0\u8100\0\u8160\0\u81c0\0\u8220" +
- "\0\u01e0\0\u01e0\0\u01e0\0\u8280\0\u82e0\0\u8340\0\u83a0";
+ "\0\u7e00\0\u2580\0\u7e60\0\u7ec0\0\u7f20\0\u7f80\0\u7fe0\0\u01e0" +
+ "\0\u01e0\0\u8040\0\u80a0\0\u01e0\0\u8100\0\u8160\0\u81c0\0\u8220" +
+ "\0\u8280\0\u01e0\0\u01e0\0\u01e0\0\u82e0\0\u8340\0\u83a0\0\u8400";
private static int[] zzUnpackRowMap() {
- int[] result = new int[423];
+ int[] result = new int[424];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
@@ -301,479 +307,480 @@ private static int zzUnpackRowMap(String packed, int offset, int[] result) {
"\2\201\1\0\2\201\1\0\1\201\2\177\1\201\1\0" +
"\1\200\1\201\1\200\17\201\1\0\3\201\1\0\11\200" +
"\1\202\1\200\1\0\1\200\3\203\11\0\1\200\2\201" +
- "\2\0\6\201\31\0\1\204\113\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\32\103\1\0\32\103" +
- "\1\0\7\103\2\135\1\136\2\135\13\104\1\205\1\206" +
- "\2\104\1\135\1\104\1\135\1\104\2\135\10\104\1\135" +
- "\32\104\1\135\32\104\1\135\7\104\2\153\1\0\2\153" +
- "\13\207\1\210\3\207\1\153\1\207\1\153\1\207\2\153" +
- "\10\207\1\153\30\207\1\103\1\207\1\153\32\207\1\153" +
- "\7\207\1\0\1\110\1\0\1\110\1\0\1\211\1\0" +
- "\1\212\1\213\6\0\1\214\22\0\1\110\102\0\1\112" +
- "\1\215\2\112\1\216\6\112\2\0\7\112\1\0\7\112" +
- "\2\0\1\112\2\0\1\112\1\0\24\112\32\0\2\112" +
- "\2\0\6\112\5\0\13\112\2\0\7\112\1\0\7\112" +
+ "\2\0\6\201\31\204\1\205\106\204\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\32\103\1\0" +
+ "\32\103\1\0\7\103\2\135\1\136\2\135\13\104\1\206" +
+ "\1\207\2\104\1\135\1\104\1\135\1\104\2\135\10\104" +
+ "\1\135\32\104\1\135\32\104\1\135\7\104\2\153\1\0" +
+ "\2\153\13\210\1\211\3\210\1\153\1\210\1\153\1\210" +
+ "\2\153\10\210\1\153\30\210\1\103\1\210\1\153\32\210" +
+ "\1\153\7\210\1\0\1\110\1\0\1\110\1\0\1\212" +
+ "\1\0\1\213\1\214\6\0\1\215\22\0\1\110\102\0" +
+ "\1\112\1\216\2\112\1\217\6\112\2\0\7\112\1\0" +
+ "\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
+ "\2\112\2\0\6\112\5\0\13\112\2\0\7\112\1\0" +
+ "\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
+ "\2\112\2\0\6\112\5\0\3\112\1\220\7\112\2\0" +
+ "\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
+ "\24\112\32\0\2\112\2\0\6\112\5\0\4\112\1\221" +
+ "\1\222\1\112\1\223\3\112\2\0\7\112\1\0\7\112" +
"\2\0\1\112\2\0\1\112\1\0\24\112\32\0\2\112" +
- "\2\0\6\112\5\0\3\112\1\217\7\112\2\0\7\112" +
+ "\2\0\6\112\5\0\4\112\1\224\6\112\2\0\7\112" +
"\1\0\7\112\2\0\1\112\2\0\1\112\1\0\24\112" +
- "\32\0\2\112\2\0\6\112\5\0\4\112\1\220\1\221" +
- "\1\112\1\222\3\112\2\0\7\112\1\0\7\112\2\0" +
+ "\32\0\2\112\2\0\6\112\4\0\1\116\1\21\1\225" +
+ "\4\21\1\226\4\21\2\0\7\21\1\0\7\21\2\0" +
+ "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
+ "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\7\21" +
+ "\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
+ "\2\0\2\21\1\227\3\21\4\0\1\116\7\21\1\230" +
+ "\3\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
+ "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
+ "\1\116\1\21\1\231\5\21\1\232\3\21\2\0\7\21" +
+ "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\6\21\4\0\1\116\13\21\2\0" +
+ "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\1\233\5\21\4\0\1\116" +
+ "\6\21\1\234\4\21\2\0\7\21\1\0\7\21\2\0" +
+ "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
+ "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\7\21" +
+ "\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
+ "\2\0\4\21\1\235\1\21\4\0\1\116\13\21\2\0" +
+ "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\1\236\5\21\4\0\1\116" +
+ "\13\21\2\0\7\21\1\0\1\237\6\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
+ "\4\0\1\116\6\21\1\240\4\21\2\0\7\21\1\0" +
+ "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
+ "\2\21\2\0\6\21\10\0\1\241\130\0\3\242\2\0" +
+ "\1\135\2\0\1\135\2\0\1\135\1\243\2\0\2\135" +
+ "\5\0\2\135\1\0\1\135\1\244\1\135\1\245\1\0" +
+ "\1\135\2\0\1\242\1\246\1\0\2\135\1\247\1\250" +
+ "\1\251\1\252\1\253\1\254\2\0\1\255\1\256\1\0" +
+ "\1\257\1\260\1\254\1\251\1\0\1\135\2\0\1\251" +
+ "\1\135\32\0\1\135\3\0\1\135\11\0\1\116\3\21" +
+ "\1\261\7\21\2\0\1\140\4\21\1\141\1\21\1\0" +
+ "\2\21\1\141\2\21\1\141\1\21\1\145\1\0\1\261" +
+ "\2\0\1\21\1\0\17\21\1\141\4\21\32\0\2\21" +
+ "\2\0\6\21\27\0\1\262\1\0\1\263\2\0\1\262" +
+ "\2\0\1\262\27\0\1\262\6\0\1\263\63\0\1\144" +
+ "\4\0\1\30\1\31\3\0\1\30\2\0\1\30\27\0" +
+ "\1\30\72\0\1\145\4\0\1\264\4\0\1\264\2\0" +
+ "\1\264\27\0\1\264\50\0\1\265\1\266\1\0\1\267" +
+ "\1\37\34\265\1\37\1\267\2\265\1\37\26\265\1\37" +
+ "\1\265\1\37\1\265\5\37\33\265\41\0\1\145\120\0" +
+ "\1\151\11\0\1\270\2\0\1\270\27\0\1\270\56\0" +
+ "\3\271\5\0\1\271\3\0\1\152\4\0\1\271\2\0" +
+ "\3\271\2\0\1\271\3\0\1\271\13\0\2\271\1\0" +
+ "\2\271\3\0\1\271\36\0\1\271\104\0\1\272\52\0" +
+ "\1\153\2\0\1\153\2\0\1\153\1\273\2\0\2\153" +
+ "\5\0\2\274\1\0\1\153\1\275\1\274\1\276\1\0" +
+ "\1\274\3\0\1\277\1\0\2\153\1\300\1\301\1\302" +
+ "\1\303\1\304\1\305\2\0\1\306\1\307\1\0\1\310" +
+ "\1\311\1\305\1\302\1\0\1\274\2\0\1\302\1\153" +
+ "\32\0\1\153\3\0\1\153\11\0\1\156\13\0\1\156" +
+ "\10\0\1\156\7\0\1\156\3\0\1\156\1\0\1\156" +
+ "\23\0\1\272\15\156\14\0\1\156\16\0\1\156\13\0" +
+ "\1\156\10\0\1\156\7\0\1\156\3\0\1\156\1\0" +
+ "\1\156\24\0\15\156\14\0\1\156\13\0\1\160\1\0" +
+ "\1\160\1\161\13\162\1\161\1\0\5\162\2\0\1\161" +
+ "\2\162\1\0\2\162\1\0\1\162\1\161\1\160\1\162" +
+ "\1\0\1\161\1\162\1\161\17\162\1\0\3\162\1\0" +
+ "\11\161\1\163\3\161\3\164\11\0\1\161\2\162\2\0" +
+ "\6\162\1\0\1\160\1\0\1\160\1\161\13\162\1\161" +
+ "\1\0\7\162\1\161\7\162\2\160\1\162\1\0\1\161" +
+ "\1\162\1\161\24\162\11\161\1\163\1\161\1\0\1\161" +
+ "\3\164\11\0\1\161\2\162\2\0\6\162\4\0\1\161" +
+ "\13\0\1\161\10\0\1\161\7\0\1\161\3\0\1\161" +
+ "\1\0\1\161\24\0\15\161\14\0\1\161\13\0\1\312" +
+ "\1\0\1\312\1\313\35\0\1\312\42\0\1\314\36\0" +
+ "\1\116\13\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\2\21" +
+ "\1\315\3\21\4\0\1\116\3\21\1\316\7\21\2\0" +
+ "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\2\21" +
+ "\1\317\10\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
+ "\4\0\1\116\3\21\1\320\7\21\2\0\7\21\1\0" +
+ "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
+ "\2\21\2\0\6\21\1\0\1\177\1\0\1\177\1\200" +
+ "\13\201\1\200\1\0\5\201\2\0\1\200\2\201\1\0" +
+ "\2\201\1\0\1\201\1\200\1\177\1\201\1\0\1\200" +
+ "\1\201\1\200\17\201\1\0\3\201\1\0\11\200\1\202" +
+ "\3\200\3\203\11\0\1\200\2\201\2\0\6\201\1\0" +
+ "\1\177\1\0\1\177\1\200\13\201\1\200\1\0\7\201" +
+ "\1\200\7\201\2\177\1\201\1\0\1\200\1\201\1\200" +
+ "\24\201\11\200\1\202\1\200\1\0\1\200\3\203\11\0" +
+ "\1\200\2\201\2\0\6\201\4\0\1\200\13\0\1\200" +
+ "\10\0\1\200\7\0\1\200\3\0\1\200\1\0\1\200" +
+ "\24\0\15\200\14\0\1\200\12\0\31\204\1\0\106\204" +
+ "\123\0\1\321\15\0\3\242\1\0\1\103\1\104\2\103" +
+ "\1\104\2\103\1\104\1\322\2\103\2\104\2\103\1\0" +
+ "\1\103\1\0\1\104\1\135\1\0\1\104\1\323\1\104" +
+ "\1\324\1\103\1\104\2\103\1\242\1\325\1\103\2\104" +
+ "\1\326\1\327\1\330\1\331\1\332\1\333\2\103\1\334" +
+ "\1\335\1\103\1\336\1\337\1\333\1\330\1\103\1\104" +
+ "\2\103\1\330\1\104\1\103\1\0\30\103\1\104\1\103" +
+ "\1\0\1\103\1\104\5\103\5\0\17\103\1\0\1\103" +
+ "\1\0\1\103\2\0\10\103\1\0\30\103\1\340\1\103" +
+ "\1\0\32\103\1\0\7\103\5\0\1\103\1\210\2\103" +
+ "\1\210\2\103\1\210\1\341\2\103\2\210\2\103\1\0" +
+ "\1\103\1\0\1\342\1\274\1\0\1\210\1\343\1\342" +
+ "\1\344\1\103\1\342\2\103\1\0\1\345\1\103\2\210" +
+ "\1\346\1\347\1\350\1\351\1\352\1\353\2\103\1\354" +
+ "\1\355\1\103\1\356\1\357\1\353\1\350\1\103\1\342" +
+ "\2\103\1\350\1\210\1\103\1\0\30\103\1\210\1\103" +
+ "\1\0\1\103\1\210\5\103\6\0\1\216\2\0\1\360" +
+ "\136\0\1\361\140\0\1\362\1\363\1\0\1\364\134\0" +
+ "\1\365\126\0\1\216\2\0\15\216\1\366\117\216\5\0" +
+ "\11\112\1\367\1\112\2\0\7\112\1\0\7\112\2\0" +
"\1\112\2\0\1\112\1\0\24\112\32\0\2\112\2\0" +
- "\6\112\5\0\4\112\1\223\6\112\2\0\7\112\1\0" +
+ "\6\112\5\0\1\112\1\370\11\112\2\0\7\112\1\0" +
"\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
- "\2\112\2\0\6\112\4\0\1\116\1\21\1\224\4\21" +
- "\1\225\4\21\2\0\7\21\1\0\7\21\2\0\1\21" +
- "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\13\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\2\21\1\226\3\21\4\0\1\116\7\21\1\227\3\21" +
+ "\2\112\2\0\6\112\5\0\2\112\1\371\10\112\2\0" +
+ "\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
+ "\24\112\32\0\2\112\2\0\6\112\5\0\1\372\5\112" +
+ "\1\373\4\112\2\0\7\112\1\0\7\112\2\0\1\112" +
+ "\2\0\1\112\1\0\24\112\32\0\2\112\2\0\6\112" +
+ "\5\0\7\112\1\374\3\112\2\0\7\112\1\0\7\112" +
+ "\2\0\1\112\2\0\1\112\1\0\24\112\32\0\2\112" +
+ "\2\0\6\112\5\0\2\112\1\375\10\112\2\0\7\112" +
+ "\1\0\7\112\2\0\1\112\2\0\1\112\1\0\24\112" +
+ "\32\0\2\112\2\0\6\112\4\0\1\116\1\376\12\21" +
"\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
"\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
- "\1\21\1\230\5\21\1\231\3\21\2\0\7\21\1\0" +
+ "\13\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
+ "\1\21\1\0\24\21\32\0\2\21\2\0\1\377\5\21" +
+ "\4\0\1\116\10\21\1\u0100\2\21\2\0\7\21\1\0" +
"\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\6\21\4\0\1\116\13\21\2\0\7\21" +
- "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\1\232\5\21\4\0\1\116\6\21" +
- "\1\233\4\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\21\2\0\6\21\4\0\1\116\3\21\1\u0101\7\21" +
+ "\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
+ "\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
+ "\13\21\2\0\7\21\1\0\1\u0102\6\21\2\0\1\21" +
"\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\13\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\4\21\1\234\1\21\4\0\1\116\13\21\2\0\7\21" +
- "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\1\235\5\21\4\0\1\116\13\21" +
- "\2\0\7\21\1\0\1\236\6\21\2\0\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\6\21\1\237\4\21\2\0\7\21\1\0\7\21" +
+ "\4\0\1\116\1\u0103\12\21\2\0\7\21\1\0\7\21" +
"\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\6\21\10\0\1\240\130\0\3\241\2\0\1\135" +
- "\2\0\1\135\2\0\1\135\1\242\2\0\2\135\5\0" +
- "\2\135\1\0\1\135\1\243\1\135\1\244\1\0\1\135" +
- "\2\0\1\241\1\245\1\0\2\135\1\246\1\247\1\250" +
- "\1\251\1\252\1\253\2\0\1\254\1\255\1\0\1\256" +
- "\1\257\1\253\1\250\1\0\1\135\2\0\1\250\1\135" +
- "\32\0\1\135\3\0\1\135\11\0\1\116\3\21\1\260" +
- "\7\21\2\0\1\140\4\21\1\141\1\21\1\0\2\21" +
- "\1\141\2\21\1\141\1\21\1\145\1\0\1\260\2\0" +
- "\1\21\1\0\17\21\1\141\4\21\32\0\2\21\2\0" +
- "\6\21\27\0\1\261\1\0\1\262\2\0\1\261\2\0" +
- "\1\261\27\0\1\261\6\0\1\262\63\0\1\144\4\0" +
- "\1\30\1\31\3\0\1\30\2\0\1\30\27\0\1\30" +
- "\72\0\1\145\4\0\1\263\4\0\1\263\2\0\1\263" +
- "\27\0\1\263\50\0\1\264\1\265\1\0\1\266\1\37" +
- "\34\264\1\37\1\266\2\264\1\37\26\264\1\37\1\264" +
- "\1\37\1\264\5\37\33\264\41\0\1\145\120\0\1\151" +
- "\11\0\1\267\2\0\1\267\27\0\1\267\56\0\3\270" +
- "\5\0\1\270\3\0\1\152\4\0\1\270\2\0\3\270" +
- "\2\0\1\270\3\0\1\270\13\0\2\270\1\0\2\270" +
- "\3\0\1\270\36\0\1\270\104\0\1\271\52\0\1\153" +
- "\2\0\1\153\2\0\1\153\1\272\2\0\2\153\5\0" +
- "\2\273\1\0\1\153\1\274\1\273\1\275\1\0\1\273" +
- "\3\0\1\276\1\0\2\153\1\277\1\300\1\301\1\302" +
- "\1\303\1\304\2\0\1\305\1\306\1\0\1\307\1\310" +
- "\1\304\1\301\1\0\1\273\2\0\1\301\1\153\32\0" +
- "\1\153\3\0\1\153\11\0\1\156\13\0\1\156\10\0" +
- "\1\156\7\0\1\156\3\0\1\156\1\0\1\156\23\0" +
- "\1\271\15\156\14\0\1\156\16\0\1\156\13\0\1\156" +
- "\10\0\1\156\7\0\1\156\3\0\1\156\1\0\1\156" +
- "\24\0\15\156\14\0\1\156\13\0\1\160\1\0\1\160" +
- "\1\161\13\162\1\161\1\0\5\162\2\0\1\161\2\162" +
- "\1\0\2\162\1\0\1\162\1\161\1\160\1\162\1\0" +
- "\1\161\1\162\1\161\17\162\1\0\3\162\1\0\11\161" +
- "\1\163\3\161\3\164\11\0\1\161\2\162\2\0\6\162" +
- "\1\0\1\160\1\0\1\160\1\161\13\162\1\161\1\0" +
- "\7\162\1\161\7\162\2\160\1\162\1\0\1\161\1\162" +
- "\1\161\24\162\11\161\1\163\1\161\1\0\1\161\3\164" +
- "\11\0\1\161\2\162\2\0\6\162\4\0\1\161\13\0" +
- "\1\161\10\0\1\161\7\0\1\161\3\0\1\161\1\0" +
- "\1\161\24\0\15\161\14\0\1\161\13\0\1\311\1\0" +
- "\1\311\1\312\35\0\1\311\42\0\1\313\36\0\1\116" +
- "\13\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\2\21\1\314" +
- "\3\21\4\0\1\116\3\21\1\315\7\21\2\0\7\21" +
- "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\6\21\4\0\1\116\2\21\1\316" +
- "\10\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
+ "\2\0\6\21\4\0\1\116\13\21\2\0\7\21\1\0" +
+ "\1\u0104\6\21\2\0\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\6\21\4\0\1\116\3\21\1\u0105" +
+ "\7\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
"\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\3\21\1\317\7\21\2\0\7\21\1\0\7\21" +
+ "\1\116\13\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\1\u0106" +
+ "\5\21\4\0\1\116\6\21\1\u0107\4\21\2\0\7\21" +
+ "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\6\21\4\0\1\116\3\21\1\u0108" +
+ "\7\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
+ "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\127\0" +
+ "\1\u0109\11\0\3\242\14\0\1\135\21\0\1\242\131\0" +
+ "\1\135\2\0\1\135\27\0\1\135\113\0\1\u010a\6\0" +
+ "\1\u010b\5\0\1\u010c\65\0\3\135\5\0\1\135\10\0" +
+ "\1\135\2\0\3\135\2\0\1\135\3\0\1\135\13\0" +
+ "\2\135\1\0\2\135\3\0\1\135\36\0\1\135\51\0" +
+ "\1\254\7\0\1\u010d\2\0\1\u010e\1\0\1\u010f\13\0" +
+ "\1\135\66\0\1\135\1\0\1\135\2\0\2\135\4\0" +
+ "\1\135\2\0\1\135\1\0\1\135\2\0\2\135\2\0" +
+ "\20\135\1\0\3\135\11\0\1\135\13\0\1\135\70\0" +
+ "\1\u010a\5\0\1\u0110\133\0\1\135\147\0\1\135\114\0" +
+ "\1\135\10\0\1\u0111\3\0\1\u0112\10\0\1\135\1\0" +
+ "\1\u0113\124\0\1\135\142\0\1\u0110\136\0\1\u0113\5\0" +
+ "\1\135\115\0\1\u010a\7\0\1\135\137\0\1\135\7\0" +
+ "\1\135\60\0\1\116\13\21\2\0\7\21\1\263\7\21" +
+ "\2\0\1\21\2\0\1\21\1\0\24\21\2\0\1\263" +
+ "\27\0\2\21\2\0\6\21\27\0\1\262\4\0\1\262" +
+ "\2\0\1\262\27\0\1\262\60\0\1\143\11\0\1\145" +
+ "\4\0\1\264\4\0\1\264\2\0\1\264\3\0\1\143" +
+ "\23\0\1\264\50\0\1\265\2\0\135\265\1\0\1\u0114" +
+ "\1\0\1\u0114\36\0\1\u0114\4\0\1\u0115\35\0\1\u0115" +
+ "\32\0\1\265\1\u0114\1\0\1\u0116\36\265\1\u0116\4\265" +
+ "\1\u0115\35\265\1\u0115\32\265\34\0\1\u0117\2\0\1\u0117" +
+ "\27\0\1\u0117\77\0\2\274\3\0\1\274\2\0\1\274" +
+ "\27\0\1\274\3\0\1\272\107\0\1\u0118\6\0\1\u0119" +
+ "\5\0\1\u011a\65\0\3\u011b\5\0\1\u011b\10\0\1\u011b" +
+ "\2\0\3\u011b\2\0\1\u011b\3\0\1\u011b\13\0\2\u011b" +
+ "\1\0\2\u011b\3\0\1\u011b\36\0\1\u011b\51\0\1\305" +
+ "\7\0\1\u011c\2\0\1\u011d\1\0\1\u011e\13\0\1\153" +
+ "\66\0\1\153\1\0\1\153\2\0\2\153\4\0\1\153" +
+ "\2\0\1\153\1\0\1\153\2\0\2\153\2\0\20\153" +
+ "\1\0\3\153\11\0\1\153\13\0\1\153\70\0\1\u0118" +
+ "\5\0\1\u011f\133\0\1\153\147\0\1\153\114\0\1\u0120" +
+ "\10\0\1\u0121\3\0\1\u0122\10\0\1\153\1\0\1\u0123" +
+ "\124\0\1\153\142\0\1\u011f\136\0\1\u0123\5\0\1\153" +
+ "\115\0\1\u0118\7\0\1\153\137\0\1\153\7\0\1\153" +
+ "\161\0\1\314\36\0\1\116\3\21\1\u0124\7\21\2\0" +
+ "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\4\21" +
+ "\1\u0125\6\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
+ "\4\0\1\116\12\21\1\u0126\2\0\7\21\1\0\7\21" +
"\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\6\21\1\0\1\177\1\0\1\177\1\200\13\201" +
- "\1\200\1\0\5\201\2\0\1\200\2\201\1\0\2\201" +
- "\1\0\1\201\1\200\1\177\1\201\1\0\1\200\1\201" +
- "\1\200\17\201\1\0\3\201\1\0\11\200\1\202\3\200" +
- "\3\203\11\0\1\200\2\201\2\0\6\201\1\0\1\177" +
- "\1\0\1\177\1\200\13\201\1\200\1\0\7\201\1\200" +
- "\7\201\2\177\1\201\1\0\1\200\1\201\1\200\24\201" +
- "\11\200\1\202\1\200\1\0\1\200\3\203\11\0\1\200" +
- "\2\201\2\0\6\201\4\0\1\200\13\0\1\200\10\0" +
- "\1\200\7\0\1\200\3\0\1\200\1\0\1\200\24\0" +
- "\15\200\14\0\1\200\135\0\1\320\15\0\3\241\1\0" +
- "\1\103\1\104\2\103\1\104\2\103\1\104\1\321\2\103" +
- "\2\104\2\103\1\0\1\103\1\0\1\104\1\135\1\0" +
- "\1\104\1\322\1\104\1\323\1\103\1\104\2\103\1\241" +
- "\1\324\1\103\2\104\1\325\1\326\1\327\1\330\1\331" +
- "\1\332\2\103\1\333\1\334\1\103\1\335\1\336\1\332" +
- "\1\327\1\103\1\104\2\103\1\327\1\104\1\103\1\0" +
- "\30\103\1\104\1\103\1\0\1\103\1\104\5\103\5\0" +
+ "\2\0\6\21\4\0\1\116\7\21\1\u0127\3\21\2\0" +
+ "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\6\21\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\2\103\1\104\2\103\1\104" +
+ "\2\103\1\0\24\103\1\104\5\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\1\u0128\6\103\1\u0129\5\103\1\u012a\14\103" +
+ "\1\0\32\103\1\0\7\103\5\0\1\103\3\104\5\103" +
+ "\1\104\5\103\1\0\1\103\1\0\1\104\2\0\3\104" +
+ "\2\103\1\104\2\103\1\0\1\104\13\103\2\104\1\103" +
+ "\2\104\3\103\1\104\5\103\1\0\30\103\1\104\1\103" +
+ "\1\0\7\103\5\0\17\103\1\0\1\103\1\0\1\103" +
+ "\2\0\6\103\1\333\1\103\1\0\5\103\1\u012b\2\103" +
+ "\1\u012c\1\103\1\u012d\13\103\1\104\3\103\1\0\32\103" +
+ "\1\0\7\103\5\0\13\103\1\104\1\103\1\104\1\103" +
+ "\1\0\1\104\1\135\1\103\2\0\1\103\1\104\2\103" +
+ "\1\104\1\103\1\104\1\103\1\0\2\104\2\103\20\104" +
+ "\1\103\3\104\2\103\1\0\6\103\1\104\13\103\1\104" +
+ "\7\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\10\103\1\0\6\103\1\u0128\5\103\1\u012e" +
+ "\15\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\10\103\1\104" +
+ "\21\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\20\103\1\104" +
+ "\11\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\6\103\1\104\1\103\1\0" +
+ "\6\103\1\u012f\3\103\1\u0130\10\103\1\104\1\103\1\u0131" +
+ "\4\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\12\103\1\104" +
+ "\17\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\15\103\1\u012e" +
+ "\14\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\14\103\1\u0131" +
+ "\5\103\1\104\7\103\1\0\32\103\1\0\7\103\5\0" +
+ "\17\103\1\0\1\103\1\0\1\103\2\0\10\103\1\0" +
+ "\1\u0128\7\103\1\104\21\103\1\0\32\103\1\0\7\103" +
+ "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
+ "\1\0\10\103\1\104\7\103\1\104\11\103\1\0\32\103" +
+ "\1\0\7\103\5\0\17\103\1\0\1\103\1\0\1\103" +
+ "\2\0\2\103\1\u0132\2\103\1\u0132\2\103\1\0\24\103" +
+ "\1\u0132\5\103\1\0\32\103\1\0\7\103\5\0\17\103" +
+ "\1\0\1\103\1\0\1\342\1\274\1\0\2\103\1\342" +
+ "\2\103\1\342\2\103\1\0\24\103\1\342\3\103\1\340" +
+ "\1\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
+ "\1\103\1\0\1\103\2\0\10\103\1\0\1\u0133\6\103" +
+ "\1\u0134\5\103\1\u0135\14\103\1\0\32\103\1\0\7\103" +
+ "\5\0\1\103\3\u0136\5\103\1\u0136\5\103\1\0\1\103" +
+ "\1\0\1\u0136\2\0\3\u0136\2\103\1\u0136\2\103\1\0" +
+ "\1\u0136\13\103\2\u0136\1\103\2\u0136\3\103\1\u0136\5\103" +
+ "\1\0\30\103\1\u0136\1\103\1\0\7\103\5\0\17\103" +
+ "\1\0\1\103\1\0\1\103\2\0\6\103\1\353\1\103" +
+ "\1\0\5\103\1\u0137\2\103\1\u0138\1\103\1\u0139\13\103" +
+ "\1\210\3\103\1\0\32\103\1\0\7\103\5\0\13\103" +
+ "\1\210\1\103\1\210\1\103\1\0\1\210\1\153\1\103" +
+ "\2\0\1\103\1\210\2\103\1\210\1\103\1\210\1\103" +
+ "\1\0\2\210\2\103\20\210\1\103\3\210\2\103\1\0" +
+ "\6\103\1\210\13\103\1\210\7\103\1\0\7\103\5\0" +
"\17\103\1\0\1\103\1\0\1\103\2\0\10\103\1\0" +
- "\30\103\1\337\1\103\1\0\32\103\1\0\7\103\5\0" +
- "\1\103\1\207\2\103\1\207\2\103\1\207\1\340\2\103" +
- "\2\207\2\103\1\0\1\103\1\0\1\341\1\273\1\0" +
- "\1\207\1\342\1\341\1\343\1\103\1\341\2\103\1\0" +
- "\1\344\1\103\2\207\1\345\1\346\1\347\1\350\1\351" +
- "\1\352\2\103\1\353\1\354\1\103\1\355\1\356\1\352" +
- "\1\347\1\103\1\341\2\103\1\347\1\207\1\103\1\0" +
- "\30\103\1\207\1\103\1\0\1\103\1\207\5\103\6\0" +
- "\1\215\2\0\1\357\136\0\1\360\140\0\1\361\1\362" +
- "\1\0\1\363\134\0\1\364\126\0\1\215\2\0\15\215" +
- "\1\365\117\215\5\0\11\112\1\366\1\112\2\0\7\112" +
+ "\6\103\1\u0133\5\103\1\u013a\15\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\10\103\1\210\21\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\20\103\1\210\11\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\6\103\1\u013b\1\103\1\0\6\103\1\u013c\3\103\1\u013d" +
+ "\10\103\1\210\1\103\1\u013e\4\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\12\103\1\210\17\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\15\103\1\u013a\14\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\14\103\1\u013e\5\103\1\210\7\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\10\103\1\0\1\u0133\7\103\1\210\21\103" +
+ "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
+ "\1\0\1\103\2\0\10\103\1\0\10\103\1\210\7\103" +
+ "\1\210\11\103\1\0\32\103\1\0\7\103\16\0\1\u013f" +
+ "\127\0\1\u0140\140\0\1\u0141\135\0\1\u0142\5\0\1\u0143" +
+ "\140\0\1\u0144\132\0\1\u0145\130\0\1\216\1\u0146\16\216" +
+ "\1\366\117\216\5\0\5\112\1\u0147\5\112\2\0\7\112" +
"\1\0\7\112\2\0\1\112\2\0\1\112\1\0\24\112" +
- "\32\0\2\112\2\0\6\112\5\0\1\112\1\367\11\112" +
+ "\32\0\2\112\2\0\6\112\5\0\1\u0148\12\112\2\0" +
+ "\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
+ "\24\112\32\0\2\112\2\0\6\112\5\0\1\372\12\112" +
"\2\0\7\112\1\0\7\112\2\0\1\112\2\0\1\112" +
- "\1\0\24\112\32\0\2\112\2\0\6\112\5\0\2\112" +
- "\1\370\10\112\2\0\7\112\1\0\7\112\2\0\1\112" +
+ "\1\0\24\112\32\0\2\112\2\0\6\112\5\0\1\112" +
+ "\1\216\11\112\2\0\7\112\1\0\7\112\2\0\1\112" +
"\2\0\1\112\1\0\24\112\32\0\2\112\2\0\6\112" +
- "\5\0\1\371\5\112\1\372\4\112\2\0\7\112\1\0" +
- "\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
- "\2\112\2\0\6\112\5\0\7\112\1\373\3\112\2\0" +
- "\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
- "\24\112\32\0\2\112\2\0\6\112\5\0\2\112\1\374" +
- "\10\112\2\0\7\112\1\0\7\112\2\0\1\112\2\0" +
- "\1\112\1\0\24\112\32\0\2\112\2\0\6\112\4\0" +
- "\1\116\1\375\12\21\2\0\7\21\1\0\7\21\2\0" +
+ "\5\0\3\112\1\216\7\112\2\0\7\112\1\0\7\112" +
+ "\2\0\1\112\2\0\1\112\1\0\24\112\32\0\2\112" +
+ "\2\0\6\112\5\0\10\112\1\u0149\2\112\2\0\7\112" +
+ "\1\0\7\112\2\0\1\112\2\0\1\112\1\0\24\112" +
+ "\32\0\2\112\2\0\6\112\5\0\3\112\1\372\7\112" +
+ "\2\0\7\112\1\0\7\112\2\0\1\112\2\0\1\112" +
+ "\1\0\24\112\32\0\2\112\2\0\6\112\4\0\1\116" +
+ "\13\21\2\0\7\21\1\0\3\21\1\u014a\3\21\2\0" +
"\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\7\21" +
- "\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\1\376\5\21\4\0\1\116\10\21\1\377\2\21" +
+ "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\1\u014b" +
+ "\6\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
+ "\2\21\2\0\6\21\4\0\1\116\7\21\1\u014c\3\21" +
"\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
"\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
- "\3\21\1\u0100\7\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\1\u0101" +
- "\6\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\6\21\4\0\1\116\1\u0102\12\21\2\0" +
- "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
- "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\13\21" +
- "\2\0\7\21\1\0\1\u0103\6\21\2\0\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\3\21\1\u0104\7\21\2\0\7\21\1\0\7\21" +
+ "\1\u014d\12\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
+ "\4\0\1\116\12\21\1\u014e\2\0\7\21\1\0\7\21" +
"\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
"\2\0\6\21\4\0\1\116\13\21\2\0\7\21\1\0" +
- "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\1\u0105\5\21\4\0\1\116\6\21\1\u0106" +
- "\4\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
+ "\7\21\2\0\1\21\2\0\1\u014f\1\0\24\21\32\0" +
+ "\2\21\2\0\6\21\4\0\1\116\13\21\2\0\7\21" +
+ "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\1\21\1\u0150\4\21\4\0\1\116" +
+ "\6\21\1\u0151\4\21\2\0\7\21\1\0\7\21\2\0" +
+ "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
+ "\6\21\5\0\1\u0152\204\0\1\135\130\0\1\135\163\0" +
+ "\1\135\126\0\1\135\141\0\1\135\115\0\1\135\23\0" +
+ "\1\135\136\0\1\135\140\0\1\135\113\0\1\135\151\0" +
+ "\1\135\70\0\1\u0114\1\0\1\u0114\36\0\1\u0114\75\0" +
+ "\1\u0115\2\u0153\135\u0115\1\265\1\u0114\1\0\1\u0116\36\265" +
+ "\1\u0116\75\265\34\0\1\u0117\2\0\1\u0117\27\0\1\u0117" +
+ "\3\0\1\272\116\0\1\153\130\0\1\153\163\0\1\153" +
+ "\56\0\3\u011b\5\0\1\u011b\10\0\1\u011b\2\0\3\u011b" +
+ "\2\0\1\u011b\3\0\1\u011b\13\0\2\u011b\1\0\2\u011b" +
+ "\3\0\1\u011b\3\0\1\272\32\0\1\u011b\67\0\1\153" +
+ "\141\0\1\153\115\0\1\153\23\0\1\153\136\0\1\153" +
+ "\132\0\1\153\16\0\1\272\126\0\1\153\113\0\1\153" +
+ "\151\0\1\153\73\0\1\116\13\21\2\0\7\21\1\0" +
+ "\7\21\1\0\1\u0154\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\6\21\4\0\1\116\5\21\1\u0155" +
+ "\5\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
"\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\3\21\1\u0107\7\21\2\0\7\21\1\0\7\21" +
+ "\1\116\3\21\1\u0156\7\21\2\0\7\21\1\0\7\21" +
"\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\6\21\127\0\1\u0108\11\0\3\241\14\0\1\135" +
- "\21\0\1\241\131\0\1\135\2\0\1\135\27\0\1\135" +
- "\113\0\1\u0109\6\0\1\u010a\5\0\1\u010b\65\0\3\135" +
- "\5\0\1\135\10\0\1\135\2\0\3\135\2\0\1\135" +
- "\3\0\1\135\13\0\2\135\1\0\2\135\3\0\1\135" +
- "\36\0\1\135\51\0\1\253\7\0\1\u010c\2\0\1\u010d" +
- "\1\0\1\u010e\13\0\1\135\66\0\1\135\1\0\1\135" +
- "\2\0\2\135\4\0\1\135\2\0\1\135\1\0\1\135" +
- "\2\0\2\135\2\0\20\135\1\0\3\135\11\0\1\135" +
- "\13\0\1\135\70\0\1\u0109\5\0\1\u010f\133\0\1\135" +
- "\147\0\1\135\114\0\1\135\10\0\1\u0110\3\0\1\u0111" +
- "\10\0\1\135\1\0\1\u0112\124\0\1\135\142\0\1\u010f" +
- "\136\0\1\u0112\5\0\1\135\115\0\1\u0109\7\0\1\135" +
- "\137\0\1\135\7\0\1\135\60\0\1\116\13\21\2\0" +
- "\7\21\1\262\7\21\2\0\1\21\2\0\1\21\1\0" +
- "\24\21\2\0\1\262\27\0\2\21\2\0\6\21\27\0" +
- "\1\261\4\0\1\261\2\0\1\261\27\0\1\261\60\0" +
- "\1\143\11\0\1\145\4\0\1\263\4\0\1\263\2\0" +
- "\1\263\3\0\1\143\23\0\1\263\50\0\1\264\2\0" +
- "\135\264\1\0\1\u0113\1\0\1\u0113\36\0\1\u0113\4\0" +
- "\1\u0114\35\0\1\u0114\32\0\1\264\1\u0113\1\0\1\u0115" +
- "\36\264\1\u0115\4\264\1\u0114\35\264\1\u0114\32\264\34\0" +
- "\1\u0116\2\0\1\u0116\27\0\1\u0116\77\0\2\273\3\0" +
- "\1\273\2\0\1\273\27\0\1\273\3\0\1\271\107\0" +
- "\1\u0117\6\0\1\u0118\5\0\1\u0119\65\0\3\u011a\5\0" +
- "\1\u011a\10\0\1\u011a\2\0\3\u011a\2\0\1\u011a\3\0" +
- "\1\u011a\13\0\2\u011a\1\0\2\u011a\3\0\1\u011a\36\0" +
- "\1\u011a\51\0\1\304\7\0\1\u011b\2\0\1\u011c\1\0" +
- "\1\u011d\13\0\1\153\66\0\1\153\1\0\1\153\2\0" +
- "\2\153\4\0\1\153\2\0\1\153\1\0\1\153\2\0" +
- "\2\153\2\0\20\153\1\0\3\153\11\0\1\153\13\0" +
- "\1\153\70\0\1\u0117\5\0\1\u011e\133\0\1\153\147\0" +
- "\1\153\114\0\1\u011f\10\0\1\u0120\3\0\1\u0121\10\0" +
- "\1\153\1\0\1\u0122\124\0\1\153\142\0\1\u011e\136\0" +
- "\1\u0122\5\0\1\153\115\0\1\u0117\7\0\1\153\137\0" +
- "\1\153\7\0\1\153\161\0\1\313\36\0\1\116\3\21" +
- "\1\u0123\7\21\2\0\7\21\1\0\7\21\2\0\1\21" +
- "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\4\21\1\u0124\6\21\2\0\7\21\1\0" +
- "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\6\21\4\0\1\116\12\21\1\u0125\2\0" +
- "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
- "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\7\21" +
- "\1\u0126\3\21\2\0\7\21\1\0\7\21\2\0\1\21" +
- "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\2\103" +
- "\1\104\2\103\1\104\2\103\1\0\24\103\1\104\5\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\1\u0127\6\103\1\u0128" +
- "\5\103\1\u0129\14\103\1\0\32\103\1\0\7\103\5\0" +
- "\1\103\3\104\5\103\1\104\5\103\1\0\1\103\1\0" +
- "\1\104\2\0\3\104\2\103\1\104\2\103\1\0\1\104" +
- "\13\103\2\104\1\103\2\104\3\103\1\104\5\103\1\0" +
- "\30\103\1\104\1\103\1\0\7\103\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\6\103\1\332\1\103\1\0" +
- "\5\103\1\u012a\2\103\1\u012b\1\103\1\u012c\13\103\1\104" +
- "\3\103\1\0\32\103\1\0\7\103\5\0\13\103\1\104" +
- "\1\103\1\104\1\103\1\0\1\104\1\135\1\103\2\0" +
- "\1\103\1\104\2\103\1\104\1\103\1\104\1\103\1\0" +
- "\2\104\2\103\20\104\1\103\3\104\2\103\1\0\6\103" +
- "\1\104\13\103\1\104\7\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\10\103\1\0\6\103" +
- "\1\u0127\5\103\1\u012d\15\103\1\0\32\103\1\0\7\103" +
- "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\10\103\1\104\21\103\1\0\32\103\1\0\7\103" +
- "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\20\103\1\104\11\103\1\0\32\103\1\0\7\103" +
- "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\6\103" +
- "\1\104\1\103\1\0\6\103\1\u012e\3\103\1\u012f\10\103" +
- "\1\104\1\103\1\u0130\4\103\1\0\32\103\1\0\7\103" +
+ "\2\0\6\21\5\0\17\103\1\0\1\103\1\0\1\103" +
+ "\2\0\10\103\1\0\7\103\1\104\22\103\1\0\32\103" +
+ "\1\0\7\103\5\0\17\103\1\0\1\103\1\0\1\103" +
+ "\2\0\10\103\1\0\1\104\31\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\24\103\1\104\5\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\13\103\1\104\16\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\15\103\1\104\14\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\4\103\1\104\3\103\1\0\17\103\1\104\12\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\10\103\1\0\16\103\1\104\13\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\10\103\1\0\17\103\1\104\12\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\4\103\1\104\3\103\1\0\32\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\10\103\1\0\5\103\1\104\24\103\1\0" +
+ "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
+ "\1\103\2\0\2\103\1\u0132\2\103\1\u0132\2\103\1\0" +
+ "\24\103\1\u0132\3\103\1\340\1\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\7\103\1\210\22\103\1\0\32\103\1\0" +
+ "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
+ "\10\103\1\0\1\210\31\103\1\0\32\103\1\0\7\103" +
"\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\12\103\1\104\17\103\1\0\32\103\1\0\7\103" +
+ "\1\0\24\103\1\210\5\103\1\0\32\103\1\0\7\103" +
+ "\5\0\1\103\3\u0136\5\103\1\u0136\5\103\1\0\1\103" +
+ "\1\0\1\u0136\2\0\3\u0136\2\103\1\u0136\2\103\1\0" +
+ "\1\u0136\13\103\2\u0136\1\103\2\u0136\3\103\1\u0136\3\103" +
+ "\1\340\1\103\1\0\30\103\1\u0136\1\103\1\0\7\103" +
"\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\15\103\1\u012d\14\103\1\0\32\103\1\0\7\103" +
+ "\1\0\13\103\1\210\16\103\1\0\32\103\1\0\7\103" +
"\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\14\103\1\u0130\5\103\1\104\7\103\1\0\32\103" +
+ "\1\0\15\103\1\210\14\103\1\0\32\103\1\0\7\103" +
+ "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\4\103" +
+ "\1\210\3\103\1\0\17\103\1\210\12\103\1\0\32\103" +
"\1\0\7\103\5\0\17\103\1\0\1\103\1\0\1\103" +
- "\2\0\10\103\1\0\1\u0127\7\103\1\104\21\103\1\0" +
- "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
- "\1\103\2\0\10\103\1\0\10\103\1\104\7\103\1\104" +
- "\11\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\2\103\1\u0131\2\103\1\u0131" +
- "\2\103\1\0\24\103\1\u0131\5\103\1\0\32\103\1\0" +
- "\7\103\5\0\17\103\1\0\1\103\1\0\1\341\1\273" +
- "\1\0\2\103\1\341\2\103\1\341\2\103\1\0\24\103" +
- "\1\341\3\103\1\337\1\103\1\0\32\103\1\0\7\103" +
- "\5\0\17\103\1\0\1\103\1\0\1\103\2\0\10\103" +
- "\1\0\1\u0132\6\103\1\u0133\5\103\1\u0134\14\103\1\0" +
- "\32\103\1\0\7\103\5\0\1\103\3\u0135\5\103\1\u0135" +
- "\5\103\1\0\1\103\1\0\1\u0135\2\0\3\u0135\2\103" +
- "\1\u0135\2\103\1\0\1\u0135\13\103\2\u0135\1\103\2\u0135" +
- "\3\103\1\u0135\5\103\1\0\30\103\1\u0135\1\103\1\0" +
- "\7\103\5\0\17\103\1\0\1\103\1\0\1\103\2\0" +
- "\6\103\1\352\1\103\1\0\5\103\1\u0136\2\103\1\u0137" +
- "\1\103\1\u0138\13\103\1\207\3\103\1\0\32\103\1\0" +
- "\7\103\5\0\13\103\1\207\1\103\1\207\1\103\1\0" +
- "\1\207\1\153\1\103\2\0\1\103\1\207\2\103\1\207" +
- "\1\103\1\207\1\103\1\0\2\207\2\103\20\207\1\103" +
- "\3\207\2\103\1\0\6\103\1\207\13\103\1\207\7\103" +
+ "\2\0\10\103\1\0\16\103\1\210\13\103\1\0\32\103" +
"\1\0\7\103\5\0\17\103\1\0\1\103\1\0\1\103" +
- "\2\0\10\103\1\0\6\103\1\u0132\5\103\1\u0139\15\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\10\103\1\207\21\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\20\103\1\207\11\103" +
+ "\2\0\10\103\1\0\11\103\1\210\16\103\1\340\1\103" +
"\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\6\103\1\u013a\1\103\1\0\6\103" +
- "\1\u013b\3\103\1\u013c\10\103\1\207\1\103\1\u013d\4\103" +
+ "\1\0\1\103\2\0\10\103\1\0\17\103\1\210\12\103" +
"\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\12\103\1\207\17\103" +
+ "\1\0\1\103\2\0\4\103\1\210\3\103\1\0\32\103" +
"\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\15\103\1\u0139\14\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\14\103\1\u013d\5\103" +
- "\1\207\7\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\10\103\1\0\1\u0132" +
- "\7\103\1\207\21\103\1\0\32\103\1\0\7\103\5\0" +
- "\17\103\1\0\1\103\1\0\1\103\2\0\10\103\1\0" +
- "\10\103\1\207\7\103\1\207\11\103\1\0\32\103\1\0" +
- "\7\103\16\0\1\u013e\127\0\1\u013f\140\0\1\u0140\135\0" +
- "\1\u0141\5\0\1\u0142\140\0\1\u0143\132\0\1\u0144\130\0" +
- "\1\215\1\u0145\16\215\1\365\117\215\5\0\5\112\1\u0146" +
- "\5\112\2\0\7\112\1\0\7\112\2\0\1\112\2\0" +
- "\1\112\1\0\24\112\32\0\2\112\2\0\6\112\5\0" +
- "\1\u0147\12\112\2\0\7\112\1\0\7\112\2\0\1\112" +
- "\2\0\1\112\1\0\24\112\32\0\2\112\2\0\6\112" +
- "\5\0\1\371\12\112\2\0\7\112\1\0\7\112\2\0" +
+ "\1\0\1\103\2\0\10\103\1\0\5\103\1\210\24\103" +
+ "\1\0\32\103\1\0\7\103\12\0\1\u0157\132\0\1\u0158" +
+ "\137\0\1\u0142\140\0\1\216\141\0\1\216\144\0\1\u0159" +
+ "\132\0\1\u0142\127\0\1\216\1\0\16\216\1\366\117\216" +
+ "\5\0\12\112\1\u015a\2\0\7\112\1\0\7\112\2\0" +
"\1\112\2\0\1\112\1\0\24\112\32\0\2\112\2\0" +
- "\6\112\5\0\1\112\1\215\11\112\2\0\7\112\1\0" +
+ "\6\112\5\0\4\112\1\373\6\112\2\0\7\112\1\0" +
"\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
- "\2\112\2\0\6\112\5\0\3\112\1\215\7\112\2\0" +
+ "\2\112\2\0\6\112\5\0\7\112\1\216\3\112\2\0" +
"\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
- "\24\112\32\0\2\112\2\0\6\112\5\0\10\112\1\u0148" +
- "\2\112\2\0\7\112\1\0\7\112\2\0\1\112\2\0" +
- "\1\112\1\0\24\112\32\0\2\112\2\0\6\112\5\0" +
- "\3\112\1\371\7\112\2\0\7\112\1\0\7\112\2\0" +
- "\1\112\2\0\1\112\1\0\24\112\32\0\2\112\2\0" +
- "\6\112\4\0\1\116\13\21\2\0\7\21\1\0\3\21" +
- "\1\u0149\3\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\6\21\4\0\1\116\13\21\2\0" +
- "\7\21\1\0\1\u014a\6\21\2\0\1\21\2\0\1\21" +
- "\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
- "\7\21\1\u014b\3\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\6\21\4\0\1\116\1\u014c\12\21\2\0\7\21\1\0" +
- "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\6\21\4\0\1\116\12\21\1\u014d\2\0" +
+ "\24\112\32\0\2\112\2\0\6\112\4\0\1\116\5\21" +
+ "\1\u015b\1\21\1\u015c\3\21\2\0\7\21\1\0\7\21" +
+ "\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
+ "\2\0\6\21\4\0\1\116\4\21\1\u015d\6\21\2\0" +
"\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
"\24\21\32\0\2\21\2\0\6\21\4\0\1\116\13\21" +
- "\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\u014e" +
+ "\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
+ "\1\0\24\21\32\0\2\21\2\0\1\u015e\5\21\4\0" +
+ "\1\116\13\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\2\0\1\21\1\0\24\21\32\0\1\21\1\u015f\2\0" +
+ "\6\21\4\0\1\116\5\21\1\u0160\5\21\2\0\7\21" +
+ "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
+ "\32\0\2\21\2\0\6\21\4\0\1\116\1\u0161\12\21" +
+ "\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
"\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
"\13\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\1\21\1\u014f" +
- "\4\21\4\0\1\116\6\21\1\u0150\4\21\2\0\7\21" +
- "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\6\21\5\0\1\u0151\204\0\1\135" +
- "\130\0\1\135\163\0\1\135\126\0\1\135\141\0\1\135" +
- "\115\0\1\135\23\0\1\135\136\0\1\135\140\0\1\135" +
- "\113\0\1\135\151\0\1\135\70\0\1\u0113\1\0\1\u0113" +
- "\36\0\1\u0113\75\0\1\u0114\2\u0152\135\u0114\1\264\1\u0113" +
- "\1\0\1\u0115\36\264\1\u0115\75\264\34\0\1\u0116\2\0" +
- "\1\u0116\27\0\1\u0116\3\0\1\271\116\0\1\153\130\0" +
- "\1\153\163\0\1\153\56\0\3\u011a\5\0\1\u011a\10\0" +
- "\1\u011a\2\0\3\u011a\2\0\1\u011a\3\0\1\u011a\13\0" +
- "\2\u011a\1\0\2\u011a\3\0\1\u011a\3\0\1\271\32\0" +
- "\1\u011a\67\0\1\153\141\0\1\153\115\0\1\153\23\0" +
- "\1\153\136\0\1\153\132\0\1\153\16\0\1\271\126\0" +
- "\1\153\113\0\1\153\151\0\1\153\73\0\1\116\13\21" +
- "\2\0\7\21\1\0\7\21\1\0\1\u0153\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\5\21\1\u0154\5\21\2\0\7\21\1\0\7\21" +
+ "\1\21\1\0\24\21\32\0\2\21\2\0\2\21\1\u0162" +
+ "\3\21\11\0\1\u0163\127\0\2\u0153\1\u0164\14\0\1\u0165" +
+ "\10\0\1\u0166\10\0\1\u0164\102\0\1\u0167\1\u0168\135\0" +
+ "\1\116\3\21\1\u0169\7\21\2\0\7\21\1\0\7\21" +
"\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\6\21\4\0\1\116\3\21\1\u0155\7\21\2\0" +
- "\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
- "\24\21\32\0\2\21\2\0\6\21\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\10\103\1\0\7\103\1\104" +
- "\22\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\10\103\1\0\1\104\31\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\24\103\1\104\5\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\13\103\1\104\16\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\15\103\1\104\14\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\4\103\1\104\3\103\1\0\17\103" +
- "\1\104\12\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\10\103\1\0\16\103" +
- "\1\104\13\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\10\103\1\0\17\103" +
- "\1\104\12\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\4\103\1\104\3\103" +
- "\1\0\32\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\10\103\1\0\5\103" +
- "\1\104\24\103\1\0\32\103\1\0\7\103\5\0\17\103" +
- "\1\0\1\103\1\0\1\103\2\0\2\103\1\u0131\2\103" +
- "\1\u0131\2\103\1\0\24\103\1\u0131\3\103\1\337\1\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\7\103\1\207\22\103" +
- "\1\0\32\103\1\0\7\103\5\0\17\103\1\0\1\103" +
- "\1\0\1\103\2\0\10\103\1\0\1\207\31\103\1\0" +
- "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
- "\1\103\2\0\10\103\1\0\24\103\1\207\5\103\1\0" +
- "\32\103\1\0\7\103\5\0\1\103\3\u0135\5\103\1\u0135" +
- "\5\103\1\0\1\103\1\0\1\u0135\2\0\3\u0135\2\103" +
- "\1\u0135\2\103\1\0\1\u0135\13\103\2\u0135\1\103\2\u0135" +
- "\3\103\1\u0135\3\103\1\337\1\103\1\0\30\103\1\u0135" +
- "\1\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
- "\1\103\2\0\10\103\1\0\13\103\1\207\16\103\1\0" +
- "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
- "\1\103\2\0\10\103\1\0\15\103\1\207\14\103\1\0" +
- "\32\103\1\0\7\103\5\0\17\103\1\0\1\103\1\0" +
- "\1\103\2\0\4\103\1\207\3\103\1\0\17\103\1\207" +
- "\12\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\10\103\1\0\16\103\1\207" +
- "\13\103\1\0\32\103\1\0\7\103\5\0\17\103\1\0" +
- "\1\103\1\0\1\103\2\0\10\103\1\0\11\103\1\207" +
- "\16\103\1\337\1\103\1\0\32\103\1\0\7\103\5\0" +
- "\17\103\1\0\1\103\1\0\1\103\2\0\10\103\1\0" +
- "\17\103\1\207\12\103\1\0\32\103\1\0\7\103\5\0" +
- "\17\103\1\0\1\103\1\0\1\103\2\0\4\103\1\207" +
- "\3\103\1\0\32\103\1\0\32\103\1\0\7\103\5\0" +
- "\17\103\1\0\1\103\1\0\1\103\2\0\10\103\1\0" +
- "\5\103\1\207\24\103\1\0\32\103\1\0\7\103\12\0" +
- "\1\u0156\132\0\1\u0157\137\0\1\u0141\140\0\1\215\141\0" +
- "\1\215\144\0\1\u0158\132\0\1\u0141\127\0\1\215\1\0" +
- "\16\215\1\365\117\215\5\0\12\112\1\u0159\2\0\7\112" +
- "\1\0\7\112\2\0\1\112\2\0\1\112\1\0\24\112" +
- "\32\0\2\112\2\0\6\112\5\0\4\112\1\372\6\112" +
- "\2\0\7\112\1\0\7\112\2\0\1\112\2\0\1\112" +
- "\1\0\24\112\32\0\2\112\2\0\6\112\5\0\7\112" +
- "\1\215\3\112\2\0\7\112\1\0\7\112\2\0\1\112" +
- "\2\0\1\112\1\0\24\112\32\0\2\112\2\0\6\112" +
- "\4\0\1\116\5\21\1\u015a\1\21\1\u015b\3\21\2\0" +
+ "\2\0\6\21\17\0\1\u016a\131\0\1\u0143\142\0\1\216" +
+ "\130\0\2\112\1\u016b\10\112\2\0\7\112\1\0\7\112" +
+ "\2\0\1\112\2\0\1\112\1\0\24\112\32\0\2\112" +
+ "\2\0\6\112\4\0\1\116\11\21\1\u016c\1\21\2\0" +
"\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
"\24\21\32\0\2\21\2\0\6\21\4\0\1\116\4\21" +
- "\1\u015c\6\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\1\u016d\6\21\2\0\7\21\1\0\7\21\2\0\1\21" +
"\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
"\4\0\1\116\13\21\2\0\7\21\1\0\7\21\2\0" +
"\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\1\u015d\5\21\4\0\1\116\13\21\2\0\7\21\1\0" +
- "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\1\21\1\u015e\2\0\6\21\4\0\1\116\5\21\1\u015f" +
- "\5\21\2\0\7\21\1\0\7\21\2\0\1\21\2\0" +
- "\1\21\1\0\24\21\32\0\2\21\2\0\6\21\4\0" +
- "\1\116\1\u0160\12\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\2\21\2\0" +
- "\6\21\4\0\1\116\13\21\2\0\7\21\1\0\7\21" +
- "\2\0\1\21\2\0\1\21\1\0\24\21\32\0\2\21" +
- "\2\0\2\21\1\u0161\3\21\11\0\1\u0162\127\0\2\u0152" +
- "\1\u0163\14\0\1\u0164\10\0\1\u0165\10\0\1\u0163\102\0" +
- "\1\u0166\1\u0167\135\0\1\116\3\21\1\u0168\7\21\2\0" +
+ "\1\u016e\5\21\4\0\1\116\4\21\1\u016f\6\21\2\0" +
"\7\21\1\0\7\21\2\0\1\21\2\0\1\21\1\0" +
- "\24\21\32\0\2\21\2\0\6\21\17\0\1\u0169\131\0" +
- "\1\u0142\142\0\1\215\130\0\2\112\1\u016a\10\112\2\0" +
- "\7\112\1\0\7\112\2\0\1\112\2\0\1\112\1\0" +
- "\24\112\32\0\2\112\2\0\6\112\4\0\1\116\11\21" +
- "\1\u016b\1\21\2\0\7\21\1\0\7\21\2\0\1\21" +
+ "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\3\21" +
+ "\1\u0170\7\21\2\0\7\21\1\0\7\21\2\0\1\21" +
"\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\4\21\1\u016c\6\21\2\0\7\21\1\0" +
+ "\122\0\1\u0171\16\0\1\u0164\1\0\1\u0164\14\0\1\u0165" +
+ "\10\0\1\u0166\10\0\1\u0164\223\0\1\u0172\42\0\1\u0173" +
+ "\117\0\1\u0174\160\0\1\u0175\114\0\1\u0176\135\0\3\112" +
+ "\1\u0177\7\112\2\0\7\112\1\0\7\112\2\0\1\112" +
+ "\2\0\1\112\1\0\24\112\32\0\2\112\2\0\6\112" +
+ "\4\0\1\116\3\21\1\u0178\7\21\2\0\7\21\1\0" +
"\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
"\2\21\2\0\6\21\4\0\1\116\13\21\2\0\7\21" +
- "\1\0\7\21\2\0\1\21\2\0\1\21\1\0\24\21" +
- "\32\0\2\21\2\0\1\u016d\5\21\4\0\1\116\4\21" +
- "\1\u016e\6\21\2\0\7\21\1\0\7\21\2\0\1\21" +
- "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\3\21\1\u016f\7\21\2\0\7\21\1\0" +
- "\7\21\2\0\1\21\2\0\1\21\1\0\24\21\32\0" +
- "\2\21\2\0\6\21\122\0\1\u0170\16\0\1\u0163\1\0" +
- "\1\u0163\14\0\1\u0164\10\0\1\u0165\10\0\1\u0163\223\0" +
- "\1\u0171\42\0\1\u0172\117\0\1\u0173\160\0\1\u0174\114\0" +
- "\1\u0175\135\0\3\112\1\u0176\7\112\2\0\7\112\1\0" +
- "\7\112\2\0\1\112\2\0\1\112\1\0\24\112\32\0" +
- "\2\112\2\0\6\112\4\0\1\116\3\21\1\u0177\7\21" +
+ "\1\0\7\21\1\0\1\u0179\1\21\2\0\1\21\1\0" +
+ "\24\21\32\0\2\21\2\0\6\21\4\0\1\116\13\21" +
"\2\0\7\21\1\0\7\21\2\0\1\21\2\0\1\21" +
- "\1\0\24\21\32\0\2\21\2\0\6\21\4\0\1\116" +
- "\13\21\2\0\7\21\1\0\7\21\1\0\1\u0178\1\21" +
- "\2\0\1\21\1\0\24\21\32\0\2\21\2\0\6\21" +
- "\4\0\1\116\13\21\2\0\7\21\1\0\7\21\2\0" +
- "\1\21\2\0\1\21\1\0\24\21\32\0\1\21\1\u0179" +
- "\2\0\6\21\16\0\1\u017a\131\0\1\u017b\127\0\1\u0114" +
- "\1\u017c\1\u0152\1\u017d\1\0\34\u0114\1\0\1\u017d\2\u0114" +
- "\1\0\26\u0114\1\0\1\u0114\1\0\1\u0114\5\0\33\u0114" +
- "\13\0\1\u017e\261\0\1\u017f\12\0\1\u0176\127\0\1\215" +
- "\1\u0180\1\0\1\u0176\14\215\1\365\1\u0181\20\215\1\u0176" +
- "\75\215\5\0\1\u0182\2\0\1\u0183\144\0\1\u0184\251\0" +
- "\1\u0185\11\0\1\u017c\1\u0152\1\u017c\14\0\1\u0164\10\0" +
- "\1\u0165\10\0\1\u017c\75\0\1\u0114\1\u017c\1\u0152\1\u017d" +
- "\36\u0114\1\u017d\75\u0114\132\0\1\u0186\12\0\1\u0187\133\0" +
- "\1\u0180\1\0\1\u0180\15\0\1\u0188\20\0\1\u0180\75\0" +
- "\1\215\2\0\2\215\13\u0189\1\365\1\215\7\u0189\1\215" +
- "\10\u0189\1\215\1\u0189\2\215\1\u0189\1\215\23\u0189\4\215" +
- "\1\u0189\26\215\2\u0189\2\215\6\u0189\135\0\1\u018a\37\0" +
- "\1\u018b\111\0\1\u018c\135\0\1\u018d\164\0\1\u018e\117\0" +
- "\1\u018f\132\0\13\u0190\2\0\7\u0190\1\0\10\u0190\1\0" +
- "\1\u0190\2\0\1\u0190\1\0\23\u0190\4\0\1\u0190\26\0" +
- "\2\u0190\2\0\6\u0190\1\215\2\0\2\215\13\u0189\1\365" +
- "\1\u0191\7\u0189\1\215\10\u0189\1\215\1\u0189\2\215\1\u0189" +
- "\1\215\23\u0189\4\215\1\u0189\26\215\2\u0189\2\215\6\u0189" +
- "\134\0\1\u0192\137\0\1\u0193\13\0\1\u0194\140\0\1\u0195" +
- "\137\0\1\u0196\261\0\1\u0197\11\0\13\u0190\1\0\1\u0198" +
- "\7\u0190\1\0\10\u0190\1\0\1\u0190\2\0\1\u0190\1\0" +
- "\23\u0190\4\0\1\u0190\26\0\2\u0190\2\0\6\u0190\15\0" +
- "\1\u0199\137\0\1\u019a\245\0\1\u019b\136\0\1\u019c\33\0" +
- "\1\u019d\135\0\1\u019e\137\0\1\u019f\141\0\1\u01a0\131\0" +
- "\1\u01a1\261\0\1\u01a2\137\0\1\u01a3\22\0\1\u01a4\131\0" +
- "\1\u01a5\140\0\1\u01a6\252\0\1\u01a7\15\0\2\u0152\135\0";
+ "\1\0\24\21\32\0\1\21\1\u017a\2\0\6\21\16\0" +
+ "\1\u017b\131\0\1\u017c\127\0\1\u0115\1\u017d\1\u0153\1\u017e" +
+ "\1\0\34\u0115\1\0\1\u017e\2\u0115\1\0\26\u0115\1\0" +
+ "\1\u0115\1\0\1\u0115\5\0\33\u0115\13\0\1\u017f\261\0" +
+ "\1\u0180\12\0\1\u0177\127\0\1\216\1\u0181\1\0\1\u0177" +
+ "\14\216\1\366\1\u0182\20\216\1\u0177\75\216\5\0\1\u0183" +
+ "\2\0\1\u0184\144\0\1\u0185\251\0\1\u0186\11\0\1\u017d" +
+ "\1\u0153\1\u017d\14\0\1\u0165\10\0\1\u0166\10\0\1\u017d" +
+ "\75\0\1\u0115\1\u017d\1\u0153\1\u017e\36\u0115\1\u017e\75\u0115" +
+ "\132\0\1\u0187\12\0\1\u0188\133\0\1\u0181\1\0\1\u0181" +
+ "\15\0\1\u0189\20\0\1\u0181\75\0\1\216\2\0\2\216" +
+ "\13\u018a\1\366\1\216\7\u018a\1\216\10\u018a\1\216\1\u018a" +
+ "\2\216\1\u018a\1\216\23\u018a\4\216\1\u018a\26\216\2\u018a" +
+ "\2\216\6\u018a\135\0\1\u018b\37\0\1\u018c\111\0\1\u018d" +
+ "\135\0\1\u018e\164\0\1\u018f\117\0\1\u0190\132\0\13\u0191" +
+ "\2\0\7\u0191\1\0\10\u0191\1\0\1\u0191\2\0\1\u0191" +
+ "\1\0\23\u0191\4\0\1\u0191\26\0\2\u0191\2\0\6\u0191" +
+ "\1\216\2\0\2\216\13\u018a\1\366\1\u0192\7\u018a\1\216" +
+ "\10\u018a\1\216\1\u018a\2\216\1\u018a\1\216\23\u018a\4\216" +
+ "\1\u018a\26\216\2\u018a\2\216\6\u018a\134\0\1\u0193\137\0" +
+ "\1\u0194\13\0\1\u0195\140\0\1\u0196\137\0\1\u0197\261\0" +
+ "\1\u0198\11\0\13\u0191\1\0\1\u0199\7\u0191\1\0\10\u0191" +
+ "\1\0\1\u0191\2\0\1\u0191\1\0\23\u0191\4\0\1\u0191" +
+ "\26\0\2\u0191\2\0\6\u0191\15\0\1\u019a\137\0\1\u019b" +
+ "\245\0\1\u019c\136\0\1\u019d\33\0\1\u019e\135\0\1\u019f" +
+ "\137\0\1\u01a0\141\0\1\u01a1\131\0\1\u01a2\261\0\1\u01a3" +
+ "\137\0\1\u01a4\22\0\1\u01a5\131\0\1\u01a6\140\0\1\u01a7" +
+ "\252\0\1\u01a8\15\0\2\u0153\135\0";
private static int[] zzUnpackTrans() {
- int[] result = new int[33792];
+ int[] result = new int[33888];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
@@ -816,16 +823,16 @@ private static int zzUnpackTrans(String packed, int offset, int[] result) {
"\5\1\1\11\5\1\1\11\2\1\1\0\5\1\1\11" +
"\15\1\2\0\1\11\1\0\2\1\1\11\4\0\1\1" +
"\5\0\3\1\3\0\1\1\1\0\5\1\5\11\3\0" +
- "\1\1\2\0\4\1\4\0\23\1\20\0\2\1\1\0" +
- "\6\1\1\11\20\0\2\11\4\1\1\11\36\1\6\0" +
- "\23\1\13\0\3\1\15\0\33\1\7\0\14\1\3\0" +
- "\2\1\3\0\11\1\6\0\1\1\1\0\6\1\2\0" +
- "\1\1\3\0\2\1\1\0\1\1\2\0\2\1\3\0" +
- "\1\1\7\0\1\1\7\0\1\1\5\0\2\11\2\0" +
- "\1\11\5\0\3\11\3\0\1\1";
+ "\1\1\1\0\1\1\1\0\4\1\4\0\23\1\20\0" +
+ "\2\1\1\0\6\1\1\11\20\0\2\11\4\1\1\11" +
+ "\36\1\6\0\23\1\13\0\3\1\15\0\33\1\7\0" +
+ "\14\1\3\0\2\1\3\0\11\1\6\0\1\1\1\0" +
+ "\6\1\2\0\1\1\3\0\2\1\1\0\1\1\2\0" +
+ "\2\1\3\0\1\1\7\0\1\1\7\0\1\1\5\0" +
+ "\2\11\2\0\1\11\5\0\3\11\3\0\1\1";
private static int[] zzUnpackAttribute() {
- int[] result = new int[423];
+ int[] result = new int[424];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
@@ -843,30 +850,46 @@ private static int zzUnpackAttribute(String packed, int offset, int[] result) {
return j;
}
- /** the input device */
+ /**
+ * the input device
+ */
private java.io.Reader zzReader;
- /** the current state of the DFA */
+ /**
+ * the current state of the DFA
+ */
private int zzState;
- /** the current lexical state */
+ /**
+ * the current lexical state
+ */
private int zzLexicalState = YYINITIAL;
- /** this buffer contains the current text to be matched and is
- the source of the yytext() string */
+ /**
+ * this buffer contains the current text to be matched and is
+ * the source of the yytext() string
+ */
private CharSequence zzBuffer = "";
- /** the textposition at the last accepting state */
+ /**
+ * the textposition at the last accepting state
+ */
private int zzMarkedPos;
- /** the current text position in the buffer */
+ /**
+ * the current text position in the buffer
+ */
private int zzCurrentPos;
- /** startRead marks the beginning of the yytext() string in the buffer */
+ /**
+ * startRead marks the beginning of the yytext() string in the buffer
+ */
private int zzStartRead;
- /** endRead marks the last character in the buffer, that has been read
- from input */
+ /**
+ * endRead marks the last character in the buffer, that has been read
+ * from input
+ */
private int zzEndRead;
/**
@@ -874,10 +897,14 @@ the source of the yytext() string */
*/
private boolean zzAtBOL = true;
- /** zzAtEOF == true <=> the scanner is at the EOF */
+ /**
+ * zzAtEOF == true <=> the scanner is at the EOF
+ */
private boolean zzAtEOF;
- /** denotes if the user-EOF-code has already been executed */
+ /**
+ * denotes if the user-EOF-code has already been executed
+ */
private boolean zzEOFDone;
/* user code: */
@@ -901,7 +928,7 @@ public _HaskellLexer() {
/**
* Creates a new scanner
*
- * @param in the java.io.Reader to read input from.
+ * @param in the java.io.Reader to read input from.
*/
public _HaskellLexer(java.io.Reader in) {
this.zzReader = in;
@@ -911,7 +938,7 @@ public _HaskellLexer(java.io.Reader in) {
/**
* Unpacks the compressed character translation table.
*
- * @param packed the packed character translation table
+ * @param packed the packed character translation table
* @return the unpacked character translation table
*/
private static char[] zzUnpackCMap(String packed) {
@@ -950,89 +977,87 @@ public void reset(CharSequence buffer, int start, int end, int initialState) {
/**
* Refills the input buffer.
*
- * @return {@code false}, iff there was new input.
+ * @return {@code false}, iff there was new input.
+ * @throws java.io.IOException if any I/O-Error occurs
+ */
+ private boolean zzRefill() throws java.io.IOException {
+ return true;
+ }
+
+
+ /**
+ * Returns the current lexical state.
+ */
+ public final int yystate() {
+ return zzLexicalState;
+ }
+
+
+ /**
+ * Enters a new lexical state
*
- * @exception java.io.IOException if any I/O-Error occurs
+ * @param newState the new lexical state
*/
- private boolean zzRefill() throws java.io.IOException {
- return true;
- }
-
-
- /**
- * Returns the current lexical state.
- */
- public final int yystate() {
- return zzLexicalState;
- }
-
-
- /**
- * Enters a new lexical state
- *
- * @param newState the new lexical state
- */
- public final void yybegin(int newState) {
- zzLexicalState = newState;
- }
-
-
- /**
- * Returns the text matched by the current regular expression.
- */
- public final CharSequence yytext() {
- return zzBuffer.subSequence(zzStartRead, zzMarkedPos);
- }
-
-
- /**
- * Returns the character at position {@code pos} from the
- * matched text.
- *
- * It is equivalent to yytext().charAt(pos), but faster
- *
- * @param pos the position of the character to fetch.
- * A value from 0 to yylength()-1.
- *
- * @return the character at position pos
- */
- public final char yycharat(int pos) {
- return zzBuffer.charAt(zzStartRead+pos);
- }
-
-
- /**
- * Returns the length of the matched text region.
- */
- public final int yylength() {
- return zzMarkedPos-zzStartRead;
- }
-
-
- /**
- * Reports an error that occurred while scanning.
- *
- * In a wellformed scanner (no or only correct usage of
- * yypushback(int) and a match-all fallback rule) this method
- * will only be called with things that "Can't Possibly Happen".
- * If this method is called, something is seriously wrong
- * (e.g. a JFlex bug producing a faulty scanner etc.).
- *
- * Usual syntax/scanner level error handling should be done
- * in error fallback rules.
- *
- * @param errorCode the code of the errormessage to display
- */
- private void zzScanError(int errorCode) {
- String message;
- try {
- message = ZZ_ERROR_MSG[errorCode];
- } catch (ArrayIndexOutOfBoundsException e) {
- message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
- }
-
- throw new Error(message);
- }
+ public final void yybegin(int newState) {
+ zzLexicalState = newState;
+ }
+
+
+ /**
+ * Returns the text matched by the current regular expression.
+ */
+ public final CharSequence yytext() {
+ return zzBuffer.subSequence(zzStartRead, zzMarkedPos);
+ }
+
+
+ /**
+ * Returns the character at position {@code pos} from the
+ * matched text.
+ *
+ * It is equivalent to yytext().charAt(pos), but faster
+ *
+ * @param pos the position of the character to fetch.
+ * A value from 0 to yylength()-1.
+ * @return the character at position pos
+ */
+ public final char yycharat(int pos) {
+ return zzBuffer.charAt(zzStartRead + pos);
+ }
+
+
+ /**
+ * Returns the length of the matched text region.
+ */
+ public final int yylength() {
+ return zzMarkedPos - zzStartRead;
+ }
+
+
+ /**
+ * Reports an error that occurred while scanning.
+ *
+ * In a wellformed scanner (no or only correct usage of
+ * yypushback(int) and a match-all fallback rule) this method
+ * will only be called with things that "Can't Possibly Happen".
+ * If this method is called, something is seriously wrong
+ * (e.g. a JFlex bug producing a faulty scanner etc.).
+ *
+ * Usual syntax/scanner level error handling should be done
+ * in error fallback rules.
+ *
+ * @param errorCode the code of the errormessage to display
+ */
+ private void zzScanError(int errorCode) {
+ String message;
+ try {
+ message = ZZ_ERROR_MSG[errorCode];
+ } catch (ArrayIndexOutOfBoundsException e) {
+ message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
+ }
+
+ throw new Error(message);
+ }
/**
@@ -1141,27 +1166,27 @@ public IElementType advance() throws java.io.IOException {
zzStartRead = commentStart;
return HS_NOT_TERMINATED_COMMENT;
} // fall though
- case 424:
+ case 425:
break;
case NHADDOCK: {
yybegin(YYINITIAL);
zzStartRead = haddockStart;
return HS_NOT_TERMINATED_COMMENT;
} // fall though
- case 425:
+ case 426:
break;
case QQ: {
yybegin(YYINITIAL);
zzStartRead = qqStart;
return HS_NOT_TERMINATED_QQ_EXPRESSION;
} // fall though
- case 426:
+ case 427:
break;
case OPTIONS_GHC: {
yybegin(YYINITIAL);
return com.intellij.psi.TokenType.BAD_CHARACTER;
} // fall though
- case 427:
+ case 428:
break;
default:
return null;
diff --git a/gen/intellij/haskell/parser/HaskellParser.java b/gen/intellij/haskell/parser/HaskellParser.java
index 6df84b3e9..211f00cf5 100644
--- a/gen/intellij/haskell/parser/HaskellParser.java
+++ b/gen/intellij/haskell/parser/HaskellParser.java
@@ -7,6 +7,7 @@
import com.intellij.lang.PsiBuilder.Marker;
import com.intellij.lang.PsiParser;
import com.intellij.psi.tree.IElementType;
+import com.intellij.psi.tree.TokenSet;
import static intellij.haskell.psi.HaskellParserUtil.*;
import static intellij.haskell.psi.HaskellTypes.*;
@@ -21,7 +22,7 @@ public ASTNode parse(IElementType t, PsiBuilder b) {
public void parseLight(IElementType t, PsiBuilder b) {
boolean r;
- b = adapt_builder_(t, b, this, null);
+ b = adapt_builder_(t, b, this, EXTENDS_SETS_);
Marker m = enter_section_(b, 0, _COLLAPSE_, null);
r = parse_root_(t, b);
exit_section_(b, 0, m, t, r, true, TRUE_CONDITION);
@@ -35,6 +36,65 @@ static boolean parse_root_(IElementType t, PsiBuilder b, int l) {
return program(b, l + 1);
}
+ public static final TokenSet[] EXTENDS_SETS_ = new TokenSet[]{
+ create_token_set_(HS_APPLICATION_EXPRESSION, HS_ATOM_EXPRESSION, HS_BRACKET_EXPRESSION, HS_CASE_OF_EXPRESSION,
+ HS_DO_NOTATION_EXPRESSION, HS_EXPRESSION, HS_IF_EXPRESSION, HS_LET_ABSTRACTION,
+ HS_PAREN_EXPRESSION),
+ create_token_set_(HS_CDECL_DATA_DECLARATION, HS_CLASS_DECLARATION, HS_DATA_DECLARATION, HS_DEFAULT_DECLARATION,
+ HS_DERIVING_DECLARATION, HS_FIXITY_DECLARATION, HS_FOREIGN_DECLARATION, HS_IMPLEMENTATION_DECLARATION,
+ HS_IMPORT_DECLARATION, HS_INSTANCE_DECLARATION, HS_MODULE_DECLARATION, HS_NEWTYPE_DECLARATION,
+ HS_TOP_DECLARATION, HS_TYPE_DECLARATION, HS_TYPE_FAMILY_DECLARATION, HS_TYPE_INSTANCE_DECLARATION),
+ };
+
+ /* ********************************************************** */
+ // expression atom+
+ public static boolean application_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "application_expression")) return false;
+ boolean r;
+ Marker m = enter_section_(b, l, _COLLAPSE_, HS_APPLICATION_EXPRESSION, "");
+ r = expression(b, l + 1);
+ r = r && application_expression_1(b, l + 1);
+ exit_section_(b, l, m, r, false, null);
+ return r;
+ }
+
+ // atom+
+ private static boolean application_expression_1(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "application_expression_1")) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = atom(b, l + 1);
+ while (r) {
+ int c = current_position_(b);
+ if (!atom(b, l + 1)) break;
+ if (!empty_element_parsed_guard_(b, "application_expression_1", c)) break;
+ }
+ exit_section_(b, m, null, r);
+ return r;
+ }
+
+ /* ********************************************************** */
+ // atom_expression | bracket_expression | paren_expression
+ static boolean atom(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "atom")) return false;
+ boolean r;
+ r = atom_expression(b, l + 1);
+ if (!r) r = bracket_expression(b, l + 1);
+ if (!r) r = paren_expression(b, l + 1);
+ return r;
+ }
+
+ /* ********************************************************** */
+ // general_id
+ public static boolean atom_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "atom_expression")) return false;
+ boolean r;
+ Marker m = enter_section_(b, l, _NONE_, HS_ATOM_EXPRESSION, "");
+ r = general_id(b, l + 1);
+ exit_section_(b, l, m, r, false, null);
+ return r;
+ }
+
/* ********************************************************** */
// (("forall" | FORALL) onl (((q_name onls)+ LEFT_PAREN onl (type_signature | ttype) onl (COMMA onl (type_signature | ttype))* onl RIGHT_PAREN)+ | onl type_signature | (onls q_name)+) (onl DOUBLE_RIGHT_ARROW onl ttype)? |
// (q_name | UNDERSCORE)* QUOTE? LEFT_PAREN ttype1 RIGHT_PAREN |
@@ -648,6 +708,20 @@ private static boolean body_0(PsiBuilder b, int l) {
return true;
}
+ /* ********************************************************** */
+ // LEFT_BRACKET expression RIGHT_BRACKET
+ public static boolean bracket_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "bracket_expression")) return false;
+ if (!nextTokenIs(b, HS_LEFT_BRACKET)) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = consumeToken(b, HS_LEFT_BRACKET);
+ r = r && expression(b, l + 1);
+ r = r && consumeToken(b, HS_RIGHT_BRACKET);
+ exit_section_(b, m, HS_BRACKET_EXPRESSION, r);
+ return r;
+ }
+
/* ********************************************************** */
// (atype | TILDE | UNDERSCORE)+
static boolean btype(PsiBuilder b, int l) {
@@ -674,6 +748,75 @@ private static boolean btype_0(PsiBuilder b, int l) {
return r;
}
+ /* ********************************************************** */
+ // expression RIGHT_ARROW expression
+ public static boolean case_clause(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_clause")) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_CASE_CLAUSE, "");
+ r = expression(b, l + 1);
+ r = r && consumeToken(b, HS_RIGHT_ARROW);
+ p = r; // pin = 2
+ r = r && expression(b, l + 1);
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ /* ********************************************************** */
+ // case_clause SEMICOLON
+ static boolean case_definition(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_definition")) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = case_clause(b, l + 1);
+ r = r && consumeToken(b, HS_SEMICOLON);
+ exit_section_(b, m, null, r);
+ return r;
+ }
+
+ /* ********************************************************** */
+ // CASE expression OF LEFT_BRACE case_definition* case_clause? RIGHT_BRACE?
+ public static boolean case_of_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_of_expression")) return false;
+ if (!nextTokenIs(b, HS_CASE)) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_CASE_OF_EXPRESSION, null);
+ r = consumeToken(b, HS_CASE);
+ p = r; // pin = 1
+ r = r && report_error_(b, expression(b, l + 1));
+ r = p && report_error_(b, consumeTokens(b, -1, HS_OF, HS_LEFT_BRACE)) && r;
+ r = p && report_error_(b, case_of_expression_4(b, l + 1)) && r;
+ r = p && report_error_(b, case_of_expression_5(b, l + 1)) && r;
+ r = p && case_of_expression_6(b, l + 1) && r;
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ // case_definition*
+ private static boolean case_of_expression_4(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_of_expression_4")) return false;
+ while (true) {
+ int c = current_position_(b);
+ if (!case_definition(b, l + 1)) break;
+ if (!empty_element_parsed_guard_(b, "case_of_expression_4", c)) break;
+ }
+ return true;
+ }
+
+ // case_clause?
+ private static boolean case_of_expression_5(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_of_expression_5")) return false;
+ case_clause(b, l + 1);
+ return true;
+ }
+
+ // RIGHT_BRACE?
+ private static boolean case_of_expression_6(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "case_of_expression_6")) return false;
+ consumeToken(b, HS_RIGHT_BRACE);
+ return true;
+ }
+
/* ********************************************************** */
// LEFT_PAREN onls clazz (onls COMMA onls clazz)* onls RIGHT_PAREN |
// clazz
@@ -894,7 +1037,8 @@ private static boolean cdecls_1_0(PsiBuilder b, int l) {
/* ********************************************************** */
// pragma | instance_declaration | default_declaration |
- // newtype_declaration | data_declaration | type_declaration | type_family_declaration | line_expression
+ // newtype_declaration | data_declaration | type_declaration | type_family_declaration
+ // | line_expression | implementation_declaration
public static boolean cidecl(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "cidecl")) return false;
boolean r;
@@ -907,6 +1051,7 @@ public static boolean cidecl(PsiBuilder b, int l) {
if (!r) r = type_declaration(b, l + 1);
if (!r) r = type_family_declaration(b, l + 1);
if (!r) r = line_expression(b, l + 1);
+ if (!r) r = implementation_declaration(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
@@ -2372,6 +2517,59 @@ public static boolean deriving_via(PsiBuilder b, int l) {
return r;
}
+ /* ********************************************************** */
+ // expression SEMICOLON
+ static boolean do_definition(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "do_definition")) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = expression(b, l + 1);
+ r = r && consumeToken(b, HS_SEMICOLON);
+ exit_section_(b, m, null, r);
+ return r;
+ }
+
+ /* ********************************************************** */
+ // DO LEFT_BRACE do_definition* expression? RIGHT_BRACE?
+ public static boolean do_notation_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "do_notation_expression")) return false;
+ if (!nextTokenIs(b, HS_DO)) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_DO_NOTATION_EXPRESSION, null);
+ r = consumeTokens(b, 1, HS_DO, HS_LEFT_BRACE);
+ p = r; // pin = 1
+ r = r && report_error_(b, do_notation_expression_2(b, l + 1));
+ r = p && report_error_(b, do_notation_expression_3(b, l + 1)) && r;
+ r = p && do_notation_expression_4(b, l + 1) && r;
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ // do_definition*
+ private static boolean do_notation_expression_2(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "do_notation_expression_2")) return false;
+ while (true) {
+ int c = current_position_(b);
+ if (!do_definition(b, l + 1)) break;
+ if (!empty_element_parsed_guard_(b, "do_notation_expression_2", c)) break;
+ }
+ return true;
+ }
+
+ // expression?
+ private static boolean do_notation_expression_3(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "do_notation_expression_3")) return false;
+ expression(b, l + 1);
+ return true;
+ }
+
+ // RIGHT_BRACE?
+ private static boolean do_notation_expression_4(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "do_notation_expression_4")) return false;
+ consumeToken(b, HS_RIGHT_BRACE);
+ return true;
+ }
+
/* ********************************************************** */
// DOT DOT
public static boolean dot_dot(PsiBuilder b, int l) {
@@ -2596,31 +2794,47 @@ private static boolean exports_0_2_0(PsiBuilder b, int l) {
}
/* ********************************************************** */
- // line_expression (nls line_expression)*
+ // let_abstraction | do_notation_expression | if_expression | application_expression | case_of_expression | atom | line_expression (nls line_expression)*
public static boolean expression(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "expression")) return false;
boolean r;
- Marker m = enter_section_(b, l, _NONE_, HS_EXPRESSION, "");
- r = line_expression(b, l + 1);
- r = r && expression_1(b, l + 1);
+ Marker m = enter_section_(b, l, _COLLAPSE_, HS_EXPRESSION, "");
+ r = let_abstraction(b, l + 1);
+ if (!r) r = do_notation_expression(b, l + 1);
+ if (!r) r = if_expression(b, l + 1);
+ if (!r) r = application_expression(b, l + 1);
+ if (!r) r = case_of_expression(b, l + 1);
+ if (!r) r = atom(b, l + 1);
+ if (!r) r = expression_6(b, l + 1);
exit_section_(b, l, m, r, false, null);
return r;
}
+ // line_expression (nls line_expression)*
+ private static boolean expression_6(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "expression_6")) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = line_expression(b, l + 1);
+ r = r && expression_6_1(b, l + 1);
+ exit_section_(b, m, null, r);
+ return r;
+ }
+
// (nls line_expression)*
- private static boolean expression_1(PsiBuilder b, int l) {
- if (!recursion_guard_(b, l, "expression_1")) return false;
+ private static boolean expression_6_1(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "expression_6_1")) return false;
while (true) {
int c = current_position_(b);
- if (!expression_1_0(b, l + 1)) break;
- if (!empty_element_parsed_guard_(b, "expression_1", c)) break;
+ if (!expression_6_1_0(b, l + 1)) break;
+ if (!empty_element_parsed_guard_(b, "expression_6_1", c)) break;
}
return true;
}
// nls line_expression
- private static boolean expression_1_0(PsiBuilder b, int l) {
- if (!recursion_guard_(b, l, "expression_1_0")) return false;
+ private static boolean expression_6_1_0(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "expression_6_1_0")) return false;
boolean r;
Marker m = enter_section_(b);
r = nls(b, l + 1);
@@ -3001,6 +3215,38 @@ private static boolean gtycon_4_2(PsiBuilder b, int l) {
return true;
}
+ /* ********************************************************** */
+ // IF expression THEN expression ELSE expression
+ public static boolean if_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "if_expression")) return false;
+ if (!nextTokenIs(b, HS_IF)) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_IF_EXPRESSION, null);
+ r = consumeToken(b, HS_IF);
+ p = r; // pin = 1
+ r = r && report_error_(b, expression(b, l + 1));
+ r = p && report_error_(b, consumeToken(b, HS_THEN)) && r;
+ r = p && report_error_(b, expression(b, l + 1)) && r;
+ r = p && report_error_(b, consumeToken(b, HS_ELSE)) && r;
+ r = p && expression(b, l + 1) && r;
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ /* ********************************************************** */
+ // expression EQUAL expression
+ public static boolean implementation_declaration(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "implementation_declaration")) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_IMPLEMENTATION_DECLARATION, "");
+ r = expression(b, l + 1);
+ r = r && consumeToken(b, HS_EQUAL);
+ p = r; // pin = 2
+ r = r && expression(b, l + 1);
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
/* ********************************************************** */
// IMPORT (onls pragma)? (onls import_qualified)? (onls import_package_name)? onls modid (onls import_qualified_as)? (onls import_spec)? NEWLINE?
public static boolean import_declaration(PsiBuilder b, int l) {
@@ -4185,6 +4431,61 @@ public static boolean kind_signature(PsiBuilder b, int l) {
return r;
}
+ /* ********************************************************** */
+ // LET LEFT_BRACE let_definition* cdecl? RIGHT_BRACE? semi IN expression
+ public static boolean let_abstraction(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "let_abstraction")) return false;
+ if (!nextTokenIs(b, HS_LET)) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_LET_ABSTRACTION, null);
+ r = consumeTokens(b, 1, HS_LET, HS_LEFT_BRACE);
+ p = r; // pin = 1
+ r = r && report_error_(b, let_abstraction_2(b, l + 1));
+ r = p && report_error_(b, let_abstraction_3(b, l + 1)) && r;
+ r = p && report_error_(b, let_abstraction_4(b, l + 1)) && r;
+ r = p && report_error_(b, consumeTokens(b, -1, HS_SEMI, HS_IN)) && r;
+ r = p && expression(b, l + 1) && r;
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ // let_definition*
+ private static boolean let_abstraction_2(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "let_abstraction_2")) return false;
+ while (true) {
+ int c = current_position_(b);
+ if (!let_definition(b, l + 1)) break;
+ if (!empty_element_parsed_guard_(b, "let_abstraction_2", c)) break;
+ }
+ return true;
+ }
+
+ // cdecl?
+ private static boolean let_abstraction_3(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "let_abstraction_3")) return false;
+ cdecl(b, l + 1);
+ return true;
+ }
+
+ // RIGHT_BRACE?
+ private static boolean let_abstraction_4(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "let_abstraction_4")) return false;
+ consumeToken(b, HS_RIGHT_BRACE);
+ return true;
+ }
+
+ /* ********************************************************** */
+ // cdecl SEMICOLON
+ static boolean let_definition(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "let_definition")) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = cdecl(b, l + 1);
+ r = r && consumeToken(b, HS_SEMICOLON);
+ exit_section_(b, m, null, r);
+ return r;
+ }
+
/* ********************************************************** */
// (general_id | LIST_COMPREHENSION)+ | NOT_TERMINATED_QQ_EXPRESSION
static boolean line_expression(PsiBuilder b, int l) {
@@ -4329,7 +4630,7 @@ private static boolean module_body_1(PsiBuilder b, int l) {
}
/* ********************************************************** */
- // MODULE modid onl pragma? onl (exports onl)? WHERE
+ // MODULE modid onl pragma? onl (exports onl)? where_clause
public static boolean module_declaration(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "module_declaration")) return false;
if (!nextTokenIs(b, HS_MODULE)) return false;
@@ -4341,7 +4642,7 @@ public static boolean module_declaration(PsiBuilder b, int l) {
r = r && module_declaration_3(b, l + 1);
r = r && onl(b, l + 1);
r = r && module_declaration_5(b, l + 1);
- r = r && consumeToken(b, HS_WHERE);
+ r = r && where_clause(b, l + 1);
exit_section_(b, m, HS_MODULE_DECLARATION, r);
return r;
}
@@ -4817,6 +5118,20 @@ private static boolean oonls_0_1_2(PsiBuilder b, int l) {
return r;
}
+ /* ********************************************************** */
+ // LEFT_PAREN expression RIGHT_PAREN
+ public static boolean paren_expression(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "paren_expression")) return false;
+ if (!nextTokenIs(b, HS_LEFT_PAREN)) return false;
+ boolean r;
+ Marker m = enter_section_(b);
+ r = consumeToken(b, HS_LEFT_PAREN);
+ r = r && expression(b, l + 1);
+ r = r && consumeToken(b, HS_RIGHT_PAREN);
+ exit_section_(b, m, HS_PAREN_EXPRESSION, r);
+ return r;
+ }
+
/* ********************************************************** */
// PRAGMA_START general_pragma_content* PRAGMA_END NEWLINE?
public static boolean pragma(PsiBuilder b, int l) {
@@ -5679,11 +5994,11 @@ public static boolean text_literal(PsiBuilder b, int l) {
/* ********************************************************** */
// (type_declaration | data_declaration | newtype_declaration | class_declaration | instance_declaration | default_declaration |
// foreign_declaration | type_family_declaration | deriving_declaration | type_instance_declaration | type_signature |
- // pragma | fixity_declaration | expression | DIRECTIVE) SEMICOLON? NEWLINE?
+ // pragma | fixity_declaration | expression | DIRECTIVE | implementation_declaration) SEMICOLON? NEWLINE?
public static boolean top_declaration(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "top_declaration")) return false;
boolean r;
- Marker m = enter_section_(b, l, _NONE_, HS_TOP_DECLARATION, "");
+ Marker m = enter_section_(b, l, _COLLAPSE_, HS_TOP_DECLARATION, "");
r = top_declaration_0(b, l + 1);
r = r && top_declaration_1(b, l + 1);
r = r && top_declaration_2(b, l + 1);
@@ -5693,7 +6008,7 @@ public static boolean top_declaration(PsiBuilder b, int l) {
// type_declaration | data_declaration | newtype_declaration | class_declaration | instance_declaration | default_declaration |
// foreign_declaration | type_family_declaration | deriving_declaration | type_instance_declaration | type_signature |
- // pragma | fixity_declaration | expression | DIRECTIVE
+ // pragma | fixity_declaration | expression | DIRECTIVE | implementation_declaration
private static boolean top_declaration_0(PsiBuilder b, int l) {
if (!recursion_guard_(b, l, "top_declaration_0")) return false;
boolean r;
@@ -5712,6 +6027,7 @@ private static boolean top_declaration_0(PsiBuilder b, int l) {
if (!r) r = fixity_declaration(b, l + 1);
if (!r) r = expression(b, l + 1);
if (!r) r = consumeToken(b, HS_DIRECTIVE);
+ if (!r) r = implementation_declaration(b, l + 1);
return r;
}
@@ -6807,4 +7123,26 @@ private static boolean varsym_8_2(PsiBuilder b, int l) {
return r;
}
+ /* ********************************************************** */
+ // WHERE LEFT_BRACE body RIGHT_BRACE?
+ public static boolean where_clause(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "where_clause")) return false;
+ if (!nextTokenIs(b, HS_WHERE)) return false;
+ boolean r, p;
+ Marker m = enter_section_(b, l, _NONE_, HS_WHERE_CLAUSE, null);
+ r = consumeTokens(b, 1, HS_WHERE, HS_LEFT_BRACE);
+ p = r; // pin = 1
+ r = r && report_error_(b, body(b, l + 1));
+ r = p && where_clause_3(b, l + 1) && r;
+ exit_section_(b, l, m, r, p, null);
+ return r || p;
+ }
+
+ // RIGHT_BRACE?
+ private static boolean where_clause_3(PsiBuilder b, int l) {
+ if (!recursion_guard_(b, l, "where_clause_3")) return false;
+ consumeToken(b, HS_RIGHT_BRACE);
+ return true;
+ }
+
}
diff --git a/gen/intellij/haskell/psi/HaskellApplicationExpression.java b/gen/intellij/haskell/psi/HaskellApplicationExpression.java
new file mode 100644
index 000000000..8c5587a34
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellApplicationExpression.java
@@ -0,0 +1,13 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public interface HaskellApplicationExpression extends HaskellExpression {
+
+ @NotNull
+ List getExpressionList();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellAtomExpression.java b/gen/intellij/haskell/psi/HaskellAtomExpression.java
new file mode 100644
index 000000000..a498ca87a
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellAtomExpression.java
@@ -0,0 +1,23 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.Nullable;
+
+public interface HaskellAtomExpression extends HaskellExpression {
+
+ @Nullable
+ HaskellDotDot getDotDot();
+
+ @Nullable
+ HaskellPragma getPragma();
+
+ @Nullable
+ HaskellQName getQName();
+
+ @Nullable
+ HaskellQuasiQuote getQuasiQuote();
+
+ @Nullable
+ HaskellTextLiteral getTextLiteral();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellBracketExpression.java b/gen/intellij/haskell/psi/HaskellBracketExpression.java
new file mode 100644
index 000000000..b668ff02a
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellBracketExpression.java
@@ -0,0 +1,11 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.NotNull;
+
+public interface HaskellBracketExpression extends HaskellExpression {
+
+ @NotNull
+ HaskellExpression getExpression();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellCaseClause.java b/gen/intellij/haskell/psi/HaskellCaseClause.java
new file mode 100644
index 000000000..b62f1bd0a
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellCaseClause.java
@@ -0,0 +1,13 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import java.util.List;
+import org.jetbrains.annotations.*;
+import com.intellij.psi.PsiElement;
+
+public interface HaskellCaseClause extends HaskellCompositeElement {
+
+ @NotNull
+ List getExpressionList();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellCaseOfExpression.java b/gen/intellij/haskell/psi/HaskellCaseOfExpression.java
new file mode 100644
index 000000000..5d0d33eea
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellCaseOfExpression.java
@@ -0,0 +1,16 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import java.util.List;
+import org.jetbrains.annotations.*;
+import com.intellij.psi.PsiElement;
+
+public interface HaskellCaseOfExpression extends HaskellExpression {
+
+ @NotNull
+ List getCaseClauseList();
+
+ @Nullable
+ HaskellExpression getExpression();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellCdeclDataDeclaration.java b/gen/intellij/haskell/psi/HaskellCdeclDataDeclaration.java
index 4e561df2f..d87e4b962 100644
--- a/gen/intellij/haskell/psi/HaskellCdeclDataDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellCdeclDataDeclaration.java
@@ -6,7 +6,7 @@
import java.util.List;
-public interface HaskellCdeclDataDeclaration extends HaskellCompositeElement {
+public interface HaskellCdeclDataDeclaration extends HaskellTopDeclaration {
@NotNull
List getKindSignatureList();
diff --git a/gen/intellij/haskell/psi/HaskellCidecl.java b/gen/intellij/haskell/psi/HaskellCidecl.java
index 5a76f1842..cdf5f40c5 100644
--- a/gen/intellij/haskell/psi/HaskellCidecl.java
+++ b/gen/intellij/haskell/psi/HaskellCidecl.java
@@ -8,21 +8,9 @@
public interface HaskellCidecl extends HaskellCompositeElement {
- @Nullable
- HaskellDataDeclaration getDataDeclaration();
-
- @Nullable
- HaskellDefaultDeclaration getDefaultDeclaration();
-
@NotNull
List getDotDotList();
- @Nullable
- HaskellInstanceDeclaration getInstanceDeclaration();
-
- @Nullable
- HaskellNewtypeDeclaration getNewtypeDeclaration();
-
@Nullable
HaskellPragma getPragma();
@@ -36,9 +24,6 @@ public interface HaskellCidecl extends HaskellCompositeElement {
List getTextLiteralList();
@Nullable
- HaskellTypeDeclaration getTypeDeclaration();
-
- @Nullable
- HaskellTypeFamilyDeclaration getTypeFamilyDeclaration();
+ HaskellTopDeclaration getTopDeclaration();
}
diff --git a/gen/intellij/haskell/psi/HaskellClassDeclaration.java b/gen/intellij/haskell/psi/HaskellClassDeclaration.java
index d826105e4..b40fc2618 100644
--- a/gen/intellij/haskell/psi/HaskellClassDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellClassDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellClassDeclaration extends HaskellDeclarationElement {
+public interface HaskellClassDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@Nullable
HaskellCdecls getCdecls();
diff --git a/gen/intellij/haskell/psi/HaskellDataDeclaration.java b/gen/intellij/haskell/psi/HaskellDataDeclaration.java
index 24329b2e0..dde74a17c 100644
--- a/gen/intellij/haskell/psi/HaskellDataDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellDataDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellDataDeclaration extends HaskellDataConstructorDeclarationElement {
+public interface HaskellDataDeclaration extends HaskellTopDeclaration, HaskellDataConstructorDeclarationElement {
@Nullable
HaskellCcontext getCcontext();
diff --git a/gen/intellij/haskell/psi/HaskellDefaultDeclaration.java b/gen/intellij/haskell/psi/HaskellDefaultDeclaration.java
index 855bfb3fb..1f62c4e12 100644
--- a/gen/intellij/haskell/psi/HaskellDefaultDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellDefaultDeclaration.java
@@ -3,13 +3,12 @@
import com.intellij.navigation.ItemPresentation;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import scala.Option;
import scala.collection.immutable.Seq;
import java.util.List;
-public interface HaskellDefaultDeclaration extends HaskellDeclarationElement {
+public interface HaskellDefaultDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
List getPragmaList();
@@ -17,9 +16,6 @@ public interface HaskellDefaultDeclaration extends HaskellDeclarationElement {
@NotNull
List getTtypeList();
- @Nullable
- HaskellTypeSignature getTypeSignature();
-
String getName();
ItemPresentation getPresentation();
diff --git a/gen/intellij/haskell/psi/HaskellDerivingDeclaration.java b/gen/intellij/haskell/psi/HaskellDerivingDeclaration.java
index 80047fe2b..ca1a5800a 100644
--- a/gen/intellij/haskell/psi/HaskellDerivingDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellDerivingDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellDerivingDeclaration extends HaskellDeclarationElement {
+public interface HaskellDerivingDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
HaskellInst getInst();
diff --git a/gen/intellij/haskell/psi/HaskellDoNotationExpression.java b/gen/intellij/haskell/psi/HaskellDoNotationExpression.java
new file mode 100644
index 000000000..13dbeb3c6
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellDoNotationExpression.java
@@ -0,0 +1,13 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import java.util.List;
+import org.jetbrains.annotations.*;
+import com.intellij.psi.PsiElement;
+
+public interface HaskellDoNotationExpression extends HaskellExpression {
+
+ @NotNull
+ List getExpressionList();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellFixityDeclaration.java b/gen/intellij/haskell/psi/HaskellFixityDeclaration.java
index b4100c25a..3b2363e14 100644
--- a/gen/intellij/haskell/psi/HaskellFixityDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellFixityDeclaration.java
@@ -5,7 +5,7 @@
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
-public interface HaskellFixityDeclaration extends HaskellCompositeElement {
+public interface HaskellFixityDeclaration extends HaskellTopDeclaration {
@NotNull
HaskellQNames getQNames();
diff --git a/gen/intellij/haskell/psi/HaskellForeignDeclaration.java b/gen/intellij/haskell/psi/HaskellForeignDeclaration.java
index dbfae2829..2d68a7db1 100644
--- a/gen/intellij/haskell/psi/HaskellForeignDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellForeignDeclaration.java
@@ -8,7 +8,7 @@
import java.util.List;
-public interface HaskellForeignDeclaration extends HaskellDeclarationElement {
+public interface HaskellForeignDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
HaskellExpression getExpression();
diff --git a/gen/intellij/haskell/psi/HaskellIfExpression.java b/gen/intellij/haskell/psi/HaskellIfExpression.java
new file mode 100644
index 000000000..62e3f0f00
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellIfExpression.java
@@ -0,0 +1,13 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import java.util.List;
+import org.jetbrains.annotations.*;
+import com.intellij.psi.PsiElement;
+
+public interface HaskellIfExpression extends HaskellExpression {
+
+ @NotNull
+ List getExpressionList();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellImplementationDeclaration.java b/gen/intellij/haskell/psi/HaskellImplementationDeclaration.java
new file mode 100644
index 000000000..890344076
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellImplementationDeclaration.java
@@ -0,0 +1,13 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import java.util.List;
+import org.jetbrains.annotations.*;
+import com.intellij.psi.PsiElement;
+
+public interface HaskellImplementationDeclaration extends HaskellTopDeclaration {
+
+ @NotNull
+ List getExpressionList();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellImportDeclaration.java b/gen/intellij/haskell/psi/HaskellImportDeclaration.java
index dbe70bad7..e6a1cf6f6 100644
--- a/gen/intellij/haskell/psi/HaskellImportDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellImportDeclaration.java
@@ -7,7 +7,7 @@
import java.util.List;
-public interface HaskellImportDeclaration extends HaskellCompositeElement {
+public interface HaskellImportDeclaration extends HaskellTopDeclaration {
@Nullable
HaskellImportPackageName getImportPackageName();
diff --git a/gen/intellij/haskell/psi/HaskellImportEmptySpec.java b/gen/intellij/haskell/psi/HaskellImportEmptySpec.java
index c6f5f1d71..6d3be32e0 100644
--- a/gen/intellij/haskell/psi/HaskellImportEmptySpec.java
+++ b/gen/intellij/haskell/psi/HaskellImportEmptySpec.java
@@ -1,10 +1,6 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi;
-import java.util.List;
-import org.jetbrains.annotations.*;
-import com.intellij.psi.PsiElement;
-
public interface HaskellImportEmptySpec extends HaskellCompositeElement {
}
diff --git a/gen/intellij/haskell/psi/HaskellImportSpec.java b/gen/intellij/haskell/psi/HaskellImportSpec.java
index b4397a3db..911424df0 100644
--- a/gen/intellij/haskell/psi/HaskellImportSpec.java
+++ b/gen/intellij/haskell/psi/HaskellImportSpec.java
@@ -1,19 +1,17 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi;
-import java.util.List;
-import org.jetbrains.annotations.*;
-import com.intellij.psi.PsiElement;
+import org.jetbrains.annotations.Nullable;
public interface HaskellImportSpec extends HaskellCompositeElement {
- @Nullable
- HaskellImportEmptySpec getImportEmptySpec();
+ @Nullable
+ HaskellImportEmptySpec getImportEmptySpec();
- @Nullable
- HaskellImportHidingSpec getImportHidingSpec();
+ @Nullable
+ HaskellImportHidingSpec getImportHidingSpec();
- @Nullable
- HaskellImportIdsSpec getImportIdsSpec();
+ @Nullable
+ HaskellImportIdsSpec getImportIdsSpec();
}
diff --git a/gen/intellij/haskell/psi/HaskellInstanceDeclaration.java b/gen/intellij/haskell/psi/HaskellInstanceDeclaration.java
index 7e4e2d4f8..d02f19946 100644
--- a/gen/intellij/haskell/psi/HaskellInstanceDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellInstanceDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellInstanceDeclaration extends HaskellDeclarationElement {
+public interface HaskellInstanceDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@Nullable
HaskellCidecls getCidecls();
diff --git a/gen/intellij/haskell/psi/HaskellLetAbstraction.java b/gen/intellij/haskell/psi/HaskellLetAbstraction.java
new file mode 100644
index 000000000..40b63f2c6
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellLetAbstraction.java
@@ -0,0 +1,17 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public interface HaskellLetAbstraction extends HaskellExpression {
+
+ @NotNull
+ List getCdeclList();
+
+ @Nullable
+ HaskellExpression getExpression();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellModuleBody.java b/gen/intellij/haskell/psi/HaskellModuleBody.java
index 3ab7e1ee0..dd2f2a679 100644
--- a/gen/intellij/haskell/psi/HaskellModuleBody.java
+++ b/gen/intellij/haskell/psi/HaskellModuleBody.java
@@ -11,9 +11,6 @@ public interface HaskellModuleBody extends HaskellCompositeElement {
@Nullable
HaskellImportDeclarations getImportDeclarations();
- @Nullable
- HaskellModuleDeclaration getModuleDeclaration();
-
@NotNull
List getPragmaList();
diff --git a/gen/intellij/haskell/psi/HaskellModuleDeclaration.java b/gen/intellij/haskell/psi/HaskellModuleDeclaration.java
index 04a9f1a57..98d6c7ecb 100644
--- a/gen/intellij/haskell/psi/HaskellModuleDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellModuleDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellModuleDeclaration extends HaskellDeclarationElement {
+public interface HaskellModuleDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@Nullable
HaskellExports getExports();
@@ -20,6 +20,9 @@ public interface HaskellModuleDeclaration extends HaskellDeclarationElement {
@NotNull
List getPragmaList();
+ @NotNull
+ HaskellWhereClause getWhereClause();
+
String getName();
ItemPresentation getPresentation();
diff --git a/gen/intellij/haskell/psi/HaskellNewtypeDeclaration.java b/gen/intellij/haskell/psi/HaskellNewtypeDeclaration.java
index 136c98934..e35dfeec9 100644
--- a/gen/intellij/haskell/psi/HaskellNewtypeDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellNewtypeDeclaration.java
@@ -9,7 +9,7 @@
import java.util.List;
-public interface HaskellNewtypeDeclaration extends HaskellDataConstructorDeclarationElement {
+public interface HaskellNewtypeDeclaration extends HaskellTopDeclaration, HaskellDataConstructorDeclarationElement {
@Nullable
HaskellCcontext getCcontext();
diff --git a/gen/intellij/haskell/psi/HaskellParenExpression.java b/gen/intellij/haskell/psi/HaskellParenExpression.java
new file mode 100644
index 000000000..b00506a73
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellParenExpression.java
@@ -0,0 +1,11 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.NotNull;
+
+public interface HaskellParenExpression extends HaskellExpression {
+
+ @NotNull
+ HaskellExpression getExpression();
+
+}
diff --git a/gen/intellij/haskell/psi/HaskellTopDeclaration.java b/gen/intellij/haskell/psi/HaskellTopDeclaration.java
index 4cf43b087..2b8e6fc84 100644
--- a/gen/intellij/haskell/psi/HaskellTopDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellTopDeclaration.java
@@ -1,52 +1,20 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi;
-import java.util.List;
-import org.jetbrains.annotations.*;
-import com.intellij.psi.PsiElement;
+import org.jetbrains.annotations.Nullable;
public interface HaskellTopDeclaration extends HaskellCompositeElement {
- @Nullable
- HaskellClassDeclaration getClassDeclaration();
+ @Nullable
+ HaskellExpression getExpression();
- @Nullable
- HaskellDataDeclaration getDataDeclaration();
+ @Nullable
+ HaskellPragma getPragma();
- @Nullable
- HaskellDefaultDeclaration getDefaultDeclaration();
+ @Nullable
+ HaskellTopDeclaration getTopDeclaration();
- @Nullable
- HaskellDerivingDeclaration getDerivingDeclaration();
-
- @Nullable
- HaskellExpression getExpression();
-
- @Nullable
- HaskellFixityDeclaration getFixityDeclaration();
-
- @Nullable
- HaskellForeignDeclaration getForeignDeclaration();
-
- @Nullable
- HaskellInstanceDeclaration getInstanceDeclaration();
-
- @Nullable
- HaskellNewtypeDeclaration getNewtypeDeclaration();
-
- @Nullable
- HaskellPragma getPragma();
-
- @Nullable
- HaskellTypeDeclaration getTypeDeclaration();
-
- @Nullable
- HaskellTypeFamilyDeclaration getTypeFamilyDeclaration();
-
- @Nullable
- HaskellTypeInstanceDeclaration getTypeInstanceDeclaration();
-
- @Nullable
- HaskellTypeSignature getTypeSignature();
+ @Nullable
+ HaskellTypeSignature getTypeSignature();
}
diff --git a/gen/intellij/haskell/psi/HaskellTypeDeclaration.java b/gen/intellij/haskell/psi/HaskellTypeDeclaration.java
index 8eb4b49b6..9cf75d274 100644
--- a/gen/intellij/haskell/psi/HaskellTypeDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellTypeDeclaration.java
@@ -9,10 +9,7 @@
import java.util.List;
-public interface HaskellTypeDeclaration extends HaskellDeclarationElement {
-
- @Nullable
- HaskellExpression getExpression();
+public interface HaskellTypeDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
List getKindSignatureList();
@@ -29,9 +26,6 @@ public interface HaskellTypeDeclaration extends HaskellDeclarationElement {
@Nullable
HaskellTtype getTtype();
- @Nullable
- HaskellTypeSignature getTypeSignature();
-
String getName();
ItemPresentation getPresentation();
diff --git a/gen/intellij/haskell/psi/HaskellTypeFamilyDeclaration.java b/gen/intellij/haskell/psi/HaskellTypeFamilyDeclaration.java
index 0f19393e3..d1220260c 100644
--- a/gen/intellij/haskell/psi/HaskellTypeFamilyDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellTypeFamilyDeclaration.java
@@ -3,16 +3,12 @@
import com.intellij.navigation.ItemPresentation;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import scala.Option;
import scala.collection.immutable.Seq;
import java.util.List;
-public interface HaskellTypeFamilyDeclaration extends HaskellDeclarationElement {
-
- @Nullable
- HaskellExpression getExpression();
+public interface HaskellTypeFamilyDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
List getPragmaList();
diff --git a/gen/intellij/haskell/psi/HaskellTypeInstanceDeclaration.java b/gen/intellij/haskell/psi/HaskellTypeInstanceDeclaration.java
index 1e63f175e..5ab0fc1c2 100644
--- a/gen/intellij/haskell/psi/HaskellTypeInstanceDeclaration.java
+++ b/gen/intellij/haskell/psi/HaskellTypeInstanceDeclaration.java
@@ -8,7 +8,7 @@
import java.util.List;
-public interface HaskellTypeInstanceDeclaration extends HaskellDeclarationElement {
+public interface HaskellTypeInstanceDeclaration extends HaskellTopDeclaration, HaskellDeclarationElement {
@NotNull
HaskellExpression getExpression();
diff --git a/gen/intellij/haskell/psi/HaskellTypes.java b/gen/intellij/haskell/psi/HaskellTypes.java
index f4231a982..7eb8ac5fe 100644
--- a/gen/intellij/haskell/psi/HaskellTypes.java
+++ b/gen/intellij/haskell/psi/HaskellTypes.java
@@ -8,6 +8,11 @@
public interface HaskellTypes {
+ IElementType HS_APPLICATION_EXPRESSION = new HaskellCompositeElementType("HS_APPLICATION_EXPRESSION");
+ IElementType HS_ATOM_EXPRESSION = new HaskellCompositeElementType("HS_ATOM_EXPRESSION");
+ IElementType HS_BRACKET_EXPRESSION = new HaskellCompositeElementType("HS_BRACKET_EXPRESSION");
+ IElementType HS_CASE_CLAUSE = new HaskellCompositeElementType("HS_CASE_CLAUSE");
+ IElementType HS_CASE_OF_EXPRESSION = new HaskellCompositeElementType("HS_CASE_OF_EXPRESSION");
IElementType HS_CCONTEXT = new HaskellCompositeElementType("HS_CCONTEXT");
IElementType HS_CDECL = new HaskellCompositeElementType("HS_CDECL");
IElementType HS_CDECLS = new HaskellCompositeElementType("HS_CDECLS");
@@ -29,6 +34,7 @@ public interface HaskellTypes {
IElementType HS_DERIVING_DECLARATION = new HaskellCompositeElementType("HS_DERIVING_DECLARATION");
IElementType HS_DERIVING_VIA = new HaskellCompositeElementType("HS_DERIVING_VIA");
IElementType HS_DOT_DOT = new HaskellCompositeElementType("HS_DOT_DOT");
+ IElementType HS_DO_NOTATION_EXPRESSION = new HaskellCompositeElementType("HS_DO_NOTATION_EXPRESSION");
IElementType HS_EXPORT = new HaskellCompositeElementType("HS_EXPORT");
IElementType HS_EXPORTS = new HaskellCompositeElementType("HS_EXPORTS");
IElementType HS_EXPRESSION = new HaskellCompositeElementType("HS_EXPRESSION");
@@ -38,6 +44,8 @@ public interface HaskellTypes {
IElementType HS_FOREIGN_DECLARATION = new HaskellCompositeElementType("HS_FOREIGN_DECLARATION");
IElementType HS_GENERAL_PRAGMA_CONTENT = new HaskellCompositeElementType("HS_GENERAL_PRAGMA_CONTENT");
IElementType HS_GTYCON = new HaskellCompositeElementType("HS_GTYCON");
+ IElementType HS_IF_EXPRESSION = new HaskellCompositeElementType("HS_IF_EXPRESSION");
+ IElementType HS_IMPLEMENTATION_DECLARATION = new HaskellCompositeElementType("HS_IMPLEMENTATION_DECLARATION");
IElementType HS_IMPORT_DECLARATION = new HaskellCompositeElementType("HS_IMPORT_DECLARATION");
IElementType HS_IMPORT_DECLARATIONS = new HaskellCompositeElementType("HS_IMPORT_DECLARATIONS");
IElementType HS_IMPORT_EMPTY_SPEC = new HaskellCompositeElementType("HS_IMPORT_EMPTY_SPEC");
@@ -53,6 +61,7 @@ public interface HaskellTypes {
IElementType HS_INSTANCE_DECLARATION = new HaskellCompositeElementType("HS_INSTANCE_DECLARATION");
IElementType HS_INSTVAR = new HaskellCompositeElementType("HS_INSTVAR");
IElementType HS_KIND_SIGNATURE = new HaskellCompositeElementType("HS_KIND_SIGNATURE");
+ IElementType HS_LET_ABSTRACTION = new HaskellCompositeElementType("HS_LET_ABSTRACTION");
IElementType HS_LIST_TYPE = new HaskellCompositeElementType("HS_LIST_TYPE");
IElementType HS_MODID = HaskellElementTypeFactory.factory("HS_MODID");
IElementType HS_MODULE_BODY = new HaskellCompositeElementType("HS_MODULE_BODY");
@@ -60,6 +69,7 @@ public interface HaskellTypes {
IElementType HS_NEWCONSTR = new HaskellCompositeElementType("HS_NEWCONSTR");
IElementType HS_NEWCONSTR_FIELDDECL = new HaskellCompositeElementType("HS_NEWCONSTR_FIELDDECL");
IElementType HS_NEWTYPE_DECLARATION = new HaskellCompositeElementType("HS_NEWTYPE_DECLARATION");
+ IElementType HS_PAREN_EXPRESSION = new HaskellCompositeElementType("HS_PAREN_EXPRESSION");
IElementType HS_PRAGMA = new HaskellCompositeElementType("HS_PRAGMA");
IElementType HS_QUALIFIER = new HaskellCompositeElementType("HS_QUALIFIER");
IElementType HS_QUASI_QUOTE = new HaskellCompositeElementType("HS_QUASI_QUOTE");
@@ -88,6 +98,7 @@ public interface HaskellTypes {
IElementType HS_VARID = HaskellElementTypeFactory.factory("HS_VARID");
IElementType HS_VARSYM = HaskellElementTypeFactory.factory("HS_VARSYM");
IElementType HS_VAR_CON = new HaskellCompositeElementType("HS_VAR_CON");
+ IElementType HS_WHERE_CLAUSE = new HaskellCompositeElementType("HS_WHERE_CLAUSE");
IElementType HS_AT = new HaskellTokenType("AT");
IElementType HS_BACKQUOTE = new HaskellTokenType("BACKQUOTE");
@@ -152,6 +163,7 @@ public interface HaskellTypes {
IElementType HS_RIGHT_BRACE = new HaskellTokenType("RIGHT_BRACE");
IElementType HS_RIGHT_BRACKET = new HaskellTokenType("RIGHT_BRACKET");
IElementType HS_RIGHT_PAREN = new HaskellTokenType("RIGHT_PAREN");
+ IElementType HS_SEMI = new HaskellTokenType("semi");
IElementType HS_SEMICOLON = new HaskellTokenType("SEMICOLON");
IElementType HS_STRING_LITERAL = new HaskellTokenType("STRING_LITERAL");
IElementType HS_THEN = new HaskellTokenType("THEN");
@@ -168,7 +180,17 @@ public interface HaskellTypes {
class Factory {
public static PsiElement createElement(ASTNode node) {
IElementType type = node.getElementType();
- if (type == HS_CCONTEXT) {
+ if (type == HS_APPLICATION_EXPRESSION) {
+ return new HaskellApplicationExpressionImpl(node);
+ } else if (type == HS_ATOM_EXPRESSION) {
+ return new HaskellAtomExpressionImpl(node);
+ } else if (type == HS_BRACKET_EXPRESSION) {
+ return new HaskellBracketExpressionImpl(node);
+ } else if (type == HS_CASE_CLAUSE) {
+ return new HaskellCaseClauseImpl(node);
+ } else if (type == HS_CASE_OF_EXPRESSION) {
+ return new HaskellCaseOfExpressionImpl(node);
+ } else if (type == HS_CCONTEXT) {
return new HaskellCcontextImpl(node);
} else if (type == HS_CDECL) {
return new HaskellCdeclImpl(node);
@@ -210,6 +232,8 @@ public static PsiElement createElement(ASTNode node) {
return new HaskellDerivingViaImpl(node);
} else if (type == HS_DOT_DOT) {
return new HaskellDotDotImpl(node);
+ } else if (type == HS_DO_NOTATION_EXPRESSION) {
+ return new HaskellDoNotationExpressionImpl(node);
} else if (type == HS_EXPORT) {
return new HaskellExportImpl(node);
} else if (type == HS_EXPORTS) {
@@ -228,6 +252,10 @@ public static PsiElement createElement(ASTNode node) {
return new HaskellGeneralPragmaContentImpl(node);
} else if (type == HS_GTYCON) {
return new HaskellGtyconImpl(node);
+ } else if (type == HS_IF_EXPRESSION) {
+ return new HaskellIfExpressionImpl(node);
+ } else if (type == HS_IMPLEMENTATION_DECLARATION) {
+ return new HaskellImplementationDeclarationImpl(node);
} else if (type == HS_IMPORT_DECLARATION) {
return new HaskellImportDeclarationImpl(node);
} else if (type == HS_IMPORT_DECLARATIONS) {
@@ -258,6 +286,8 @@ public static PsiElement createElement(ASTNode node) {
return new HaskellInstvarImpl(node);
} else if (type == HS_KIND_SIGNATURE) {
return new HaskellKindSignatureImpl(node);
+ } else if (type == HS_LET_ABSTRACTION) {
+ return new HaskellLetAbstractionImpl(node);
} else if (type == HS_LIST_TYPE) {
return new HaskellListTypeImpl(node);
} else if (type == HS_MODID) {
@@ -272,6 +302,8 @@ public static PsiElement createElement(ASTNode node) {
return new HaskellNewconstrFielddeclImpl(node);
} else if (type == HS_NEWTYPE_DECLARATION) {
return new HaskellNewtypeDeclarationImpl(node);
+ } else if (type == HS_PAREN_EXPRESSION) {
+ return new HaskellParenExpressionImpl(node);
} else if (type == HS_PRAGMA) {
return new HaskellPragmaImpl(node);
} else if (type == HS_QUALIFIER) {
@@ -328,6 +360,8 @@ public static PsiElement createElement(ASTNode node) {
return new HaskellVarsymImpl(node);
} else if (type == HS_VAR_CON) {
return new HaskellVarConImpl(node);
+ } else if (type == HS_WHERE_CLAUSE) {
+ return new HaskellWhereClauseImpl(node);
}
throw new AssertionError("Unknown element type: " + type);
}
diff --git a/gen/intellij/haskell/psi/HaskellVisitor.java b/gen/intellij/haskell/psi/HaskellVisitor.java
index 5817e483c..8785075cf 100644
--- a/gen/intellij/haskell/psi/HaskellVisitor.java
+++ b/gen/intellij/haskell/psi/HaskellVisitor.java
@@ -6,6 +6,26 @@
public class HaskellVisitor extends PsiElementVisitor {
+ public void visitApplicationExpression(@NotNull HaskellApplicationExpression o) {
+ visitExpression(o);
+ }
+
+ public void visitAtomExpression(@NotNull HaskellAtomExpression o) {
+ visitExpression(o);
+ }
+
+ public void visitBracketExpression(@NotNull HaskellBracketExpression o) {
+ visitExpression(o);
+ }
+
+ public void visitCaseClause(@NotNull HaskellCaseClause o) {
+ visitCompositeElement(o);
+ }
+
+ public void visitCaseOfExpression(@NotNull HaskellCaseOfExpression o) {
+ visitExpression(o);
+ }
+
public void visitCcontext(@NotNull HaskellCcontext o) {
visitCompositeElement(o);
}
@@ -15,7 +35,7 @@ public void visitCdecl(@NotNull HaskellCdecl o) {
}
public void visitCdeclDataDeclaration(@NotNull HaskellCdeclDataDeclaration o) {
- visitCompositeElement(o);
+ visitTopDeclaration(o);
}
public void visitCdecls(@NotNull HaskellCdecls o) {
@@ -31,7 +51,8 @@ public void visitCidecls(@NotNull HaskellCidecls o) {
}
public void visitClassDeclaration(@NotNull HaskellClassDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitClazz(@NotNull HaskellClazz o) {
@@ -67,7 +88,8 @@ public void visitConsym(@NotNull HaskellConsym o) {
}
public void visitDataDeclaration(@NotNull HaskellDataDeclaration o) {
- visitDataConstructorDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDataConstructorDeclarationElement(o);
}
public void visitDataDeclarationDeriving(@NotNull HaskellDataDeclarationDeriving o) {
@@ -75,18 +97,24 @@ public void visitDataDeclarationDeriving(@NotNull HaskellDataDeclarationDeriving
}
public void visitDefaultDeclaration(@NotNull HaskellDefaultDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
// visitDeclarationElement(o);
}
public void visitDerivingDeclaration(@NotNull HaskellDerivingDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitDerivingVia(@NotNull HaskellDerivingVia o) {
visitCompositeElement(o);
}
+ public void visitDoNotationExpression(@NotNull HaskellDoNotationExpression o) {
+ visitExpression(o);
+ }
+
public void visitDotDot(@NotNull HaskellDotDot o) {
visitCompositeElement(o);
}
@@ -112,11 +140,12 @@ public void visitFileHeader(@NotNull HaskellFileHeader o) {
}
public void visitFixityDeclaration(@NotNull HaskellFixityDeclaration o) {
- visitCompositeElement(o);
+ visitTopDeclaration(o);
}
public void visitForeignDeclaration(@NotNull HaskellForeignDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitGeneralPragmaContent(@NotNull HaskellGeneralPragmaContent o) {
@@ -127,8 +156,16 @@ public void visitGtycon(@NotNull HaskellGtycon o) {
visitCompositeElement(o);
}
+ public void visitIfExpression(@NotNull HaskellIfExpression o) {
+ visitExpression(o);
+ }
+
+ public void visitImplementationDeclaration(@NotNull HaskellImplementationDeclaration o) {
+ visitTopDeclaration(o);
+ }
+
public void visitImportDeclaration(@NotNull HaskellImportDeclaration o) {
- visitCompositeElement(o);
+ visitTopDeclaration(o);
}
public void visitImportDeclarations(@NotNull HaskellImportDeclarations o) {
@@ -176,7 +213,8 @@ public void visitInst(@NotNull HaskellInst o) {
}
public void visitInstanceDeclaration(@NotNull HaskellInstanceDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitInstvar(@NotNull HaskellInstvar o) {
@@ -187,6 +225,10 @@ public void visitKindSignature(@NotNull HaskellKindSignature o) {
visitCompositeElement(o);
}
+ public void visitLetAbstraction(@NotNull HaskellLetAbstraction o) {
+ visitExpression(o);
+ }
+
public void visitListType(@NotNull HaskellListType o) {
visitCompositeElement(o);
}
@@ -200,7 +242,8 @@ public void visitModuleBody(@NotNull HaskellModuleBody o) {
}
public void visitModuleDeclaration(@NotNull HaskellModuleDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitNewconstr(@NotNull HaskellNewconstr o) {
@@ -212,7 +255,12 @@ public void visitNewconstrFielddecl(@NotNull HaskellNewconstrFielddecl o) {
}
public void visitNewtypeDeclaration(@NotNull HaskellNewtypeDeclaration o) {
- visitDataConstructorDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDataConstructorDeclarationElement(o);
+ }
+
+ public void visitParenExpression(@NotNull HaskellParenExpression o) {
+ visitExpression(o);
}
public void visitPragma(@NotNull HaskellPragma o) {
@@ -299,7 +347,8 @@ public void visitTtype(@NotNull HaskellTtype o) {
}
public void visitTypeDeclaration(@NotNull HaskellTypeDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitTypeEquality(@NotNull HaskellTypeEquality o) {
@@ -307,7 +356,8 @@ public void visitTypeEquality(@NotNull HaskellTypeEquality o) {
}
public void visitTypeFamilyDeclaration(@NotNull HaskellTypeFamilyDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitTypeFamilyType(@NotNull HaskellTypeFamilyType o) {
@@ -315,7 +365,8 @@ public void visitTypeFamilyType(@NotNull HaskellTypeFamilyType o) {
}
public void visitTypeInstanceDeclaration(@NotNull HaskellTypeInstanceDeclaration o) {
- visitDeclarationElement(o);
+ visitTopDeclaration(o);
+ // visitDeclarationElement(o);
}
public void visitTypeSignature(@NotNull HaskellTypeSignature o) {
@@ -334,7 +385,7 @@ public void visitVarsym(@NotNull HaskellVarsym o) {
visitNamedElement(o);
}
- public void visitDataConstructorDeclarationElement(@NotNull HaskellDataConstructorDeclarationElement o) {
+ public void visitWhereClause(@NotNull HaskellWhereClause o) {
visitCompositeElement(o);
}
diff --git a/gen/intellij/haskell/psi/HaskellWhereClause.java b/gen/intellij/haskell/psi/HaskellWhereClause.java
new file mode 100644
index 000000000..32ccfa6b7
--- /dev/null
+++ b/gen/intellij/haskell/psi/HaskellWhereClause.java
@@ -0,0 +1,20 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi;
+
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public interface HaskellWhereClause extends HaskellCompositeElement {
+
+ @Nullable
+ HaskellImportDeclarations getImportDeclarations();
+
+ @NotNull
+ List getPragmaList();
+
+ @NotNull
+ List getTopDeclarationList();
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellApplicationExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellApplicationExpressionImpl.java
new file mode 100644
index 000000000..a2da5c843
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellApplicationExpressionImpl.java
@@ -0,0 +1,37 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellApplicationExpression;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public class HaskellApplicationExpressionImpl extends HaskellExpressionImpl implements HaskellApplicationExpression {
+
+ public HaskellApplicationExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitApplicationExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getExpressionList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellAtomExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellAtomExpressionImpl.java
new file mode 100644
index 000000000..ae031c92d
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellAtomExpressionImpl.java
@@ -0,0 +1,58 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+public class HaskellAtomExpressionImpl extends HaskellExpressionImpl implements HaskellAtomExpression {
+
+ public HaskellAtomExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitAtomExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellDotDot getDotDot() {
+ return PsiTreeUtil.getChildOfType(this, HaskellDotDot.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellPragma getPragma() {
+ return PsiTreeUtil.getChildOfType(this, HaskellPragma.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQName getQName() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQuasiQuote getQuasiQuote() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQuasiQuote.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTextLiteral getTextLiteral() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTextLiteral.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellBracketExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellBracketExpressionImpl.java
new file mode 100644
index 000000000..ed8c68db4
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellBracketExpressionImpl.java
@@ -0,0 +1,35 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellBracketExpression;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+public class HaskellBracketExpressionImpl extends HaskellExpressionImpl implements HaskellBracketExpression {
+
+ public HaskellBracketExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitBracketExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public HaskellExpression getExpression() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellExpression.class));
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellCaseClauseImpl.java b/gen/intellij/haskell/psi/impl/HaskellCaseClauseImpl.java
new file mode 100644
index 000000000..05fde3806
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellCaseClauseImpl.java
@@ -0,0 +1,36 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellCaseClause;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public class HaskellCaseClauseImpl extends HaskellCompositeElementImpl implements HaskellCaseClause {
+
+ public HaskellCaseClauseImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitCaseClause(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getExpressionList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellCaseOfExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellCaseOfExpressionImpl.java
new file mode 100644
index 000000000..2e3a9b4db
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellCaseOfExpressionImpl.java
@@ -0,0 +1,45 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellCaseClause;
+import intellij.haskell.psi.HaskellCaseOfExpression;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public class HaskellCaseOfExpressionImpl extends HaskellExpressionImpl implements HaskellCaseOfExpression {
+
+ public HaskellCaseOfExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitCaseOfExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getCaseClauseList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellCaseClause.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellExpression getExpression() {
+ return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellCcontextImpl.java b/gen/intellij/haskell/psi/impl/HaskellCcontextImpl.java
index 8912d54c0..76c9efe05 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCcontextImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCcontextImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCcontext(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellCdeclDataDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellCdeclDataDeclarationImpl.java
index 8e6888e52..c47742610 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCdeclDataDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCdeclDataDeclarationImpl.java
@@ -10,16 +10,18 @@
import java.util.List;
-public class HaskellCdeclDataDeclarationImpl extends HaskellCompositeElementImpl implements HaskellCdeclDataDeclaration {
+public class HaskellCdeclDataDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellCdeclDataDeclaration {
public HaskellCdeclDataDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCdeclDataDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellCdeclImpl.java b/gen/intellij/haskell/psi/impl/HaskellCdeclImpl.java
index cd998a258..36a84da9c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCdeclImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCdeclImpl.java
@@ -18,6 +18,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCdecl(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellCdeclsImpl.java b/gen/intellij/haskell/psi/impl/HaskellCdeclsImpl.java
index e33245489..afd736728 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCdeclsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCdeclsImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCdecls(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellCideclImpl.java b/gen/intellij/haskell/psi/impl/HaskellCideclImpl.java
index 787e44fe6..b8ee8d3b9 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCideclImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCideclImpl.java
@@ -20,41 +20,18 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCidecl(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
}
- @Override
- @Nullable
- public HaskellDataDeclaration getDataDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellDataDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellDefaultDeclaration getDefaultDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellDefaultDeclaration.class);
- }
-
@Override
@NotNull
public List getDotDotList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellDotDot.class);
}
- @Override
- @Nullable
- public HaskellInstanceDeclaration getInstanceDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellInstanceDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellNewtypeDeclaration getNewtypeDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellNewtypeDeclaration.class);
- }
-
@Override
@Nullable
public HaskellPragma getPragma() {
@@ -81,14 +58,8 @@ public List getTextLiteralList() {
@Override
@Nullable
- public HaskellTypeDeclaration getTypeDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellTypeFamilyDeclaration getTypeFamilyDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeFamilyDeclaration.class);
+ public HaskellTopDeclaration getTopDeclaration() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTopDeclaration.class);
}
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellCideclsImpl.java b/gen/intellij/haskell/psi/impl/HaskellCideclsImpl.java
index e65687b38..c0c3dbb03 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCideclsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCideclsImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitCidecls(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellClassDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellClassDeclarationImpl.java
index 61b700d9e..f6cbcfc04 100644
--- a/gen/intellij/haskell/psi/impl/HaskellClassDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellClassDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellClassDeclarationImpl extends HaskellCompositeElementImpl implements HaskellClassDeclaration {
+public class HaskellClassDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellClassDeclaration {
public HaskellClassDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitClassDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellClazzImpl.java b/gen/intellij/haskell/psi/impl/HaskellClazzImpl.java
index 98a0a6cb6..bf0880044 100644
--- a/gen/intellij/haskell/psi/impl/HaskellClazzImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellClazzImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitClazz(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellCommentsImpl.java b/gen/intellij/haskell/psi/impl/HaskellCommentsImpl.java
index d9c7d0bda..8fbdde213 100644
--- a/gen/intellij/haskell/psi/impl/HaskellCommentsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellCommentsImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellComments;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellCommentsImpl extends HaskellCompositeElementImpl implements HaskellComments {
- public HaskellCommentsImpl(ASTNode node) {
- super(node);
- }
+ public HaskellCommentsImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitComments(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitComments(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellConidImpl.java b/gen/intellij/haskell/psi/impl/HaskellConidImpl.java
index 2f6c1552f..d5fa887dc 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConidImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConidImpl.java
@@ -1,61 +1,66 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.stubs.HaskellConidStub;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
import com.intellij.psi.stubs.IStubElementType;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellVisitor;
+import intellij.haskell.psi.stubs.HaskellConidStub;
+import org.jetbrains.annotations.NotNull;
public class HaskellConidImpl extends HaskellNamedStubBasedPsiElementBase implements HaskellConid {
- public HaskellConidImpl(@NotNull HaskellConidStub stub, IStubElementType type) {
- super(stub, type);
- }
-
- public HaskellConidImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitConid(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellConidImpl(@NotNull HaskellConidStub stub, IStubElementType type) {
+ super(stub, type);
+ }
+
+ public HaskellConidImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitConid(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
+
+ @Override
+ public String toString() {
+ return HaskellPsiImplUtil.toString(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellConstr1Impl.java b/gen/intellij/haskell/psi/impl/HaskellConstr1Impl.java
index aacc0d0e6..fb1f1cac3 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConstr1Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConstr1Impl.java
@@ -1,46 +1,47 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
public class HaskellConstr1Impl extends HaskellCompositeElementImpl implements HaskellConstr1 {
- public HaskellConstr1Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitConstr1(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getFielddeclList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellFielddecl.class);
- }
-
- @Override
- @NotNull
- public List getPragmaList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
- }
-
- @Override
- @Nullable
- public HaskellQName getQName() {
- return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
- }
+ public HaskellConstr1Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitConstr1(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getFielddeclList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellFielddecl.class);
+ }
+
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQName getQName() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellConstr2Impl.java b/gen/intellij/haskell/psi/impl/HaskellConstr2Impl.java
index ec7331c14..ae8eb8c42 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConstr2Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConstr2Impl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitConstr2(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellConstr3Impl.java b/gen/intellij/haskell/psi/impl/HaskellConstr3Impl.java
index acf0985ab..f4a3b5229 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConstr3Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConstr3Impl.java
@@ -1,40 +1,43 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellConstr3;
+import intellij.haskell.psi.HaskellPragma;
+import intellij.haskell.psi.HaskellTtype;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellConstr3Impl extends HaskellCompositeElementImpl implements HaskellConstr3 {
- public HaskellConstr3Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitConstr3(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getPragmaList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
- }
-
- @Override
- @NotNull
- public List getTtypeList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellTtype.class);
- }
+ public HaskellConstr3Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitConstr3(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
+
+ @Override
+ @NotNull
+ public List getTtypeList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellTtype.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellConstrImpl.java b/gen/intellij/haskell/psi/impl/HaskellConstrImpl.java
index 6381066e9..31ef9fca9 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConstrImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConstrImpl.java
@@ -18,6 +18,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitConstr(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellConsymImpl.java b/gen/intellij/haskell/psi/impl/HaskellConsymImpl.java
index 39ab5be9f..10478a75d 100644
--- a/gen/intellij/haskell/psi/impl/HaskellConsymImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellConsymImpl.java
@@ -1,61 +1,61 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.stubs.HaskellConsymStub;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
import com.intellij.psi.stubs.IStubElementType;
+import intellij.haskell.psi.HaskellConsym;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellVisitor;
+import intellij.haskell.psi.stubs.HaskellConsymStub;
+import org.jetbrains.annotations.NotNull;
public class HaskellConsymImpl extends HaskellNamedStubBasedPsiElementBase implements HaskellConsym {
- public HaskellConsymImpl(@NotNull HaskellConsymStub stub, IStubElementType type) {
- super(stub, type);
- }
-
- public HaskellConsymImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitConsym(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellConsymImpl(@NotNull HaskellConsymStub stub, IStubElementType type) {
+ super(stub, type);
+ }
+
+ public HaskellConsymImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitConsym(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellDataDeclarationDerivingImpl.java b/gen/intellij/haskell/psi/impl/HaskellDataDeclarationDerivingImpl.java
index 07f86c8c4..7c1603d2e 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDataDeclarationDerivingImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDataDeclarationDerivingImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitDataDeclarationDeriving(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellDataDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellDataDeclarationImpl.java
index 4542756d2..6ba944c0a 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDataDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDataDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellDataDeclarationImpl extends HaskellCompositeElementImpl implements HaskellDataDeclaration {
+public class HaskellDataDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellDataDeclaration {
public HaskellDataDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitDataDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellDefaultDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellDefaultDeclarationImpl.java
index 6a8721eaf..d9a34ba43 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDefaultDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDefaultDeclarationImpl.java
@@ -7,22 +7,23 @@
import com.intellij.psi.util.PsiTreeUtil;
import intellij.haskell.psi.*;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import scala.Option;
import scala.collection.immutable.Seq;
import java.util.List;
-public class HaskellDefaultDeclarationImpl extends HaskellCompositeElementImpl implements HaskellDefaultDeclaration {
+public class HaskellDefaultDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellDefaultDeclaration {
public HaskellDefaultDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitDefaultDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
@@ -40,12 +41,6 @@ public List getTtypeList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellTtype.class);
}
- @Override
- @Nullable
- public HaskellTypeSignature getTypeSignature() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeSignature.class);
- }
-
@Override
public String getName() {
return HaskellPsiImplUtil.getName(this);
diff --git a/gen/intellij/haskell/psi/impl/HaskellDerivingDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellDerivingDeclarationImpl.java
index 8a005a20b..5390a2f78 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDerivingDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDerivingDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellDerivingDeclarationImpl extends HaskellCompositeElementImpl implements HaskellDerivingDeclaration {
+public class HaskellDerivingDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellDerivingDeclaration {
public HaskellDerivingDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitDerivingDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellDerivingViaImpl.java b/gen/intellij/haskell/psi/impl/HaskellDerivingViaImpl.java
index c87aa1efc..759c21530 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDerivingViaImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDerivingViaImpl.java
@@ -17,6 +17,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitDerivingVia(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellDoNotationExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellDoNotationExpressionImpl.java
new file mode 100644
index 000000000..4491272af
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellDoNotationExpressionImpl.java
@@ -0,0 +1,37 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellDoNotationExpression;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public class HaskellDoNotationExpressionImpl extends HaskellExpressionImpl implements HaskellDoNotationExpression {
+
+ public HaskellDoNotationExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitDoNotationExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getExpressionList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellDotDotImpl.java b/gen/intellij/haskell/psi/impl/HaskellDotDotImpl.java
index f88a3a86b..ca6e4b86c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellDotDotImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellDotDotImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellDotDot;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellDotDotImpl extends HaskellCompositeElementImpl implements HaskellDotDot {
- public HaskellDotDotImpl(ASTNode node) {
- super(node);
- }
+ public HaskellDotDotImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitDotDot(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitDotDot(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellExportImpl.java b/gen/intellij/haskell/psi/impl/HaskellExportImpl.java
index 099414b57..48b5ff69e 100644
--- a/gen/intellij/haskell/psi/impl/HaskellExportImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellExportImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitExport(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellExportsImpl.java b/gen/intellij/haskell/psi/impl/HaskellExportsImpl.java
index b006896f7..843c04eb4 100644
--- a/gen/intellij/haskell/psi/impl/HaskellExportsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellExportsImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitExports(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellExpressionImpl.java
index d4b972504..41cce719c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellExpressionImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellExpressionImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitExpression(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellFielddeclImpl.java b/gen/intellij/haskell/psi/impl/HaskellFielddeclImpl.java
index 03742d1ab..2a8803eab 100644
--- a/gen/intellij/haskell/psi/impl/HaskellFielddeclImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellFielddeclImpl.java
@@ -1,58 +1,59 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
public class HaskellFielddeclImpl extends HaskellCompositeElementImpl implements HaskellFielddecl {
- public HaskellFielddeclImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitFielddecl(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getPragmaList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
- }
-
- @Override
- @NotNull
- public List getQNameList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
- }
-
- @Override
- @NotNull
- public HaskellQNames getQNames() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQNames.class));
- }
-
- @Override
- @Nullable
- public HaskellScontext getScontext() {
- return PsiTreeUtil.getChildOfType(this, HaskellScontext.class);
- }
-
- @Override
- @Nullable
- public HaskellTtype getTtype() {
- return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
- }
+ public HaskellFielddeclImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitFielddecl(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
+
+ @Override
+ @NotNull
+ public List getQNameList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
+ }
+
+ @Override
+ @NotNull
+ public HaskellQNames getQNames() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQNames.class));
+ }
+
+ @Override
+ @Nullable
+ public HaskellScontext getScontext() {
+ return PsiTreeUtil.getChildOfType(this, HaskellScontext.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTtype getTtype() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellFileHeaderImpl.java b/gen/intellij/haskell/psi/impl/HaskellFileHeaderImpl.java
index edab42e7d..4d667fbc5 100644
--- a/gen/intellij/haskell/psi/impl/HaskellFileHeaderImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellFileHeaderImpl.java
@@ -1,34 +1,36 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellFileHeader;
+import intellij.haskell.psi.HaskellPragma;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellFileHeaderImpl extends HaskellCompositeElementImpl implements HaskellFileHeader {
- public HaskellFileHeaderImpl(ASTNode node) {
- super(node);
- }
+ public HaskellFileHeaderImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitFileHeader(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitFileHeader(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public List getPragmaList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
- }
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellFixityDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellFixityDeclarationImpl.java
index cd579ec87..cda549b66 100644
--- a/gen/intellij/haskell/psi/impl/HaskellFixityDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellFixityDeclarationImpl.java
@@ -1,34 +1,35 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellFixityDeclaration;
+import intellij.haskell.psi.HaskellQNames;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
-public class HaskellFixityDeclarationImpl extends HaskellCompositeElementImpl implements HaskellFixityDeclaration {
+public class HaskellFixityDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellFixityDeclaration {
- public HaskellFixityDeclarationImpl(ASTNode node) {
- super(node);
- }
+ public HaskellFixityDeclarationImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitFixityDeclaration(this);
- }
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitFixityDeclaration(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public HaskellQNames getQNames() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQNames.class));
- }
+ @Override
+ @NotNull
+ public HaskellQNames getQNames() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQNames.class));
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellForeignDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellForeignDeclarationImpl.java
index 5968e5fb8..87716ddb7 100644
--- a/gen/intellij/haskell/psi/impl/HaskellForeignDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellForeignDeclarationImpl.java
@@ -12,16 +12,18 @@
import java.util.List;
-public class HaskellForeignDeclarationImpl extends HaskellCompositeElementImpl implements HaskellForeignDeclaration {
+public class HaskellForeignDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellForeignDeclaration {
public HaskellForeignDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitForeignDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellGeneralPragmaContentImpl.java b/gen/intellij/haskell/psi/impl/HaskellGeneralPragmaContentImpl.java
index f74fa72e1..faaed8a91 100644
--- a/gen/intellij/haskell/psi/impl/HaskellGeneralPragmaContentImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellGeneralPragmaContentImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellGeneralPragmaContent;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellGeneralPragmaContentImpl extends HaskellCompositeElementImpl implements HaskellGeneralPragmaContent {
- public HaskellGeneralPragmaContentImpl(ASTNode node) {
- super(node);
- }
+ public HaskellGeneralPragmaContentImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitGeneralPragmaContent(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitGeneralPragmaContent(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellGtyconImpl.java b/gen/intellij/haskell/psi/impl/HaskellGtyconImpl.java
index e56f22a43..589100b2d 100644
--- a/gen/intellij/haskell/psi/impl/HaskellGtyconImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellGtyconImpl.java
@@ -1,34 +1,35 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellGtycon;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellGtyconImpl extends HaskellCompositeElementImpl implements HaskellGtycon {
- public HaskellGtyconImpl(ASTNode node) {
- super(node);
- }
+ public HaskellGtyconImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitGtycon(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitGtycon(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @Nullable
- public HaskellQName getQName() {
- return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
- }
+ @Override
+ @Nullable
+ public HaskellQName getQName() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellIfExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellIfExpressionImpl.java
new file mode 100644
index 000000000..eb62d95c1
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellIfExpressionImpl.java
@@ -0,0 +1,37 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellIfExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public class HaskellIfExpressionImpl extends HaskellExpressionImpl implements HaskellIfExpression {
+
+ public HaskellIfExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitIfExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getExpressionList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImplementationDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellImplementationDeclarationImpl.java
new file mode 100644
index 000000000..a39a3f38b
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellImplementationDeclarationImpl.java
@@ -0,0 +1,37 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellImplementationDeclaration;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
+
+public class HaskellImplementationDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellImplementationDeclaration {
+
+ public HaskellImplementationDeclarationImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImplementationDeclaration(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getExpressionList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportDeclarationImpl.java
index 42a8d0eb3..9c65d3d5a 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportDeclarationImpl.java
@@ -11,16 +11,18 @@
import java.util.List;
-public class HaskellImportDeclarationImpl extends HaskellCompositeElementImpl implements HaskellImportDeclaration {
+public class HaskellImportDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellImportDeclaration {
public HaskellImportDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitImportDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportDeclarationsImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportDeclarationsImpl.java
index e1c24a6df..3a027108d 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportDeclarationsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportDeclarationsImpl.java
@@ -1,40 +1,43 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportDeclaration;
+import intellij.haskell.psi.HaskellImportDeclarations;
+import intellij.haskell.psi.HaskellPragma;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellImportDeclarationsImpl extends HaskellCompositeElementImpl implements HaskellImportDeclarations {
- public HaskellImportDeclarationsImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportDeclarations(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getImportDeclarationList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellImportDeclaration.class);
- }
-
- @Override
- @NotNull
- public List getPragmaList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
- }
+ public HaskellImportDeclarationsImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportDeclarations(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getImportDeclarationList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellImportDeclaration.class);
+ }
+
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportEmptySpecImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportEmptySpecImpl.java
index 78de7e0db..40bdc48bc 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportEmptySpecImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportEmptySpecImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportEmptySpec;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellImportEmptySpecImpl extends HaskellCompositeElementImpl implements HaskellImportEmptySpec {
- public HaskellImportEmptySpecImpl(ASTNode node) {
- super(node);
- }
+ public HaskellImportEmptySpecImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportEmptySpec(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportEmptySpec(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportHidingImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportHidingImpl.java
index 5101d4e2f..4c60f81ed 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportHidingImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportHidingImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportHiding;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellImportHidingImpl extends HaskellCompositeElementImpl implements HaskellImportHiding {
- public HaskellImportHidingImpl(ASTNode node) {
- super(node);
- }
+ public HaskellImportHidingImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportHiding(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportHiding(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportHidingSpecImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportHidingSpecImpl.java
index afd7c8eb3..b0e70a4ae 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportHidingSpecImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportHidingSpecImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitImportHidingSpec(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportIdImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportIdImpl.java
index db78d5619..d348c969f 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportIdImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportIdImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitImportId(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportIdsSpecImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportIdsSpecImpl.java
index 58be7fc79..2b7fbe0ef 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportIdsSpecImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportIdsSpecImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitImportIdsSpec(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportPackageNameImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportPackageNameImpl.java
index 240d51c60..6294e9dec 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportPackageNameImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportPackageNameImpl.java
@@ -1,34 +1,34 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportPackageName;
+import intellij.haskell.psi.HaskellTextLiteral;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellImportPackageNameImpl extends HaskellCompositeElementImpl implements HaskellImportPackageName {
- public HaskellImportPackageNameImpl(ASTNode node) {
- super(node);
- }
+ public HaskellImportPackageNameImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportPackageName(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportPackageName(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public HaskellTextLiteral getTextLiteral() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellTextLiteral.class));
- }
+ @Override
+ @NotNull
+ public HaskellTextLiteral getTextLiteral() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellTextLiteral.class));
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportQualifiedAsImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportQualifiedAsImpl.java
index 63d94e325..d3bf9e9ea 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportQualifiedAsImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportQualifiedAsImpl.java
@@ -1,34 +1,34 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportQualifiedAs;
+import intellij.haskell.psi.HaskellQualifier;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellImportQualifiedAsImpl extends HaskellCompositeElementImpl implements HaskellImportQualifiedAs {
- public HaskellImportQualifiedAsImpl(ASTNode node) {
- super(node);
- }
+ public HaskellImportQualifiedAsImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportQualifiedAs(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportQualifiedAs(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public HaskellQualifier getQualifier() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQualifier.class));
- }
+ @Override
+ @NotNull
+ public HaskellQualifier getQualifier() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQualifier.class));
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportQualifiedImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportQualifiedImpl.java
index 87ff02301..d08888bb2 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportQualifiedImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportQualifiedImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellImportQualified;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellImportQualifiedImpl extends HaskellCompositeElementImpl implements HaskellImportQualified {
- public HaskellImportQualifiedImpl(ASTNode node) {
- super(node);
- }
+ public HaskellImportQualifiedImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportQualified(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportQualified(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellImportSpecImpl.java b/gen/intellij/haskell/psi/impl/HaskellImportSpecImpl.java
index de4244d97..f90671bab 100644
--- a/gen/intellij/haskell/psi/impl/HaskellImportSpecImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellImportSpecImpl.java
@@ -1,46 +1,45 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellImportSpecImpl extends HaskellCompositeElementImpl implements HaskellImportSpec {
- public HaskellImportSpecImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitImportSpec(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellImportEmptySpec getImportEmptySpec() {
- return PsiTreeUtil.getChildOfType(this, HaskellImportEmptySpec.class);
- }
-
- @Override
- @Nullable
- public HaskellImportHidingSpec getImportHidingSpec() {
- return PsiTreeUtil.getChildOfType(this, HaskellImportHidingSpec.class);
- }
-
- @Override
- @Nullable
- public HaskellImportIdsSpec getImportIdsSpec() {
- return PsiTreeUtil.getChildOfType(this, HaskellImportIdsSpec.class);
- }
+ public HaskellImportSpecImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitImportSpec(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellImportEmptySpec getImportEmptySpec() {
+ return PsiTreeUtil.getChildOfType(this, HaskellImportEmptySpec.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellImportHidingSpec getImportHidingSpec() {
+ return PsiTreeUtil.getChildOfType(this, HaskellImportHidingSpec.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellImportIdsSpec getImportIdsSpec() {
+ return PsiTreeUtil.getChildOfType(this, HaskellImportIdsSpec.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellInstImpl.java b/gen/intellij/haskell/psi/impl/HaskellInstImpl.java
index b90422340..0772182ad 100644
--- a/gen/intellij/haskell/psi/impl/HaskellInstImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellInstImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitInst(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellInstanceDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellInstanceDeclarationImpl.java
index 08ac620a5..bdba074af 100644
--- a/gen/intellij/haskell/psi/impl/HaskellInstanceDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellInstanceDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellInstanceDeclarationImpl extends HaskellCompositeElementImpl implements HaskellInstanceDeclaration {
+public class HaskellInstanceDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellInstanceDeclaration {
public HaskellInstanceDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitInstanceDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellInstvarImpl.java b/gen/intellij/haskell/psi/impl/HaskellInstvarImpl.java
index 486a916f3..86e228072 100644
--- a/gen/intellij/haskell/psi/impl/HaskellInstvarImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellInstvarImpl.java
@@ -1,40 +1,42 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellInstvar;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellTtype;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellInstvarImpl extends HaskellCompositeElementImpl implements HaskellInstvar {
- public HaskellInstvarImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitInstvar(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellQName getQName() {
- return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
- }
-
- @Override
- @Nullable
- public HaskellTtype getTtype() {
- return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
- }
+ public HaskellInstvarImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitInstvar(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQName getQName() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTtype getTtype() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellKindSignatureImpl.java b/gen/intellij/haskell/psi/impl/HaskellKindSignatureImpl.java
index 81f0d88fb..d043eb600 100644
--- a/gen/intellij/haskell/psi/impl/HaskellKindSignatureImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellKindSignatureImpl.java
@@ -1,40 +1,41 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellKindSignature;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellTtype;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellKindSignatureImpl extends HaskellCompositeElementImpl implements HaskellKindSignature {
- public HaskellKindSignatureImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitKindSignature(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public HaskellQName getQName() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQName.class));
- }
-
- @Override
- @NotNull
- public HaskellTtype getTtype() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellTtype.class));
- }
+ public HaskellKindSignatureImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitKindSignature(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public HaskellQName getQName() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellQName.class));
+ }
+
+ @Override
+ @NotNull
+ public HaskellTtype getTtype() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellTtype.class));
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellLetAbstractionImpl.java b/gen/intellij/haskell/psi/impl/HaskellLetAbstractionImpl.java
new file mode 100644
index 000000000..96d75180e
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellLetAbstractionImpl.java
@@ -0,0 +1,45 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellCdecl;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellLetAbstraction;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public class HaskellLetAbstractionImpl extends HaskellExpressionImpl implements HaskellLetAbstraction {
+
+ public HaskellLetAbstractionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitLetAbstraction(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getCdeclList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellCdecl.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellExpression getExpression() {
+ return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellListTypeImpl.java b/gen/intellij/haskell/psi/impl/HaskellListTypeImpl.java
index 483c401bd..f96b933b6 100644
--- a/gen/intellij/haskell/psi/impl/HaskellListTypeImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellListTypeImpl.java
@@ -1,34 +1,35 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellListType;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellListTypeImpl extends HaskellCompositeElementImpl implements HaskellListType {
- public HaskellListTypeImpl(ASTNode node) {
- super(node);
- }
+ public HaskellListTypeImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitListType(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitListType(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @Nullable
- public HaskellQName getQName() {
- return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
- }
+ @Override
+ @Nullable
+ public HaskellQName getQName() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQName.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellModidImpl.java b/gen/intellij/haskell/psi/impl/HaskellModidImpl.java
index b4d8541e2..8dc579c0c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellModidImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellModidImpl.java
@@ -1,67 +1,76 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.stubs.HaskellModidStub;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
import com.intellij.psi.stubs.IStubElementType;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellModid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellVisitor;
+import intellij.haskell.psi.stubs.HaskellModidStub;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellModidImpl extends HaskellNamedStubBasedPsiElementBase implements HaskellModid {
- public HaskellModidImpl(@NotNull HaskellModidStub stub, IStubElementType type) {
- super(stub, type);
- }
+ public HaskellModidImpl(@NotNull HaskellModidStub stub, IStubElementType type) {
+ super(stub, type);
+ }
+
+ public HaskellModidImpl(ASTNode node) {
+ super(node);
+ }
- public HaskellModidImpl(ASTNode node) {
- super(node);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitModid(this);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitModid(this);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ @NotNull
+ public List getConidList() {
+ return PsiTreeUtil.getStubChildrenOfTypeAsList(this, HaskellConid.class);
+ }
- @Override
- @NotNull
- public List getConidList() {
- return PsiTreeUtil.getStubChildrenOfTypeAsList(this, HaskellConid.class);
- }
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ @Override
+ public String toString() {
+ return HaskellPsiImplUtil.toString(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellModuleBodyImpl.java b/gen/intellij/haskell/psi/impl/HaskellModuleBodyImpl.java
index f1da0f8e3..c5cf03c1b 100644
--- a/gen/intellij/haskell/psi/impl/HaskellModuleBodyImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellModuleBodyImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitModuleBody(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
@@ -31,12 +32,6 @@ public HaskellImportDeclarations getImportDeclarations() {
return PsiTreeUtil.getChildOfType(this, HaskellImportDeclarations.class);
}
- @Override
- @Nullable
- public HaskellModuleDeclaration getModuleDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellModuleDeclaration.class);
- }
-
@Override
@NotNull
public List getPragmaList() {
diff --git a/gen/intellij/haskell/psi/impl/HaskellModuleDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellModuleDeclarationImpl.java
index 237735e07..aa1d47c20 100644
--- a/gen/intellij/haskell/psi/impl/HaskellModuleDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellModuleDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellModuleDeclarationImpl extends HaskellCompositeElementImpl implements HaskellModuleDeclaration {
+public class HaskellModuleDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellModuleDeclaration {
public HaskellModuleDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitModuleDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
@@ -46,6 +48,12 @@ public List getPragmaList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
}
+ @Override
+ @NotNull
+ public HaskellWhereClause getWhereClause() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellWhereClause.class));
+ }
+
@Override
public String getName() {
return HaskellPsiImplUtil.getName(this);
diff --git a/gen/intellij/haskell/psi/impl/HaskellNewconstrFielddeclImpl.java b/gen/intellij/haskell/psi/impl/HaskellNewconstrFielddeclImpl.java
index 89c2ac448..96de3583c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellNewconstrFielddeclImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellNewconstrFielddeclImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitNewconstrFielddecl(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellNewconstrImpl.java b/gen/intellij/haskell/psi/impl/HaskellNewconstrImpl.java
index c7a5615b5..ac84d345c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellNewconstrImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellNewconstrImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitNewconstr(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellNewtypeDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellNewtypeDeclarationImpl.java
index 7411c2ee6..7f715b832 100644
--- a/gen/intellij/haskell/psi/impl/HaskellNewtypeDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellNewtypeDeclarationImpl.java
@@ -13,16 +13,18 @@
import java.util.List;
-public class HaskellNewtypeDeclarationImpl extends HaskellCompositeElementImpl implements HaskellNewtypeDeclaration {
+public class HaskellNewtypeDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellNewtypeDeclaration {
public HaskellNewtypeDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitNewtypeDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellParenExpressionImpl.java b/gen/intellij/haskell/psi/impl/HaskellParenExpressionImpl.java
new file mode 100644
index 000000000..da7eb84d6
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellParenExpressionImpl.java
@@ -0,0 +1,35 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellExpression;
+import intellij.haskell.psi.HaskellParenExpression;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+public class HaskellParenExpressionImpl extends HaskellExpressionImpl implements HaskellParenExpression {
+
+ public HaskellParenExpressionImpl(ASTNode node) {
+ super(node);
+ }
+
+ @Override
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitParenExpression(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public HaskellExpression getExpression() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellExpression.class));
+ }
+
+}
diff --git a/gen/intellij/haskell/psi/impl/HaskellPragmaImpl.java b/gen/intellij/haskell/psi/impl/HaskellPragmaImpl.java
index 2ec8eedaf..b47c07a6c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellPragmaImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellPragmaImpl.java
@@ -1,34 +1,36 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellGeneralPragmaContent;
+import intellij.haskell.psi.HaskellPragma;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellPragmaImpl extends HaskellCompositeElementImpl implements HaskellPragma {
- public HaskellPragmaImpl(ASTNode node) {
- super(node);
- }
+ public HaskellPragmaImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitPragma(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitPragma(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public List getGeneralPragmaContentList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellGeneralPragmaContent.class);
- }
+ @Override
+ @NotNull
+ public List getGeneralPragmaContentList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellGeneralPragmaContent.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConImpl.java b/gen/intellij/haskell/psi/impl/HaskellQConImpl.java
index aa74a19b5..f03605296 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConImpl.java
@@ -1,58 +1,57 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellQConImpl extends HaskellCompositeElementImpl implements HaskellQCon {
- public HaskellQConImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQCon(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public HaskellConid getConid() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellConid.class));
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier1 getQConQualifier1() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier1.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier2 getQConQualifier2() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier2.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier3 getQConQualifier3() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier3.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier4 getQConQualifier4() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier4.class);
- }
+ public HaskellQConImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQCon(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public HaskellConid getConid() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellConid.class));
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier1 getQConQualifier1() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier1.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier2 getQConQualifier2() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier2.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier3 getQConQualifier3() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier3.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier4 getQConQualifier4() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier4.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConQualifier1Impl.java b/gen/intellij/haskell/psi/impl/HaskellQConQualifier1Impl.java
index 832d76c5d..e56016c06 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConQualifier1Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConQualifier1Impl.java
@@ -1,61 +1,63 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellQConQualifier1;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellQConQualifier1Impl extends HaskellQualifierElementImpl implements HaskellQConQualifier1 {
- public HaskellQConQualifier1Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQConQualifier1(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public HaskellConid getConid() {
- return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellConid.class));
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellQConQualifier1Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQConQualifier1(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public HaskellConid getConid() {
+ return notNullChild(PsiTreeUtil.getChildOfType(this, HaskellConid.class));
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConQualifier2Impl.java b/gen/intellij/haskell/psi/impl/HaskellQConQualifier2Impl.java
index f29d53f2f..6ad4c5953 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConQualifier2Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConQualifier2Impl.java
@@ -1,61 +1,65 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellQConQualifier2;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellQConQualifier2Impl extends HaskellQualifierElementImpl implements HaskellQConQualifier2 {
- public HaskellQConQualifier2Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQConQualifier2(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getConidList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellQConQualifier2Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQConQualifier2(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getConidList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConQualifier3Impl.java b/gen/intellij/haskell/psi/impl/HaskellQConQualifier3Impl.java
index d4d573430..4bcd20e7a 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConQualifier3Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConQualifier3Impl.java
@@ -1,61 +1,65 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellQConQualifier3;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellQConQualifier3Impl extends HaskellQualifierElementImpl implements HaskellQConQualifier3 {
- public HaskellQConQualifier3Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQConQualifier3(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getConidList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellQConQualifier3Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQConQualifier3(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getConidList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConQualifier4Impl.java b/gen/intellij/haskell/psi/impl/HaskellQConQualifier4Impl.java
index 9bfc19e53..fff192a01 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConQualifier4Impl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConQualifier4Impl.java
@@ -1,61 +1,65 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellQConQualifier4;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellQConQualifier4Impl extends HaskellQualifierElementImpl implements HaskellQConQualifier4 {
- public HaskellQConQualifier4Impl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQConQualifier4(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getConidList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellQConQualifier4Impl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQConQualifier4(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getConidList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQConQualifierImpl.java b/gen/intellij/haskell/psi/impl/HaskellQConQualifierImpl.java
index 612ac5294..aff765c87 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQConQualifierImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQConQualifierImpl.java
@@ -1,52 +1,51 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellQConQualifierImpl extends HaskellCompositeElementImpl implements HaskellQConQualifier {
- public HaskellQConQualifierImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQConQualifier(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier1 getQConQualifier1() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier1.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier2 getQConQualifier2() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier2.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier3 getQConQualifier3() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier3.class);
- }
-
- @Override
- @Nullable
- public HaskellQConQualifier4 getQConQualifier4() {
- return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier4.class);
- }
+ public HaskellQConQualifierImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQConQualifier(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier1 getQConQualifier1() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier1.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier2 getQConQualifier2() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier2.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier3 getQConQualifier3() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier3.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQConQualifier4 getQConQualifier4() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQConQualifier4.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQNameImpl.java b/gen/intellij/haskell/psi/impl/HaskellQNameImpl.java
index 0d9e6bd2b..31bd6cc21 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQNameImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQNameImpl.java
@@ -1,56 +1,55 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
import scala.Option;
public class HaskellQNameImpl extends HaskellCompositeElementImpl implements HaskellQName {
- public HaskellQNameImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQName(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellQVarCon getQVarCon() {
- return PsiTreeUtil.getChildOfType(this, HaskellQVarCon.class);
- }
-
- @Override
- @Nullable
- public HaskellVarCon getVarCon() {
- return PsiTreeUtil.getChildOfType(this, HaskellVarCon.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public HaskellNamedElement getIdentifierElement() {
- return HaskellPsiImplUtil.getIdentifierElement(this);
- }
-
- @Override
- public Option getQualifierName() {
- return HaskellPsiImplUtil.getQualifierName(this);
- }
+ public HaskellQNameImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQName(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellQVarCon getQVarCon() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQVarCon.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellVarCon getVarCon() {
+ return PsiTreeUtil.getChildOfType(this, HaskellVarCon.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public HaskellNamedElement getIdentifierElement() {
+ return HaskellPsiImplUtil.getIdentifierElement(this);
+ }
+
+ @Override
+ public Option getQualifierName() {
+ return HaskellPsiImplUtil.getQualifierName(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQNamesImpl.java b/gen/intellij/haskell/psi/impl/HaskellQNamesImpl.java
index 494b4ab72..bdea8d1ee 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQNamesImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQNamesImpl.java
@@ -1,34 +1,36 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellQNames;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellQNamesImpl extends HaskellCompositeElementImpl implements HaskellQNames {
- public HaskellQNamesImpl(ASTNode node) {
- super(node);
- }
+ public HaskellQNamesImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQNames(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQNames(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public List getQNameList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
- }
+ @Override
+ @NotNull
+ public List getQNameList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQVarConImpl.java b/gen/intellij/haskell/psi/impl/HaskellQVarConImpl.java
index 6550e0cde..e356ec20b 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQVarConImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQVarConImpl.java
@@ -1,68 +1,67 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellQVarConImpl extends HaskellCompositeElementImpl implements HaskellQVarCon {
- public HaskellQVarConImpl(ASTNode node) {
- super(node);
- }
+ public HaskellQVarConImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQVarCon(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQVarCon(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @Nullable
- public HaskellConsym getConsym() {
- return PsiTreeUtil.getChildOfType(this, HaskellConsym.class);
- }
+ @Override
+ @Nullable
+ public HaskellConsym getConsym() {
+ return PsiTreeUtil.getChildOfType(this, HaskellConsym.class);
+ }
- @Override
- @Nullable
- public HaskellQCon getQCon() {
- return PsiTreeUtil.getChildOfType(this, HaskellQCon.class);
- }
+ @Override
+ @Nullable
+ public HaskellQCon getQCon() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQCon.class);
+ }
- @Override
- @Nullable
- public HaskellQualifier getQualifier() {
- return PsiTreeUtil.getChildOfType(this, HaskellQualifier.class);
- }
+ @Override
+ @Nullable
+ public HaskellQualifier getQualifier() {
+ return PsiTreeUtil.getChildOfType(this, HaskellQualifier.class);
+ }
- @Override
- @Nullable
- public HaskellVarid getVarid() {
- return PsiTreeUtil.getChildOfType(this, HaskellVarid.class);
- }
+ @Override
+ @Nullable
+ public HaskellVarid getVarid() {
+ return PsiTreeUtil.getChildOfType(this, HaskellVarid.class);
+ }
- @Override
- @Nullable
- public HaskellVarsym getVarsym() {
- return PsiTreeUtil.getChildOfType(this, HaskellVarsym.class);
- }
+ @Override
+ @Nullable
+ public HaskellVarsym getVarsym() {
+ return PsiTreeUtil.getChildOfType(this, HaskellVarsym.class);
+ }
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
- @Override
- public HaskellNamedElement getIdentifierElement() {
- return HaskellPsiImplUtil.getIdentifierElement(this);
- }
+ @Override
+ public HaskellNamedElement getIdentifierElement() {
+ return HaskellPsiImplUtil.getIdentifierElement(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQualifierImpl.java b/gen/intellij/haskell/psi/impl/HaskellQualifierImpl.java
index bd2a58c82..32263689b 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQualifierImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQualifierImpl.java
@@ -1,61 +1,65 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.HaskellConid;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellQualifier;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellQualifierImpl extends HaskellQualifierElementImpl implements HaskellQualifier {
- public HaskellQualifierImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitQualifier(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getConidList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellQualifierImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitQualifier(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getConidList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellConid.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellQuasiQuoteImpl.java b/gen/intellij/haskell/psi/impl/HaskellQuasiQuoteImpl.java
index 862e9aa31..b6ef3308c 100644
--- a/gen/intellij/haskell/psi/impl/HaskellQuasiQuoteImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellQuasiQuoteImpl.java
@@ -17,6 +17,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitQuasiQuote(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellScontextImpl.java b/gen/intellij/haskell/psi/impl/HaskellScontextImpl.java
index 5be92da57..9781d47bd 100644
--- a/gen/intellij/haskell/psi/impl/HaskellScontextImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellScontextImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitScontext(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellShebangLineImpl.java b/gen/intellij/haskell/psi/impl/HaskellShebangLineImpl.java
index 3bffa16f4..71d657e6d 100644
--- a/gen/intellij/haskell/psi/impl/HaskellShebangLineImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellShebangLineImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitShebangLine(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellSimpleclassImpl.java b/gen/intellij/haskell/psi/impl/HaskellSimpleclassImpl.java
index acacb70d3..a264d2ad4 100644
--- a/gen/intellij/haskell/psi/impl/HaskellSimpleclassImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellSimpleclassImpl.java
@@ -1,40 +1,44 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellSimpleclass;
+import intellij.haskell.psi.HaskellTtype;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
public class HaskellSimpleclassImpl extends HaskellCompositeElementImpl implements HaskellSimpleclass {
- public HaskellSimpleclassImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitSimpleclass(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @NotNull
- public List getQNameList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
- }
-
- @Override
- @Nullable
- public HaskellTtype getTtype() {
- return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
- }
+ public HaskellSimpleclassImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitSimpleclass(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @NotNull
+ public List getQNameList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTtype getTtype() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellSimpletypeImpl.java b/gen/intellij/haskell/psi/impl/HaskellSimpletypeImpl.java
index 4626d9f39..773ab131e 100644
--- a/gen/intellij/haskell/psi/impl/HaskellSimpletypeImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellSimpletypeImpl.java
@@ -21,6 +21,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitSimpletype(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellTextLiteralImpl.java b/gen/intellij/haskell/psi/impl/HaskellTextLiteralImpl.java
index 41d695c66..5f9bbfe51 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTextLiteralImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTextLiteralImpl.java
@@ -1,28 +1,26 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellTextLiteral;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
public class HaskellTextLiteralImpl extends HaskellStringLiteralElementImpl implements HaskellTextLiteral {
- public HaskellTextLiteralImpl(ASTNode node) {
- super(node);
- }
+ public HaskellTextLiteralImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitTextLiteral(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitTextLiteral(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellTopDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellTopDeclarationImpl.java
index f8255cfb1..ef8ee55c2 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTopDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTopDeclarationImpl.java
@@ -1,112 +1,51 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellTopDeclarationImpl extends HaskellCompositeElementImpl implements HaskellTopDeclaration {
- public HaskellTopDeclarationImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitTopDeclaration(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellClassDeclaration getClassDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellClassDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellDataDeclaration getDataDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellDataDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellDefaultDeclaration getDefaultDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellDefaultDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellDerivingDeclaration getDerivingDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellDerivingDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellExpression getExpression() {
- return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
- }
-
- @Override
- @Nullable
- public HaskellFixityDeclaration getFixityDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellFixityDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellForeignDeclaration getForeignDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellForeignDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellInstanceDeclaration getInstanceDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellInstanceDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellNewtypeDeclaration getNewtypeDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellNewtypeDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellPragma getPragma() {
- return PsiTreeUtil.getChildOfType(this, HaskellPragma.class);
- }
-
- @Override
- @Nullable
- public HaskellTypeDeclaration getTypeDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellTypeFamilyDeclaration getTypeFamilyDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeFamilyDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellTypeInstanceDeclaration getTypeInstanceDeclaration() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeInstanceDeclaration.class);
- }
-
- @Override
- @Nullable
- public HaskellTypeSignature getTypeSignature() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeSignature.class);
- }
+ public HaskellTopDeclarationImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitTopDeclaration(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellExpression getExpression() {
+ return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellPragma getPragma() {
+ return PsiTreeUtil.getChildOfType(this, HaskellPragma.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTopDeclaration getTopDeclaration() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTopDeclaration.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellTypeSignature getTypeSignature() {
+ return PsiTreeUtil.getChildOfType(this, HaskellTypeSignature.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellTtypeImpl.java b/gen/intellij/haskell/psi/impl/HaskellTtypeImpl.java
index 021583a4f..b3c18c8d3 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTtypeImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTtypeImpl.java
@@ -20,6 +20,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTtype(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeDeclarationImpl.java
index 91b5ef169..dac037865 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeDeclarationImpl.java
@@ -13,27 +13,23 @@
import java.util.List;
-public class HaskellTypeDeclarationImpl extends HaskellCompositeElementImpl implements HaskellTypeDeclaration {
+public class HaskellTypeDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellTypeDeclaration {
public HaskellTypeDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTypeDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
}
- @Override
- @Nullable
- public HaskellExpression getExpression() {
- return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
- }
-
@Override
@NotNull
public List getKindSignatureList() {
@@ -64,12 +60,6 @@ public HaskellTtype getTtype() {
return PsiTreeUtil.getChildOfType(this, HaskellTtype.class);
}
- @Override
- @Nullable
- public HaskellTypeSignature getTypeSignature() {
- return PsiTreeUtil.getChildOfType(this, HaskellTypeSignature.class);
- }
-
@Override
public String getName() {
return HaskellPsiImplUtil.getName(this);
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeEqualityImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeEqualityImpl.java
index 8e9eb2ca0..4be754f4e 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeEqualityImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeEqualityImpl.java
@@ -1,34 +1,36 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.*;
+import intellij.haskell.psi.HaskellQName;
+import intellij.haskell.psi.HaskellTypeEquality;
+import intellij.haskell.psi.HaskellVisitor;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.List;
public class HaskellTypeEqualityImpl extends HaskellCompositeElementImpl implements HaskellTypeEquality {
- public HaskellTypeEqualityImpl(ASTNode node) {
- super(node);
- }
+ public HaskellTypeEqualityImpl(ASTNode node) {
+ super(node);
+ }
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitTypeEquality(this);
- }
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitTypeEquality(this);
+ }
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
- @Override
- @NotNull
- public List getQNameList() {
- return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
- }
+ @Override
+ @NotNull
+ public List getQNameList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellQName.class);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeFamilyDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeFamilyDeclarationImpl.java
index 9a70328e9..494aeade1 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeFamilyDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeFamilyDeclarationImpl.java
@@ -7,33 +7,28 @@
import com.intellij.psi.util.PsiTreeUtil;
import intellij.haskell.psi.*;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
import scala.Option;
import scala.collection.immutable.Seq;
import java.util.List;
-public class HaskellTypeFamilyDeclarationImpl extends HaskellCompositeElementImpl implements HaskellTypeFamilyDeclaration {
+public class HaskellTypeFamilyDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellTypeFamilyDeclaration {
public HaskellTypeFamilyDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTypeFamilyDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
}
- @Override
- @Nullable
- public HaskellExpression getExpression() {
- return PsiTreeUtil.getChildOfType(this, HaskellExpression.class);
- }
-
@Override
@NotNull
public List getPragmaList() {
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeFamilyTypeImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeFamilyTypeImpl.java
index 2f4d311be..a44679839 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeFamilyTypeImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeFamilyTypeImpl.java
@@ -19,6 +19,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTypeFamilyType(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeInstanceDeclarationImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeInstanceDeclarationImpl.java
index 7ac58e7e7..4450ac2af 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeInstanceDeclarationImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeInstanceDeclarationImpl.java
@@ -12,16 +12,18 @@
import java.util.List;
-public class HaskellTypeInstanceDeclarationImpl extends HaskellCompositeElementImpl implements HaskellTypeInstanceDeclaration {
+public class HaskellTypeInstanceDeclarationImpl extends HaskellTopDeclarationImpl implements HaskellTypeInstanceDeclaration {
public HaskellTypeInstanceDeclarationImpl(ASTNode node) {
super(node);
}
+ @Override
public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTypeInstanceDeclaration(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellTypeSignatureImpl.java b/gen/intellij/haskell/psi/impl/HaskellTypeSignatureImpl.java
index edb6f41d6..482d06b10 100644
--- a/gen/intellij/haskell/psi/impl/HaskellTypeSignatureImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellTypeSignatureImpl.java
@@ -22,6 +22,7 @@ public void accept(@NotNull HaskellVisitor visitor) {
visitor.visitTypeSignature(this);
}
+ @Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
else super.accept(visitor);
diff --git a/gen/intellij/haskell/psi/impl/HaskellVarConImpl.java b/gen/intellij/haskell/psi/impl/HaskellVarConImpl.java
index 691c412b5..16b7c941a 100644
--- a/gen/intellij/haskell/psi/impl/HaskellVarConImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellVarConImpl.java
@@ -1,62 +1,61 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
-import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
public class HaskellVarConImpl extends HaskellCompositeElementImpl implements HaskellVarCon {
- public HaskellVarConImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitVarCon(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- @Nullable
- public HaskellConid getConid() {
- return PsiTreeUtil.getChildOfType(this, HaskellConid.class);
- }
-
- @Override
- @Nullable
- public HaskellConsym getConsym() {
- return PsiTreeUtil.getChildOfType(this, HaskellConsym.class);
- }
-
- @Override
- @Nullable
- public HaskellVarid getVarid() {
- return PsiTreeUtil.getChildOfType(this, HaskellVarid.class);
- }
-
- @Override
- @Nullable
- public HaskellVarsym getVarsym() {
- return PsiTreeUtil.getChildOfType(this, HaskellVarsym.class);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public HaskellNamedElement getIdentifierElement() {
- return HaskellPsiImplUtil.getIdentifierElement(this);
- }
+ public HaskellVarConImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitVarCon(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellConid getConid() {
+ return PsiTreeUtil.getChildOfType(this, HaskellConid.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellConsym getConsym() {
+ return PsiTreeUtil.getChildOfType(this, HaskellConsym.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellVarid getVarid() {
+ return PsiTreeUtil.getChildOfType(this, HaskellVarid.class);
+ }
+
+ @Override
+ @Nullable
+ public HaskellVarsym getVarsym() {
+ return PsiTreeUtil.getChildOfType(this, HaskellVarsym.class);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public HaskellNamedElement getIdentifierElement() {
+ return HaskellPsiImplUtil.getIdentifierElement(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellVaridImpl.java b/gen/intellij/haskell/psi/impl/HaskellVaridImpl.java
index 6b75f12f1..e118f72b0 100644
--- a/gen/intellij/haskell/psi/impl/HaskellVaridImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellVaridImpl.java
@@ -1,61 +1,66 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.stubs.HaskellVaridStub;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
import com.intellij.psi.stubs.IStubElementType;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellVarid;
+import intellij.haskell.psi.HaskellVisitor;
+import intellij.haskell.psi.stubs.HaskellVaridStub;
+import org.jetbrains.annotations.NotNull;
public class HaskellVaridImpl extends HaskellNamedStubBasedPsiElementBase implements HaskellVarid {
- public HaskellVaridImpl(@NotNull HaskellVaridStub stub, IStubElementType type) {
- super(stub, type);
- }
-
- public HaskellVaridImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitVarid(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellVaridImpl(@NotNull HaskellVaridStub stub, IStubElementType type) {
+ super(stub, type);
+ }
+
+ public HaskellVaridImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitVarid(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
+
+ @Override
+ public String toString() {
+ return HaskellPsiImplUtil.toString(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellVarsymImpl.java b/gen/intellij/haskell/psi/impl/HaskellVarsymImpl.java
index 9bf3cd030..1a30141ce 100644
--- a/gen/intellij/haskell/psi/impl/HaskellVarsymImpl.java
+++ b/gen/intellij/haskell/psi/impl/HaskellVarsymImpl.java
@@ -1,61 +1,66 @@
// This is a generated file. Not intended for manual editing.
package intellij.haskell.psi.impl;
-import java.util.List;
-import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
+import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
-import com.intellij.psi.util.PsiTreeUtil;
-import static intellij.haskell.psi.HaskellTypes.*;
-import intellij.haskell.psi.stubs.HaskellVarsymStub;
-import intellij.haskell.psi.*;
-import com.intellij.navigation.ItemPresentation;
import com.intellij.psi.PsiReference;
import com.intellij.psi.stubs.IStubElementType;
+import intellij.haskell.psi.HaskellNamedElement;
+import intellij.haskell.psi.HaskellVarsym;
+import intellij.haskell.psi.HaskellVisitor;
+import intellij.haskell.psi.stubs.HaskellVarsymStub;
+import org.jetbrains.annotations.NotNull;
public class HaskellVarsymImpl extends HaskellNamedStubBasedPsiElementBase implements HaskellVarsym {
- public HaskellVarsymImpl(@NotNull HaskellVarsymStub stub, IStubElementType type) {
- super(stub, type);
- }
-
- public HaskellVarsymImpl(ASTNode node) {
- super(node);
- }
-
- public void accept(@NotNull HaskellVisitor visitor) {
- visitor.visitVarsym(this);
- }
-
- public void accept(@NotNull PsiElementVisitor visitor) {
- if (visitor instanceof HaskellVisitor) accept((HaskellVisitor)visitor);
- else super.accept(visitor);
- }
-
- @Override
- public String getName() {
- return HaskellPsiImplUtil.getName(this);
- }
-
- @Override
- public PsiElement setName(String newName) {
- return HaskellPsiImplUtil.setName(this, newName);
- }
-
- @Override
- public HaskellNamedElement getNameIdentifier() {
- return HaskellPsiImplUtil.getNameIdentifier(this);
- }
-
- @Override
- public PsiReference getReference() {
- return HaskellPsiImplUtil.getReference(this);
- }
-
- @Override
- public ItemPresentation getPresentation() {
- return HaskellPsiImplUtil.getPresentation(this);
- }
+ public HaskellVarsymImpl(@NotNull HaskellVarsymStub stub, IStubElementType type) {
+ super(stub, type);
+ }
+
+ public HaskellVarsymImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitVarsym(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ public String getName() {
+ return HaskellPsiImplUtil.getName(this);
+ }
+
+ @Override
+ public PsiElement setName(String newName) {
+ return HaskellPsiImplUtil.setName(this, newName);
+ }
+
+ @Override
+ public HaskellNamedElement getNameIdentifier() {
+ return HaskellPsiImplUtil.getNameIdentifier(this);
+ }
+
+ @Override
+ public PsiReference getReference() {
+ return HaskellPsiImplUtil.getReference(this);
+ }
+
+ @Override
+ public ItemPresentation getPresentation() {
+ return HaskellPsiImplUtil.getPresentation(this);
+ }
+
+ @Override
+ public String toString() {
+ return HaskellPsiImplUtil.toString(this);
+ }
}
diff --git a/gen/intellij/haskell/psi/impl/HaskellWhereClauseImpl.java b/gen/intellij/haskell/psi/impl/HaskellWhereClauseImpl.java
new file mode 100644
index 000000000..1c683feef
--- /dev/null
+++ b/gen/intellij/haskell/psi/impl/HaskellWhereClauseImpl.java
@@ -0,0 +1,47 @@
+// This is a generated file. Not intended for manual editing.
+package intellij.haskell.psi.impl;
+
+import com.intellij.lang.ASTNode;
+import com.intellij.psi.PsiElementVisitor;
+import com.intellij.psi.util.PsiTreeUtil;
+import intellij.haskell.psi.*;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import java.util.List;
+
+public class HaskellWhereClauseImpl extends HaskellCompositeElementImpl implements HaskellWhereClause {
+
+ public HaskellWhereClauseImpl(ASTNode node) {
+ super(node);
+ }
+
+ public void accept(@NotNull HaskellVisitor visitor) {
+ visitor.visitWhereClause(this);
+ }
+
+ @Override
+ public void accept(@NotNull PsiElementVisitor visitor) {
+ if (visitor instanceof HaskellVisitor) accept((HaskellVisitor) visitor);
+ else super.accept(visitor);
+ }
+
+ @Override
+ @Nullable
+ public HaskellImportDeclarations getImportDeclarations() {
+ return PsiTreeUtil.getChildOfType(this, HaskellImportDeclarations.class);
+ }
+
+ @Override
+ @NotNull
+ public List getPragmaList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellPragma.class);
+ }
+
+ @Override
+ @NotNull
+ public List getTopDeclarationList() {
+ return PsiTreeUtil.getChildrenOfTypeAsList(this, HaskellTopDeclaration.class);
+ }
+
+}
diff --git a/src/main/scala/intellij/haskell/HaskellLexerAdapter.scala b/src/main/scala/intellij/haskell/HaskellLexerAdapter.scala
index db598ecd7..aef70e537 100644
--- a/src/main/scala/intellij/haskell/HaskellLexerAdapter.scala
+++ b/src/main/scala/intellij/haskell/HaskellLexerAdapter.scala
@@ -16,6 +16,289 @@
package intellij.haskell
-import com.intellij.lexer.FlexAdapter
+import com.intellij.lexer.{FlexAdapter, Lexer, LexerBase}
+import com.intellij.psi.tree.{IElementType, TokenSet}
+import com.intellij.util.containers.IntStack
+
+import scala.annotation.tailrec
+import scala.collection.mutable.ArrayBuffer
class HaskellLexerAdapter extends FlexAdapter(new _HaskellLexer)
+
+/**
+ * This is the main lexer. It wraps the underlying lexer generated by Flex
+ * to synthesize special tokens based on whitespace-sensitive layout rules
+ * in the layout-based languages. This makes it possible to write a
+ * traditional parser using JFlex/Grammar-Kit.
+ *
+ * This is a modified version of:
+ * https://github.com/klazuka/intellij-elm/blob/master/src/main/kotlin/org/elm/lang/core/lexer/ElmLayoutLexer.kt
+ *
+ * See also
+ * https://github.com/owo-lang/intellij-dtlc/blob/master/src/org/ice1000/tt/psi/layout.kt
+ */
+class HaskellLayoutLexer(private val lexer: Lexer,
+ private val endOfLine: IElementType,
+ private val layoutStart: IElementType,
+ private val layoutSeparator: IElementType,
+ private val layoutEnd: IElementType,
+ private val nonCodeTokens: TokenSet,
+ private val layoutCreatingTokens: TokenSet,
+ private val letInTokens: LetIn) extends LexerBase {
+
+ private case class Line(var columnWhereCodeStarts: Option[Int] = None)
+
+ private case class Token(elementType: Option[IElementType],
+ start: Int,
+ end: Int,
+ column: Int,
+ line: Line
+ ) {
+ override def toString = s"${elementType.toString} (${getBufferSequence.subSequence(start, end)}) ($start, $end)"
+
+ val isEOF: Boolean = elementType.isEmpty
+ val isCode: Boolean = elementType.exists(et => !nonCodeTokens.contains(et)) && !isEOF
+
+ def isNextLayoutLine: Boolean = isCode && line.columnWhereCodeStarts.contains(column)
+ }
+
+ private val tokens = new ArrayBuffer[Token](100)
+ private var currentTokenIndex = 0
+
+ private def currentToken = tokens.lift(currentTokenIndex)
+
+ def start(buffer: CharSequence, startOffset: Int, endOffset: Int, initialState: Int) {
+ require(startOffset == 0, "does not support incremental lexing: startOffset must be 0")
+ require(initialState == 0, "does not support incremental lexing: initialState must be 0")
+
+ // Start the incremental lexer
+ lexer.start(buffer, startOffset, endOffset, initialState)
+
+ doLayout()
+ currentTokenIndex = 0
+ }
+
+ def getState: Int = lexer.getState
+
+ def getBufferSequence: CharSequence = lexer.getBufferSequence
+
+ def getBufferEnd: Int = lexer.getBufferEnd
+
+ def getTokenType: IElementType = currentToken.flatMap(_.elementType).orNull
+
+ def getTokenStart: Int = currentToken.map(_.start).getOrElse(null.asInstanceOf[Int])
+
+ def getTokenEnd: Int = currentToken.map(_.end).getOrElse(null.asInstanceOf[Int])
+
+ def advance() {
+ if (currentToken.exists(ct => !ct.isEOF && ct.elementType.isDefined)) {
+ currentTokenIndex += 1
+ }
+ }
+
+ private def slurpTokens(): Unit = {
+ var currentColumn = 0
+
+ @tailrec
+ @inline
+ def doIt(line: Line): Unit = {
+ val token = Token(Option(lexer.getTokenType), lexer.getTokenStart, lexer.getTokenEnd, currentColumn, line)
+ tokens += token
+
+ if (line.columnWhereCodeStarts.isEmpty && token.isCode) {
+ line.columnWhereCodeStarts = Some(currentColumn)
+ }
+
+ currentColumn += token.end - token.start
+
+ if (!token.isEOF) {
+ val nextLine = if (token.elementType.contains(endOfLine)) {
+ currentColumn = 0
+ Line()
+ } else {
+ line
+ }
+
+ lexer.advance()
+
+ doIt(nextLine)
+ }
+ }
+
+ doIt(Line())
+ }
+
+ private trait State
+
+ /**
+ * Waiting for the first line of code inside a let/in or case/of in order to open a new section.
+ */
+ private case object WaitingForLayout extends State
+
+ /**
+ * Looking to emit virtual delimiters between declarations at the same indent level
+ * and closing out sections when appropriate.
+ */
+ private case object Normal extends State
+
+ private def doLayout() {
+ slurpTokens()
+
+ // initial state
+ var i = 0
+ var state: State = Normal
+ val indentStack = new IndentStack()
+ indentStack.push(-1) // top-level is an implicit section
+
+ while (i < tokens.size) {
+ val token = tokens(i)
+
+ state match {
+ case WaitingForLayout =>
+ if (token.isCode && token.column > indentStack.peek()) {
+ tokens.insert(i, virtualToken(layoutStart, tokens(i)))
+ i += 1
+ indentStack.push(token.column)
+ if (!token.elementType.exists(layoutCreatingTokens.contains)) {
+ state = Normal
+ }
+ } else if (token.isNextLayoutLine && (token.column <= indentStack.peek())) {
+ // The program is malformed: most likely because the new section is empty
+ // (the user is still editing the text) or they did not indent the section.
+ // The empty section case is a common workflow, so we must handle it by bailing
+ // out of section building and re-process the token in the 'Normal' state.
+ // If, instead, the problem is that the user did not indent the text,
+ // tough luck (although we may want to handle this better in the future).
+ state = Normal
+ i -= 1
+ }
+ case Normal =>
+ if (token.elementType.exists(layoutCreatingTokens.contains)) {
+ state = WaitingForLayout
+ }
+ if (token.isNextLayoutLine) {
+ i = insideLayout(i, token, indentStack)
+ }
+ if (isSingleLineLetIn(i, tokens.toSeq, letInTokens)) {
+ tokens.insert(i, virtualToken(layoutEnd, tokens(i - 1)))
+ i += 1
+ indentStack.pop()
+ }
+ }
+
+ if (token.elementType.isEmpty)
+ while (indentStack.pop() >= 0) {
+ tokens += virtualToken(layoutEnd, token)
+ i += 1
+ }
+
+ i += 1
+ }
+ }
+
+
+ /**
+ * Extracted from [doLayout] to reduce indentation.
+ * We want to insert virtual tokens immediately after the newline that follows
+ * the last code token. This is important so that:
+ *
+ * (1) trailing spaces at the end of the declaration are part of the declaration
+ * (2) top-level comments that follow the declaration are NOT part of the declaration
+ *
+ * Note that a virtual token has to appear after a whitespace token, since the real token
+ * is combined with the virtual token during parsing (their text ranges overlap).
+ */
+ private def insideLayout(i: Int, token: Token, indentStack: IndentStack): Int = {
+ val insertAt = {
+ for {
+ k <- ((i - 1) to 1 by -1).view
+ if tokens(k).isCode
+ m <- ((k + 1) until (i + 1)).view
+ if tokens(m).elementType.contains(endOfLine)
+ } yield {
+ m
+ }
+ }.headOption.getOrElse(i)
+
+ val precedingToken = tokens(insertAt)
+
+ @tailrec
+ def doIt(iA: Int, mutI: Int): Int = {
+ if (!indentStack.empty()) {
+ if (token.column == indentStack.peek()) {
+ tokens.insert(
+ iA, virtualToken(layoutSeparator, precedingToken))
+ mutI + 1
+ } else if (token.column < indentStack.peek()) {
+ tokens.insert(iA, virtualToken(layoutEnd, precedingToken))
+ indentStack.pop()
+ doIt(iA + 1, mutI + 1)
+ } else
+ mutI
+ } else {
+ mutI
+ }
+ }
+
+ doIt(insertAt, i)
+ }
+
+ /**
+ * Many languages allows for a let/in expression on a single line:
+ * e.g. ```foo = let x = 0 in x + 1```
+ * I don't know why you would ever do this, but some people do:
+ * https://github.com/klazuka/intellij-elm/issues/20#issuecomment-374843581
+ * *
+ * If we didn't have special handling for it, the `let` section wouldn't
+ * get closed-out until a subsequent line with less indent, which would be wrong.
+ */
+ private def isSingleLineLetIn(index: Int, tokens: Seq[Token], letInTokens: LetIn): Boolean = {
+ val token = tokens(index)
+ if (token.elementType.contains(letInTokens.inToken)) {
+ val thisLine = token.line
+
+ @tailrec
+ def doit(i: Int): Boolean = {
+ val j = i - 1
+ val token = tokens(j)
+ if (token.elementType.contains(letInTokens.letToken)) {
+ true
+ } else {
+ if (token.line == thisLine && j < tokens.size) {
+ doit(j)
+ } else {
+ false
+ }
+ }
+ }
+
+ doit(index)
+ } else {
+ false
+ }
+ }
+
+ private def virtualToken(elementType: IElementType, precedesToken: Token) = {
+ Token(
+ elementType = Option(elementType),
+ start = precedesToken.start,
+ end = precedesToken.start, // yes, this is intentional
+ column = precedesToken.column,
+ line = precedesToken.line
+ )
+ }
+
+ /**
+ * In a well-formed program, there would be no way to underflow the indent stack,
+ * but this lexer will be asked to lex malformed/partial programs, so we need
+ * to guard against trying to use the stack when it's empty.
+ */
+ private class IndentStack extends IntStack {
+ override def peek(): Int = if (super.empty()) -1 else super.peek()
+
+ override def pop(): Int = if (super.empty()) -1 else super.pop()
+ }
+
+}
+
+case class LetIn(letToken: IElementType, inToken: IElementType)
diff --git a/src/main/scala/intellij/haskell/HaskellParserDefinition.scala b/src/main/scala/intellij/haskell/HaskellParserDefinition.scala
index 04c845347..8320eb59b 100644
--- a/src/main/scala/intellij/haskell/HaskellParserDefinition.scala
+++ b/src/main/scala/intellij/haskell/HaskellParserDefinition.scala
@@ -22,14 +22,16 @@ import com.intellij.lexer.Lexer
import com.intellij.openapi.project.Project
import com.intellij.psi._
import com.intellij.psi.tree.{IFileElementType, TokenSet}
+import intellij.haskell.HaskellParserDefinition.{Comments, WhiteSpaces}
import intellij.haskell.parser.HaskellParser
+import intellij.haskell.psi.HaskellTypes
import intellij.haskell.psi.HaskellTypes._
import intellij.haskell.psi.stubs.types.HaskellFileElementType
import org.jetbrains.annotations.NotNull
//noinspection TypeAnnotation
object HaskellParserDefinition {
- final val WhiteSpaces = TokenSet.create(TokenType.WHITE_SPACE)
+ final val WhiteSpaces = TokenSet.create(TokenType.WHITE_SPACE, HS_NEWLINE)
final val Comments = TokenSet.create(HS_COMMENT, HS_NCOMMENT, HS_HADDOCK, HS_NHADDOCK)
final val PragmaStartEndIds = TokenSet.create(HS_PRAGMA_START, HS_PRAGMA_END)
final val ReservedIdS = TokenSet.create(HS_CASE, HS_CLASS, HS_DATA, HS_DEFAULT, HS_DERIVING, HS_DO, HS_ELSE, HS_IF, HS_IMPORT,
@@ -51,7 +53,16 @@ class HaskellParserDefinition extends ParserDefinition {
@NotNull
def createLexer(project: Project): Lexer = {
- new HaskellLexerAdapter
+ new HaskellLayoutLexer(
+ new HaskellLexerAdapter,
+ HaskellTypes.HS_NEWLINE,
+ HaskellTypes.HS_LEFT_BRACE,
+ HaskellTypes.HS_SEMICOLON,
+ HaskellTypes.HS_RIGHT_BRACE,
+ TokenSet.orSet(Comments, WhiteSpaces, TokenSet.create(HS_LEFT_BRACE, HS_SEMICOLON, HS_RIGHT_BRACE)),
+ TokenSet.create(HS_WHERE, HS_LET, HS_DO, HS_OF),
+ LetIn(HS_LET, HS_IN)
+ )
}
def createParser(project: Project): PsiParser = {
diff --git a/src/main/scala/intellij/haskell/_HaskellLexer.flex b/src/main/scala/intellij/haskell/_HaskellLexer.flex
index e786516d4..8c7af6db6 100644
--- a/src/main/scala/intellij/haskell/_HaskellLexer.flex
+++ b/src/main/scala/intellij/haskell/_HaskellLexer.flex
@@ -227,6 +227,9 @@ nhaddock_start = {left_brace}{dash}{white_char}?{vertical_bar}
return HS_ONE_PRAGMA;
}
+ #[^-]+ {
+ return HS_ONE_PRAGMA;
+ }
}
{pragma_start} {
diff --git a/src/main/scala/intellij/haskell/haskell.bnf b/src/main/scala/intellij/haskell/haskell.bnf
index a3563b93b..7314451df 100644
--- a/src/main/scala/intellij/haskell/haskell.bnf
+++ b/src/main/scala/intellij/haskell/haskell.bnf
@@ -20,6 +20,7 @@
elementTypePrefix="HS_"
methods("varid|varsym|conid|consym|modid")=[getName setName getNameIdentifier getReference getPresentation]
+ methods("varid|conid|modid|varsym")=[toString]
extends("varid|varsym|conid|consym|modid")="intellij.haskell.psi.impl.HaskellNamedStubBasedPsiElementBase>"
implements("varid|varsym|conid|consym|modid")="intellij.haskell.psi.HaskellNamedElement"
elementTypeFactory("varid|varsym|conid|consym|modid")="intellij.haskell.psi.impl.HaskellElementTypeFactory.factory"
@@ -28,6 +29,7 @@
methods("default_declaration|foreign_declaration|module_declaration")=[getName getPresentation getIdentifierElements getModuleName]
implements("type_signature|type_declaration|class_declaration|instance_declaration|type_family_declaration|deriving_declaration|type_instance_declaration|default_declaration")="intellij.haskell.psi.HaskellDeclarationElement"
implements("default_declaration|foreign_declaration|module_declaration")="intellij.haskell.psi.HaskellDeclarationElement"
+ extends(".*_declaration")=top_declaration
methods("data_declaration|newtype_declaration")=[getName getPresentation getIdentifierElements getModuleName getDataTypeConstructor]
implements("data_declaration|newtype_declaration")="intellij.haskell.psi.HaskellDataConstructorDeclarationElement"
@@ -39,6 +41,7 @@
implements("expression")="intellij.haskell.psi.HaskellExpressionElement"
mixin("expression")="intellij.haskell.psi.impl.HaskellExpressionElementImpl"
+ extends(".*_expression")=expression
methods("q_con_qualifier1|q_con_qualifier2|q_con_qualifier3|q_con_qualifier4|qualifier")=[getName setName getNameIdentifier getReference getPresentation]
implements("q_con_qualifier1|q_con_qualifier2|q_con_qualifier3|q_con_qualifier4|qualifier")="intellij.haskell.psi.HaskellQualifierElement"
@@ -60,7 +63,8 @@ pragma ::= PRAGMA_START general_pragma_content* PRAGMA_END
general_pragma_content ::= ONE_PRAGMA | PRAGMA_SEP | CHARACTER_LITERAL | STRING_LITERAL | NEWLINE | DASH | HASH
module_body ::= module_declaration onl body | onl body
-module_declaration ::= MODULE modid onl pragma? onl (exports onl)? WHERE
+module_declaration ::= MODULE modid onl pragma? onl (exports onl)? where_clause
+where_clause ::= WHERE LEFT_BRACE body RIGHT_BRACE? {pin=1}
private body ::= import_declarations? onl top_declarations onl
import_declarations ::= import_declaration (onl import_declaration)* (DIRECTIVE | INCLUDE_DIRECTIVE)*
@@ -82,7 +86,8 @@ import_package_name ::= text_literal
top_declaration ::= (type_declaration | data_declaration | newtype_declaration | class_declaration | instance_declaration | default_declaration |
foreign_declaration | type_family_declaration | deriving_declaration | type_instance_declaration | type_signature |
- pragma | fixity_declaration | expression | DIRECTIVE) SEMICOLON? NEWLINE?
+ pragma | fixity_declaration | expression | DIRECTIVE | implementation_declaration) SEMICOLON? NEWLINE?
+implementation_declaration ::= expression EQUAL expression {pin=2}
type_declaration ::= TYPE onls simpletype onls COLON_COLON onls ttype |
TYPE onls simpletype onls EQUAL onls ttype onls VERTICAL_BAR q_name RIGHT_ARROW q_name |
@@ -237,15 +242,30 @@ cdecl_data_declaration ::= DATA (onls pragma)? (onls LEFT_PAREN onls kind_s
cdecl ::= type_signature | cdecl_data_declaration | cidecl
cidecl ::= pragma | instance_declaration | default_declaration |
- newtype_declaration | data_declaration | type_declaration | type_family_declaration | line_expression
-
-expression ::= line_expression (nls line_expression)*
+ newtype_declaration | data_declaration | type_declaration | type_family_declaration
+ | line_expression | implementation_declaration
+
+expression ::= let_abstraction | do_notation_expression | if_expression | application_expression | case_of_expression | atom | line_expression (nls line_expression)*
+paren_expression ::= LEFT_PAREN expression RIGHT_PAREN
+bracket_expression ::= LEFT_BRACKET expression RIGHT_BRACKET
+application_expression ::= expression atom+
+private atom ::= atom_expression | bracket_expression | paren_expression
+atom_expression ::= general_id
private line_expression ::= (general_id | LIST_COMPREHENSION)+ | NOT_TERMINATED_QQ_EXPRESSION
private general_id ::= quasi_quote | q_name | symbol_reserved_op | reserved_id | LEFT_PAREN | RIGHT_PAREN | FLOAT |
SEMICOLON | LEFT_BRACKET | RIGHT_BRACKET | literal | LEFT_BRACE | RIGHT_BRACE |
COMMA | QUOTE | BACKQUOTE | fixity |
pragma | DIRECTIVE | DOUBLE_QUOTES
+let_abstraction ::= LET LEFT_BRACE let_definition* cdecl? RIGHT_BRACE? semi IN expression {pin=1 extends=expression}
+do_notation_expression ::= DO LEFT_BRACE do_definition* expression? RIGHT_BRACE? {pin=1}
+if_expression ::= IF expression THEN expression ELSE expression {pin=1}
+case_of_expression ::= CASE expression OF LEFT_BRACE case_definition* case_clause? RIGHT_BRACE? {pin=1}
+
+private let_definition ::= cdecl SEMICOLON
+private do_definition ::= expression SEMICOLON
+private case_definition ::= case_clause SEMICOLON
+case_clause ::= expression RIGHT_ARROW expression {pin=2}
dot_dot ::= DOT DOT
private symbol_reserved_op ::= dot_dot | COLON_COLON | EQUAL | BACKSLASH | VERTICAL_BAR | LEFT_ARROW | RIGHT_ARROW | AT | TILDE | DOUBLE_RIGHT_ARROW
diff --git a/src/main/scala/intellij/haskell/psi/impl/HaskellPsiImplUtil.scala b/src/main/scala/intellij/haskell/psi/impl/HaskellPsiImplUtil.scala
index 5045ca6e4..af09840d8 100644
--- a/src/main/scala/intellij/haskell/psi/impl/HaskellPsiImplUtil.scala
+++ b/src/main/scala/intellij/haskell/psi/impl/HaskellPsiImplUtil.scala
@@ -34,6 +34,22 @@ object HaskellPsiImplUtil {
qVarCon.getText
}
+ def toString(varid: HaskellVarid): String = {
+ s"HaskellVarid(${varid.getElementType})"
+ }
+
+ def toString(varid: HaskellVarsym): String = {
+ s"HaskellVarsym(${varid.getElementType})"
+ }
+
+ def toString(varid: HaskellConid): String = {
+ s"HaskellVarid(${varid.getElementType})"
+ }
+
+ def toString(varid: HaskellModid): String = {
+ s"HaskellVarid(${varid.getElementType})"
+ }
+
def getIdentifierElement(qVarCon: HaskellQVarCon): HaskellNamedElement = {
Option(qVarCon.getVarid).orElse(Option(qVarCon.getQCon).map(_.getConid)).orElse(Option(qVarCon.getConsym)).orElse(Option(qVarCon.getVarsym)).
getOrElse(throw new IllegalStateException(s"Identifier for ${qVarCon.getText} should exist"))
diff --git a/src/test/scala/intellij/haskell/HaskellParsingTest.scala b/src/test/scala/intellij/haskell/HaskellParsingTest.scala
index 734a78fac..df6bc0498 100644
--- a/src/test/scala/intellij/haskell/HaskellParsingTest.scala
+++ b/src/test/scala/intellij/haskell/HaskellParsingTest.scala
@@ -6,10 +6,30 @@ class HaskellParsingTest extends ParsingTestCase("", "hs", new HaskellParserDefi
override def getTestDataPath: String = "src/test/testData/parsing-hs"
def testPragma(): Unit = {
- doTest(true)
+ doTest(true, true)
}
def testComplicatedPragma(): Unit = {
- doTest(true)
+ doTest(true, true)
+ }
+
+ def testSimpleLayout(): Unit = {
+ doTest(true, true)
+ }
+
+ def testOneLineLetIn(): Unit = {
+ doTest(true, true)
+ }
+
+ def testDoLayout(): Unit = {
+ doTest(true, true)
+ }
+
+ def testCaseOf(): Unit = {
+ doTest(true, true)
+ }
+
+ def testImports(): Unit = {
+ doTest(true, true)
}
}
diff --git a/src/test/testData/parsing-hs/CaseOf.hs b/src/test/testData/parsing-hs/CaseOf.hs
new file mode 100644
index 000000000..b4de28bea
--- /dev/null
+++ b/src/test/testData/parsing-hs/CaseOf.hs
@@ -0,0 +1,3 @@
+ifExpr a b c = case a of
+ True -> b
+ False -> c
diff --git a/src/test/testData/parsing-hs/CaseOf.txt b/src/test/testData/parsing-hs/CaseOf.txt
new file mode 100644
index 000000000..837779dd6
--- /dev/null
+++ b/src/test/testData/parsing-hs/CaseOf.txt
@@ -0,0 +1,72 @@
+Haskell file
+ HS_MODULE_BODY
+ HS_IMPLEMENTATION_DECLARATION
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('ifExpr')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('a')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('b')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('c')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_CASE_OF_EXPRESSION
+ PsiElement(HaskellTokenType.CASE)('case')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('a')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.OF)('of')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_CASE_CLAUSE
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('True')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.RIGHT_ARROW)('->')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('b')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_CASE_CLAUSE
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('False')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.RIGHT_ARROW)('->')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('c')
\ No newline at end of file
diff --git a/src/test/testData/parsing-hs/DoLayout.hs b/src/test/testData/parsing-hs/DoLayout.hs
new file mode 100644
index 000000000..64cc6d9a0
--- /dev/null
+++ b/src/test/testData/parsing-hs/DoLayout.hs
@@ -0,0 +1,6 @@
+module TestModule where
+
+ doNotation = do
+ e <- f
+ a <- g
+ return $ e + a
diff --git a/src/test/testData/parsing-hs/DoLayout.txt b/src/test/testData/parsing-hs/DoLayout.txt
new file mode 100644
index 000000000..c091dd202
--- /dev/null
+++ b/src/test/testData/parsing-hs/DoLayout.txt
@@ -0,0 +1,91 @@
+Haskell file
+ HS_MODULE_BODY
+ HS_MODULE_DECLARATION
+ PsiElement(HaskellTokenType.MODULE)('module')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('TestModule')
+ PsiWhiteSpace(' ')
+ HS_WHERE_CLAUSE
+ PsiElement(HaskellTokenType.WHERE)('where')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('doNotation')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_DO_NOTATION_EXPRESSION
+ PsiElement(HaskellTokenType.DO)('do')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('e')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ PsiElement(HaskellTokenType.LEFT_ARROW)('<-')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('f')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('a')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ PsiElement(HaskellTokenType.LEFT_ARROW)('<-')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('g')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('return')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarsym(HS_VARSYM)
+ PsiElement(HaskellTokenType.VARSYM_ID)('$')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('e')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarsym(HS_VARSYM)
+ PsiElement(HaskellTokenType.VARSYM_ID)('+')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('a')
\ No newline at end of file
diff --git a/src/test/testData/parsing-hs/Imports.hs b/src/test/testData/parsing-hs/Imports.hs
new file mode 100644
index 000000000..0b6f97d09
--- /dev/null
+++ b/src/test/testData/parsing-hs/Imports.hs
@@ -0,0 +1,4 @@
+import A.B
+import A.B as C
+import A.B (($), b)
+import A.B ()
diff --git a/src/test/testData/parsing-hs/Imports.txt b/src/test/testData/parsing-hs/Imports.txt
new file mode 100644
index 000000000..9be8beec2
--- /dev/null
+++ b/src/test/testData/parsing-hs/Imports.txt
@@ -0,0 +1,73 @@
+Haskell file
+ HS_MODULE_BODY
+ HS_IMPORT_DECLARATIONS
+ HS_IMPORT_DECLARATION
+ PsiElement(HaskellTokenType.IMPORT)('import')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('A')
+ PsiElement(HaskellTokenType.DOT)('.')
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('B')
+ PsiWhiteSpace('\n')
+ HS_IMPORT_DECLARATION
+ PsiElement(HaskellTokenType.IMPORT)('import')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('A')
+ PsiElement(HaskellTokenType.DOT)('.')
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('B')
+ PsiWhiteSpace(' ')
+ HS_IMPORT_QUALIFIED_AS
+ PsiElement(HaskellTokenType.VAR_ID)('as')
+ PsiWhiteSpace(' ')
+ HS_QUALIFIER
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('C')
+ PsiWhiteSpace('\n')
+ HS_IMPORT_DECLARATION
+ PsiElement(HaskellTokenType.IMPORT)('import')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('A')
+ PsiElement(HaskellTokenType.DOT)('.')
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('B')
+ PsiWhiteSpace(' ')
+ HS_IMPORT_SPEC
+ HS_IMPORT_IDS_SPEC
+ PsiElement(HaskellTokenType.LEFT_PAREN)('(')
+ HS_IMPORT_ID
+ HS_CNAME
+ HS_VAR
+ PsiElement(HaskellTokenType.LEFT_PAREN)('(')
+ HaskellVarsym(HS_VARSYM)
+ PsiElement(HaskellTokenType.VARSYM_ID)('$')
+ PsiElement(HaskellTokenType.RIGHT_PAREN)(')')
+ PsiElement(HaskellTokenType.COMMA)(',')
+ PsiWhiteSpace(' ')
+ HS_IMPORT_ID
+ HS_CNAME
+ HS_VAR
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('b')
+ PsiElement(HaskellTokenType.RIGHT_PAREN)(')')
+ PsiWhiteSpace('\n')
+ HS_IMPORT_DECLARATION
+ PsiElement(HaskellTokenType.IMPORT)('import')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('A')
+ PsiElement(HaskellTokenType.DOT)('.')
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('B')
+ PsiWhiteSpace(' ')
+ HS_IMPORT_SPEC
+ HS_IMPORT_IDS_SPEC
+ PsiElement(HaskellTokenType.LEFT_PAREN)('(')
+ PsiElement(HaskellTokenType.RIGHT_PAREN)(')')
\ No newline at end of file
diff --git a/src/test/testData/parsing-hs/OneLineLetIn.hs b/src/test/testData/parsing-hs/OneLineLetIn.hs
new file mode 100644
index 000000000..a269ba260
--- /dev/null
+++ b/src/test/testData/parsing-hs/OneLineLetIn.hs
@@ -0,0 +1,3 @@
+module OneLineLetIn where
+
+fix f = let x = f x in x
diff --git a/src/test/testData/parsing-hs/OneLineLetIn.txt b/src/test/testData/parsing-hs/OneLineLetIn.txt
new file mode 100644
index 000000000..51255f956
--- /dev/null
+++ b/src/test/testData/parsing-hs/OneLineLetIn.txt
@@ -0,0 +1,61 @@
+Haskell file
+ HS_MODULE_BODY
+ HS_MODULE_DECLARATION
+ PsiElement(HaskellTokenType.MODULE)('module')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('OneLineLetIn')
+ PsiWhiteSpace(' ')
+ HS_WHERE_CLAUSE
+ PsiElement(HaskellTokenType.WHERE)('where')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace('\n')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('fix')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('f')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_LET_ABSTRACTION
+ PsiElement(HaskellTokenType.LET)('let')
+ PsiWhiteSpace(' ')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('x')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('f')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('x')
+ PsiElement(HaskellTokenType.RIGHT_BRACE)(' ')
+ PsiElement(HaskellTokenType.IN)('in')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('x')
\ No newline at end of file
diff --git a/src/test/testData/parsing-hs/SimpleLayout.hs b/src/test/testData/parsing-hs/SimpleLayout.hs
new file mode 100644
index 000000000..9d44e7f2d
--- /dev/null
+++ b/src/test/testData/parsing-hs/SimpleLayout.hs
@@ -0,0 +1,7 @@
+module TestModule where
+
+ these :: declarations are
+ insideOfALayout = let
+ test = bla
+ reTest = blllaaa
+ in test reTest
diff --git a/src/test/testData/parsing-hs/SimpleLayout.txt b/src/test/testData/parsing-hs/SimpleLayout.txt
new file mode 100644
index 000000000..f6787da32
--- /dev/null
+++ b/src/test/testData/parsing-hs/SimpleLayout.txt
@@ -0,0 +1,95 @@
+Haskell file
+ HS_MODULE_BODY
+ HS_MODULE_DECLARATION
+ PsiElement(HaskellTokenType.MODULE)('module')
+ PsiWhiteSpace(' ')
+ HaskellVarid(HS_MODID)
+ HaskellVarid(HS_CONID)
+ PsiElement(HaskellTokenType.CON_ID)('TestModule')
+ PsiWhiteSpace(' ')
+ HS_WHERE_CLAUSE
+ PsiElement(HaskellTokenType.WHERE)('where')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_TOP_DECLARATION
+ HS_TYPE_SIGNATURE
+ HS_Q_NAMES
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('these')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.COLON_COLON)('::')
+ PsiWhiteSpace(' ')
+ HS_TTYPE
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('declarations')
+ PsiWhiteSpace(' ')
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('are')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('insideOfALayout')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_LET_ABSTRACTION
+ PsiElement(HaskellTokenType.LET)('let')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('test')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('bla')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ HS_IMPLEMENTATION_DECLARATION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('reTest')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.EQUAL)('=')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('blllaaa')
+ PsiWhiteSpace('\n')
+ PsiWhiteSpace(' ')
+ PsiElement(HaskellTokenType.IN)('in')
+ PsiWhiteSpace(' ')
+ HS_APPLICATION_EXPRESSION
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('test')
+ PsiWhiteSpace(' ')
+ HS_ATOM_EXPRESSION
+ HS_Q_NAME
+ HS_VAR_CON
+ HaskellVarid(HS_VARID)
+ PsiElement(HaskellTokenType.VAR_ID)('reTest')
\ No newline at end of file