@@ -278,33 +278,11 @@ public boolean visit(Assignment node) {
278278 }
279279 }
280280 if (supportsObjectStaticFields ) {
281- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
282- buffer .append (".prototype." );
283- if (left instanceof QualifiedName ) {
284- QualifiedName leftName = (QualifiedName ) left ;
285- leftName .getName ().accept (this );
286- } else if (left instanceof FieldAccess ) {
287- FieldAccess leftAccess = (FieldAccess ) left ;
288- leftAccess .getName ().accept (this );
289- } else {
290- Name leftName = (Name ) left ;
291- leftName .accept (this );
292- }
281+ addFieldName (varBinding , left , true );
293282 buffer .append (" = " );
294283 }
295284
296- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
297- buffer .append ('.' );
298- if (left instanceof QualifiedName ) {
299- QualifiedName leftName = (QualifiedName ) left ;
300- leftName .getName ().accept (this );
301- } else if (left instanceof FieldAccess ) {
302- FieldAccess leftAccess = (FieldAccess ) left ;
303- leftAccess .getName ().accept (this );
304- } else {
305- Name leftName = (Name ) left ;
306- leftName .accept (this );
307- }
285+ addFieldName (varBinding , left , false );
308286 buffer .append (' ' );
309287 boolean isMixedOp = op .trim ().length () > 1 ;
310288 ITypeBinding leftTypeBinding = left .resolveTypeBinding ();
@@ -322,19 +300,7 @@ public boolean visit(Assignment node) {
322300 }
323301 } else {
324302 buffer .append ("= String.fromCharCode (" );
325- buffer .append (
326- assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
327- buffer .append ('.' );
328- if (left instanceof QualifiedName ) {
329- QualifiedName leftName = (QualifiedName ) left ;
330- leftName .getName ().accept (this );
331- } else if (left instanceof FieldAccess ) {
332- FieldAccess leftAccess = (FieldAccess ) left ;
333- leftAccess .getName ().accept (this );
334- } else {
335- Name leftName = (Name ) left ;
336- leftName .accept (this );
337- }
303+ addFieldName (varBinding , left , false );
338304 buffer .append (".charCodeAt (0) " );
339305 buffer .append (op .charAt (0 ));
340306 buffer .append (' ' );
@@ -354,18 +320,7 @@ public boolean visit(Assignment node) {
354320 } else if (leftTypeBinding != null && "/=" .equals (op )
355321 && ((ASTTypeVisitor ) getAdaptable (ASTTypeVisitor .class )).isIntegerType (leftTypeBinding .getName ())) {
356322 buffer .append (" = Clazz.doubleToInt (" );
357- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
358- buffer .append ('.' );
359- if (left instanceof QualifiedName ) {
360- QualifiedName leftName = (QualifiedName ) left ;
361- leftName .getName ().accept (this );
362- } else if (left instanceof FieldAccess ) {
363- FieldAccess leftAccess = (FieldAccess ) left ;
364- leftAccess .getName ().accept (this );
365- } else {
366- Name leftName = (Name ) left ;
367- leftName .accept (this );
368- }
323+ addFieldName (varBinding , left , false );
369324 buffer .append (" / " );
370325 boxingNode (right );
371326 buffer .append (')' );
@@ -807,7 +762,7 @@ public boolean visit(PackageDeclaration node) {
807762 return false ;
808763 }
809764 }
810- buffer .append ("Clazz.declarePackage (\" " );
765+ buffer .append ("Clazz.declarePackage(\" " );
811766 node .getName ().accept (this );
812767 buffer .append ("\" );\r \n " );
813768 return false ;
@@ -902,95 +857,26 @@ public boolean visit(PostfixExpression node) {
902857 String op = node .getOperator ().toString ();
903858 if (staticCharType ) {
904859 if (!(parent instanceof Statement )) {
905- buffer .append (
906- assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
907- buffer .append ('.' );
908- if (left instanceof QualifiedName ) {
909- QualifiedName leftName = (QualifiedName ) left ;
910- leftName .getName ().accept (this );
911- } else if (left instanceof FieldAccess ) {
912- FieldAccess leftAccess = (FieldAccess ) left ;
913- leftAccess .getName ().accept (this );
914- } else {
915- Name leftName = (Name ) left ;
916- leftName .accept (this );
917- }
860+ addFieldName (varBinding , left , false );
918861 buffer .append (", " );
919862 }
920- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
921- buffer .append ('.' );
922- if (left instanceof QualifiedName ) {
923- QualifiedName leftName = (QualifiedName ) left ;
924- leftName .getName ().accept (this );
925- } else if (left instanceof FieldAccess ) {
926- FieldAccess leftAccess = (FieldAccess ) left ;
927- leftAccess .getName ().accept (this );
928- } else {
929- Name leftName = (Name ) left ;
930- leftName .accept (this );
931- }
863+ addFieldName (varBinding , left , false );
932864 buffer .append (" = String.fromCharCode (" );
933- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
934- buffer .append ('.' );
935- if (left instanceof QualifiedName ) {
936- QualifiedName leftName = (QualifiedName ) left ;
937- leftName .getName ().accept (this );
938- } else if (left instanceof FieldAccess ) {
939- FieldAccess leftAccess = (FieldAccess ) left ;
940- leftAccess .getName ().accept (this );
941- } else {
942- Name leftName = (Name ) left ;
943- leftName .accept (this );
944- }
865+ addFieldName (varBinding , left , false );
945866 if ("++" .equals (op )) {
946867 buffer .append (".charCodeAt (0) + 1)" );
947868 } else {
948869 buffer .append (".charCodeAt (0) - 1)" );
949870 }
950871 } else {
951- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
952- buffer .append ('.' );
953- if (left instanceof QualifiedName ) {
954- QualifiedName leftName = (QualifiedName ) left ;
955- leftName .getName ().accept (this );
956- } else if (left instanceof FieldAccess ) {
957- FieldAccess leftAccess = (FieldAccess ) left ;
958- leftAccess .getName ().accept (this );
959- } else {
960- Name leftName = (Name ) left ;
961- leftName .accept (this );
962- }
963- // buffer.append(' ');
872+ addFieldName (varBinding , left , false );
964873 buffer .append (op );
965874 }
966-
967875 if (supportsObjectStaticFields ) {
968876 buffer .append (", " );
969- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
970- buffer .append (".prototype." );
971- if (left instanceof QualifiedName ) {
972- QualifiedName leftName = (QualifiedName ) left ;
973- leftName .getName ().accept (this );
974- } else if (left instanceof FieldAccess ) {
975- FieldAccess leftAccess = (FieldAccess ) left ;
976- leftAccess .getName ().accept (this );
977- } else {
978- Name leftName = (Name ) left ;
979- leftName .accept (this );
980- }
877+ addFieldName (varBinding , left , true );
981878 buffer .append (" = " );
982- buffer .append (assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
983- buffer .append ('.' );
984- if (left instanceof QualifiedName ) {
985- QualifiedName leftName = (QualifiedName ) left ;
986- leftName .getName ().accept (this );
987- } else if (left instanceof FieldAccess ) {
988- FieldAccess leftAccess = (FieldAccess ) left ;
989- leftAccess .getName ().accept (this );
990- } else {
991- Name leftName = (Name ) left ;
992- leftName .accept (this );
993- }
879+ addFieldName (varBinding , left , false );
994880 }
995881 if ((supportsObjectStaticFields || staticCharType ) && !(parent instanceof Statement )) {
996882 buffer .append (", $t$" );
@@ -1034,6 +920,24 @@ public boolean visit(PostfixExpression node) {
1034920 // return super.visit(node);
1035921 }
1036922
923+ private void addFieldName (IVariableBinding varBinding , Expression left , boolean isPrototype ) {
924+ buffer .append (
925+ assureQualifiedName (removeJavaLang (varBinding .getDeclaringClass ().getQualifiedName ())));
926+ buffer .append ('.' );
927+ if (isPrototype )
928+ buffer .append ("prototype." );
929+ if (left instanceof QualifiedName ) {
930+ QualifiedName leftName = (QualifiedName ) left ;
931+ leftName .getName ().accept (this );
932+ } else if (left instanceof FieldAccess ) {
933+ FieldAccess leftAccess = (FieldAccess ) left ;
934+ leftAccess .getName ().accept (this );
935+ } else {
936+ Name leftName = (Name ) left ;
937+ leftName .accept (this );
938+ }
939+ }
940+
1037941 @ SuppressWarnings ("null" )
1038942 public boolean visit (PrefixExpression node ) {
1039943 String constValue = checkConstantValue (node );
0 commit comments