public virtual object readMap(global::haxe.io.BytesInput i, int length, global::org.msgpack.DecodeOption option) { unchecked { #line 116 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" switch (option._hx_index) { case 0: { #line 128 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::haxe.root.Array pairs = new global::haxe.root.Array(new object[] {}); { #line 129 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g = 0; #line 129 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g1 = length; #line 129 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" while ((_g < _g1)) { #line 129 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int n = _g++; object k = this.decode(i, option); #line 131 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" object v = this.decode(i, option); pairs.push(new global::org.msgpack._Decoder.Pair(k, v)); } } #line 135 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if ((pairs.length == 0)) { #line 136 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" return(new global::haxe.ds.StringMap()); } #line 138 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::haxe.root.ValueType _g2 = global::haxe.root.Type.@typeof(((global::org.msgpack._Decoder.Pair)(pairs.__get(0))).k); #line 138 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" switch (_g2._hx_index) { case 1: { #line 141 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::haxe.ds.IntMap @out = new global::haxe.ds.IntMap(); { #line 142 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g21 = 0; #line 142 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" while ((_g21 < pairs.length)) { #line 142 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::org.msgpack._Decoder.Pair p = ((global::org.msgpack._Decoder.Pair)(pairs.__get(_g21))); #line 142 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" ++_g21; if ((global::haxe.root.Type.@typeof(p.k)._hx_index == 1)) { } else { #line 146 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap("Error: Mixed key type when decoding IntMap"); } #line 149 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if (@out.exists(((int)(global::haxe.lang.Runtime.toInt(p.k))))) { #line 150 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap(global::haxe.lang.Runtime.concat("Error: Duplicate keys found => ", global::haxe.root.Std.@string(p.k))); } #line 152 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" @out.@set(((int)(global::haxe.lang.Runtime.toInt(p.k))), ((object)(p.v))); } } #line 155 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" return(@out); } case 6: { #line 157 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::System.Type c = (_g2 as global::haxe.root.ValueType_TClass).c; #line 157 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if ((global::haxe.root.Type.getClassName(c) == "String")) { #line 158 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::haxe.ds.StringMap out1 = new global::haxe.ds.StringMap(); { #line 159 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g22 = 0; #line 159 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" while ((_g22 < pairs.length)) { #line 159 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::org.msgpack._Decoder.Pair p1 = ((global::org.msgpack._Decoder.Pair)(pairs.__get(_g22))); #line 159 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" ++_g22; { #line 160 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::haxe.root.ValueType _g23 = global::haxe.root.Type.@typeof(p1.k); #line 160 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if ((_g23._hx_index == 6)) { #line 161 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" global::System.Type c1 = (_g23 as global::haxe.root.ValueType_TClass).c; #line 161 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if ((global::haxe.root.Type.getClassName(c1) == "String")) { } else { #line 163 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap("Error: Mixed key type when decoding StringMap"); } } else { #line 163 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap("Error: Mixed key type when decoding StringMap"); } } #line 166 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" if (out1.exists(global::haxe.lang.Runtime.toString(p1.k))) { #line 167 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap(global::haxe.lang.Runtime.concat("Error: Duplicate keys found => ", global::haxe.root.Std.@string(p1.k))); } #line 169 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" out1.@set(global::haxe.lang.Runtime.toString(p1.k), ((object)(p1.v))); } } #line 172 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" return(out1); } else { #line 175 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap("Error: Unsupported key Type"); } } default: { #line 175 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" throw global::haxe.lang.HaxeException.wrap("Error: Unsupported key Type"); } } } case 1: { #line 118 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" object out2 = new global::haxe.lang.DynamicObject(new int[] {}, new object[] {}, new int[] {}, new double[] {}); { #line 119 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g3 = 0; #line 119 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int _g11 = length; #line 119 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" while ((_g3 < _g11)) { #line 119 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" int n1 = _g3++; object k1 = this.decode(i, option); #line 121 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" object v1 = this.decode(i, option); global::haxe.root.Reflect.setField(out2, global::haxe.root.Std.@string(k1), v1); } } #line 125 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" return(out2); } } #line 115 "D:\\project\\sangong\\sangong\\src\\org\\msgpack\\Decoder.hx" return(null); } #line default }
public virtual void write(object k, object v) { unchecked { #line 82 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" if ((this.replacer != null)) { #line 83 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" v = ((object)(this.replacer.__hx_invoke2_o(default(double), k, default(double), v))); } #line 84 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" { #line 84 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::haxe.root.ValueType _g = global::haxe.root.Type.@typeof(v); #line 84 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" switch (_g._hx_index) { case 0: { #line 136 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)("null"))); #line 136 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 1: { #line 90 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)(global::haxe.root.Std.@string(global::haxe.lang.Runtime.toString(v))))); #line 90 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 2: { #line 92 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" double f = ((double)(global::haxe.lang.Runtime.toDouble(v))); #line 92 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" string v1 = (((!(global::System.Double.IsInfinity(((double)(f)))) && !(global::System.Double.IsNaN(((double)(f)))))) ? (global::haxe.root.Std.@string(v)) : ("null")); #line 92 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)(global::haxe.root.Std.@string(v1)))); #line 92 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 3: { #line 134 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)(global::haxe.root.Std.@string(global::haxe.lang.Runtime.toString(v))))); #line 134 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 4: { #line 88 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.fieldsString(v, global::haxe.root.Reflect.fields(v)); #line 88 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 5: { #line 94 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)("\"<fun>\""))); #line 94 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 6: { #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::System.Type c = (_g as global::haxe.root.ValueType_TClass).c; if (global::haxe.lang.Runtime.refEq(c, typeof(string))) { #line 97 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.quote(global::haxe.lang.Runtime.toString(v)); } else if (global::haxe.lang.Runtime.refEq(c, typeof(global::haxe.root.Array))) { #line 99 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::haxe.root.Array v2 = ((global::haxe.root.Array)(v)); this.buf.addChar(91); #line 102 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" int len = v2.length; int last = (len - 1); #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" { #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" int _g1 = 0; #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" int _g11 = len; #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" while ((_g1 < _g11)) { #line 104 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" int i = _g1++; if ((i > 0)) { #line 106 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.addChar(44); } else { #line 108 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.nind++; } #line 109 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" if (this.pretty) { #line 109 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.addChar(10); } #line 110 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" if (this.pretty) { #line 110 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" string v3 = global::haxe.root.StringTools.lpad("", this.indent, (this.nind * this.indent.Length)); #line 110 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)(global::haxe.root.Std.@string(v3)))); } #line 111 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.write(i, v2.__get(i)); if ((i == last)) { #line 113 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.nind--; if (this.pretty) { #line 114 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.addChar(10); } #line 115 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" if (this.pretty) { #line 115 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" string v4 = global::haxe.root.StringTools.lpad("", this.indent, (this.nind * this.indent.Length)); #line 115 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)(global::haxe.root.Std.@string(v4)))); } } } } #line 118 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.addChar(93); } else if (global::haxe.lang.Runtime.refEq(c, typeof(global::haxe.ds.StringMap))) { #line 120 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::haxe.ds.StringMap v5 = ((global::haxe.ds.StringMap)(v)); object o = new global::haxe.lang.DynamicObject(new int[] {}, new object[] {}, new int[] {}, new double[] {}); #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" { #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" object k1 = ((object)(new global::haxe.ds._StringMap.StringMapKeyIterator(((global::haxe.ds.StringMap)(v5))))); #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" while (global::haxe.lang.Runtime.toBool(global::haxe.lang.Runtime.callField(k1, "hasNext", 407283053, null))) { #line 122 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" string k2 = global::haxe.lang.Runtime.toString(global::haxe.lang.Runtime.callField(k1, "next", 1224901875, null)); global::haxe.root.Reflect.setField(o, k2, v5.@get(((string)(k2)))); } } #line 124 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" { #line 124 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" object v6 = ((object)(o)); #line 124 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.fieldsString(v6, global::haxe.root.Reflect.fields(v6)); } } else if (global::haxe.lang.Runtime.refEq(c, typeof(global::haxe.root.Date))) { #line 126 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::haxe.root.Date v7 = ((global::haxe.root.Date)(v)); this.quote(v7.toString()); } else { #line 129 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.classString(v); } #line 95 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 7: { #line 130 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" global::System.Type _g12 = (_g as global::haxe.root.ValueType_TEnum).e; #line 130 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" { #line 131 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" object i1 = global::haxe.root.Type.enumIndex(v); this.buf.b.Append(((string)(global::haxe.root.Std.@string(global::haxe.lang.Runtime.toString(i1))))); } #line 130 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } case 8: { #line 86 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" this.buf.b.Append(((string)("\"???\""))); #line 86 "C:\\HaxeToolkit\\haxe\\std\\haxe\\format\\JsonPrinter.hx" break; } } } } #line default }