diff --git a/src/mem.js b/src/mem.js index bacd7e3..8a529de 100644 --- a/src/mem.js +++ b/src/mem.js @@ -516,315 +516,12 @@ function h$memcpy() { // note: only works for objects bigger than two! function h$setField(o,n,v) { if(n > 0 && !o.d2) o.d2 = {}; - switch(n) { - case 0: + if (n == 0) { o.d1 = v; return; - case 1: - o.d2.d1 = v; - return; - case 2: - o.d2.d2 = v; - return; - case 3: - o.d2.d3 = v; - return; - case 4: - o.d2.d4 = v; - return; - case 5: - o.d2.d5 = v; - return; - case 6: - o.d2.d6 = v; - return; - case 7: - o.d2.d7 = v; - return; - case 8: - o.d2.d8 = v; - return; - case 9: - o.d2.d9 = v; - return; - case 10: - o.d2.d10 = v; - return; - case 11: - o.d2.d11 = v; - return; - case 12: - o.d2.d12 = v; - return; - case 13: - o.d2.d13 = v; - return; - case 14: - o.d2.d14 = v; - return; - case 15: - o.d2.d15 = v; - return; - case 16: - o.d2.d16 = v; - return; - case 17: - o.d2.d17 = v; - return; - case 18: - o.d2.d18 = v; - return; - case 19: - o.d2.d19 = v; - return; - case 20: - o.d2.d20 = v; - return; - case 21: - o.d2.d21 = v; - return; - case 22: - o.d2.d22 = v; - return; - case 23: - o.d2.d23 = v; - return; - case 24: - o.d2.d24 = v; - return; - case 25: - o.d2.d25 = v; - return; - case 26: - o.d2.d26 = v; - return; - case 27: - o.d2.d27 = v; - return; - case 28: - o.d2.d28 = v; - return; - case 29: - o.d2.d29 = v; - return; - case 30: - o.d2.d30 = v; - return; - case 31: - o.d2.d31 = v; - return; - case 32: - o.d2.d32 = v; - return; - case 33: - o.d2.d33 = v; - return; - case 34: - o.d2.d34 = v; - return; - case 35: - o.d2.d35 = v; - return; - case 36: - o.d2.d36 = v; - return; - case 37: - o.d2.d37 = v; - return; - case 38: - o.d2.d38 = v; - return; - case 39: - o.d2.d39 = v; - return; - case 40: - o.d2.d40 = v; - return; - case 41: - o.d2.d41 = v; - return; - case 42: - o.d2.d42 = v; - return; - case 43: - o.d2.d43 = v; - return; - case 44: - o.d2.d44 = v; - return; - case 45: - o.d2.d45 = v; - return; - case 45: - o.d2.d45 = v; - return; - case 46: - o.d2.d46 = v; - return; - case 47: - o.d2.d47 = v; - return; - case 48: - o.d2.d48 = v; - return; - case 49: - o.d2.d49 = v; - return; - case 50: - o.d2.d50 = v; - return; - case 51: - o.d2.d51 = v; - return; - case 52: - o.d2.d52 = v; - return; - case 53: - o.d2.d53 = v; - return; - case 54: - o.d2.d54 = v; - return; - case 55: - o.d2.d55 = v; - return; - case 56: - o.d2.d56 = v; - return; - case 57: - o.d2.d57 = v; - return; - case 58: - o.d2.d58 = v; - return; - case 59: - o.d2.d59 = v; - return; - case 60: - o.d2.d60 = v; - return; - case 61: - o.d2.d61 = v; - return; - case 62: - o.d2.d62 = v; - return; - case 63: - o.d2.d63 = v; - return; - case 64: - o.d2.d64 = v; - return; - case 65: - o.d2.d65 = v; - return; - case 66: - o.d2.d66 = v; - return; - case 67: - o.d2.d67 = v; - return; - case 68: - o.d2.d68 = v; - return; - case 69: - o.d2.d69 = v; - return; - case 70: - o.d2.d70 = v; - return; - case 71: - o.d2.d71 = v; - return; - case 72: - o.d2.d72 = v; - return; - case 73: - o.d2.d73 = v; - return; - case 74: - o.d2.d74 = v; - return; - case 75: - o.d2.d75 = v; - return; - case 76: - o.d2.d76 = v; - return; - case 77: - o.d2.d77 = v; - return; - case 78: - o.d2.d78 = v; - return; - case 79: - o.d2.d79 = v; - return; - case 80: - o.d2.d80 = v; - return; - case 81: - o.d2.d81 = v; - return; - case 82: - o.d2.d82 = v; - return; - case 83: - o.d2.d83 = v; - return; - case 84: - o.d2.d84 = v; - return; - case 85: - o.d2.d85 = v; - return; - case 86: - o.d2.d86 = v; - return; - case 87: - o.d2.d87 = v; - return; - case 88: - o.d2.d88 = v; - return; - case 89: - o.d2.d89 = v; - return; - case 90: - o.d2.d90 = v; - return; - case 91: - o.d2.d91 = v; - return; - case 92: - o.d2.d92 = v; - return; - case 93: - o.d2.d93 = v; - return; - case 94: - o.d2.d94 = v; - return; - case 95: - o.d2.d95 = v; - return; - case 96: - o.d2.d96 = v; - return; - case 97: - o.d2.d97 = v; - return; - case 98: - o.d2.d98 = v; - return; - case 99: - o.d2.d99 = v; - return; - case 100: - o.d2.d100 = v; + } else { + o.d2['d' + n] = v; return; - default: - throw ("h$setField: setter not implemented for field: " + n); } }