<NME> ValueDecl.txt
<BEF> Elm File
  ElmValueDeclaration(VALUE_DECLARATION)
    ElmFunctionDeclarationLeft(FUNCTION_DECLARATION_LEFT)
      PsiElement(LOWER_CASE_IDENTIFIER)('f1')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiErrorElement:<expr> expected
      <empty list>
  PsiElement(VIRTUAL_END_DECL)('\n')
  PsiWhiteSpace('\n')
  ElmValueDeclaration(VALUE_DECLARATION)
    ElmFunctionDeclarationLeft(FUNCTION_DECLARATION_LEFT)
      PsiElement(LOWER_CASE_IDENTIFIER)('f2')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiErrorElement:<expr> expected, got 'type'
      <empty list>
  PsiWhiteSpace(' ')
  PsiElement(TYPE)('type')
  PsiWhiteSpace(' ')
  PsiElement(UPPER_CASE_IDENTIFIER)('Blah')
  PsiElement(VIRTUAL_END_DECL)('\n')
  PsiWhiteSpace('\n')
  ElmValueDeclaration(VALUE_DECLARATION)
    ElmFunctionDeclarationLeft(FUNCTION_DECLARATION_LEFT)
    ElmFunctionDeclarationLeft(FUNCTION_DECLARATION_LEFT)
      PsiElement(LOWER_CASE_IDENTIFIER)('f3')
      PsiWhiteSpace(' ')
      ElmNumberConstant(NUMBER_CONSTANT)
        PsiElement(NUMBER_LITERAL)('42')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
      <empty list>
  PsiWhiteSpace(' ')
  PsiElement(COMMA)(',')
<MSG> Cleanup expression Psi (#138)

* Add an 'Expr' suffix to all operand Psi elements
* Use GrammarKit's Pratt parser mode for expressions
* Make parenthesized expressions a real Psi element
* Fix expression type provider for function calls and ignore paren exprs
<DFF> @@ -26,7 +26,7 @@ Elm File
     ElmFunctionDeclarationLeft(FUNCTION_DECLARATION_LEFT)
       PsiElement(LOWER_CASE_IDENTIFIER)('f3')
       PsiWhiteSpace(' ')
-      ElmNumberConstant(NUMBER_CONSTANT)
+      ElmNumberConstantExpr(NUMBER_CONSTANT_EXPR)
         PsiElement(NUMBER_LITERAL)('42')
     PsiWhiteSpace(' ')
     PsiElement(EQ)('=')

Cleanup expression Psi (#138)