UNPKG

openfl

Version:

A fast, productive library for 2D cross-platform development.

422 lines (404 loc) 10.6 kB
// Class: openfl.utils._internal.format.amf3.AMF3Tools var $global = typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : this $global.Object.defineProperty(exports, "__esModule", {value: true}); var __map_reserved = {}; // Imports var $hxClasses = require("./../../../../../hxClasses_stub").default; var $hxEnums = require("./../../../../../hxEnums_stub").default; var $import = require("./../../../../../import_stub").default; function Type() {return require("./../../../../../Type");} function openfl_utils__$internal_format_amf3_AMF3Value() {return require("./../../../../../openfl/utils/_internal/format/amf3/AMF3Value");} function haxe_ds_StringMap() {return require("./../../../../../haxe/ds/StringMap");} function Reflect() {return require("./../../../../../Reflect");} function Xml() {return require("./../../../../../Xml");} function haxe_ds_IntMap() {return require("./../../../../../haxe/ds/IntMap");} function haxe_ds_ObjectMap() {return require("./../../../../../haxe/ds/ObjectMap");} function haxe_ds_EnumValueMap() {return require("./../../../../../haxe/ds/EnumValueMap");} function haxe_io_Bytes() {return require("./../../../../../haxe/io/Bytes");} function openfl_utils__$ByteArray_ByteArray_$Impl_$() {return require("./../../../../../openfl/utils/_ByteArray/ByteArray_Impl_");} function openfl_utils_ByteArrayData() {return require("./../../../../../openfl/utils/ByteArrayData");} function openfl_utils__$internal_format_amf3_AMF3Array() {return require("./../../../../../openfl/utils/_internal/format/amf3/AMF3Array");} function js_Boot() {return require("./../../../../../js/Boot");} function openfl_utils_IExternalizable() {return require("./../../../../../openfl/utils/IExternalizable");} function js__$Boot_HaxeError() {return require("./../../../../../js/_Boot/HaxeError");} function Std() {return require("./../../../../../Std");} function openfl__$Vector_Vector_$Impl_$() {return require("./../../../../../openfl/_Vector/Vector_Impl_");} function openfl_Lib() {return require("./../../../../../openfl/Lib");} // Constructor var AMF3Tools = function(){} // Meta AMF3Tools.__name__ = "openfl.utils._internal.format.amf3.AMF3Tools"; AMF3Tools.__isInterface__ = false; AMF3Tools.prototype = { }; AMF3Tools.prototype.__class__ = AMF3Tools.prototype.constructor = $hxClasses["openfl.utils._internal.format.amf3.AMF3Tools"] = AMF3Tools; // Init // Statics AMF3Tools.encode = function(o) { var _g = (Type().default).typeof(o); switch(_g._hx_index) { case 0: return (openfl_utils__$internal_format_amf3_AMF3Value().default).ANull; case 1: return (openfl_utils__$internal_format_amf3_AMF3Value().default).AInt(o); case 2: return (openfl_utils__$internal_format_amf3_AMF3Value().default).ANumber(o); case 3: return (openfl_utils__$internal_format_amf3_AMF3Value().default).ABool(o); case 4: var h = new (haxe_ds_StringMap().default)(); var _g1 = 0; var _g11 = (Reflect().default).fields(o); while(_g1 < _g11.length) { var f = _g11[_g1]; ++_g1; h.set(f,AMF3Tools.encode((Reflect().default).field(o,f))); } return (openfl_utils__$internal_format_amf3_AMF3Value().default).AObject(h,null,null); case 5: return (openfl_utils__$internal_format_amf3_AMF3Value().default).ANull; case 6: var c = _g.c; switch(c) { case Array: var o1 = o; var a = []; var _g2 = 0; while(_g2 < o1.length) { var v = o1[_g2]; ++_g2; a.push(AMF3Tools.encode(v)); } return (openfl_utils__$internal_format_amf3_AMF3Value().default).AArray(a); case Date: return (openfl_utils__$internal_format_amf3_AMF3Value().default).ADate(o); case String: return (openfl_utils__$internal_format_amf3_AMF3Value().default).AString(o); case (Xml().default): return (openfl_utils__$internal_format_amf3_AMF3Value().default).AXml(o); case (haxe_ds_IntMap().default):case (haxe_ds_ObjectMap().default):case (haxe_ds_StringMap().default): var o2 = o; var h1 = new (haxe_ds_EnumValueMap().default)(); var f1 = o2.keys(); while(f1.hasNext()) { var f2 = f1.next(); h1.set(AMF3Tools.encode(f2),AMF3Tools.encode(o2.get(f2))); } return (openfl_utils__$internal_format_amf3_AMF3Value().default).AMap(h1); case (haxe_io_Bytes().default): return (openfl_utils__$internal_format_amf3_AMF3Value().default).AByteArray((openfl_utils__$ByteArray_ByteArray_$Impl_$().default).fromBytes(o)); case (openfl_utils_ByteArrayData().default): return (openfl_utils__$internal_format_amf3_AMF3Value().default).AByteArray(o); case (openfl_utils__$internal_format_amf3_AMF3Array().default): var o3 = o; var a1 = []; var m = new (haxe_ds_StringMap().default)(); var _g3 = 0; var _g12 = o3.a; while(_g3 < _g12.length) { var v1 = _g12[_g3]; ++_g3; a1.push(AMF3Tools.encode(v1)); } var k = o3.extra.iterator(); while(k.hasNext()) { var k1 = k.next(); var v2 = AMF3Tools.encode(o3.extra.get(k1)); m.set(k1,v2); } return (openfl_utils__$internal_format_amf3_AMF3Value().default).AArray(a1,m); default: if((js_Boot().default).__implements(o,(openfl_utils_IExternalizable().default))) { return (openfl_utils__$internal_format_amf3_AMF3Value().default).AExternal(o); } else { return (openfl_utils__$internal_format_amf3_AMF3Value().default).ANull; } } break; default: throw new (js__$Boot_HaxeError().default)("Can't encode " + (Std().default).string(o)); } } AMF3Tools.decode = function(a) { if(a == null) { return null; } switch(a._hx_index) { case 0: return AMF3Tools.undefined(a); case 1: return AMF3Tools.anull(a); case 2: var _g = a.b; return AMF3Tools.bool(a); case 3: var _g13 = a.i; return AMF3Tools.int(a); case 4: var _g8 = a.f; return AMF3Tools.number(a); case 5: var _g4 = a.s; return AMF3Tools.string(a); case 6: var _g9 = a.d; return AMF3Tools.date(a); case 7: var _g7 = a.className; var _g6 = a.size; var _g5 = a.fields; return AMF3Tools.object(a); case 8: var _g3 = a.o; return AMF3Tools.external(a); case 9: var _g11 = a.extra; var _g10 = a.values; return AMF3Tools.array(a); case 10: var _g16 = a.v; return AMF3Tools.intVector(a); case 11: var _g1 = a.v; return AMF3Tools.floatVector(a); case 12: var _g15 = a.type; var _g14 = a.v; return AMF3Tools.objectVector(a); case 13: var _g17 = a.x; return AMF3Tools.xml(a); case 14: var _g2 = a.ba; return AMF3Tools.byteArray(a); case 15: var _g12 = a.m; return AMF3Tools.map(a); } } AMF3Tools.undefined = function(a) { return null; } AMF3Tools.anull = function(a) { return null; } AMF3Tools.bool = function(a) { if(a == null) { return null; } if(a._hx_index == 2) { var b = a.b; return b; } else { return null; } } AMF3Tools.int = function(a) { if(a == null) { return null; } if(a._hx_index == 3) { var n = a.i; return n; } else { return null; } } AMF3Tools.number = function(a) { if(a == null) { return null; } if(a._hx_index == 4) { var n = a.f; return n; } else { return null; } } AMF3Tools.string = function(a) { if(a == null) { return null; } if(a._hx_index == 5) { var s = a.s; return s; } else { return null; } } AMF3Tools.date = function(a) { if(a == null) { return null; } if(a._hx_index == 6) { var d = a.d; return d; } else { return null; } } AMF3Tools.array = function(a) { if(a == null) { return null; } if(a._hx_index == 9) { var m = a.extra; var a1 = a.values; var b = []; var _g = 0; while(_g < a1.length) { var f = a1[_g]; ++_g; b.push(AMF3Tools.decode(f)); } return b; } else { return null; } } AMF3Tools.intVector = function(a) { if(a == null) { return null; } if(a._hx_index == 10) { var v = a.v; return v; } else { return null; } } AMF3Tools.floatVector = function(a) { if(a == null) { return null; } if(a._hx_index == 11) { var v = a.v; return v; } else { return null; } } AMF3Tools.objectVector = function(a) { if(a == null) { return null; } if(a._hx_index == 12) { var type = a.type; var v = a.v; var ret = (openfl__$Vector_Vector_$Impl_$().default)._new(v.get_length(),v.fixed); var _g = 0; var _g1 = v.get_length(); while(_g < _g1) { var i = _g++; (openfl__$Vector_Vector_$Impl_$().default).set(ret,i,AMF3Tools.decode(v[i])); } return ret; } else { return null; } } AMF3Tools.object = function(a) { if(a == null) { return null; } if(a._hx_index == 7) { var _g1 = a.size; var className = a.className; var f = a.fields; var o = null; if(className != null && className != "") { var cls = (openfl_Lib().default).getClassByAlias(className); if(cls == null) { cls = (Type().default).resolveClass(className); } if(cls != null) { o = (Type().default).createInstance(cls,[]); } } else { o = { }; } if(o != null && f != null) { var name = f.keys(); while(name.hasNext()) { var name1 = name.next(); (Reflect().default).setProperty(o,name1,AMF3Tools.decode(f.get(name1))); } } return o; } else { return null; } } AMF3Tools.external = function(a) { if(a == null) { return null; } if(a._hx_index == 8) { var e = a.o; return e; } else { return null; } } AMF3Tools.xml = function(a) { if(a == null) { return null; } if(a._hx_index == 13) { var x = a.x; return x; } else { return null; } } AMF3Tools.byteArray = function(a) { if(a == null) { return null; } if(a._hx_index == 14) { var b = a.ba; return b; } else { return null; } } AMF3Tools.map = function(a) { if(a == null) { return null; } if(a._hx_index == 15) { var m = a.m; var f = m.keys(); while(f.hasNext()) { var f1 = f.next(); if(typeof(f1) == "number" && ((f1 | 0) === f1)) { var p = new (haxe_ds_IntMap().default)(); var f2 = m.keys(); while(f2.hasNext()) { var f3 = f2.next(); p.set(AMF3Tools.decode(f3),AMF3Tools.decode(m.get(f3))); } } else if(typeof(f1) == "string") { var p1 = new (haxe_ds_StringMap().default)(); var f4 = m.keys(); while(f4.hasNext()) { var f5 = f4.next(); p1.set(AMF3Tools.decode(f5),AMF3Tools.decode(m.get(f5))); } } else { var p2 = new (haxe_ds_ObjectMap().default)(); var f6 = m.keys(); while(f6.hasNext()) { var f7 = f6.next(); p2.set(AMF3Tools.decode(f7),AMF3Tools.decode(m.get(f7))); } } break; } return new (haxe_ds_ObjectMap().default)(); } else { return null; } } // Export exports.default = AMF3Tools;