New Java parser (expression parsing fixed)

This commit is contained in:
Roman Shevchenko
2010-08-10 13:49:16 +04:00
parent 4ca7918849
commit 84487c5937
7 changed files with 107 additions and 3 deletions
@@ -0,0 +1,3 @@
public class SystemInfo {
public static final boolean isKDE = SUN_DESKTOP != null && SUN_DESKTOP.toLowerCase().indexOf("kde") >= 0;
}
@@ -0,0 +1,81 @@
PsiJavaFile:ComplexInitializer.java
PsiImportList
<empty list>
PsiClass:SystemInfo
PsiModifierList:public
PsiKeyword:public('public')
PsiWhiteSpace(' ')
PsiKeyword:class('class')
PsiWhiteSpace(' ')
PsiIdentifier:SystemInfo('SystemInfo')
PsiTypeParameterList
<empty list>
PsiReferenceList
<empty list>
PsiReferenceList
<empty list>
PsiWhiteSpace(' ')
PsiJavaToken:LBRACE('{')
PsiWhiteSpace('\n ')
PsiField:isKDE
PsiModifierList:public static final
PsiKeyword:public('public')
PsiWhiteSpace(' ')
PsiKeyword:static('static')
PsiWhiteSpace(' ')
PsiKeyword:final('final')
PsiWhiteSpace(' ')
PsiTypeElement:boolean
PsiKeyword:boolean('boolean')
PsiWhiteSpace(' ')
PsiIdentifier:isKDE('isKDE')
PsiWhiteSpace(' ')
PsiJavaToken:EQ('=')
PsiWhiteSpace(' ')
PsiBinaryExpression:SUN_DESKTOP != null && SUN_DESKTOP.toLowerCase().indexOf("kde") >= 0
PsiBinaryExpression:SUN_DESKTOP != null
PsiReferenceExpression:SUN_DESKTOP
PsiReferenceParameterList
<empty list>
PsiIdentifier:SUN_DESKTOP('SUN_DESKTOP')
PsiWhiteSpace(' ')
PsiJavaToken:NE('!=')
PsiWhiteSpace(' ')
PsiLiteralExpression:null
PsiJavaToken:NULL_KEYWORD('null')
PsiWhiteSpace(' ')
PsiJavaToken:ANDAND('&&')
PsiWhiteSpace(' ')
PsiBinaryExpression:SUN_DESKTOP.toLowerCase().indexOf("kde") >= 0
PsiMethodCallExpression:SUN_DESKTOP.toLowerCase().indexOf("kde")
PsiReferenceExpression:SUN_DESKTOP.toLowerCase().indexOf
PsiMethodCallExpression:SUN_DESKTOP.toLowerCase()
PsiReferenceExpression:SUN_DESKTOP.toLowerCase
PsiReferenceExpression:SUN_DESKTOP
PsiReferenceParameterList
<empty list>
PsiIdentifier:SUN_DESKTOP('SUN_DESKTOP')
PsiJavaToken:DOT('.')
PsiReferenceParameterList
<empty list>
PsiIdentifier:toLowerCase('toLowerCase')
PsiExpressionList
PsiJavaToken:LPARENTH('(')
PsiJavaToken:RPARENTH(')')
PsiJavaToken:DOT('.')
PsiReferenceParameterList
<empty list>
PsiIdentifier:indexOf('indexOf')
PsiExpressionList
PsiJavaToken:LPARENTH('(')
PsiLiteralExpression:"kde"
PsiJavaToken:STRING_LITERAL('"kde"')
PsiJavaToken:RPARENTH(')')
PsiWhiteSpace(' ')
PsiJavaToken:GE('>=')
PsiWhiteSpace(' ')
PsiLiteralExpression:0
PsiJavaToken:INTEGER_LITERAL('0')
PsiJavaToken:SEMICOLON(';')
PsiWhiteSpace('\n')
PsiJavaToken:RBRACE('}')
@@ -1,4 +1,4 @@
PsiJavaFile:GE.java
PsiJavaFile:GE0.java
PsiAssignmentExpression:x >>>= 8 >> 2
PsiReferenceExpression:x
PsiReferenceParameterList
@@ -0,0 +1,11 @@
PsiJavaFile:GE1.java
PsiBinaryExpression:x >= 2
PsiReferenceExpression:x
PsiReferenceParameterList
<empty list>
PsiIdentifier:x('x')
PsiWhiteSpace(' ')
PsiJavaToken:GE('>=')
PsiWhiteSpace(' ')
PsiLiteralExpression:2
PsiJavaToken:INTEGER_LITERAL('2')