vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
branchTypeNickNames
changeset 406 2670f519a46d
parent 405 e41809be6106
     1.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Thu Jan 03 11:20:40 2013 +0100
     1.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Thu Jan 03 11:29:22 2013 +0100
     1.3 @@ -19,7 +19,6 @@
     1.4  
     1.5  import java.io.IOException;
     1.6  import java.io.InputStream;
     1.7 -import org.apidesign.bck2brwsr.core.JavaScriptBody;
     1.8  import org.apidesign.javap.AnnotationParser;
     1.9  import org.apidesign.javap.ClassData;
    1.10  import org.apidesign.javap.FieldData;
    1.11 @@ -1272,16 +1271,20 @@
    1.12                  default: sb.append(ch); break;
    1.13              }
    1.14          }
    1.15 -        final String strng = "Ljava_lang_String_2";
    1.16 -        for(;;) {
    1.17 +        shortenSig(sb, "Ljava_lang_String_2", 's');
    1.18 +        shortenSig(sb, "Ljava_lang_Object_2", 'o');
    1.19 +        return sb.toString();
    1.20 +    }
    1.21 +    
    1.22 +    private static void shortenSig(StringBuilder sb, String strng, char r) {
    1.23 +        for (;;) {
    1.24              int pos = sb.indexOf(strng);
    1.25              if (pos == -1) {
    1.26                  break;
    1.27              }
    1.28              sb.delete(pos, pos + strng.length());
    1.29 -            sb.insert(pos, 's');
    1.30 +            sb.insert(pos, r);
    1.31          }
    1.32 -        return sb.toString();
    1.33      }
    1.34      
    1.35      private static String findMethodName(MethodData m, StringBuilder cnt) {