36
36
import org .eclipse .jdt .core .dom .IPackageBinding ;
37
37
import org .eclipse .jdt .core .dom .ITypeBinding ;
38
38
import org .eclipse .jdt .core .dom .IVariableBinding ;
39
- import org .eclipse .jdt .core .dom .IfStatement ;
40
39
import org .eclipse .jdt .core .dom .InfixExpression ;
41
40
import org .eclipse .jdt .core .dom .Initializer ;
42
41
import org .eclipse .jdt .core .dom .MethodDeclaration ;
50
49
import org .eclipse .jdt .core .dom .PrefixExpression ;
51
50
import org .eclipse .jdt .core .dom .PrimitiveType ;
52
51
import org .eclipse .jdt .core .dom .PrimitiveType .Code ;
53
-
54
- import j2s .jmol .J2SKeywordVisitor .FinalVariable ;
55
- import j2s .jmol .J2SKeywordVisitor .MethodReferenceASTVisitor ;
56
- import j2s .jmol .J2SKeywordVisitor .VariableHelper ;
57
-
58
52
import org .eclipse .jdt .core .dom .QualifiedName ;
59
53
import org .eclipse .jdt .core .dom .QualifiedType ;
60
54
import org .eclipse .jdt .core .dom .ReturnStatement ;
61
55
import org .eclipse .jdt .core .dom .SimpleName ;
62
56
import org .eclipse .jdt .core .dom .SimpleType ;
63
57
import org .eclipse .jdt .core .dom .SingleVariableDeclaration ;
64
- import org .eclipse .jdt .core .dom .Statement ;
65
58
import org .eclipse .jdt .core .dom .SuperConstructorInvocation ;
66
59
import org .eclipse .jdt .core .dom .SuperFieldAccess ;
67
60
import org .eclipse .jdt .core .dom .SuperMethodInvocation ;
75
68
76
69
/**
77
70
*
78
- * ASTVisitor > Java2ScriptASTVisitor > J2SKeywordVisitor > Java2ScriptPrimaryVisitor
71
+ * ASTVisitor > J2SASTVisitor > J2SKeywordVisitor > J2SLegacyVisitor
79
72
*
80
73
* Formerly ASTScriptVisitor
81
74
*
104
97
*
105
98
* 2006-12-3
106
99
*/
107
- public class Java2ScriptLegacyVisitor extends J2SKeywordVisitor {
100
+ class J2SLegacyVisitor extends J2SKeywordVisitor {
108
101
109
102
// UNFIXED bugs left here because not an issue in Jmol.
110
103
//
@@ -1034,11 +1027,11 @@ public boolean visit(EnumDeclaration node) {
1034
1027
}
1035
1028
if ((node != rootTypeNode ) && node .getParent () != null && node .getParent () instanceof AbstractTypeDeclaration ) {
1036
1029
/* inner static class */
1037
- Java2ScriptLegacyVisitor visitor = null ;
1030
+ J2SLegacyVisitor visitor = null ;
1038
1031
try {
1039
1032
visitor = this .getClass ().newInstance ();
1040
1033
} catch (@ SuppressWarnings ("unused" ) Exception e ) {
1041
- visitor = new Java2ScriptLegacyVisitor (); // Default visitor
1034
+ visitor = new J2SLegacyVisitor (); // Default visitor
1042
1035
}
1043
1036
visitor .rootTypeNode = node ;
1044
1037
visitor .typeHelper .setClassName (this .typeHelper .getClassName ());
@@ -1157,7 +1150,7 @@ public boolean processFieldDeclaration(FieldDeclaration node, boolean ignoreInit
1157
1150
if (checkKeywordViolation (fieldName )) {
1158
1151
ext += "$" ;
1159
1152
}
1160
- if (typeBinding != null && checkSameName (typeBinding , fieldName )) {
1153
+ if (typeBinding != null && isSameName (typeBinding , fieldName )) {
1161
1154
ext += "$" ;
1162
1155
}
1163
1156
buffer .append ("this." );
@@ -1904,22 +1897,22 @@ public boolean visit(SimpleName node) {
1904
1897
if (writeConstantValue (node ))
1905
1898
return false ;
1906
1899
IBinding binding = node .resolveBinding ();
1907
- ASTNode xparent = node .getParent ();
1908
- if (xparent == null ) {
1900
+ ASTNode parent = node .getParent ();
1901
+ if (parent == null ) {
1909
1902
buffer .append (node );
1910
1903
return false ;
1911
1904
}
1912
1905
char ch = 0 ;
1913
1906
if (buffer .length () > 0 ) {
1914
1907
ch = buffer .charAt (buffer .length () - 1 );
1915
1908
}
1916
- if (ch == '.' && xparent instanceof QualifiedName ) {
1909
+ if (ch == '.' && parent instanceof QualifiedName ) {
1917
1910
if (binding != null && binding instanceof IVariableBinding ) {
1918
1911
IVariableBinding varBinding = (IVariableBinding ) binding ;
1919
1912
IVariableBinding variableDeclaration = varBinding .getVariableDeclaration ();
1920
1913
ITypeBinding declaringClass = variableDeclaration .getDeclaringClass ();
1921
1914
String fieldName = getJ2SName (node );
1922
- if (checkSameName (declaringClass , fieldName )) {
1915
+ if (isSameName (declaringClass , fieldName )) {
1923
1916
buffer .append ('$' );
1924
1917
}
1925
1918
if (checkKeywordViolation (fieldName )) {
@@ -1934,7 +1927,7 @@ public boolean visit(SimpleName node) {
1934
1927
buffer .append (node );
1935
1928
return false ;
1936
1929
}
1937
- if (xparent instanceof ClassInstanceCreation && !(binding instanceof IVariableBinding )) {
1930
+ if (parent instanceof ClassInstanceCreation && !(binding instanceof IVariableBinding )) {
1938
1931
ITypeBinding binding2 = node .resolveTypeBinding ();
1939
1932
if (binding != null ) {
1940
1933
String name = binding2 .getQualifiedName ();
@@ -1963,20 +1956,7 @@ public boolean visit(SimpleName node) {
1963
1956
processSimpleNameInMethodBinding (node , ch , mthBinding );
1964
1957
} else {
1965
1958
ITypeBinding typeBinding = node .resolveTypeBinding ();
1966
- if (typeBinding != null ) {
1967
- String name = typeBinding .getQualifiedName ();
1968
- name = assureQualifiedName (shortenQualifiedName (name ));
1969
- if (checkKeywordViolation (name )) {
1970
- buffer .append ('$' );
1971
- }
1972
- buffer .append (name );
1973
- } else {
1974
- String name = node .getFullyQualifiedName ();
1975
- if (checkKeywordViolation (name )) {
1976
- buffer .append ('$' );
1977
- }
1978
- buffer .append (name );
1979
- }
1959
+ processSimpleNameInTypeBinding (node , typeBinding );
1980
1960
}
1981
1961
return false ;
1982
1962
}
@@ -1998,7 +1978,7 @@ private void processSimpleNameInVarBinding(SimpleName node, char ch, IVariableBi
1998
1978
}
1999
1979
}
2000
1980
String fieldName = getJ2SName (node );
2001
- if (checkSameName (declaringClass , fieldName )) {
1981
+ if (isSameName (declaringClass , fieldName )) {
2002
1982
buffer .append ('$' );
2003
1983
}
2004
1984
if (checkKeywordViolation (fieldName )) {
@@ -2051,11 +2031,10 @@ private void processSimpleNameInVarBinding(SimpleName node, char ch, IVariableBi
2051
2031
} else {
2052
2032
fieldName = fieldVar ;
2053
2033
}
2054
- // System.err.println(fieldName);
2055
2034
if (checkKeywordViolation (fieldName )) {
2056
2035
buffer .append ('$' );
2057
2036
}
2058
- if (declaringClass != null && checkSameName (declaringClass , fieldName )) {
2037
+ if (declaringClass != null && isSameName (declaringClass , fieldName )) {
2059
2038
buffer .append ('$' );
2060
2039
}
2061
2040
if (declaringClass != null && isInheritedFieldName (declaringClass , fieldName )) {
@@ -2086,7 +2065,6 @@ private void processSimpleNameInMethodBinding(SimpleName node, char ch, IMethodB
2086
2065
}
2087
2066
}
2088
2067
}
2089
- // String name = variableDeclaration.getName();
2090
2068
String name = getJ2SName (node );
2091
2069
name = shortenQualifiedName (name );
2092
2070
if (!(isClassString && "valueOf" .equals (name )) && checkKeywordViolation (name )) {
@@ -2114,6 +2092,23 @@ private void processSimpleNameInMethodBinding(SimpleName node, char ch, IMethodB
2114
2092
}
2115
2093
}
2116
2094
2095
+ private void processSimpleNameInTypeBinding (SimpleName node , ITypeBinding typeBinding ) {
2096
+ if (typeBinding != null ) {
2097
+ String name = typeBinding .getQualifiedName ();
2098
+ name = assureQualifiedName (shortenQualifiedName (name ));
2099
+ if (checkKeywordViolation (name )) {
2100
+ buffer .append ('$' );
2101
+ }
2102
+ buffer .append (name );
2103
+ } else {
2104
+ String name = node .getFullyQualifiedName ();
2105
+ if (checkKeywordViolation (name )) {
2106
+ buffer .append ('$' );
2107
+ }
2108
+ buffer .append (name );
2109
+ }
2110
+ }
2111
+
2117
2112
private void appendFieldName (ASTNode parent , ITypeBinding declaringClass ) {
2118
2113
String name = declaringClass .getQualifiedName ();
2119
2114
boolean isThis = false ;
@@ -2810,11 +2805,11 @@ public boolean visit(TypeDeclaration node) {
2810
2805
if ((node != rootTypeNode ) && node .getParent () != null && (node .getParent () instanceof AbstractTypeDeclaration
2811
2806
|| node .getParent () instanceof TypeDeclarationStatement )) {
2812
2807
/* inner static class */
2813
- Java2ScriptLegacyVisitor visitor = null ;
2808
+ J2SLegacyVisitor visitor = null ;
2814
2809
try {
2815
2810
visitor = this .getClass ().newInstance ();
2816
2811
} catch (@ SuppressWarnings ("unused" ) Exception e ) {
2817
- visitor = new Java2ScriptLegacyVisitor (); // Default visitor
2812
+ visitor = new J2SLegacyVisitor (); // Default visitor
2818
2813
}
2819
2814
visitor .rootTypeNode = node ;
2820
2815
String className = typeVisitor .getClassName ();
@@ -2958,7 +2953,7 @@ public boolean visit(TypeLiteral node) {
2958
2953
2959
2954
/// static methods originally in ASTJ2sMapVisitor
2960
2955
2961
- private static boolean checkSameName (ITypeBinding binding , String name ) {
2956
+ private static boolean isSameName (ITypeBinding binding , String name ) {
2962
2957
if (binding != null ) {
2963
2958
IMethodBinding [] declaredMethods = binding .getDeclaredMethods ();
2964
2959
for (int i = 0 ; i < declaredMethods .length ; i ++) {
@@ -2967,13 +2962,13 @@ private static boolean checkSameName(ITypeBinding binding, String name) {
2967
2962
}
2968
2963
}
2969
2964
ITypeBinding superclass = binding .getSuperclass ();
2970
- if (checkSameName (superclass , name )) {
2965
+ if (isSameName (superclass , name )) {
2971
2966
return true ;
2972
2967
}
2973
2968
ITypeBinding [] interfaces = binding .getInterfaces ();
2974
2969
if (interfaces != null ) {
2975
2970
for (int i = 0 ; i < interfaces .length ; i ++) {
2976
- if (checkSameName (interfaces [i ], name )) {
2971
+ if (isSameName (interfaces [i ], name )) {
2977
2972
return true ;
2978
2973
}
2979
2974
}
0 commit comments