<NME> Types.txt
<BEF> ADDFILE
<MSG> Stop treating 'alias' as a restricted keyword (#384)

Elm allows code such as:

foo : { alias : String }
foo = { alias = "" }

Previously our lexer was treating these occurrences of `alias` as keywords and so
the expressions failed to parse. But now the lexer will only emit the
keyword token when it follows a `type` token (and intervening whitespace).
<DFF> @@ -0,0 +1,48 @@
+TYPE ('type')
+WHITE_SPACE (' ')
+UPPER_CASE_IDENTIFIER ('Foo')
+WHITE_SPACE (' ')
+EQ ('=')
+WHITE_SPACE (' ')
+UPPER_CASE_IDENTIFIER ('Foo')
+NEWLINE ('\n')
+TYPE ('type')
+WHITE_SPACE (' ')
+ALIAS ('alias')
+WHITE_SPACE (' ')
+UPPER_CASE_IDENTIFIER ('Normal')
+WHITE_SPACE (' ')
+EQ ('=')
+WHITE_SPACE (' ')
+LEFT_PARENTHESIS ('(')
+RIGHT_PARENTHESIS (')')
+NEWLINE ('\n')
+TYPE ('type')
+WHITE_SPACE ('   ')
+ALIAS ('alias')
+WHITE_SPACE (' ')
+UPPER_CASE_IDENTIFIER ('Spacey')
+WHITE_SPACE (' ')
+EQ ('=')
+WHITE_SPACE (' ')
+LEFT_PARENTHESIS ('(')
+RIGHT_PARENTHESIS (')')
+NEWLINE ('\n')
+NEWLINE ('\n')
+LINE_COMMENT ('-- `alias` can be used in other contexts (https://github.com/klazuka/intellij-elm/issues/378)')
+NEWLINE ('\n')
+LOWER_CASE_IDENTIFIER ('x')
+WHITE_SPACE (' ')
+EQ ('=')
+WHITE_SPACE (' ')
+LEFT_BRACE ('{')
+WHITE_SPACE (' ')
+LOWER_CASE_IDENTIFIER ('alias')
+WHITE_SPACE (' ')
+EQ ('=')
+WHITE_SPACE (' ')
+OPEN_QUOTE ('"')
+REGULAR_STRING_PART ('secret')
+CLOSE_QUOTE ('"')
+WHITE_SPACE (' ')
+RIGHT_BRACE ('}')

Stop treating 'alias' as a restricted keyword (#384)