emul/src/main/resources/org/apidesign/vm4brwsr/emul/java_lang_String.js
changeset 116 033d51e026b0
parent 93 a236a9f137ac
child 169 6f2aef4cf160
     1.1 --- a/emul/src/main/resources/org/apidesign/vm4brwsr/emul/java_lang_String.js	Mon Oct 08 17:10:27 2012 -0700
     1.2 +++ b/emul/src/main/resources/org/apidesign/vm4brwsr/emul/java_lang_String.js	Tue Oct 23 16:50:27 2012 +0200
     1.3 @@ -292,70 +292,11 @@
     1.4      case 15: return stack.pop(); // 176
     1.5    }
     1.6  }
     1.7 +*/
     1.8  function java_lang_String_equalsZLjava_lang_Object(arg0,arg1) {
     1.9 -  var arg2;
    1.10 -  var arg3;
    1.11 -  var arg4;
    1.12 -  var arg5;
    1.13 -  var arg6;
    1.14 -  var arg7;
    1.15 -  var arg8;
    1.16 -;
    1.17 -  var stack = new Array(3);
    1.18 -  var gt = 0;
    1.19 -  for(;;) switch(gt) {
    1.20 -    case 0: stack.push(arg0); // 42
    1.21 -    case 1: stack.push(arg1); // 43
    1.22 -    case 2:  // 166
    1.23 -    case 3:  // 0
    1.24 -    case 4: stack.push(2); // 5
    1.25 -    case 5: stack.push(1); // 4
    1.26 -    case 6: return stack.pop(); // 172
    1.27 -    case 7: stack.push(arg1); // 43
    1.28 -    case 8: stack.push(stack.pop().$instOf_java_lang_String ? 1 : 0); // 193 0 200
    1.29 -    case 11: if (stack.pop() == 0) { gt = 86; continue; } // 153 0 75
    1.30 -    case 14: stack.push(arg1); // 43
    1.31 -    case 15: if(stack[stack.length - 1].$instOf_java_lang_String != 1) throw {}; // 192 0 200
    1.32 -    case 18: arg2 = stack.pop(); // 77
    1.33 -    case 19: stack.push(arg0); // 42
    1.34 -    case 20: stack.push(stack.pop().count); // 180 1 97
    1.35 -    case 23: arg3 = stack.pop(); // 62
    1.36 -    case 24: stack.push(arg3); // 29
    1.37 -    case 25: stack.push(arg2); // 44
    1.38 -    case 26: stack.push(stack.pop().count); // 180 1 97
    1.39 -    case 29: if (stack.pop() != stack.pop()) { gt = 86; continue; } // 160 0 57
    1.40 -    case 32: stack.push(arg0); // 42
    1.41 -    case 33: stack.push(stack.pop().value); // 180 1 100
    1.42 -    case 36: arg4 = stack.pop() // 58 4
    1.43 -    case 38: stack.push(arg2); // 44
    1.44 -    case 39: stack.push(stack.pop().value); // 180 1 100
    1.45 -    case 42: arg5 = stack.pop() // 58 5
    1.46 -    case 44: stack.push(arg0); // 42
    1.47 -    case 45: stack.push(stack.pop().offset); // 180 1 99
    1.48 -    case 48: arg6 = stack.pop() // 54 6
    1.49 -    case 50: stack.push(arg2); // 44
    1.50 -    case 51: stack.push(stack.pop().offset); // 180 1 99
    1.51 -    case 54: arg7 = stack.pop() // 54 7
    1.52 -    case 56: stack.push(arg3); // 29
    1.53 -    case 57: arg3 += 255; // 132 3 255
    1.54 -    case 60: if (stack.pop() == 0) { gt = 84; continue; } // 153 0 24
    1.55 -    case 63: stack.push(arg4); // 25 4
    1.56 -    case 65: stack.push(arg6); // 21 6
    1.57 -    case 67: arg6++; // 132 6 1
    1.58 -    case 70: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
    1.59 -    case 71: stack.push(arg5); // 25 5
    1.60 -    case 73: stack.push(arg7); // 21 7
    1.61 -    case 75: arg7++; // 132 7 1
    1.62 -    case 78: { var indx = stack.pop(); stack.push(stack.pop()[indx]); } // 52
    1.63 -    case 79: if (stack.pop() == stack.pop()) { gt = 56; continue; } // 159 255 233
    1.64 -    case 82: stack.push(0); // 3
    1.65 -    case 83: return stack.pop(); // 172
    1.66 -    case 84: stack.push(1); // 4
    1.67 -    case 85: return stack.pop(); // 172
    1.68 -    case 86: stack.push(0); // 3
    1.69 -    case 87: return stack.pop(); // 172
    1.70 -  }
    1.71 +    return arg0.toString() === arg1.toString();
    1.72  }
    1.73 +/*
    1.74  function java_lang_String_contentEqualsZLjava_lang_StringBuffer(arg0,arg1) {
    1.75    var arg2;
    1.76    var arg3;
    1.77 @@ -1419,75 +1360,14 @@
    1.78      case 150: return stack.pop(); // 172
    1.79    }
    1.80  }
    1.81 +*/
    1.82  function java_lang_String_substringLjava_lang_StringI(arg0,arg1) {
    1.83 -  var arg2;
    1.84 -;
    1.85 -  var stack = new Array(3);
    1.86 -  var gt = 0;
    1.87 -  for(;;) switch(gt) {
    1.88 -    case 0: stack.push(arg0); // 42
    1.89 -    case 1: stack.push(arg1); // 27
    1.90 -    case 2: stack.push(arg0); // 42
    1.91 -    case 3: stack.push(stack.pop().count); // 180 1 97
    1.92 -    case 6: { var v1 = stack.pop(); var v0 = stack.pop(); var self = stack.pop(); stack.push(self.substringLjava_lang_StringII(self, v0, v1)); } // 182 1 147
    1.93 -    case 9: return stack.pop(); // 176
    1.94 -  }
    1.95 +    return arg0.toString().substring(arg1);
    1.96  }
    1.97  function java_lang_String_substringLjava_lang_StringII(arg0,arg1,arg2) {
    1.98 -  var arg3;
    1.99 -;
   1.100 -  var stack = new Array(5);
   1.101 -  var gt = 0;
   1.102 -  for(;;) switch(gt) {
   1.103 -    case 0: stack.push(arg1); // 27
   1.104 -    case 1: if (stack.pop() >= 0) { gt = 13; continue; } // 156 0 12
   1.105 -    case 4: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   1.106 -    case 7: stack.push(stack[stack.length - 1]); // 89
   1.107 -    case 8: stack.push(arg1); // 27
   1.108 -    case 9: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   1.109 -    case 12:  // 191
   1.110 -    case 13: stack.push(arg2); // 28
   1.111 -    case 14: stack.push(arg0); // 42
   1.112 -    case 15: stack.push(stack.pop().count); // 180 1 97
   1.113 -    case 18: if (stack.pop() >= stack.pop()) { gt = 30; continue; } // 164 0 12
   1.114 -    case 21: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   1.115 -    case 24: stack.push(stack[stack.length - 1]); // 89
   1.116 -    case 25: stack.push(arg2); // 28
   1.117 -    case 26: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   1.118 -    case 29:  // 191
   1.119 -    case 30: stack.push(arg1); // 27
   1.120 -    case 31: stack.push(arg2); // 28
   1.121 -    case 32: if (stack.pop() >= stack.pop()) { gt = 46; continue; } // 164 0 14
   1.122 -    case 35: stack.push(new java_lang_StringIndexOutOfBoundsException); // 187 0 206
   1.123 -    case 38: stack.push(stack[stack.length - 1]); // 89
   1.124 -    case 39: stack.push(arg2); // 28
   1.125 -    case 40: stack.push(arg1); // 27
   1.126 -    case 41: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   1.127 -    case 42: { var v0 = stack.pop(); java_lang_StringIndexOutOfBoundsException_consVI(stack.pop(), v0); } // 183 1 169
   1.128 -    case 45:  // 191
   1.129 -    case 46: stack.push(arg1); // 27
   1.130 -    case 47: if (stack.pop() != 0) { gt = 62; continue; } // 154 0 15
   1.131 -    case 50: stack.push(arg2); // 28
   1.132 -    case 51: stack.push(arg0); // 42
   1.133 -    case 52: stack.push(stack.pop().count); // 180 1 97
   1.134 -    case 55: if (stack.pop() != stack.pop()) { gt = 62; continue; } // 160 0 7
   1.135 -    case 58: stack.push(arg0); // 42
   1.136 -    case 59: gt = 82; continue; // 167 0 23
   1.137 -    case 62: stack.push(new java_lang_String); // 187 0 200
   1.138 -    case 65: stack.push(stack[stack.length - 1]); // 89
   1.139 -    case 66: stack.push(arg0); // 42
   1.140 -    case 67: stack.push(stack.pop().offset); // 180 1 99
   1.141 -    case 70: stack.push(arg1); // 27
   1.142 -    case 71: stack.push(stack.pop() + stack.pop()); // 96
   1.143 -    case 72: stack.push(arg2); // 28
   1.144 -    case 73: stack.push(arg1); // 27
   1.145 -    case 74: { var tmp = stack.pop(); stack.push(stack.pop() - tmp); } // 100
   1.146 -    case 75: stack.push(arg0); // 42
   1.147 -    case 76: stack.push(stack.pop().value); // 180 1 100
   1.148 -    case 79: { var v2 = stack.pop(); var v1 = stack.pop(); var v0 = stack.pop(); java_lang_String_consVIIAC(stack.pop(), v0, v1, v2); } // 183 1 137
   1.149 -    case 82: return stack.pop(); // 176
   1.150 -  }
   1.151 +    return arg0.toString().substring(arg1, arg2);
   1.152  }
   1.153 +/*
   1.154  function java_lang_String_subSequenceLjava_lang_CharSequenceII(arg0,arg1,arg2) {
   1.155    var arg3;
   1.156  ;
   1.157 @@ -2592,6 +2472,9 @@
   1.158  String.prototype.isEmptyZ = java_lang_String_isEmptyZ;
   1.159  String.prototype.getCharsVIIACI = java_lang_String_getCharsVIIACAI;
   1.160  String.prototype.toStringLjava_lang_String = java_lang_String_toStringLjava_lang_String;
   1.161 +String.prototype.substringLjava_lang_StringI = java_lang_String_substringLjava_lang_StringI;
   1.162 +String.prototype.substringLjava_lang_StringII = java_lang_String_substringLjava_lang_StringII;
   1.163 +String.prototype.equalsZLjava_lang_Object = java_lang_String_equalsZLjava_lang_Object;
   1.164  String.prototype.$instOf_java_lang_String = true;
   1.165  String.prototype.$instOf_java_io_Serializable = true;
   1.166  String.prototype.$instOf_java_lang_Comparable = true;