rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
branchjdk8
changeset 1661 6d5075e5ceac
parent 1660 2f22f2a2175d
child 1666 4e349118658f
     1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Sun Aug 10 11:39:36 2014 +0200
     1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Mon Aug 11 17:52:23 2014 +0200
     1.3 @@ -1069,6 +1069,8 @@
     1.4                      println("  mi[2]: " + mi[2]);
     1.5                      println("  mn   : " + mn);
     1.6                      println("  name and type: " + jc.stringValue(c2.cpx2, true));
     1.7 +                    CPX2 nameAndType = jc.getCpoolEntry(c2.cpx2);
     1.8 +                    String type = jc.StringValue(nameAndType.cpx2);
     1.9                      String object = accessClass(mcn) + "(false)";
    1.10                      if (mn.startsWith("cons_")) {
    1.11                          object += ".constructor";
    1.12 @@ -1078,7 +1080,9 @@
    1.13                      append('(');
    1.14                      String lookup = accessClass("java_lang_invoke_MethodHandles") + "(false).findFor__Ljava_lang_invoke_MethodHandles$Lookup_2Ljava_lang_Class_2(CLS.$class)";
    1.15                      append(lookup);
    1.16 -                    append(", '").append(mi[1]).append("'");
    1.17 +                    append(", '").append(mi[1]).append("', ");
    1.18 +                    String methodType = accessClass("java_lang_invoke_MethodType") + "(false).fromMethodDescriptorString__Ljava_lang_invoke_MethodType_2Ljava_lang_String_2Ljava_lang_ClassLoader_2(";
    1.19 +                    append(methodType).append("'").append(type).append("', null)");
    1.20  //                    if (numArguments > 0) {
    1.21  //                        append(vars[0]);
    1.22  //                        for (int j = 1; j < numArguments; ++j) {