Index: packages/unittest/out.js |
diff --git a/packages/unittest/out.js b/packages/unittest/out.js |
deleted file mode 100644 |
index 925e952924aab0d1327a2c82292154427d6fb42c..0000000000000000000000000000000000000000 |
--- a/packages/unittest/out.js |
+++ /dev/null |
@@ -1,5440 +0,0 @@ |
-// Generated by dart2js, the Dart to JavaScript compiler version: 1.11.0-edge.131474. |
-// The code supports the following hooks: |
-// dartPrint(message): |
-// if this function is defined it is called instead of the Dart [print] |
-// method. |
-// |
-// dartMainRunner(main, args): |
-// if this function is defined, the Dart [main] method will not be invoked |
-// directly. Instead, a closure that will invoke [main], and its arguments |
-// [args] is passed to [dartMainRunner]. |
-// |
-// dartDeferredLibraryLoader(uri, successCallback, errorCallback): |
-// if this function is defined, it will be called when a deferered library |
-// is loaded. It should load and eval the javascript of `uri`, and call |
-// successCallback. If it fails to do so, it should call errorCallback with |
-// an error. |
-(function($) { |
-var supportsDirectProtoAccess = function() { |
- var cls = function() { |
- }; |
- cls.prototype = {p: {}}; |
- var object = new cls(); |
- return object.__proto__ && object.__proto__.p === cls.prototype.p; |
-}(); |
-; |
-function map(x) { |
- x = Object.create(null); |
- x.x = 0; |
- delete x.x; |
- return x; |
-} |
-var A = map(); |
-var B = map(); |
-var C = map(); |
-var D = map(); |
-var E = map(); |
-var F = map(); |
-var G = map(); |
-var H = map(); |
-var J = map(); |
-var K = map(); |
-var L = map(); |
-var M = map(); |
-var N = map(); |
-var O = map(); |
-var P = map(); |
-var Q = map(); |
-var R = map(); |
-var S = map(); |
-var T = map(); |
-var U = map(); |
-var V = map(); |
-var W = map(); |
-var X = map(); |
-var Y = map(); |
-var Z = map(); |
-function Isolate() {} |
-init(); |
- |
-$ = Isolate.$isolateProperties; |
-$.functionThatReturnsNull = function() { |
-}; |
-; |
-function setupProgram(programData, typesOffset) { |
- "use strict"; |
- function generateAccessor(fieldDescriptor, accessors, cls) { |
- var fieldInformation = fieldDescriptor.split("-"); |
- var field = fieldInformation[0]; |
- var len = field.length; |
- var code = field.charCodeAt(len - 1); |
- var reflectable; |
- if (fieldInformation.length > 1) |
- reflectable = true; |
- else |
- reflectable = false; |
- code = code >= 60 && code <= 64 ? code - 59 : code >= 123 && code <= 126 ? code - 117 : code >= 37 && code <= 43 ? code - 27 : 0; |
- if (code) { |
- var getterCode = code & 3; |
- var setterCode = code >> 2; |
- var accessorName = field = field.substring(0, len - 1); |
- var divider = field.indexOf(":"); |
- if (divider > 0) { |
- accessorName = field.substring(0, divider); |
- field = field.substring(divider + 1); |
- } |
- if (getterCode) { |
- var args = getterCode & 2 ? "receiver" : ""; |
- var receiver = getterCode & 1 ? "this" : "receiver"; |
- var body = "return " + receiver + "." + field; |
- var property = cls + ".prototype.get$" + accessorName + "="; |
- var fn = "function(" + args + "){" + body + "}"; |
- if (reflectable) |
- accessors.push(property + "$reflectable(" + fn + ");\n"); |
- else |
- accessors.push(property + fn + ";\n"); |
- } |
- if (setterCode) { |
- var args = setterCode & 2 ? "receiver, value" : "value"; |
- var receiver = setterCode & 1 ? "this" : "receiver"; |
- var body = receiver + "." + field + " = value"; |
- var property = cls + ".prototype.set$" + accessorName + "="; |
- var fn = "function(" + args + "){" + body + "}"; |
- if (reflectable) |
- accessors.push(property + "$reflectable(" + fn + ");\n"); |
- else |
- accessors.push(property + fn + ";\n"); |
- } |
- } |
- return field; |
- } |
- function defineClass(name, fields) { |
- var accessors = []; |
- var str = "function " + name + "("; |
- var body = ""; |
- var fieldNames = ""; |
- for (var i = 0; i < fields.length; i++) { |
- if (i != 0) |
- str += ", "; |
- var field = generateAccessor(fields[i], accessors, name); |
- fieldNames += "'" + field + "',"; |
- var parameter = "p_" + field; |
- str += parameter; |
- body += "this." + field + " = " + parameter + ";\n"; |
- } |
- if (supportsDirectProtoAccess) |
- body += "this." + "$deferredAction" + "();"; |
- str += ") {\n" + body + "}\n"; |
- str += name + ".builtin$cls=\"" + name + "\";\n"; |
- str += "$desc=$collectedClasses." + name + "[1];\n"; |
- str += name + ".prototype = $desc;\n"; |
- if (typeof defineClass.name != "string") |
- str += name + ".name=\"" + name + "\";\n"; |
- str += name + "." + "$__fields__" + "=[" + fieldNames + "];\n"; |
- str += accessors.join(""); |
- return str; |
- } |
- init.createNewIsolate = function() { |
- return new Isolate(); |
- }; |
- init.classIdExtractor = function(o) { |
- return o.constructor.name; |
- }; |
- init.classFieldsExtractor = function(o) { |
- var fieldNames = o.constructor.$__fields__; |
- if (!fieldNames) |
- return []; |
- var result = []; |
- result.length = fieldNames.length; |
- for (var i = 0; i < fieldNames.length; i++) |
- result[i] = o[fieldNames[i]]; |
- return result; |
- }; |
- init.instanceFromClassId = function(name) { |
- return new init.allClasses[name](); |
- }; |
- init.initializeEmptyInstance = function(name, o, fields) { |
- init.allClasses[name].apply(o, fields); |
- return o; |
- }; |
- var inheritFrom = supportsDirectProtoAccess ? function(constructor, superConstructor) { |
- var prototype = constructor.prototype; |
- prototype.__proto__ = superConstructor.prototype; |
- prototype.constructor = constructor; |
- prototype["$is" + constructor.name] = constructor; |
- return convertToFastObject(prototype); |
- } : function() { |
- function tmp() { |
- } |
- return function(constructor, superConstructor) { |
- tmp.prototype = superConstructor.prototype; |
- var object = new tmp(); |
- convertToSlowObject(object); |
- var properties = constructor.prototype; |
- var members = Object.keys(properties); |
- for (var i = 0; i < members.length; i++) { |
- var member = members[i]; |
- object[member] = properties[member]; |
- } |
- object["$is" + constructor.name] = constructor; |
- object.constructor = constructor; |
- constructor.prototype = object; |
- return object; |
- }; |
- }(); |
- function finishClasses(processedClasses) { |
- var allClasses = init.allClasses; |
- processedClasses.combinedConstructorFunction += "return [\n" + processedClasses.constructorsList.join(",\n ") + "\n]"; |
- var constructors = new Function("$collectedClasses", processedClasses.combinedConstructorFunction)(processedClasses.collected); |
- processedClasses.combinedConstructorFunction = null; |
- for (var i = 0; i < constructors.length; i++) { |
- var constructor = constructors[i]; |
- var cls = constructor.name; |
- var desc = processedClasses.collected[cls]; |
- var globalObject = desc[0]; |
- desc = desc[1]; |
- allClasses[cls] = constructor; |
- globalObject[cls] = constructor; |
- } |
- constructors = null; |
- var finishedClasses = init.finishedClasses; |
- function finishClass(cls) { |
- if (finishedClasses[cls]) |
- return; |
- finishedClasses[cls] = true; |
- var superclass = processedClasses.pending[cls]; |
- if (!superclass || typeof superclass != "string") { |
- var constructor = allClasses[cls]; |
- var prototype = constructor.prototype; |
- prototype.constructor = constructor; |
- prototype.$isObject = constructor; |
- prototype.$deferredAction = function() { |
- }; |
- return; |
- } |
- finishClass(superclass); |
- var superConstructor = allClasses[superclass]; |
- if (!superConstructor) |
- superConstructor = existingIsolateProperties[superclass]; |
- var constructor = allClasses[cls]; |
- var prototype = inheritFrom(constructor, superConstructor); |
- if (prototype.$isInterceptor) |
- prototype.$deferredAction(); |
- } |
- var properties = Object.keys(processedClasses.pending); |
- for (var i = 0; i < properties.length; i++) |
- finishClass(properties[i]); |
- } |
- function finishAddStubsHelper() { |
- var prototype = this; |
- while (!prototype.hasOwnProperty("$deferredAction")) |
- prototype = prototype.__proto__; |
- delete prototype.$deferredAction; |
- var properties = Object.keys(prototype); |
- for (var index = 0; index < properties.length; index++) { |
- var property = properties[index]; |
- var firstChar = property.charCodeAt(0); |
- var elem; |
- if (property !== "^" && property !== "$reflectable" && firstChar !== 43 && firstChar !== 42 && (elem = prototype[property]) != null && elem.constructor === Array && property !== "<>") |
- addStubs(prototype, elem, property, false, []); |
- } |
- convertToFastObject(prototype); |
- prototype = prototype.__proto__; |
- prototype.$deferredAction(); |
- } |
- function processClassData(cls, descriptor, processedClasses) { |
- descriptor = convertToSlowObject(descriptor); |
- var previousProperty; |
- var properties = Object.keys(descriptor); |
- var hasDeferredWork = false; |
- var shouldDeferWork = supportsDirectProtoAccess && cls != "Object"; |
- for (var i = 0; i < properties.length; i++) { |
- var property = properties[i]; |
- var firstChar = property.charCodeAt(0); |
- if (property === "static") { |
- processStatics(init.statics[cls] = descriptor.static, processedClasses); |
- delete descriptor.static; |
- } else if (firstChar === 43) { |
- mangledNames[previousProperty] = property.substring(1); |
- var flag = descriptor[property]; |
- if (flag > 0) |
- descriptor[previousProperty].$reflectable = flag; |
- } else if (firstChar === 42) { |
- descriptor[previousProperty].$defaultValues = descriptor[property]; |
- var optionalMethods = descriptor.$methodsWithOptionalArguments; |
- if (!optionalMethods) |
- descriptor.$methodsWithOptionalArguments = optionalMethods = {}; |
- optionalMethods[property] = previousProperty; |
- } else { |
- var elem = descriptor[property]; |
- if (property !== "^" && elem != null && elem.constructor === Array && property !== "<>") |
- if (shouldDeferWork) |
- hasDeferredWork = true; |
- else |
- addStubs(descriptor, elem, property, false, []); |
- else |
- previousProperty = property; |
- } |
- } |
- if (hasDeferredWork) |
- descriptor.$deferredAction = finishAddStubsHelper; |
- var classData = descriptor["^"], split, supr, fields = classData; |
- var s = fields.split(";"); |
- fields = s[1] == "" ? [] : s[1].split(","); |
- supr = s[0]; |
- split = supr.split(":"); |
- if (split.length == 2) { |
- supr = split[0]; |
- var functionSignature = split[1]; |
- if (functionSignature) |
- descriptor.$signature = function(s) { |
- return function() { |
- return init.types[s]; |
- }; |
- }(functionSignature); |
- } |
- if (supr) |
- processedClasses.pending[cls] = supr; |
- processedClasses.combinedConstructorFunction += defineClass(cls, fields); |
- processedClasses.constructorsList.push(cls); |
- processedClasses.collected[cls] = [globalObject, descriptor]; |
- classes.push(cls); |
- } |
- function processStatics(descriptor, processedClasses) { |
- var properties = Object.keys(descriptor); |
- for (var i = 0; i < properties.length; i++) { |
- var property = properties[i]; |
- if (property === "^") |
- continue; |
- var element = descriptor[property]; |
- var firstChar = property.charCodeAt(0); |
- var previousProperty; |
- if (firstChar === 43) { |
- mangledGlobalNames[previousProperty] = property.substring(1); |
- var flag = descriptor[property]; |
- if (flag > 0) |
- descriptor[previousProperty].$reflectable = flag; |
- if (element && element.length) |
- init.typeInformation[previousProperty] = element; |
- } else if (firstChar === 42) { |
- globalObject[previousProperty].$defaultValues = element; |
- var optionalMethods = descriptor.$methodsWithOptionalArguments; |
- if (!optionalMethods) |
- descriptor.$methodsWithOptionalArguments = optionalMethods = {}; |
- optionalMethods[property] = previousProperty; |
- } else if (typeof element === "function") { |
- globalObject[previousProperty = property] = element; |
- functions.push(property); |
- init.globalFunctions[property] = element; |
- } else if (element.constructor === Array) |
- addStubs(globalObject, element, property, true, functions); |
- else { |
- previousProperty = property; |
- processClassData(property, element, processedClasses); |
- } |
- } |
- } |
- function addStubs(prototype, array, name, isStatic, functions) { |
- var index = 0, alias = array[index], f; |
- if (typeof alias == "string") |
- f = array[++index]; |
- else { |
- f = alias; |
- alias = name; |
- } |
- var funcs = [prototype[name] = prototype[alias] = f]; |
- f.$stubName = name; |
- functions.push(name); |
- for (index++; index < array.length; index++) { |
- f = array[index]; |
- if (typeof f != "function") |
- break; |
- if (!isStatic) |
- f.$stubName = array[++index]; |
- funcs.push(f); |
- if (f.$stubName) { |
- prototype[f.$stubName] = f; |
- functions.push(f.$stubName); |
- } |
- } |
- for (var i = 0; i < funcs.length; index++, i++) |
- funcs[i].$callName = array[index]; |
- var getterStubName = array[index]; |
- array = array.slice(++index); |
- var requiredParameterInfo = array[0]; |
- var requiredParameterCount = requiredParameterInfo >> 1; |
- var isAccessor = (requiredParameterInfo & 1) === 1; |
- var isSetter = requiredParameterInfo === 3; |
- var isGetter = requiredParameterInfo === 1; |
- var optionalParameterInfo = array[1]; |
- var optionalParameterCount = optionalParameterInfo >> 1; |
- var optionalParametersAreNamed = (optionalParameterInfo & 1) === 1; |
- var isIntercepted = requiredParameterCount + optionalParameterCount != funcs[0].length; |
- var functionTypeIndex = array[2]; |
- if (typeof functionTypeIndex == "number") |
- array[2] = functionTypeIndex + typesOffset; |
- var unmangledNameIndex = 2 * optionalParameterCount + requiredParameterCount + 3; |
- if (getterStubName) { |
- f = tearOff(funcs, array, isStatic, name, isIntercepted); |
- prototype[name].$getter = f; |
- f.$getterStub = true; |
- if (isStatic) { |
- init.globalFunctions[name] = f; |
- functions.push(getterStubName); |
- } |
- prototype[getterStubName] = f; |
- funcs.push(f); |
- f.$stubName = getterStubName; |
- f.$callName = null; |
- } |
- } |
- function tearOffGetter(funcs, reflectionInfo, name, isIntercepted) { |
- return isIntercepted ? new Function("funcs", "reflectionInfo", "name", "H", "c", "return function tearOff_" + name + functionCounter++ + "(x) {" + "if (c === null) c = H.closureFromTearOff(" + "this, funcs, reflectionInfo, false, [x], name);" + "return new c(this, funcs[0], x, name);" + "}")(funcs, reflectionInfo, name, H, null) : new Function("funcs", "reflectionInfo", "name", "H", "c", "return function tearOff_" + name + functionCounter++ + "() {" + "if (c === null) c = H.closureFromTearOff(" + "this, funcs, reflectionInfo, false, [], name);" + "return new c(this, funcs[0], null, name);" + "}")(funcs, reflectionInfo, name, H, null); |
- } |
- function tearOff(funcs, reflectionInfo, isStatic, name, isIntercepted) { |
- var cache; |
- return isStatic ? function() { |
- if (cache === void 0) |
- cache = H.closureFromTearOff(this, funcs, reflectionInfo, true, [], name).prototype; |
- return cache; |
- } : tearOffGetter(funcs, reflectionInfo, name, isIntercepted); |
- } |
- var functionCounter = 0; |
- if (!init.libraries) |
- init.libraries = []; |
- if (!init.mangledNames) |
- init.mangledNames = map(); |
- if (!init.mangledGlobalNames) |
- init.mangledGlobalNames = map(); |
- if (!init.statics) |
- init.statics = map(); |
- if (!init.typeInformation) |
- init.typeInformation = map(); |
- if (!init.globalFunctions) |
- init.globalFunctions = map(); |
- var libraries = init.libraries; |
- var mangledNames = init.mangledNames; |
- var mangledGlobalNames = init.mangledGlobalNames; |
- var hasOwnProperty = Object.prototype.hasOwnProperty; |
- var length = programData.length; |
- var processedClasses = map(); |
- processedClasses.collected = map(); |
- processedClasses.pending = map(); |
- processedClasses.constructorsList = []; |
- processedClasses.combinedConstructorFunction = "function $reflectable(fn){fn.$reflectable=1;return fn};\n" + "var $desc;\n"; |
- for (var i = 0; i < length; i++) { |
- var data = programData[i]; |
- var name = data[0]; |
- var uri = data[1]; |
- var metadata = data[2]; |
- var globalObject = data[3]; |
- var descriptor = data[4]; |
- var isRoot = !!data[5]; |
- var fields = descriptor && descriptor["^"]; |
- if (fields instanceof Array) |
- fields = fields[0]; |
- var classes = []; |
- var functions = []; |
- processStatics(descriptor, processedClasses); |
- libraries.push([name, uri, classes, functions, metadata, fields, isRoot, globalObject]); |
- } |
- finishClasses(processedClasses); |
-} |
-var dart =[["_foreign_helper", "dart:_foreign_helper",, H, { |
- "^": "", |
- JS_CONST: { |
- "^": "Object;code" |
- } |
-}], ["_interceptors", "dart:_interceptors",, J, { |
- "^": "", |
- getInterceptor: function(object) { |
- return void 0; |
- }, |
- Interceptor: { |
- "^": "Object;", |
- $eq: function(receiver, other) { |
- return receiver === other; |
- }, |
- get$hashCode: function(receiver) { |
- return H.Primitives_objectHashCode(receiver); |
- }, |
- toString$0: function(receiver) { |
- return H.Primitives_objectToString(receiver); |
- } |
- }, |
- JSBool: { |
- "^": "Interceptor;", |
- toString$0: function(receiver) { |
- return String(receiver); |
- }, |
- get$hashCode: function(receiver) { |
- return receiver ? 519018 : 218159; |
- }, |
- $isbool: 1 |
- }, |
- JSNull: { |
- "^": "Interceptor;", |
- $eq: function(receiver, other) { |
- return null == other; |
- }, |
- toString$0: function(receiver) { |
- return "null"; |
- }, |
- get$hashCode: function(receiver) { |
- return 0; |
- } |
- }, |
- JavaScriptObject: { |
- "^": "Interceptor;", |
- get$hashCode: function(_) { |
- return 0; |
- }, |
- $isJSObject: 1 |
- }, |
- PlainJavaScriptObject: { |
- "^": "JavaScriptObject;" |
- }, |
- UnknownJavaScriptObject: { |
- "^": "JavaScriptObject;", |
- toString$0: function(receiver) { |
- return String(receiver); |
- } |
- }, |
- JSArray: { |
- "^": "Interceptor;", |
- checkMutable$1: function(receiver, reason) { |
- if (!!receiver.immutable$list) |
- throw H.wrapException(new P.UnsupportedError(reason)); |
- }, |
- checkGrowable$1: function(receiver, reason) { |
- if (!!receiver.fixed$length) |
- throw H.wrapException(new P.UnsupportedError(reason)); |
- }, |
- forEach$1: function(receiver, f) { |
- var end, i; |
- end = receiver.length; |
- for (i = 0; i < end; ++i) { |
- f.call$1(receiver[i]); |
- if (receiver.length !== end) |
- throw H.wrapException(new P.ConcurrentModificationError(receiver)); |
- } |
- }, |
- map$1: function(receiver, f) { |
- return H.setRuntimeTypeInfo(new H.MappedListIterable(receiver, f), [null, null]); |
- }, |
- elementAt$1: function(receiver, index) { |
- if (index < 0 || index >= receiver.length) |
- return H.ioore(receiver, index); |
- return receiver[index]; |
- }, |
- get$first: function(receiver) { |
- if (receiver.length > 0) |
- return receiver[0]; |
- throw H.wrapException(H.IterableElementError_noElement()); |
- }, |
- setRange$4: function(receiver, start, end, iterable, skipCount) { |
- var $length, i, t1; |
- this.checkMutable$1(receiver, "set range"); |
- P.RangeError_checkValidRange(start, end, receiver.length, null, null, null); |
- $length = end - start; |
- if ($length === 0) |
- return; |
- if (skipCount + $length > iterable.length) |
- throw H.wrapException(new P.StateError("Too few elements")); |
- if (skipCount < start) |
- for (i = $length - 1; i >= 0; --i) { |
- t1 = skipCount + i; |
- if (t1 >= iterable.length) |
- return H.ioore(iterable, t1); |
- receiver[start + i] = iterable[t1]; |
- } |
- else |
- for (i = 0; i < $length; ++i) { |
- t1 = skipCount + i; |
- if (t1 >= iterable.length) |
- return H.ioore(iterable, t1); |
- receiver[start + i] = iterable[t1]; |
- } |
- }, |
- toString$0: function(receiver) { |
- return P.IterableBase_iterableToFullString(receiver, "[", "]"); |
- }, |
- get$iterator: function(receiver) { |
- return new J.ArrayIterator(receiver, receiver.length, 0, null); |
- }, |
- get$hashCode: function(receiver) { |
- return H.Primitives_objectHashCode(receiver); |
- }, |
- get$length: function(receiver) { |
- return receiver.length; |
- }, |
- set$length: function(receiver, newLength) { |
- this.checkGrowable$1(receiver, "set length"); |
- if (newLength < 0) |
- throw H.wrapException(P.RangeError$value(newLength, null, null)); |
- receiver.length = newLength; |
- }, |
- $index: function(receiver, index) { |
- if (typeof index !== "number" || Math.floor(index) !== index) |
- throw H.wrapException(P.ArgumentError$(index)); |
- if (index >= receiver.length || index < 0) |
- throw H.wrapException(P.RangeError$value(index, null, null)); |
- return receiver[index]; |
- }, |
- $indexSet: function(receiver, index, value) { |
- this.checkMutable$1(receiver, "indexed set"); |
- if (index >= receiver.length || false) |
- throw H.wrapException(P.RangeError$value(index, null, null)); |
- receiver[index] = value; |
- }, |
- $isJSIndexable: 1, |
- $isList: 1, |
- $isEfficientLengthIterable: 1 |
- }, |
- JSUnmodifiableArray: { |
- "^": "JSArray;" |
- }, |
- ArrayIterator: { |
- "^": "Object;_iterable,_length,_index,__interceptors$_current", |
- get$current: function() { |
- return this.__interceptors$_current; |
- }, |
- moveNext$0: function() { |
- var t1, $length, t2; |
- t1 = this._iterable; |
- $length = t1.length; |
- if (this._length !== $length) |
- throw H.wrapException(new P.ConcurrentModificationError(t1)); |
- t2 = this._index; |
- if (t2 >= $length) { |
- this.__interceptors$_current = null; |
- return false; |
- } |
- this.__interceptors$_current = t1[t2]; |
- this._index = t2 + 1; |
- return true; |
- } |
- }, |
- JSNumber: { |
- "^": "Interceptor;", |
- remainder$1: function(receiver, b) { |
- return receiver % b; |
- }, |
- toInt$0: function(receiver) { |
- var t1; |
- if (receiver >= -2147483648 && receiver <= 2147483647) |
- return receiver | 0; |
- if (isFinite(receiver)) { |
- t1 = receiver < 0 ? Math.ceil(receiver) : Math.floor(receiver); |
- return t1 + 0; |
- } |
- throw H.wrapException(new P.UnsupportedError("" + receiver)); |
- }, |
- toString$0: function(receiver) { |
- if (receiver === 0 && 1 / receiver < 0) |
- return "-0.0"; |
- else |
- return "" + receiver; |
- }, |
- get$hashCode: function(receiver) { |
- return receiver & 0x1FFFFFFF; |
- }, |
- $add: function(receiver, other) { |
- if (typeof other !== "number") |
- throw H.wrapException(P.ArgumentError$(other)); |
- return receiver + other; |
- }, |
- _tdivFast$1: function(receiver, other) { |
- return (receiver | 0) === receiver ? receiver / other | 0 : this.toInt$0(receiver / other); |
- }, |
- _shrOtherPositive$1: function(receiver, other) { |
- var t1; |
- if (receiver > 0) |
- t1 = other > 31 ? 0 : receiver >>> other; |
- else { |
- t1 = other > 31 ? 31 : other; |
- t1 = receiver >> t1 >>> 0; |
- } |
- return t1; |
- }, |
- $lt: function(receiver, other) { |
- if (typeof other !== "number") |
- throw H.wrapException(P.ArgumentError$(other)); |
- return receiver < other; |
- }, |
- $isnum: 1 |
- }, |
- JSInt: { |
- "^": "JSNumber;", |
- $isnum: 1, |
- $is$int: 1 |
- }, |
- JSDouble: { |
- "^": "JSNumber;", |
- $isnum: 1 |
- }, |
- JSString: { |
- "^": "Interceptor;", |
- codeUnitAt$1: function(receiver, index) { |
- if (index >= receiver.length) |
- throw H.wrapException(P.RangeError$value(index, null, null)); |
- return receiver.charCodeAt(index); |
- }, |
- $add: function(receiver, other) { |
- if (typeof other !== "string") |
- throw H.wrapException(P.ArgumentError$(other)); |
- return receiver + other; |
- }, |
- substring$2: function(receiver, startIndex, endIndex) { |
- H.checkInt(startIndex); |
- if (endIndex == null) |
- endIndex = receiver.length; |
- H.checkInt(endIndex); |
- if (startIndex < 0) |
- throw H.wrapException(P.RangeError$value(startIndex, null, null)); |
- if (typeof endIndex !== "number") |
- return H.iae(endIndex); |
- if (startIndex > endIndex) |
- throw H.wrapException(P.RangeError$value(startIndex, null, null)); |
- if (endIndex > receiver.length) |
- throw H.wrapException(P.RangeError$value(endIndex, null, null)); |
- return receiver.substring(startIndex, endIndex); |
- }, |
- substring$1: function($receiver, startIndex) { |
- return this.substring$2($receiver, startIndex, null); |
- }, |
- get$isEmpty: function(receiver) { |
- return receiver.length === 0; |
- }, |
- toString$0: function(receiver) { |
- return receiver; |
- }, |
- get$hashCode: function(receiver) { |
- var t1, hash, i; |
- for (t1 = receiver.length, hash = 0, i = 0; i < t1; ++i) { |
- hash = 536870911 & hash + receiver.charCodeAt(i); |
- hash = 536870911 & hash + ((524287 & hash) << 10 >>> 0); |
- hash ^= hash >> 6; |
- } |
- hash = 536870911 & hash + ((67108863 & hash) << 3 >>> 0); |
- hash ^= hash >> 11; |
- return 536870911 & hash + ((16383 & hash) << 15 >>> 0); |
- }, |
- get$length: function(receiver) { |
- return receiver.length; |
- }, |
- $index: function(receiver, index) { |
- if (typeof index !== "number" || Math.floor(index) !== index) |
- throw H.wrapException(P.ArgumentError$(index)); |
- if (index >= receiver.length || index < 0) |
- throw H.wrapException(P.RangeError$value(index, null, null)); |
- return receiver[index]; |
- }, |
- $isJSIndexable: 1, |
- $isString: 1 |
- } |
-}], ["_isolate_helper", "dart:_isolate_helper",, H, { |
- "^": "", |
- _callInIsolate: function(isolate, $function) { |
- var result = isolate.eval$1($function); |
- if (!init.globalState.currentContext._isExecutingEvent) |
- init.globalState.topEventLoop.run$0(); |
- return result; |
- }, |
- leaveJsAsync: function() { |
- --init.globalState.topEventLoop._activeJsAsyncCount; |
- }, |
- startRootIsolate: function(entry, args) { |
- var t1, t2, t3, t4, t5, rootContext; |
- t1 = {}; |
- t1._captured_args_0 = args; |
- args = args; |
- t1._captured_args_0 = args; |
- if (args == null) { |
- args = []; |
- t1._captured_args_0 = args; |
- t2 = args; |
- } else |
- t2 = args; |
- if (!J.getInterceptor(t2).$isList) |
- throw H.wrapException(P.ArgumentError$("Arguments to main must be a List: " + H.S(t2))); |
- t2 = new H._Manager(0, 0, 1, null, null, null, null, null, null, null, null, null, entry); |
- t2._nativeDetectEnvironment$0(); |
- t2.topEventLoop = new H._EventLoop(P.ListQueue$(null, H._IsolateEvent), 0); |
- t2.isolates = P.LinkedHashMap_LinkedHashMap(null, null, null, P.$int, H._IsolateContext); |
- t2.managers = P.LinkedHashMap_LinkedHashMap(null, null, null, P.$int, null); |
- if (t2.isWorker === true) { |
- t2.mainManager = new H._MainManagerStub(); |
- t2._nativeInitWorkerMessageHandler$0(); |
- } |
- init.globalState = t2; |
- if (init.globalState.isWorker === true) |
- return; |
- t2 = init.globalState.nextIsolateId++; |
- t3 = P.LinkedHashMap_LinkedHashMap(null, null, null, P.$int, H.RawReceivePortImpl); |
- t4 = P.LinkedHashSet_LinkedHashSet(null, null, null, P.$int); |
- t5 = new H.RawReceivePortImpl(0, null, false); |
- rootContext = new H._IsolateContext(t2, t3, t4, init.createNewIsolate(), t5, new H.CapabilityImpl(H.random64()), new H.CapabilityImpl(H.random64()), false, false, [], P.LinkedHashSet_LinkedHashSet(null, null, null, null), null, null, false, true, P.LinkedHashSet_LinkedHashSet(null, null, null, null)); |
- t4.add$1(0, 0); |
- rootContext._addRegistration$2(0, t5); |
- init.globalState.rootContext = rootContext; |
- init.globalState.currentContext = rootContext; |
- t2 = H.getDynamicRuntimeType(); |
- t3 = H.buildFunctionType(t2, [t2])._isTest$1(entry); |
- if (t3) |
- rootContext.eval$1(new H.startRootIsolate_closure(t1, entry)); |
- else { |
- t2 = H.buildFunctionType(t2, [t2, t2])._isTest$1(entry); |
- if (t2) |
- rootContext.eval$1(new H.startRootIsolate_closure0(t1, entry)); |
- else |
- rootContext.eval$1(entry); |
- } |
- init.globalState.topEventLoop.run$0(); |
- }, |
- IsolateNatives_computeThisScript: function() { |
- var currentScript = init.currentScript; |
- if (currentScript != null) |
- return String(currentScript.src); |
- if (init.globalState.isWorker === true) |
- return H.IsolateNatives_computeThisScriptFromTrace(); |
- return; |
- }, |
- IsolateNatives_computeThisScriptFromTrace: function() { |
- var stack, matches; |
- stack = new Error().stack; |
- if (stack == null) { |
- stack = function() { |
- try { |
- throw new Error(); |
- } catch (e) { |
- return e.stack; |
- } |
- }(); |
- if (stack == null) |
- throw H.wrapException(new P.UnsupportedError("No stack trace")); |
- } |
- matches = stack.match(new RegExp("^ *at [^(]*\\((.*):[0-9]*:[0-9]*\\)$", "m")); |
- if (matches != null) |
- return matches[1]; |
- matches = stack.match(new RegExp("^[^@]*@(.*):[0-9]*$", "m")); |
- if (matches != null) |
- return matches[1]; |
- throw H.wrapException(new P.UnsupportedError("Cannot extract URI from \"" + H.S(stack) + "\"")); |
- }, |
- IsolateNatives__processWorkerMessage: function(sender, e) { |
- var msg, t1, functionName, entryPoint, args, message, isSpawnUri, startPaused, replyTo, t2, t3, t4, context; |
- msg = new H._Deserializer(true, []).deserialize$1(e.data); |
- t1 = J.getInterceptor$as(msg); |
- switch (t1.$index(msg, "command")) { |
- case "start": |
- init.globalState.currentManagerId = t1.$index(msg, "id"); |
- functionName = t1.$index(msg, "functionName"); |
- entryPoint = functionName == null ? init.globalState.entry : H.IsolateNatives__getJSFunctionFromName(functionName); |
- args = t1.$index(msg, "args"); |
- message = new H._Deserializer(true, []).deserialize$1(t1.$index(msg, "msg")); |
- isSpawnUri = t1.$index(msg, "isSpawnUri"); |
- startPaused = t1.$index(msg, "startPaused"); |
- replyTo = new H._Deserializer(true, []).deserialize$1(t1.$index(msg, "replyTo")); |
- t1 = init.globalState.nextIsolateId++; |
- t2 = P.LinkedHashMap_LinkedHashMap(null, null, null, P.$int, H.RawReceivePortImpl); |
- t3 = P.LinkedHashSet_LinkedHashSet(null, null, null, P.$int); |
- t4 = new H.RawReceivePortImpl(0, null, false); |
- context = new H._IsolateContext(t1, t2, t3, init.createNewIsolate(), t4, new H.CapabilityImpl(H.random64()), new H.CapabilityImpl(H.random64()), false, false, [], P.LinkedHashSet_LinkedHashSet(null, null, null, null), null, null, false, true, P.LinkedHashSet_LinkedHashSet(null, null, null, null)); |
- t3.add$1(0, 0); |
- context._addRegistration$2(0, t4); |
- init.globalState.topEventLoop.events._add$1(new H._IsolateEvent(context, new H.IsolateNatives__processWorkerMessage_closure(entryPoint, args, message, isSpawnUri, startPaused, replyTo), "worker-start")); |
- init.globalState.currentContext = context; |
- init.globalState.topEventLoop.run$0(); |
- break; |
- case "spawn-worker": |
- break; |
- case "message": |
- if (t1.$index(msg, "port") != null) |
- t1.$index(msg, "port").send$1(t1.$index(msg, "msg")); |
- init.globalState.topEventLoop.run$0(); |
- break; |
- case "close": |
- init.globalState.managers.remove$1(0, $.get$IsolateNatives_workerIds().$index(0, sender)); |
- sender.terminate(); |
- init.globalState.topEventLoop.run$0(); |
- break; |
- case "log": |
- H.IsolateNatives__log(t1.$index(msg, "msg")); |
- break; |
- case "print": |
- if (init.globalState.isWorker === true) { |
- t1 = init.globalState.mainManager; |
- t2 = P.LinkedHashMap__makeLiteral(["command", "print", "msg", msg]); |
- t2 = new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t2); |
- t1.toString; |
- self.postMessage(t2); |
- } else |
- P.print(t1.$index(msg, "msg")); |
- break; |
- case "error": |
- throw H.wrapException(t1.$index(msg, "msg")); |
- } |
- }, |
- IsolateNatives__log: function(msg) { |
- var trace, t1, t2, exception; |
- if (init.globalState.isWorker === true) { |
- t1 = init.globalState.mainManager; |
- t2 = P.LinkedHashMap__makeLiteral(["command", "log", "msg", msg]); |
- t2 = new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t2); |
- t1.toString; |
- self.postMessage(t2); |
- } else |
- try { |
- self.console.log(msg); |
- } catch (exception) { |
- H.unwrapException(exception); |
- trace = H.getTraceFromException(exception); |
- throw H.wrapException(P.Exception_Exception(trace)); |
- } |
- }, |
- IsolateNatives__getJSFunctionFromName: function(functionName) { |
- return init.globalFunctions[functionName](); |
- }, |
- IsolateNatives__startIsolate: function(topLevel, args, message, isSpawnUri, startPaused, replyTo) { |
- var context, t1, t2, t3; |
- context = init.globalState.currentContext; |
- t1 = context.id; |
- $.Primitives_mirrorFunctionCacheName = $.Primitives_mirrorFunctionCacheName + ("_" + t1); |
- $.Primitives_mirrorInvokeCacheName = $.Primitives_mirrorInvokeCacheName + ("_" + t1); |
- t1 = context.controlPort; |
- t2 = init.globalState.currentContext.id; |
- t3 = context.pauseCapability; |
- replyTo.send$1(["spawned", new H._NativeJsSendPort(t1, t2), t3, context.terminateCapability]); |
- t2 = new H.IsolateNatives__startIsolate_runStartFunction(topLevel, args, message, isSpawnUri, context); |
- if (startPaused === true) { |
- context.addPause$2(t3, t3); |
- init.globalState.topEventLoop.events._add$1(new H._IsolateEvent(context, t2, "start isolate")); |
- } else |
- t2.call$0(); |
- }, |
- _clone: function(message) { |
- return new H._Deserializer(true, []).deserialize$1(new H._Serializer(false, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(message)); |
- }, |
- startRootIsolate_closure: { |
- "^": "Closure:0;__isolate_helper$_box_0,_captured_entry_1", |
- call$0: function() { |
- this._captured_entry_1.call$1(this.__isolate_helper$_box_0._captured_args_0); |
- } |
- }, |
- startRootIsolate_closure0: { |
- "^": "Closure:0;__isolate_helper$_box_0,_captured_entry_2", |
- call$0: function() { |
- this._captured_entry_2.call$2(this.__isolate_helper$_box_0._captured_args_0, null); |
- } |
- }, |
- _Manager: { |
- "^": "Object;nextIsolateId,currentManagerId,nextManagerId,currentContext,rootContext,topEventLoop,fromCommandLine,isWorker,supportsWorkers,isolates,mainManager,managers,entry", |
- _nativeDetectEnvironment$0: function() { |
- var t1, t2, t3; |
- t1 = self.window == null; |
- t2 = self.Worker; |
- t3 = t1 && !!self.postMessage; |
- this.isWorker = t3; |
- if (!t3) |
- t2 = t2 != null && $.get$IsolateNatives_thisScript() != null; |
- else |
- t2 = true; |
- this.supportsWorkers = t2; |
- this.fromCommandLine = t1 && !t3; |
- }, |
- _nativeInitWorkerMessageHandler$0: function() { |
- self.onmessage = function(f, a) { |
- return function(e) { |
- f(a, e); |
- }; |
- }(H.IsolateNatives__processWorkerMessage, this.mainManager); |
- self.dartPrint = self.dartPrint || function(serialize) { |
- return function(object) { |
- if (self.console && self.console.log) |
- self.console.log(object); |
- else |
- self.postMessage(serialize(object)); |
- }; |
- }(H._Manager__serializePrintMessage); |
- }, |
- static: {_Manager__serializePrintMessage: function(object) { |
- var t1 = P.LinkedHashMap__makeLiteral(["command", "print", "msg", object]); |
- return new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t1); |
- }} |
- }, |
- _IsolateContext: { |
- "^": "Object;id,ports,weakPorts,isolateStatics<,controlPort<,pauseCapability,terminateCapability,initialized,isPaused,delayedEvents,pauseTokens,doneHandlers,_scheduledControlEvents,_isExecutingEvent,errorsAreFatal,errorPorts", |
- addPause$2: function(authentification, resume) { |
- if (!this.pauseCapability.$eq(0, authentification)) |
- return; |
- if (this.pauseTokens.add$1(0, resume) && !this.isPaused) |
- this.isPaused = true; |
- this._updateGlobalState$0(); |
- }, |
- removePause$1: function(resume) { |
- var t1, t2, $event, t3, t4, t5; |
- if (!this.isPaused) |
- return; |
- t1 = this.pauseTokens; |
- t1.remove$1(0, resume); |
- if (t1._collection$_length === 0) { |
- for (t1 = this.delayedEvents; t2 = t1.length, t2 !== 0;) { |
- if (0 >= t2) |
- return H.ioore(t1, 0); |
- $event = t1.pop(); |
- t2 = init.globalState.topEventLoop.events; |
- t3 = t2._head; |
- t4 = t2._table; |
- t5 = t4.length; |
- t3 = (t3 - 1 & t5 - 1) >>> 0; |
- t2._head = t3; |
- if (t3 < 0 || t3 >= t5) |
- return H.ioore(t4, t3); |
- t4[t3] = $event; |
- if (t3 === t2._tail) |
- t2._grow$0(); |
- ++t2._modificationCount; |
- } |
- this.isPaused = false; |
- } |
- this._updateGlobalState$0(); |
- }, |
- addDoneListener$2: function(responsePort, response) { |
- var t1, i, t2; |
- if (this.doneHandlers == null) |
- this.doneHandlers = []; |
- for (t1 = J.getInterceptor(responsePort), i = 0; t2 = this.doneHandlers, i < t2.length; i += 2) |
- if (t1.$eq(responsePort, t2[i])) { |
- t1 = this.doneHandlers; |
- t2 = i + 1; |
- if (t2 >= t1.length) |
- return H.ioore(t1, t2); |
- t1[t2] = response; |
- return; |
- } |
- t2.push(responsePort); |
- this.doneHandlers.push(response); |
- }, |
- removeDoneListener$1: function(responsePort) { |
- var t1, i, t2; |
- if (this.doneHandlers == null) |
- return; |
- for (t1 = J.getInterceptor(responsePort), i = 0; t2 = this.doneHandlers, i < t2.length; i += 2) |
- if (t1.$eq(responsePort, t2[i])) { |
- t1 = this.doneHandlers; |
- t2 = i + 2; |
- t1.toString; |
- if (typeof t1 !== "object" || t1 === null || !!t1.fixed$length) |
- H.throwExpression(new P.UnsupportedError("removeRange")); |
- P.RangeError_checkValidRange(i, t2, t1.length, null, null, null); |
- t1.splice(i, t2 - i); |
- return; |
- } |
- }, |
- setErrorsFatal$2: function(authentification, errorsAreFatal) { |
- if (!this.terminateCapability.$eq(0, authentification)) |
- return; |
- this.errorsAreFatal = errorsAreFatal; |
- }, |
- handlePing$3: function(responsePort, pingType, response) { |
- var t1 = J.getInterceptor(pingType); |
- if (!t1.$eq(pingType, 0)) |
- t1 = t1.$eq(pingType, 1) && !this._isExecutingEvent; |
- else |
- t1 = true; |
- if (t1) { |
- responsePort.send$1(response); |
- return; |
- } |
- t1 = this._scheduledControlEvents; |
- if (t1 == null) { |
- t1 = P.ListQueue$(null, null); |
- this._scheduledControlEvents = t1; |
- } |
- t1._add$1(new H._IsolateContext_handlePing_respond(responsePort, response)); |
- }, |
- handleKill$2: function(authentification, priority) { |
- var t1; |
- if (!this.terminateCapability.$eq(0, authentification)) |
- return; |
- t1 = J.getInterceptor(priority); |
- if (!t1.$eq(priority, 0)) |
- t1 = t1.$eq(priority, 1) && !this._isExecutingEvent; |
- else |
- t1 = true; |
- if (t1) { |
- this.kill$0(); |
- return; |
- } |
- t1 = this._scheduledControlEvents; |
- if (t1 == null) { |
- t1 = P.ListQueue$(null, null); |
- this._scheduledControlEvents = t1; |
- } |
- t1._add$1(this.get$kill()); |
- }, |
- handleUncaughtError$2: function(error, stackTrace) { |
- var t1, message, t2; |
- t1 = this.errorPorts; |
- if (t1._collection$_length === 0) { |
- if (this.errorsAreFatal === true && this === init.globalState.rootContext) |
- return; |
- if (self.console && self.console.error) |
- self.console.error(error, stackTrace); |
- else { |
- P.print(error); |
- if (stackTrace != null) |
- P.print(stackTrace); |
- } |
- return; |
- } |
- message = Array(2); |
- message.fixed$length = Array; |
- message[0] = J.toString$0(error); |
- message[1] = stackTrace == null ? null : J.toString$0(stackTrace); |
- for (t2 = new P.LinkedHashSetIterator(t1, t1._collection$_modifications, null, null), t2._cell = t1._collection$_first; t2.moveNext$0();) |
- t2._collection$_current.send$1(message); |
- }, |
- eval$1: function(code) { |
- var old, result, oldIsExecutingEvent, e, s, exception, t1; |
- old = init.globalState.currentContext; |
- init.globalState.currentContext = this; |
- $ = this.isolateStatics; |
- result = null; |
- oldIsExecutingEvent = this._isExecutingEvent; |
- this._isExecutingEvent = true; |
- try { |
- result = code.call$0(); |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- this.handleUncaughtError$2(e, s); |
- if (this.errorsAreFatal === true) { |
- this.kill$0(); |
- if (this === init.globalState.rootContext) |
- throw exception; |
- } |
- } finally { |
- this._isExecutingEvent = oldIsExecutingEvent; |
- init.globalState.currentContext = old; |
- if (old != null) |
- $ = old.get$isolateStatics(); |
- if (this._scheduledControlEvents != null) |
- for (; t1 = this._scheduledControlEvents, !t1.get$isEmpty(t1);) |
- this._scheduledControlEvents.removeFirst$0().call$0(); |
- } |
- return result; |
- }, |
- lookup$1: function(portId) { |
- return this.ports.$index(0, portId); |
- }, |
- _addRegistration$2: function(portId, port) { |
- var t1 = this.ports; |
- if (t1.containsKey$1(portId)) |
- throw H.wrapException(P.Exception_Exception("Registry: ports must be registered only once.")); |
- t1.$indexSet(0, portId, port); |
- }, |
- _updateGlobalState$0: function() { |
- if (this.ports.__js_helper$_length - this.weakPorts._collection$_length > 0 || this.isPaused || !this.initialized) |
- init.globalState.isolates.$indexSet(0, this.id, this); |
- else |
- this.kill$0(); |
- }, |
- kill$0: [function() { |
- var t1, t2, i, responsePort, t3; |
- t1 = this._scheduledControlEvents; |
- if (t1 != null) |
- t1.clear$0(0); |
- for (t1 = this.ports, t2 = t1.get$values(), t2 = H.setRuntimeTypeInfo(new H.MappedIterator(null, J.get$iterator$a(t2.__internal$_iterable), t2._f), [H.getTypeArgumentByIndex(t2, 0), H.getTypeArgumentByIndex(t2, 1)]); t2.moveNext$0();) |
- t2.__internal$_current._close$0(); |
- if (t1.__js_helper$_length > 0) { |
- t1._last = null; |
- t1._first = null; |
- t1._rest = null; |
- t1._nums = null; |
- t1._strings = null; |
- t1.__js_helper$_length = 0; |
- t1._modifications = t1._modifications + 1 & 67108863; |
- } |
- this.weakPorts.clear$0(0); |
- init.globalState.isolates.remove$1(0, this.id); |
- this.errorPorts.clear$0(0); |
- if (this.doneHandlers != null) { |
- for (i = 0; t1 = this.doneHandlers, t2 = t1.length, i < t2; i += 2) { |
- responsePort = t1[i]; |
- t3 = i + 1; |
- if (t3 >= t2) |
- return H.ioore(t1, t3); |
- responsePort.send$1(t1[t3]); |
- } |
- this.doneHandlers = null; |
- } |
- }, "call$0", "get$kill", 0, 0, 1] |
- }, |
- _IsolateContext_handlePing_respond: { |
- "^": "Closure:1;_captured_responsePort_0,_captured_response_1", |
- call$0: function() { |
- this._captured_responsePort_0.send$1(this._captured_response_1); |
- } |
- }, |
- _EventLoop: { |
- "^": "Object;events,_activeJsAsyncCount", |
- dequeue$0: function() { |
- var t1 = this.events; |
- if (t1._head === t1._tail) |
- return; |
- return t1.removeFirst$0(); |
- }, |
- runIteration$0: function() { |
- var $event, t1, t2; |
- $event = this.dequeue$0(); |
- if ($event == null) { |
- if (init.globalState.rootContext != null && init.globalState.isolates.containsKey$1(init.globalState.rootContext.id) && init.globalState.fromCommandLine === true && init.globalState.rootContext.ports.__js_helper$_length === 0) |
- H.throwExpression(P.Exception_Exception("Program exited with open ReceivePorts.")); |
- t1 = init.globalState; |
- if (t1.isWorker === true && t1.isolates.__js_helper$_length === 0 && t1.topEventLoop._activeJsAsyncCount === 0) { |
- t1 = t1.mainManager; |
- t2 = P.LinkedHashMap__makeLiteral(["command", "close"]); |
- t2 = new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t2); |
- t1.toString; |
- self.postMessage(t2); |
- } |
- return false; |
- } |
- $event.process$0(); |
- return true; |
- }, |
- _runHelper$0: function() { |
- if (self.window != null) |
- new H._EventLoop__runHelper_next(this).call$0(); |
- else |
- for (; this.runIteration$0();) |
- ; |
- }, |
- run$0: function() { |
- var e, trace, exception, t1, t2; |
- if (init.globalState.isWorker !== true) |
- this._runHelper$0(); |
- else |
- try { |
- this._runHelper$0(); |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- trace = H.getTraceFromException(exception); |
- t1 = init.globalState.mainManager; |
- t2 = P.LinkedHashMap__makeLiteral(["command", "error", "msg", H.S(e) + "\n" + H.S(trace)]); |
- t2 = new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t2); |
- t1.toString; |
- self.postMessage(t2); |
- } |
- } |
- }, |
- _EventLoop__runHelper_next: { |
- "^": "Closure:1;_captured_this_0", |
- call$0: function() { |
- if (!this._captured_this_0.runIteration$0()) |
- return; |
- P.Timer_Timer(C.Duration_0, this); |
- } |
- }, |
- _IsolateEvent: { |
- "^": "Object;isolate,fn,message", |
- process$0: function() { |
- var t1 = this.isolate; |
- if (t1.isPaused) { |
- t1.delayedEvents.push(this); |
- return; |
- } |
- t1.eval$1(this.fn); |
- } |
- }, |
- _MainManagerStub: { |
- "^": "Object;" |
- }, |
- IsolateNatives__processWorkerMessage_closure: { |
- "^": "Closure:0;_captured_entryPoint_0,_captured_args_1,_captured_message_2,_captured_isSpawnUri_3,_captured_startPaused_4,_captured_replyTo_5", |
- call$0: function() { |
- H.IsolateNatives__startIsolate(this._captured_entryPoint_0, this._captured_args_1, this._captured_message_2, this._captured_isSpawnUri_3, this._captured_startPaused_4, this._captured_replyTo_5); |
- } |
- }, |
- IsolateNatives__startIsolate_runStartFunction: { |
- "^": "Closure:1;_captured_topLevel_0,_captured_args_1,_captured_message_2,_captured_isSpawnUri_3,_captured_context_4", |
- call$0: function() { |
- var t1, t2, t3; |
- this._captured_context_4.initialized = true; |
- if (this._captured_isSpawnUri_3 !== true) |
- this._captured_topLevel_0.call$1(this._captured_message_2); |
- else { |
- t1 = this._captured_topLevel_0; |
- t2 = H.getDynamicRuntimeType(); |
- t3 = H.buildFunctionType(t2, [t2, t2])._isTest$1(t1); |
- if (t3) |
- t1.call$2(this._captured_args_1, this._captured_message_2); |
- else { |
- t2 = H.buildFunctionType(t2, [t2])._isTest$1(t1); |
- if (t2) |
- t1.call$1(this._captured_args_1); |
- else |
- t1.call$0(); |
- } |
- } |
- } |
- }, |
- _BaseSendPort: { |
- "^": "Object;" |
- }, |
- _NativeJsSendPort: { |
- "^": "_BaseSendPort;_receivePort,_isolateId", |
- send$1: function(message) { |
- var isolate, t1, msg, t2; |
- isolate = init.globalState.isolates.$index(0, this._isolateId); |
- if (isolate == null) |
- return; |
- t1 = this._receivePort; |
- if (t1.get$_isClosed()) |
- return; |
- msg = H._clone(message); |
- if (isolate.get$controlPort() === t1) { |
- t1 = J.getInterceptor$as(msg); |
- switch (t1.$index(msg, 0)) { |
- case "pause": |
- isolate.addPause$2(t1.$index(msg, 1), t1.$index(msg, 2)); |
- break; |
- case "resume": |
- isolate.removePause$1(t1.$index(msg, 1)); |
- break; |
- case "add-ondone": |
- isolate.addDoneListener$2(t1.$index(msg, 1), t1.$index(msg, 2)); |
- break; |
- case "remove-ondone": |
- isolate.removeDoneListener$1(t1.$index(msg, 1)); |
- break; |
- case "set-errors-fatal": |
- isolate.setErrorsFatal$2(t1.$index(msg, 1), t1.$index(msg, 2)); |
- break; |
- case "ping": |
- isolate.handlePing$3(t1.$index(msg, 1), t1.$index(msg, 2), t1.$index(msg, 3)); |
- break; |
- case "kill": |
- isolate.handleKill$2(t1.$index(msg, 1), t1.$index(msg, 2)); |
- break; |
- case "getErrors": |
- t1 = t1.$index(msg, 1); |
- isolate.errorPorts.add$1(0, t1); |
- break; |
- case "stopErrors": |
- t1 = t1.$index(msg, 1); |
- isolate.errorPorts.remove$1(0, t1); |
- break; |
- } |
- return; |
- } |
- t1 = init.globalState.topEventLoop; |
- t2 = "receive " + H.S(message); |
- t1.events._add$1(new H._IsolateEvent(isolate, new H._NativeJsSendPort_send_closure(this, msg), t2)); |
- }, |
- $eq: function(_, other) { |
- if (other == null) |
- return false; |
- return other instanceof H._NativeJsSendPort && J.$eq(this._receivePort, other._receivePort); |
- }, |
- get$hashCode: function(_) { |
- return this._receivePort.get$_id(); |
- } |
- }, |
- _NativeJsSendPort_send_closure: { |
- "^": "Closure:0;_captured_this_0,_captured_msg_1", |
- call$0: function() { |
- var t1 = this._captured_this_0._receivePort; |
- if (!t1.get$_isClosed()) |
- t1.__isolate_helper$_add$1(this._captured_msg_1); |
- } |
- }, |
- _WorkerSendPort: { |
- "^": "_BaseSendPort;_workerId,_receivePortId,_isolateId", |
- send$1: function(message) { |
- var t1, workerMessage, manager; |
- t1 = P.LinkedHashMap__makeLiteral(["command", "message", "port", this, "msg", message]); |
- workerMessage = new H._Serializer(true, P.LinkedHashMap_LinkedHashMap$identity(null, P.$int)).serialize$1(t1); |
- if (init.globalState.isWorker === true) { |
- init.globalState.mainManager.toString; |
- self.postMessage(workerMessage); |
- } else { |
- manager = init.globalState.managers.$index(0, this._workerId); |
- if (manager != null) |
- manager.postMessage(workerMessage); |
- } |
- }, |
- $eq: function(_, other) { |
- if (other == null) |
- return false; |
- return other instanceof H._WorkerSendPort && J.$eq(this._workerId, other._workerId) && J.$eq(this._isolateId, other._isolateId) && J.$eq(this._receivePortId, other._receivePortId); |
- }, |
- get$hashCode: function(_) { |
- var t1, t2, t3; |
- t1 = this._workerId; |
- if (typeof t1 !== "number") |
- return t1.$shl(); |
- t2 = this._isolateId; |
- if (typeof t2 !== "number") |
- return t2.$shl(); |
- t3 = this._receivePortId; |
- if (typeof t3 !== "number") |
- return H.iae(t3); |
- return (t1 << 16 ^ t2 << 8 ^ t3) >>> 0; |
- } |
- }, |
- RawReceivePortImpl: { |
- "^": "Object;_id<,_handler,_isClosed<", |
- _close$0: function() { |
- this._isClosed = true; |
- this._handler = null; |
- }, |
- __isolate_helper$_add$1: function(dataEvent) { |
- if (this._isClosed) |
- return; |
- this._handler$1(dataEvent); |
- }, |
- _handler$1: function(arg0) { |
- return this._handler.call$1(arg0); |
- }, |
- $isRawReceivePort: 1 |
- }, |
- TimerImpl: { |
- "^": "Object;_once,_inEventLoop,_handle", |
- TimerImpl$2: function(milliseconds, callback) { |
- var t1, t2; |
- if (milliseconds === 0) |
- t1 = self.setTimeout == null || init.globalState.isWorker === true; |
- else |
- t1 = false; |
- if (t1) { |
- this._handle = 1; |
- t1 = init.globalState.topEventLoop; |
- t2 = init.globalState.currentContext; |
- t1.events._add$1(new H._IsolateEvent(t2, new H.TimerImpl_internalCallback(this, callback), "timer")); |
- this._inEventLoop = true; |
- } else if (self.setTimeout != null) { |
- ++init.globalState.topEventLoop._activeJsAsyncCount; |
- this._handle = self.setTimeout(H.convertDartClosureToJS(new H.TimerImpl_internalCallback0(this, callback), 0), milliseconds); |
- } else |
- throw H.wrapException(new P.UnsupportedError("Timer greater than 0.")); |
- }, |
- static: {TimerImpl$: function(milliseconds, callback) { |
- var t1 = new H.TimerImpl(true, false, null); |
- t1.TimerImpl$2(milliseconds, callback); |
- return t1; |
- }} |
- }, |
- TimerImpl_internalCallback: { |
- "^": "Closure:1;_captured_this_0,_captured_callback_1", |
- call$0: function() { |
- this._captured_this_0._handle = null; |
- this._captured_callback_1.call$0(); |
- } |
- }, |
- TimerImpl_internalCallback0: { |
- "^": "Closure:1;_captured_this_2,_captured_callback_3", |
- call$0: function() { |
- this._captured_this_2._handle = null; |
- H.leaveJsAsync(); |
- this._captured_callback_3.call$0(); |
- } |
- }, |
- CapabilityImpl: { |
- "^": "Object;_id<", |
- get$hashCode: function(_) { |
- var hash = this._id; |
- hash = C.JSInt_methods._shrOtherPositive$1(hash, 0) ^ C.JSInt_methods._tdivFast$1(hash, 4294967296); |
- hash = (~hash >>> 0) + (hash << 15 >>> 0) & 4294967295; |
- hash = ((hash ^ hash >>> 12) >>> 0) * 5 & 4294967295; |
- hash = ((hash ^ hash >>> 4) >>> 0) * 2057 & 4294967295; |
- return (hash ^ hash >>> 16) >>> 0; |
- }, |
- $eq: function(_, other) { |
- if (other == null) |
- return false; |
- if (other === this) |
- return true; |
- if (other instanceof H.CapabilityImpl) |
- return this._id === other._id; |
- return false; |
- } |
- }, |
- _Serializer: { |
- "^": "Object;_serializeSendPorts,serializedObjectIds", |
- serialize$1: [function(x) { |
- var t1, serializationId, serializeTearOff, t2, $name; |
- if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean") |
- return x; |
- t1 = this.serializedObjectIds; |
- serializationId = t1.$index(0, x); |
- if (serializationId != null) |
- return ["ref", serializationId]; |
- t1.$indexSet(0, x, t1.__js_helper$_length); |
- t1 = J.getInterceptor(x); |
- if (!!t1.$isJSIndexable) |
- return this.serializeJSIndexable$1(x); |
- if (!!t1.$isInternalMap) { |
- serializeTearOff = this.get$serialize(); |
- t1 = x.get$keys(); |
- t1 = H.MappedIterable_MappedIterable(t1, serializeTearOff, H.getRuntimeTypeArgument(t1, "Iterable", 0), null); |
- t1 = P.List_List$from(t1, true, H.getRuntimeTypeArgument(t1, "Iterable", 0)); |
- t2 = x.get$values(); |
- t2 = H.MappedIterable_MappedIterable(t2, serializeTearOff, H.getRuntimeTypeArgument(t2, "Iterable", 0), null); |
- return ["map", t1, P.List_List$from(t2, true, H.getRuntimeTypeArgument(t2, "Iterable", 0))]; |
- } |
- if (!!t1.$isJSObject) |
- return this.serializeJSObject$1(x); |
- if (!!t1.$isInterceptor) |
- this.unsupported$1(x); |
- if (!!t1.$isRawReceivePort) |
- this.unsupported$2(x, "RawReceivePorts can't be transmitted:"); |
- if (!!t1.$is_NativeJsSendPort) |
- return this.serializeJsSendPort$1(x); |
- if (!!t1.$is_WorkerSendPort) |
- return this.serializeWorkerSendPort$1(x); |
- if (!!t1.$isClosure) { |
- $name = x.$name; |
- if ($name == null) |
- this.unsupported$2(x, "Closures can't be transmitted:"); |
- return ["function", $name]; |
- } |
- return ["dart", init.classIdExtractor(x), this.serializeArrayInPlace$1(init.classFieldsExtractor(x))]; |
- }, "call$1", "get$serialize", 2, 0, 2], |
- unsupported$2: function(x, message) { |
- throw H.wrapException(new P.UnsupportedError(H.S(message == null ? "Can't transmit:" : message) + " " + H.S(x))); |
- }, |
- unsupported$1: function(x) { |
- return this.unsupported$2(x, null); |
- }, |
- serializeJSIndexable$1: function(indexable) { |
- var serialized = this.serializeArray$1(indexable); |
- if (!!indexable.fixed$length) |
- return ["fixed", serialized]; |
- if (!indexable.fixed$length) |
- return ["extendable", serialized]; |
- if (!indexable.immutable$list) |
- return ["mutable", serialized]; |
- if (indexable.constructor === Array) |
- return ["const", serialized]; |
- this.unsupported$2(indexable, "Can't serialize indexable: "); |
- }, |
- serializeArray$1: function(x) { |
- var serialized, i, t1; |
- serialized = []; |
- C.JSArray_methods.set$length(serialized, x.length); |
- for (i = 0; i < x.length; ++i) { |
- t1 = this.serialize$1(x[i]); |
- if (i >= serialized.length) |
- return H.ioore(serialized, i); |
- serialized[i] = t1; |
- } |
- return serialized; |
- }, |
- serializeArrayInPlace$1: function(x) { |
- var i; |
- for (i = 0; i < x.length; ++i) |
- C.JSArray_methods.$indexSet(x, i, this.serialize$1(x[i])); |
- return x; |
- }, |
- serializeJSObject$1: function(x) { |
- var keys, values, i, t1; |
- if (!!x.constructor && x.constructor !== Object) |
- this.unsupported$2(x, "Only plain JS Objects are supported:"); |
- keys = Object.keys(x); |
- values = []; |
- C.JSArray_methods.set$length(values, keys.length); |
- for (i = 0; i < keys.length; ++i) { |
- t1 = this.serialize$1(x[keys[i]]); |
- if (i >= values.length) |
- return H.ioore(values, i); |
- values[i] = t1; |
- } |
- return ["js-object", keys, values]; |
- }, |
- serializeWorkerSendPort$1: function(x) { |
- if (this._serializeSendPorts) |
- return ["sendport", x._workerId, x._isolateId, x._receivePortId]; |
- return ["raw sendport", x]; |
- }, |
- serializeJsSendPort$1: function(x) { |
- if (this._serializeSendPorts) |
- return ["sendport", init.globalState.currentManagerId, x._isolateId, x._receivePort.get$_id()]; |
- return ["raw sendport", x]; |
- } |
- }, |
- _Deserializer: { |
- "^": "Object;_adjustSendPorts,deserializedObjects", |
- deserialize$1: [function(x) { |
- var serializationId, t1, result, classId, fields, emptyInstance; |
- if (x == null || typeof x === "string" || typeof x === "number" || typeof x === "boolean") |
- return x; |
- if (typeof x !== "object" || x === null || x.constructor !== Array) |
- throw H.wrapException(P.ArgumentError$("Bad serialized message: " + H.S(x))); |
- switch (C.JSArray_methods.get$first(x)) { |
- case "ref": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- serializationId = x[1]; |
- t1 = this.deserializedObjects; |
- if (serializationId >>> 0 !== serializationId || serializationId >= t1.length) |
- return H.ioore(t1, serializationId); |
- return t1[serializationId]; |
- case "buffer": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- return result; |
- case "typed": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- return result; |
- case "fixed": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- t1 = this.deserializeArrayInPlace$1(result); |
- t1.$builtinTypeInfo = [null]; |
- t1.fixed$length = Array; |
- return t1; |
- case "extendable": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- t1 = this.deserializeArrayInPlace$1(result); |
- t1.$builtinTypeInfo = [null]; |
- return t1; |
- case "mutable": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- return this.deserializeArrayInPlace$1(result); |
- case "const": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- t1 = this.deserializeArrayInPlace$1(result); |
- t1.$builtinTypeInfo = [null]; |
- t1.fixed$length = Array; |
- return t1; |
- case "map": |
- return this.deserializeMap$1(x); |
- case "sendport": |
- return this.deserializeSendPort$1(x); |
- case "raw sendport": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = x[1]; |
- this.deserializedObjects.push(result); |
- return result; |
- case "js-object": |
- return this.deserializeJSObject$1(x); |
- case "function": |
- if (1 >= x.length) |
- return H.ioore(x, 1); |
- result = init.globalFunctions[x[1]](); |
- this.deserializedObjects.push(result); |
- return result; |
- case "dart": |
- t1 = x.length; |
- if (1 >= t1) |
- return H.ioore(x, 1); |
- classId = x[1]; |
- if (2 >= t1) |
- return H.ioore(x, 2); |
- fields = x[2]; |
- emptyInstance = init.instanceFromClassId(classId); |
- this.deserializedObjects.push(emptyInstance); |
- this.deserializeArrayInPlace$1(fields); |
- return init.initializeEmptyInstance(classId, emptyInstance, fields); |
- default: |
- throw H.wrapException("couldn't deserialize: " + H.S(x)); |
- } |
- }, "call$1", "get$deserialize", 2, 0, 2], |
- deserializeArrayInPlace$1: function(x) { |
- var t1, i, t2; |
- t1 = J.getInterceptor$as(x); |
- i = 0; |
- while (true) { |
- t2 = t1.get$length(x); |
- if (typeof t2 !== "number") |
- return H.iae(t2); |
- if (!(i < t2)) |
- break; |
- t1.$indexSet(x, i, this.deserialize$1(t1.$index(x, i))); |
- ++i; |
- } |
- return x; |
- }, |
- deserializeMap$1: function(x) { |
- var t1, keys, values, result, t2, i; |
- t1 = x.length; |
- if (1 >= t1) |
- return H.ioore(x, 1); |
- keys = x[1]; |
- if (2 >= t1) |
- return H.ioore(x, 2); |
- values = x[2]; |
- result = P.LinkedHashMap__makeEmpty(); |
- this.deserializedObjects.push(result); |
- keys = J.map$1$a(keys, this.get$deserialize()).toList$0(0); |
- for (t1 = J.getInterceptor$as(keys), t2 = J.getInterceptor$as(values), i = 0; i < t1.get$length(keys); ++i) { |
- if (i >= keys.length) |
- return H.ioore(keys, i); |
- result.$indexSet(0, keys[i], this.deserialize$1(t2.$index(values, i))); |
- } |
- return result; |
- }, |
- deserializeSendPort$1: function(x) { |
- var t1, managerId, isolateId, receivePortId, isolate, receivePort, result; |
- t1 = x.length; |
- if (1 >= t1) |
- return H.ioore(x, 1); |
- managerId = x[1]; |
- if (2 >= t1) |
- return H.ioore(x, 2); |
- isolateId = x[2]; |
- if (3 >= t1) |
- return H.ioore(x, 3); |
- receivePortId = x[3]; |
- if (J.$eq(managerId, init.globalState.currentManagerId)) { |
- isolate = init.globalState.isolates.$index(0, isolateId); |
- if (isolate == null) |
- return; |
- receivePort = isolate.lookup$1(receivePortId); |
- if (receivePort == null) |
- return; |
- result = new H._NativeJsSendPort(receivePort, isolateId); |
- } else |
- result = new H._WorkerSendPort(managerId, receivePortId, isolateId); |
- this.deserializedObjects.push(result); |
- return result; |
- }, |
- deserializeJSObject$1: function(x) { |
- var t1, keys, values, o, t2, i, t3; |
- t1 = x.length; |
- if (1 >= t1) |
- return H.ioore(x, 1); |
- keys = x[1]; |
- if (2 >= t1) |
- return H.ioore(x, 2); |
- values = x[2]; |
- o = {}; |
- this.deserializedObjects.push(o); |
- t1 = J.getInterceptor$as(keys); |
- t2 = J.getInterceptor$as(values); |
- i = 0; |
- while (true) { |
- t3 = t1.get$length(keys); |
- if (typeof t3 !== "number") |
- return H.iae(t3); |
- if (!(i < t3)) |
- break; |
- o[t1.$index(keys, i)] = this.deserialize$1(t2.$index(values, i)); |
- ++i; |
- } |
- return o; |
- } |
- } |
-}], ["_js_helper", "dart:_js_helper",, H, { |
- "^": "", |
- getType: function(index) { |
- return init.types[index]; |
- }, |
- S: function(value) { |
- var res; |
- if (typeof value === "string") |
- return value; |
- if (typeof value === "number") { |
- if (value !== 0) |
- return "" + value; |
- } else if (true === value) |
- return "true"; |
- else if (false === value) |
- return "false"; |
- else if (value == null) |
- return "null"; |
- res = J.toString$0(value); |
- if (typeof res !== "string") |
- throw H.wrapException(H._argumentError(value)); |
- return res; |
- }, |
- Primitives_objectHashCode: function(object) { |
- var hash = object.$identityHash; |
- if (hash == null) { |
- hash = Math.random() * 0x3fffffff | 0; |
- object.$identityHash = hash; |
- } |
- return hash; |
- }, |
- Primitives_objectTypeName: function(object) { |
- var $name, decompiled; |
- $name = C.JS_CONST_8ZY(J.getInterceptor(object)); |
- if ($name === "Object") { |
- decompiled = String(object.constructor).match(/^\s*function\s*([\w$]*)\s*\(/)[1]; |
- if (typeof decompiled === "string") |
- $name = /^\w+$/.test(decompiled) ? decompiled : $name; |
- } |
- if ($name.length > 1 && C.JSString_methods.codeUnitAt$1($name, 0) === 36) |
- $name = C.JSString_methods.substring$1($name, 1); |
- return ($name + H.joinArguments(H.getRuntimeTypeInfo(object), 0, null)).replace(/[^<,> ]+/g, function(m) { |
- return init.mangledGlobalNames[m] || m; |
- }); |
- }, |
- Primitives_objectToString: function(object) { |
- return "Instance of '" + H.Primitives_objectTypeName(object) + "'"; |
- }, |
- Primitives_getProperty: function(object, key) { |
- if (object == null || typeof object === "boolean" || typeof object === "number" || typeof object === "string") |
- throw H.wrapException(H._argumentError(object)); |
- return object[key]; |
- }, |
- Primitives_setProperty: function(object, key, value) { |
- if (object == null || typeof object === "boolean" || typeof object === "number" || typeof object === "string") |
- throw H.wrapException(H._argumentError(object)); |
- object[key] = value; |
- }, |
- iae: function(argument) { |
- throw H.wrapException(H._argumentError(argument)); |
- }, |
- ioore: function(receiver, index) { |
- if (receiver == null) |
- J.get$length$as(receiver); |
- if (typeof index !== "number" || Math.floor(index) !== index) |
- H.iae(index); |
- throw H.wrapException(P.RangeError$value(index, null, null)); |
- }, |
- _argumentError: function(object) { |
- return new P.ArgumentError(true, object, null, null); |
- }, |
- checkInt: function(value) { |
- if (typeof value !== "number" || Math.floor(value) !== value) |
- throw H.wrapException(H._argumentError(value)); |
- return value; |
- }, |
- wrapException: function(ex) { |
- var wrapper; |
- if (ex == null) |
- ex = new P.NullThrownError(); |
- wrapper = new Error(); |
- wrapper.dartException = ex; |
- if ("defineProperty" in Object) { |
- Object.defineProperty(wrapper, "message", {get: H.toStringWrapper}); |
- wrapper.name = ""; |
- } else |
- wrapper.toString = H.toStringWrapper; |
- return wrapper; |
- }, |
- toStringWrapper: function() { |
- return J.toString$0(this.dartException); |
- }, |
- throwExpression: function(ex) { |
- throw H.wrapException(ex); |
- }, |
- unwrapException: function(ex) { |
- var t1, message, number, ieErrorCode, t2, t3, t4, nullLiteralCall, t5, t6, t7, t8, t9, match; |
- t1 = new H.unwrapException_saveStackTrace(ex); |
- if (ex == null) |
- return; |
- if (ex instanceof H.ExceptionAndStackTrace) |
- return t1.call$1(ex.dartException); |
- if (typeof ex !== "object") |
- return ex; |
- if ("dartException" in ex) |
- return t1.call$1(ex.dartException); |
- else if (!("message" in ex)) |
- return ex; |
- message = ex.message; |
- if ("number" in ex && typeof ex.number == "number") { |
- number = ex.number; |
- ieErrorCode = number & 65535; |
- if ((C.JSInt_methods._shrOtherPositive$1(number, 16) & 8191) === 10) |
- switch (ieErrorCode) { |
- case 438: |
- return t1.call$1(H.JsNoSuchMethodError$(H.S(message) + " (Error " + ieErrorCode + ")", null)); |
- case 445: |
- case 5007: |
- t2 = H.S(message) + " (Error " + ieErrorCode + ")"; |
- return t1.call$1(new H.NullError(t2, null)); |
- } |
- } |
- if (ex instanceof TypeError) { |
- t2 = $.get$TypeErrorDecoder_noSuchMethodPattern(); |
- t3 = $.get$TypeErrorDecoder_notClosurePattern(); |
- t4 = $.get$TypeErrorDecoder_nullCallPattern(); |
- nullLiteralCall = $.get$TypeErrorDecoder_nullLiteralCallPattern(); |
- t5 = $.get$TypeErrorDecoder_undefinedCallPattern(); |
- t6 = $.get$TypeErrorDecoder_undefinedLiteralCallPattern(); |
- t7 = $.get$TypeErrorDecoder_nullPropertyPattern(); |
- $.get$TypeErrorDecoder_nullLiteralPropertyPattern(); |
- t8 = $.get$TypeErrorDecoder_undefinedPropertyPattern(); |
- t9 = $.get$TypeErrorDecoder_undefinedLiteralPropertyPattern(); |
- match = t2.matchTypeError$1(message); |
- if (match != null) |
- return t1.call$1(H.JsNoSuchMethodError$(message, match)); |
- else { |
- match = t3.matchTypeError$1(message); |
- if (match != null) { |
- match.method = "call"; |
- return t1.call$1(H.JsNoSuchMethodError$(message, match)); |
- } else { |
- match = t4.matchTypeError$1(message); |
- if (match == null) { |
- match = nullLiteralCall.matchTypeError$1(message); |
- if (match == null) { |
- match = t5.matchTypeError$1(message); |
- if (match == null) { |
- match = t6.matchTypeError$1(message); |
- if (match == null) { |
- match = t7.matchTypeError$1(message); |
- if (match == null) { |
- match = nullLiteralCall.matchTypeError$1(message); |
- if (match == null) { |
- match = t8.matchTypeError$1(message); |
- if (match == null) { |
- match = t9.matchTypeError$1(message); |
- t2 = match != null; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- } else |
- t2 = true; |
- if (t2) |
- return t1.call$1(new H.NullError(message, match == null ? null : match.method)); |
- } |
- } |
- return t1.call$1(new H.UnknownJsTypeError(typeof message === "string" ? message : "")); |
- } |
- if (ex instanceof RangeError) { |
- if (typeof message === "string" && message.indexOf("call stack") !== -1) |
- return new P.StackOverflowError(); |
- return t1.call$1(new P.ArgumentError(false, null, null, null)); |
- } |
- if (typeof InternalError == "function" && ex instanceof InternalError) |
- if (typeof message === "string" && message === "too much recursion") |
- return new P.StackOverflowError(); |
- return ex; |
- }, |
- getTraceFromException: function(exception) { |
- if (exception instanceof H.ExceptionAndStackTrace) |
- return exception.stackTrace; |
- return new H._StackTrace(exception, null); |
- }, |
- objectHashCode: function(object) { |
- if (object == null || typeof object != 'object') |
- return J.get$hashCode$(object); |
- else |
- return H.Primitives_objectHashCode(object); |
- }, |
- fillLiteralMap: function(keyValuePairs, result) { |
- var $length, index, index0, index1; |
- $length = keyValuePairs.length; |
- for (index = 0; index < $length; index = index1) { |
- index0 = index + 1; |
- index1 = index0 + 1; |
- result.$indexSet(0, keyValuePairs[index], keyValuePairs[index0]); |
- } |
- return result; |
- }, |
- invokeClosure: function(closure, isolate, numberOfArguments, arg1, arg2, arg3, arg4) { |
- var t1 = J.getInterceptor(numberOfArguments); |
- if (t1.$eq(numberOfArguments, 0)) |
- return H._callInIsolate(isolate, new H.invokeClosure_closure(closure)); |
- else if (t1.$eq(numberOfArguments, 1)) |
- return H._callInIsolate(isolate, new H.invokeClosure_closure0(closure, arg1)); |
- else if (t1.$eq(numberOfArguments, 2)) |
- return H._callInIsolate(isolate, new H.invokeClosure_closure1(closure, arg1, arg2)); |
- else if (t1.$eq(numberOfArguments, 3)) |
- return H._callInIsolate(isolate, new H.invokeClosure_closure2(closure, arg1, arg2, arg3)); |
- else if (t1.$eq(numberOfArguments, 4)) |
- return H._callInIsolate(isolate, new H.invokeClosure_closure3(closure, arg1, arg2, arg3, arg4)); |
- else |
- throw H.wrapException(P.Exception_Exception("Unsupported number of arguments for wrapped closure")); |
- }, |
- convertDartClosureToJS: function(closure, arity) { |
- var $function = closure.$identity; |
- if (!!$function) |
- return $function; |
- $function = function(closure, arity, context, invoke) { |
- return function(a1, a2, a3, a4) { |
- return invoke(closure, context, arity, a1, a2, a3, a4); |
- }; |
- }(closure, arity, init.globalState.currentContext, H.invokeClosure); |
- closure.$identity = $function; |
- return $function; |
- }, |
- Closure_fromTearOff: function(receiver, functions, reflectionInfo, isStatic, jsArguments, propertyName) { |
- var $function, callName, functionType, $prototype, $constructor, t1, isIntercepted, trampoline, signatureFunction, getReceiver, i, stub, stubCallName, t2; |
- $function = functions[0]; |
- callName = $function.$callName; |
- if (!!J.getInterceptor(reflectionInfo).$isList) { |
- $function.$reflectionInfo = reflectionInfo; |
- functionType = H.ReflectionInfo_ReflectionInfo($function).functionType; |
- } else |
- functionType = reflectionInfo; |
- $prototype = isStatic ? Object.create(new H.StaticClosure().constructor.prototype) : Object.create(new H.BoundClosure(null, null, null, null).constructor.prototype); |
- $prototype.$initialize = $prototype.constructor; |
- if (isStatic) |
- $constructor = function() { |
- this.$initialize(); |
- }; |
- else { |
- t1 = $.Closure_functionCounter; |
- $.Closure_functionCounter = J.$add$ns(t1, 1); |
- t1 = new Function("a,b,c,d", "this.$initialize(a,b,c,d);" + t1); |
- $constructor = t1; |
- } |
- $prototype.constructor = $constructor; |
- $constructor.prototype = $prototype; |
- t1 = !isStatic; |
- if (t1) { |
- isIntercepted = jsArguments.length == 1 && true; |
- trampoline = H.Closure_forwardCallTo(receiver, $function, isIntercepted); |
- trampoline.$reflectionInfo = reflectionInfo; |
- } else { |
- $prototype.$name = propertyName; |
- trampoline = $function; |
- isIntercepted = false; |
- } |
- if (typeof functionType == "number") |
- signatureFunction = function(t) { |
- return function() { |
- return H.getType(t); |
- }; |
- }(functionType); |
- else if (t1 && typeof functionType == "function") { |
- getReceiver = isIntercepted ? H.BoundClosure_receiverOf : H.BoundClosure_selfOf; |
- signatureFunction = function(f, r) { |
- return function() { |
- return f.apply({$receiver: r(this)}, arguments); |
- }; |
- }(functionType, getReceiver); |
- } else |
- throw H.wrapException("Error in reflectionInfo."); |
- $prototype.$signature = signatureFunction; |
- $prototype[callName] = trampoline; |
- for (t1 = functions.length, i = 1; i < t1; ++i) { |
- stub = functions[i]; |
- stubCallName = stub.$callName; |
- if (stubCallName != null) { |
- t2 = isStatic ? stub : H.Closure_forwardCallTo(receiver, stub, isIntercepted); |
- $prototype[stubCallName] = t2; |
- } |
- } |
- $prototype["call*"] = trampoline; |
- $prototype.$requiredArgCount = $function.$requiredArgCount; |
- $prototype.$defaultValues = $function.$defaultValues; |
- return $constructor; |
- }, |
- Closure_cspForwardCall: function(arity, isSuperCall, stubName, $function) { |
- var getSelf = H.BoundClosure_selfOf; |
- switch (isSuperCall ? -1 : arity) { |
- case 0: |
- return function(n, S) { |
- return function() { |
- return S(this)[n](); |
- }; |
- }(stubName, getSelf); |
- case 1: |
- return function(n, S) { |
- return function(a) { |
- return S(this)[n](a); |
- }; |
- }(stubName, getSelf); |
- case 2: |
- return function(n, S) { |
- return function(a, b) { |
- return S(this)[n](a, b); |
- }; |
- }(stubName, getSelf); |
- case 3: |
- return function(n, S) { |
- return function(a, b, c) { |
- return S(this)[n](a, b, c); |
- }; |
- }(stubName, getSelf); |
- case 4: |
- return function(n, S) { |
- return function(a, b, c, d) { |
- return S(this)[n](a, b, c, d); |
- }; |
- }(stubName, getSelf); |
- case 5: |
- return function(n, S) { |
- return function(a, b, c, d, e) { |
- return S(this)[n](a, b, c, d, e); |
- }; |
- }(stubName, getSelf); |
- default: |
- return function(f, s) { |
- return function() { |
- return f.apply(s(this), arguments); |
- }; |
- }($function, getSelf); |
- } |
- }, |
- Closure_forwardCallTo: function(receiver, $function, isIntercepted) { |
- var stubName, arity, lookedUpFunction, t1, t2, $arguments; |
- if (isIntercepted) |
- return H.Closure_forwardInterceptedCallTo(receiver, $function); |
- stubName = $function.$stubName; |
- arity = $function.length; |
- lookedUpFunction = receiver[stubName]; |
- t1 = $function == null ? lookedUpFunction == null : $function === lookedUpFunction; |
- t2 = !t1 || arity >= 27; |
- if (t2) |
- return H.Closure_cspForwardCall(arity, !t1, stubName, $function); |
- if (arity === 0) { |
- t1 = $.BoundClosure_selfFieldNameCache; |
- if (t1 == null) { |
- t1 = H.BoundClosure_computeFieldNamed("self"); |
- $.BoundClosure_selfFieldNameCache = t1; |
- } |
- t1 = "return function(){return this." + H.S(t1) + "." + H.S(stubName) + "();"; |
- t2 = $.Closure_functionCounter; |
- $.Closure_functionCounter = J.$add$ns(t2, 1); |
- return new Function(t1 + H.S(t2) + "}")(); |
- } |
- $arguments = "abcdefghijklmnopqrstuvwxyz".split("").splice(0, arity).join(","); |
- t1 = "return function(" + $arguments + "){return this."; |
- t2 = $.BoundClosure_selfFieldNameCache; |
- if (t2 == null) { |
- t2 = H.BoundClosure_computeFieldNamed("self"); |
- $.BoundClosure_selfFieldNameCache = t2; |
- } |
- t2 = t1 + H.S(t2) + "." + H.S(stubName) + "(" + $arguments + ");"; |
- t1 = $.Closure_functionCounter; |
- $.Closure_functionCounter = J.$add$ns(t1, 1); |
- return new Function(t2 + H.S(t1) + "}")(); |
- }, |
- Closure_cspForwardInterceptedCall: function(arity, isSuperCall, $name, $function) { |
- var getSelf, getReceiver; |
- getSelf = H.BoundClosure_selfOf; |
- getReceiver = H.BoundClosure_receiverOf; |
- switch (isSuperCall ? -1 : arity) { |
- case 0: |
- throw H.wrapException(new H.RuntimeError("Intercepted function with no arguments.")); |
- case 1: |
- return function(n, s, r) { |
- return function() { |
- return s(this)[n](r(this)); |
- }; |
- }($name, getSelf, getReceiver); |
- case 2: |
- return function(n, s, r) { |
- return function(a) { |
- return s(this)[n](r(this), a); |
- }; |
- }($name, getSelf, getReceiver); |
- case 3: |
- return function(n, s, r) { |
- return function(a, b) { |
- return s(this)[n](r(this), a, b); |
- }; |
- }($name, getSelf, getReceiver); |
- case 4: |
- return function(n, s, r) { |
- return function(a, b, c) { |
- return s(this)[n](r(this), a, b, c); |
- }; |
- }($name, getSelf, getReceiver); |
- case 5: |
- return function(n, s, r) { |
- return function(a, b, c, d) { |
- return s(this)[n](r(this), a, b, c, d); |
- }; |
- }($name, getSelf, getReceiver); |
- case 6: |
- return function(n, s, r) { |
- return function(a, b, c, d, e) { |
- return s(this)[n](r(this), a, b, c, d, e); |
- }; |
- }($name, getSelf, getReceiver); |
- default: |
- return function(f, s, r, a) { |
- return function() { |
- a = [r(this)]; |
- Array.prototype.push.apply(a, arguments); |
- return f.apply(s(this), a); |
- }; |
- }($function, getSelf, getReceiver); |
- } |
- }, |
- Closure_forwardInterceptedCallTo: function(receiver, $function) { |
- var selfField, t1, stubName, arity, lookedUpFunction, t2, t3, $arguments; |
- selfField = H.BoundClosure_selfFieldName(); |
- t1 = $.BoundClosure_receiverFieldNameCache; |
- if (t1 == null) { |
- t1 = H.BoundClosure_computeFieldNamed("receiver"); |
- $.BoundClosure_receiverFieldNameCache = t1; |
- } |
- stubName = $function.$stubName; |
- arity = $function.length; |
- lookedUpFunction = receiver[stubName]; |
- t2 = $function == null ? lookedUpFunction == null : $function === lookedUpFunction; |
- t3 = !t2 || arity >= 28; |
- if (t3) |
- return H.Closure_cspForwardInterceptedCall(arity, !t2, stubName, $function); |
- if (arity === 1) { |
- t1 = "return function(){return this." + H.S(selfField) + "." + H.S(stubName) + "(this." + H.S(t1) + ");"; |
- t2 = $.Closure_functionCounter; |
- $.Closure_functionCounter = J.$add$ns(t2, 1); |
- return new Function(t1 + H.S(t2) + "}")(); |
- } |
- $arguments = "abcdefghijklmnopqrstuvwxyz".split("").splice(0, arity - 1).join(","); |
- t1 = "return function(" + $arguments + "){return this." + H.S(selfField) + "." + H.S(stubName) + "(this." + H.S(t1) + ", " + $arguments + ");"; |
- t2 = $.Closure_functionCounter; |
- $.Closure_functionCounter = J.$add$ns(t2, 1); |
- return new Function(t1 + H.S(t2) + "}")(); |
- }, |
- closureFromTearOff: function(receiver, functions, reflectionInfo, isStatic, jsArguments, $name) { |
- var t1; |
- functions.fixed$length = Array; |
- if (!!J.getInterceptor(reflectionInfo).$isList) { |
- reflectionInfo.fixed$length = Array; |
- t1 = reflectionInfo; |
- } else |
- t1 = reflectionInfo; |
- return H.Closure_fromTearOff(receiver, functions, t1, !!isStatic, jsArguments, $name); |
- }, |
- throwCyclicInit: function(staticName) { |
- throw H.wrapException(new P.CyclicInitializationError("Cyclic initialization for static " + H.S(staticName))); |
- }, |
- buildFunctionType: function(returnType, parameterTypes, optionalParameterTypes) { |
- return new H.RuntimeFunctionType(returnType, parameterTypes, optionalParameterTypes, null); |
- }, |
- getDynamicRuntimeType: function() { |
- return C.C_DynamicRuntimeType; |
- }, |
- random64: function() { |
- return (Math.random() * 0x100000000 >>> 0) + (Math.random() * 0x100000000 >>> 0) * 4294967296; |
- }, |
- asyncHelper: function(object, bodyFunctionOrErrorCode, completer) { |
- var future; |
- if (bodyFunctionOrErrorCode === 0) { |
- completer.complete$1(object); |
- return; |
- } else if (bodyFunctionOrErrorCode === 1) { |
- completer.completeError$2(H.unwrapException(object), H.getTraceFromException(object)); |
- return; |
- } |
- if (!!J.getInterceptor(object).$isFuture) |
- future = object; |
- else { |
- future = H.setRuntimeTypeInfo(new P._Future(0, $.Zone__current, null), [null]); |
- future._asyncComplete$1(object); |
- } |
- future.then$2$onError(H._wrapJsFunctionForAsync(bodyFunctionOrErrorCode, 0), new H.asyncHelper_closure(bodyFunctionOrErrorCode)); |
- return completer.get$future(); |
- }, |
- _wrapJsFunctionForAsync: function($function, errorCode) { |
- return new H._wrapJsFunctionForAsync_closure(errorCode, function(errorCode, result) { |
- while (true) |
- try { |
- $function(errorCode, result); |
- break; |
- } catch (error) { |
- result = error; |
- errorCode = 1; |
- } |
- }); |
- }, |
- setRuntimeTypeInfo: function(target, typeInfo) { |
- if (target != null) |
- target.$builtinTypeInfo = typeInfo; |
- return target; |
- }, |
- getRuntimeTypeInfo: function(target) { |
- if (target == null) |
- return; |
- return target.$builtinTypeInfo; |
- }, |
- getRuntimeTypeArguments: function(target, substitutionName) { |
- return H.substitute(target["$as" + H.S(substitutionName)], H.getRuntimeTypeInfo(target)); |
- }, |
- getRuntimeTypeArgument: function(target, substitutionName, index) { |
- var $arguments = H.getRuntimeTypeArguments(target, substitutionName); |
- return $arguments == null ? null : $arguments[index]; |
- }, |
- getTypeArgumentByIndex: function(target, index) { |
- var rti = H.getRuntimeTypeInfo(target); |
- return rti == null ? null : rti[index]; |
- }, |
- runtimeTypeToString: function(type, onTypeVariable) { |
- if (type == null) |
- return "dynamic"; |
- else if (typeof type === "object" && type !== null && type.constructor === Array) |
- return type[0].builtin$cls + H.joinArguments(type, 1, onTypeVariable); |
- else if (typeof type == "function") |
- return type.builtin$cls; |
- else if (typeof type === "number" && Math.floor(type) === type) |
- return C.JSInt_methods.toString$0(type); |
- else |
- return; |
- }, |
- joinArguments: function(types, startIndex, onTypeVariable) { |
- var buffer, index, firstArgument, allDynamic, t1, argument; |
- if (types == null) |
- return ""; |
- buffer = new P.StringBuffer(""); |
- for (index = startIndex, firstArgument = true, allDynamic = true, t1 = ""; index < types.length; ++index) { |
- if (firstArgument) |
- firstArgument = false; |
- else |
- buffer._contents = t1 + ", "; |
- argument = types[index]; |
- if (argument != null) |
- allDynamic = false; |
- t1 = buffer._contents += H.S(H.runtimeTypeToString(argument, onTypeVariable)); |
- } |
- return allDynamic ? "" : "<" + H.S(buffer) + ">"; |
- }, |
- substitute: function(substitution, $arguments) { |
- if (typeof substitution == "function") { |
- substitution = H.invokeOn(substitution, null, $arguments); |
- if (substitution == null || typeof substitution === "object" && substitution !== null && substitution.constructor === Array) |
- $arguments = substitution; |
- else if (typeof substitution == "function") |
- $arguments = H.invokeOn(substitution, null, $arguments); |
- } |
- return $arguments; |
- }, |
- areSubtypes: function(s, t) { |
- var len, i; |
- if (s == null || t == null) |
- return true; |
- len = s.length; |
- for (i = 0; i < len; ++i) |
- if (!H.isSubtype(s[i], t[i])) |
- return false; |
- return true; |
- }, |
- computeSignature: function(signature, context, contextName) { |
- return H.invokeOn(signature, context, H.getRuntimeTypeArguments(context, contextName)); |
- }, |
- isSubtype: function(s, t) { |
- var t1, typeOfS, t2, typeOfT, substitution; |
- if (s === t) |
- return true; |
- if (s == null || t == null) |
- return true; |
- if ('func' in t) |
- return H.isFunctionSubtype(s, t); |
- if ('func' in s) |
- return t.builtin$cls === "Function"; |
- t1 = typeof s === "object" && s !== null && s.constructor === Array; |
- typeOfS = t1 ? s[0] : s; |
- t2 = typeof t === "object" && t !== null && t.constructor === Array; |
- typeOfT = t2 ? t[0] : t; |
- if (typeOfT !== typeOfS) { |
- if (!('$is' + H.runtimeTypeToString(typeOfT, null) in typeOfS.prototype)) |
- return false; |
- substitution = typeOfS.prototype["$as" + H.S(H.runtimeTypeToString(typeOfT, null))]; |
- } else |
- substitution = null; |
- if (!t1 && substitution == null || !t2) |
- return true; |
- t1 = t1 ? s.slice(1) : null; |
- t2 = t2 ? t.slice(1) : null; |
- return H.areSubtypes(H.substitute(substitution, t1), t2); |
- }, |
- areAssignable: function(s, t, allowShorter) { |
- var t1, sLength, tLength, i, t2; |
- t1 = t == null; |
- if (t1 && s == null) |
- return true; |
- if (t1) |
- return allowShorter; |
- if (s == null) |
- return false; |
- sLength = s.length; |
- tLength = t.length; |
- if (allowShorter) { |
- if (sLength < tLength) |
- return false; |
- } else if (sLength !== tLength) |
- return false; |
- for (i = 0; i < tLength; ++i) { |
- t1 = s[i]; |
- t2 = t[i]; |
- if (!(H.isSubtype(t1, t2) || H.isSubtype(t2, t1))) |
- return false; |
- } |
- return true; |
- }, |
- areAssignableMaps: function(s, t) { |
- var t1, names, i, $name, tType, sType; |
- if (t == null) |
- return true; |
- if (s == null) |
- return false; |
- t1 = Object.getOwnPropertyNames(t); |
- t1.fixed$length = Array; |
- names = t1; |
- for (t1 = names.length, i = 0; i < t1; ++i) { |
- $name = names[i]; |
- if (!Object.hasOwnProperty.call(s, $name)) |
- return false; |
- tType = t[$name]; |
- sType = s[$name]; |
- if (!(H.isSubtype(tType, sType) || H.isSubtype(sType, tType))) |
- return false; |
- } |
- return true; |
- }, |
- isFunctionSubtype: function(s, t) { |
- var sReturnType, tReturnType, sParameterTypes, tParameterTypes, sOptionalParameterTypes, tOptionalParameterTypes, sParametersLen, tParametersLen, sOptionalParametersLen, tOptionalParametersLen, pos, t1, t2, tPos, sPos; |
- if (!('func' in s)) |
- return false; |
- if ("void" in s) { |
- if (!("void" in t) && "ret" in t) |
- return false; |
- } else if (!("void" in t)) { |
- sReturnType = s.ret; |
- tReturnType = t.ret; |
- if (!(H.isSubtype(sReturnType, tReturnType) || H.isSubtype(tReturnType, sReturnType))) |
- return false; |
- } |
- sParameterTypes = s.args; |
- tParameterTypes = t.args; |
- sOptionalParameterTypes = s.opt; |
- tOptionalParameterTypes = t.opt; |
- sParametersLen = sParameterTypes != null ? sParameterTypes.length : 0; |
- tParametersLen = tParameterTypes != null ? tParameterTypes.length : 0; |
- sOptionalParametersLen = sOptionalParameterTypes != null ? sOptionalParameterTypes.length : 0; |
- tOptionalParametersLen = tOptionalParameterTypes != null ? tOptionalParameterTypes.length : 0; |
- if (sParametersLen > tParametersLen) |
- return false; |
- if (sParametersLen + sOptionalParametersLen < tParametersLen + tOptionalParametersLen) |
- return false; |
- if (sParametersLen === tParametersLen) { |
- if (!H.areAssignable(sParameterTypes, tParameterTypes, false)) |
- return false; |
- if (!H.areAssignable(sOptionalParameterTypes, tOptionalParameterTypes, true)) |
- return false; |
- } else { |
- for (pos = 0; pos < sParametersLen; ++pos) { |
- t1 = sParameterTypes[pos]; |
- t2 = tParameterTypes[pos]; |
- if (!(H.isSubtype(t1, t2) || H.isSubtype(t2, t1))) |
- return false; |
- } |
- for (tPos = pos, sPos = 0; tPos < tParametersLen; ++sPos, ++tPos) { |
- t1 = sOptionalParameterTypes[sPos]; |
- t2 = tParameterTypes[tPos]; |
- if (!(H.isSubtype(t1, t2) || H.isSubtype(t2, t1))) |
- return false; |
- } |
- for (tPos = 0; tPos < tOptionalParametersLen; ++sPos, ++tPos) { |
- t1 = sOptionalParameterTypes[sPos]; |
- t2 = tOptionalParameterTypes[tPos]; |
- if (!(H.isSubtype(t1, t2) || H.isSubtype(t2, t1))) |
- return false; |
- } |
- } |
- return H.areAssignableMaps(s.named, t.named); |
- }, |
- invokeOn: function($function, receiver, $arguments) { |
- return $function.apply(receiver, $arguments); |
- }, |
- ReflectionInfo: { |
- "^": "Object;jsFunction,data,isAccessor,requiredParameterCount,optionalParameterCount,areOptionalParametersNamed,functionType,cachedSortedIndices", |
- static: {ReflectionInfo_ReflectionInfo: function(jsFunction) { |
- var data, requiredParametersInfo, optionalParametersInfo; |
- data = jsFunction.$reflectionInfo; |
- if (data == null) |
- return; |
- data.fixed$length = Array; |
- data = data; |
- requiredParametersInfo = data[0]; |
- optionalParametersInfo = data[1]; |
- return new H.ReflectionInfo(jsFunction, data, (requiredParametersInfo & 1) === 1, requiredParametersInfo >> 1, optionalParametersInfo >> 1, (optionalParametersInfo & 1) === 1, data[2], null); |
- }} |
- }, |
- TypeErrorDecoder: { |
- "^": "Object;_pattern,_arguments,_argumentsExpr,_expr,_method,_receiver", |
- matchTypeError$1: function(message) { |
- var match, result, t1; |
- match = new RegExp(this._pattern).exec(message); |
- if (match == null) |
- return; |
- result = Object.create(null); |
- t1 = this._arguments; |
- if (t1 !== -1) |
- result.arguments = match[t1 + 1]; |
- t1 = this._argumentsExpr; |
- if (t1 !== -1) |
- result.argumentsExpr = match[t1 + 1]; |
- t1 = this._expr; |
- if (t1 !== -1) |
- result.expr = match[t1 + 1]; |
- t1 = this._method; |
- if (t1 !== -1) |
- result.method = match[t1 + 1]; |
- t1 = this._receiver; |
- if (t1 !== -1) |
- result.receiver = match[t1 + 1]; |
- return result; |
- }, |
- static: {TypeErrorDecoder_extractPattern: function(message) { |
- var match, $arguments, argumentsExpr, expr, method, receiver; |
- message = message.replace(String({}), '$receiver$').replace(new RegExp("[[\\]{}()*+?.\\\\^$|]", 'g'), '\\$&'); |
- match = message.match(/\\\$[a-zA-Z]+\\\$/g); |
- if (match == null) |
- match = []; |
- $arguments = match.indexOf("\\$arguments\\$"); |
- argumentsExpr = match.indexOf("\\$argumentsExpr\\$"); |
- expr = match.indexOf("\\$expr\\$"); |
- method = match.indexOf("\\$method\\$"); |
- receiver = match.indexOf("\\$receiver\\$"); |
- return new H.TypeErrorDecoder(message.replace('\\$arguments\\$', '((?:x|[^x])*)').replace('\\$argumentsExpr\\$', '((?:x|[^x])*)').replace('\\$expr\\$', '((?:x|[^x])*)').replace('\\$method\\$', '((?:x|[^x])*)').replace('\\$receiver\\$', '((?:x|[^x])*)'), $arguments, argumentsExpr, expr, method, receiver); |
- }, TypeErrorDecoder_provokeCallErrorOn: function(expression) { |
- return function($expr$) { |
- var $argumentsExpr$ = '$arguments$'; |
- try { |
- $expr$.$method$($argumentsExpr$); |
- } catch (e) { |
- return e.message; |
- } |
- }(expression); |
- }, TypeErrorDecoder_provokePropertyErrorOn: function(expression) { |
- return function($expr$) { |
- try { |
- $expr$.$method$; |
- } catch (e) { |
- return e.message; |
- } |
- }(expression); |
- }} |
- }, |
- NullError: { |
- "^": "Error;_message,_method", |
- toString$0: function(_) { |
- var t1 = this._method; |
- if (t1 == null) |
- return "NullError: " + H.S(this._message); |
- return "NullError: method not found: '" + H.S(t1) + "' on null"; |
- } |
- }, |
- JsNoSuchMethodError: { |
- "^": "Error;_message,_method,_receiver", |
- toString$0: function(_) { |
- var t1, t2; |
- t1 = this._method; |
- if (t1 == null) |
- return "NoSuchMethodError: " + H.S(this._message); |
- t2 = this._receiver; |
- if (t2 == null) |
- return "NoSuchMethodError: method not found: '" + H.S(t1) + "' (" + H.S(this._message) + ")"; |
- return "NoSuchMethodError: method not found: '" + H.S(t1) + "' on '" + H.S(t2) + "' (" + H.S(this._message) + ")"; |
- }, |
- static: {JsNoSuchMethodError$: function(_message, match) { |
- var t1, t2; |
- t1 = match == null; |
- t2 = t1 ? null : match.method; |
- return new H.JsNoSuchMethodError(_message, t2, t1 ? null : match.receiver); |
- }} |
- }, |
- UnknownJsTypeError: { |
- "^": "Error;_message", |
- toString$0: function(_) { |
- var t1 = this._message; |
- return C.JSString_methods.get$isEmpty(t1) ? "Error" : "Error: " + t1; |
- } |
- }, |
- unwrapException_saveStackTrace: { |
- "^": "Closure:2;_captured_ex_0", |
- call$1: function(error) { |
- if (!!J.getInterceptor(error).$isError) |
- if (error.$thrownJsError == null) |
- error.$thrownJsError = this._captured_ex_0; |
- return error; |
- } |
- }, |
- _StackTrace: { |
- "^": "Object;_exception,_trace", |
- toString$0: function(_) { |
- var t1, trace; |
- t1 = this._trace; |
- if (t1 != null) |
- return t1; |
- t1 = this._exception; |
- trace = t1 !== null && typeof t1 === "object" ? t1.stack : null; |
- t1 = trace == null ? "" : trace; |
- this._trace = t1; |
- return t1; |
- } |
- }, |
- invokeClosure_closure: { |
- "^": "Closure:0;_captured_closure_0", |
- call$0: function() { |
- return this._captured_closure_0.call$0(); |
- } |
- }, |
- invokeClosure_closure0: { |
- "^": "Closure:0;_captured_closure_1,_captured_arg1_2", |
- call$0: function() { |
- return this._captured_closure_1.call$1(this._captured_arg1_2); |
- } |
- }, |
- invokeClosure_closure1: { |
- "^": "Closure:0;_captured_closure_3,_captured_arg1_4,_captured_arg2_5", |
- call$0: function() { |
- return this._captured_closure_3.call$2(this._captured_arg1_4, this._captured_arg2_5); |
- } |
- }, |
- invokeClosure_closure2: { |
- "^": "Closure:0;_captured_closure_6,_captured_arg1_7,_captured_arg2_8,_captured_arg3_9", |
- call$0: function() { |
- return this._captured_closure_6.call$3(this._captured_arg1_7, this._captured_arg2_8, this._captured_arg3_9); |
- } |
- }, |
- invokeClosure_closure3: { |
- "^": "Closure:0;_captured_closure_10,_captured_arg1_11,_captured_arg2_12,_captured_arg3_13,_captured_arg4_14", |
- call$0: function() { |
- return this._captured_closure_10.call$4(this._captured_arg1_11, this._captured_arg2_12, this._captured_arg3_13, this._captured_arg4_14); |
- } |
- }, |
- Closure: { |
- "^": "Object;", |
- toString$0: function(_) { |
- return "Closure '" + H.Primitives_objectTypeName(this) + "'"; |
- }, |
- get$$call: function() { |
- return this; |
- }, |
- get$$call: function() { |
- return this; |
- } |
- }, |
- TearOffClosure: { |
- "^": "Closure;" |
- }, |
- StaticClosure: { |
- "^": "TearOffClosure;", |
- toString$0: function(_) { |
- var $name = this.$name; |
- if ($name == null) |
- return "Closure of unknown static method"; |
- return "Closure '" + $name + "'"; |
- } |
- }, |
- BoundClosure: { |
- "^": "TearOffClosure;_self,_target,_receiver,_name", |
- $eq: function(_, other) { |
- if (other == null) |
- return false; |
- if (this === other) |
- return true; |
- if (!(other instanceof H.BoundClosure)) |
- return false; |
- return this._self === other._self && this._target === other._target && this._receiver === other._receiver; |
- }, |
- get$hashCode: function(_) { |
- var t1, receiverHashCode; |
- t1 = this._receiver; |
- if (t1 == null) |
- receiverHashCode = H.Primitives_objectHashCode(this._self); |
- else |
- receiverHashCode = typeof t1 !== "object" ? J.get$hashCode$(t1) : H.Primitives_objectHashCode(t1); |
- return (receiverHashCode ^ H.Primitives_objectHashCode(this._target)) >>> 0; |
- }, |
- toString$0: function(_) { |
- var receiver = this._receiver; |
- if (receiver == null) |
- receiver = this._self; |
- return "Closure '" + H.S(this._name) + "' of " + H.Primitives_objectToString(receiver); |
- }, |
- static: {BoundClosure_selfOf: function(closure) { |
- return closure._self; |
- }, BoundClosure_receiverOf: function(closure) { |
- return closure._receiver; |
- }, BoundClosure_selfFieldName: function() { |
- var t1 = $.BoundClosure_selfFieldNameCache; |
- if (t1 == null) { |
- t1 = H.BoundClosure_computeFieldNamed("self"); |
- $.BoundClosure_selfFieldNameCache = t1; |
- } |
- return t1; |
- }, BoundClosure_computeFieldNamed: function(fieldName) { |
- var template, t1, names, i, $name; |
- template = new H.BoundClosure("self", "target", "receiver", "name"); |
- t1 = Object.getOwnPropertyNames(template); |
- t1.fixed$length = Array; |
- names = t1; |
- for (t1 = names.length, i = 0; i < t1; ++i) { |
- $name = names[i]; |
- if (template[$name] === fieldName) |
- return $name; |
- } |
- }} |
- }, |
- RuntimeError: { |
- "^": "Error;message", |
- toString$0: function(_) { |
- return "RuntimeError: " + this.message; |
- } |
- }, |
- RuntimeType: { |
- "^": "Object;" |
- }, |
- RuntimeFunctionType: { |
- "^": "RuntimeType;returnType,parameterTypes,optionalParameterTypes,namedParameters", |
- _isTest$1: function(expression) { |
- var functionTypeObject = this._extractFunctionTypeObjectFrom$1(expression); |
- return functionTypeObject == null ? false : H.isFunctionSubtype(functionTypeObject, this.toRti$0()); |
- }, |
- _extractFunctionTypeObjectFrom$1: function(o) { |
- var interceptor = J.getInterceptor(o); |
- return "$signature" in interceptor ? interceptor.$signature() : null; |
- }, |
- toRti$0: function() { |
- var result, t1, t2, namedRti, keys, i, $name; |
- result = {func: "dynafunc"}; |
- t1 = this.returnType; |
- t2 = J.getInterceptor(t1); |
- if (!!t2.$isVoidRuntimeType) |
- result.void = true; |
- else if (!t2.$isDynamicRuntimeType) |
- result.ret = t1.toRti$0(); |
- t1 = this.parameterTypes; |
- if (t1 != null && t1.length !== 0) |
- result.args = H.RuntimeFunctionType_listToRti(t1); |
- t1 = this.optionalParameterTypes; |
- if (t1 != null && t1.length !== 0) |
- result.opt = H.RuntimeFunctionType_listToRti(t1); |
- t1 = this.namedParameters; |
- if (t1 != null) { |
- namedRti = Object.create(null); |
- keys = H.extractKeys(t1); |
- for (t2 = keys.length, i = 0; i < t2; ++i) { |
- $name = keys[i]; |
- namedRti[$name] = t1[$name].toRti$0(); |
- } |
- result.named = namedRti; |
- } |
- return result; |
- }, |
- toString$0: function(_) { |
- var t1, t2, result, needsComma, i, type, keys, $name; |
- t1 = this.parameterTypes; |
- if (t1 != null) |
- for (t2 = t1.length, result = "(", needsComma = false, i = 0; i < t2; ++i, needsComma = true) { |
- type = t1[i]; |
- if (needsComma) |
- result += ", "; |
- result += H.S(type); |
- } |
- else { |
- result = "("; |
- needsComma = false; |
- } |
- t1 = this.optionalParameterTypes; |
- if (t1 != null && t1.length !== 0) { |
- result = (needsComma ? result + ", " : result) + "["; |
- for (t2 = t1.length, needsComma = false, i = 0; i < t2; ++i, needsComma = true) { |
- type = t1[i]; |
- if (needsComma) |
- result += ", "; |
- result += H.S(type); |
- } |
- result += "]"; |
- } else { |
- t1 = this.namedParameters; |
- if (t1 != null) { |
- result = (needsComma ? result + ", " : result) + "{"; |
- keys = H.extractKeys(t1); |
- for (t2 = keys.length, needsComma = false, i = 0; i < t2; ++i, needsComma = true) { |
- $name = keys[i]; |
- if (needsComma) |
- result += ", "; |
- result += H.S(t1[$name].toRti$0()) + " " + $name; |
- } |
- result += "}"; |
- } |
- } |
- return result + (") -> " + H.S(this.returnType)); |
- }, |
- static: {RuntimeFunctionType_listToRti: function(list) { |
- var result, t1, i; |
- list = list; |
- result = []; |
- for (t1 = list.length, i = 0; i < t1; ++i) |
- result.push(list[i].toRti$0()); |
- return result; |
- }} |
- }, |
- DynamicRuntimeType: { |
- "^": "RuntimeType;", |
- toString$0: function(_) { |
- return "dynamic"; |
- }, |
- toRti$0: function() { |
- return; |
- } |
- }, |
- ExceptionAndStackTrace: { |
- "^": "Object;dartException,stackTrace<" |
- }, |
- asyncHelper_closure: { |
- "^": "Closure:3;_captured_bodyFunctionOrErrorCode_0", |
- call$2: function(error, stackTrace) { |
- H._wrapJsFunctionForAsync(this._captured_bodyFunctionOrErrorCode_0, 1).call$1(new H.ExceptionAndStackTrace(error, stackTrace)); |
- } |
- }, |
- _wrapJsFunctionForAsync_closure: { |
- "^": "Closure:2;_captured_errorCode_0,_captured_protected_1", |
- call$1: function(result) { |
- this._captured_protected_1(this._captured_errorCode_0, result); |
- } |
- }, |
- JsLinkedHashMap: { |
- "^": "Object;__js_helper$_length,_strings,_nums,_rest,_first,_last,_modifications", |
- get$length: function(_) { |
- return this.__js_helper$_length; |
- }, |
- get$keys: function() { |
- return H.setRuntimeTypeInfo(new H.LinkedHashMapKeyIterable(this), [H.getTypeArgumentByIndex(this, 0)]); |
- }, |
- get$values: function() { |
- return H.MappedIterable_MappedIterable(H.setRuntimeTypeInfo(new H.LinkedHashMapKeyIterable(this), [H.getTypeArgumentByIndex(this, 0)]), new H.JsLinkedHashMap_values_closure(this), H.getTypeArgumentByIndex(this, 0), H.getTypeArgumentByIndex(this, 1)); |
- }, |
- containsKey$1: function(key) { |
- var nums; |
- if ((key & 0x3ffffff) === key) { |
- nums = this._nums; |
- if (nums == null) |
- return false; |
- return this._containsTableEntry$2(nums, key); |
- } else |
- return this.internalContainsKey$1(key); |
- }, |
- internalContainsKey$1: function(key) { |
- var rest = this._rest; |
- if (rest == null) |
- return false; |
- return this.internalFindBucketIndex$2(this._getTableEntry$2(rest, this.internalComputeHashCode$1(key)), key) >= 0; |
- }, |
- $index: function(_, key) { |
- var strings, cell, nums; |
- if (typeof key === "string") { |
- strings = this._strings; |
- if (strings == null) |
- return; |
- cell = this._getTableEntry$2(strings, key); |
- return cell == null ? null : cell.get$hashMapCellValue(); |
- } else if (typeof key === "number" && (key & 0x3ffffff) === key) { |
- nums = this._nums; |
- if (nums == null) |
- return; |
- cell = this._getTableEntry$2(nums, key); |
- return cell == null ? null : cell.get$hashMapCellValue(); |
- } else |
- return this.internalGet$1(key); |
- }, |
- internalGet$1: function(key) { |
- var rest, bucket, index; |
- rest = this._rest; |
- if (rest == null) |
- return; |
- bucket = this._getTableEntry$2(rest, this.internalComputeHashCode$1(key)); |
- index = this.internalFindBucketIndex$2(bucket, key); |
- if (index < 0) |
- return; |
- return bucket[index].get$hashMapCellValue(); |
- }, |
- $indexSet: function(_, key, value) { |
- var strings, nums; |
- if (typeof key === "string") { |
- strings = this._strings; |
- if (strings == null) { |
- strings = this._newHashTable$0(); |
- this._strings = strings; |
- } |
- this.__js_helper$_addHashTableEntry$3(strings, key, value); |
- } else if (typeof key === "number" && (key & 0x3ffffff) === key) { |
- nums = this._nums; |
- if (nums == null) { |
- nums = this._newHashTable$0(); |
- this._nums = nums; |
- } |
- this.__js_helper$_addHashTableEntry$3(nums, key, value); |
- } else |
- this.internalSet$2(key, value); |
- }, |
- internalSet$2: function(key, value) { |
- var rest, hash, bucket, index; |
- rest = this._rest; |
- if (rest == null) { |
- rest = this._newHashTable$0(); |
- this._rest = rest; |
- } |
- hash = this.internalComputeHashCode$1(key); |
- bucket = this._getTableEntry$2(rest, hash); |
- if (bucket == null) |
- this._setTableEntry$3(rest, hash, [this.__js_helper$_newLinkedCell$2(key, value)]); |
- else { |
- index = this.internalFindBucketIndex$2(bucket, key); |
- if (index >= 0) |
- bucket[index].set$hashMapCellValue(value); |
- else |
- bucket.push(this.__js_helper$_newLinkedCell$2(key, value)); |
- } |
- }, |
- remove$1: function(_, key) { |
- if (typeof key === "string") |
- return this._removeHashTableEntry$2(this._strings, key); |
- else if (typeof key === "number" && (key & 0x3ffffff) === key) |
- return this._removeHashTableEntry$2(this._nums, key); |
- else |
- return this.internalRemove$1(key); |
- }, |
- internalRemove$1: function(key) { |
- var rest, bucket, index, cell; |
- rest = this._rest; |
- if (rest == null) |
- return; |
- bucket = this._getTableEntry$2(rest, this.internalComputeHashCode$1(key)); |
- index = this.internalFindBucketIndex$2(bucket, key); |
- if (index < 0) |
- return; |
- cell = bucket.splice(index, 1)[0]; |
- this._unlinkCell$1(cell); |
- return cell.get$hashMapCellValue(); |
- }, |
- forEach$1: function(_, action) { |
- var cell, modifications; |
- cell = this._first; |
- modifications = this._modifications; |
- for (; cell != null;) { |
- action.call$2(cell.hashMapCellKey, cell.hashMapCellValue); |
- if (modifications !== this._modifications) |
- throw H.wrapException(new P.ConcurrentModificationError(this)); |
- cell = cell.__js_helper$_next; |
- } |
- }, |
- __js_helper$_addHashTableEntry$3: function(table, key, value) { |
- var cell = this._getTableEntry$2(table, key); |
- if (cell == null) |
- this._setTableEntry$3(table, key, this.__js_helper$_newLinkedCell$2(key, value)); |
- else |
- cell.set$hashMapCellValue(value); |
- }, |
- _removeHashTableEntry$2: function(table, key) { |
- var cell; |
- if (table == null) |
- return; |
- cell = this._getTableEntry$2(table, key); |
- if (cell == null) |
- return; |
- this._unlinkCell$1(cell); |
- this._deleteTableEntry$2(table, key); |
- return cell.get$hashMapCellValue(); |
- }, |
- __js_helper$_newLinkedCell$2: function(key, value) { |
- var cell, last; |
- cell = new H.LinkedHashMapCell(key, value, null, null); |
- if (this._first == null) { |
- this._last = cell; |
- this._first = cell; |
- } else { |
- last = this._last; |
- cell.__js_helper$_previous = last; |
- last.__js_helper$_next = cell; |
- this._last = cell; |
- } |
- ++this.__js_helper$_length; |
- this._modifications = this._modifications + 1 & 67108863; |
- return cell; |
- }, |
- _unlinkCell$1: function(cell) { |
- var previous, next; |
- previous = cell.get$__js_helper$_previous(); |
- next = cell.__js_helper$_next; |
- if (previous == null) |
- this._first = next; |
- else |
- previous.__js_helper$_next = next; |
- if (next == null) |
- this._last = previous; |
- else |
- next.__js_helper$_previous = previous; |
- --this.__js_helper$_length; |
- this._modifications = this._modifications + 1 & 67108863; |
- }, |
- internalComputeHashCode$1: function(key) { |
- return J.get$hashCode$(key) & 0x3ffffff; |
- }, |
- internalFindBucketIndex$2: function(bucket, key) { |
- var $length, i; |
- if (bucket == null) |
- return -1; |
- $length = bucket.length; |
- for (i = 0; i < $length; ++i) |
- if (J.$eq(bucket[i].get$hashMapCellKey(), key)) |
- return i; |
- return -1; |
- }, |
- toString$0: function(_) { |
- return P.Maps_mapToString(this); |
- }, |
- _getTableEntry$2: function(table, key) { |
- return table[key]; |
- }, |
- _setTableEntry$3: function(table, key, value) { |
- table[key] = value; |
- }, |
- _deleteTableEntry$2: function(table, key) { |
- delete table[key]; |
- }, |
- _containsTableEntry$2: function(table, key) { |
- return this._getTableEntry$2(table, key) != null; |
- }, |
- _newHashTable$0: function() { |
- var table = Object.create(null); |
- this._setTableEntry$3(table, "<non-identifier-key>", table); |
- this._deleteTableEntry$2(table, "<non-identifier-key>"); |
- return table; |
- }, |
- $isInternalMap: 1 |
- }, |
- JsLinkedHashMap_values_closure: { |
- "^": "Closure:2;__js_helper$_captured_this_0", |
- call$1: function(each) { |
- return this.__js_helper$_captured_this_0.$index(0, each); |
- } |
- }, |
- LinkedHashMapCell: { |
- "^": "Object;hashMapCellKey<,hashMapCellValue@,__js_helper$_next,__js_helper$_previous<" |
- }, |
- LinkedHashMapKeyIterable: { |
- "^": "Iterable;_map", |
- get$length: function(_) { |
- return this._map.__js_helper$_length; |
- }, |
- get$iterator: function(_) { |
- var t1, t2; |
- t1 = this._map; |
- t2 = new H.LinkedHashMapKeyIterator(t1, t1._modifications, null, null); |
- t2.__js_helper$_cell = t1._first; |
- return t2; |
- }, |
- forEach$1: function(_, f) { |
- var t1, cell, modifications; |
- t1 = this._map; |
- cell = t1._first; |
- modifications = t1._modifications; |
- for (; cell != null;) { |
- f.call$1(cell.hashMapCellKey); |
- if (modifications !== t1._modifications) |
- throw H.wrapException(new P.ConcurrentModificationError(t1)); |
- cell = cell.__js_helper$_next; |
- } |
- }, |
- $isEfficientLengthIterable: 1 |
- }, |
- LinkedHashMapKeyIterator: { |
- "^": "Object;_map,_modifications,__js_helper$_cell,__js_helper$_current", |
- get$current: function() { |
- return this.__js_helper$_current; |
- }, |
- moveNext$0: function() { |
- var t1 = this._map; |
- if (this._modifications !== t1._modifications) |
- throw H.wrapException(new P.ConcurrentModificationError(t1)); |
- else { |
- t1 = this.__js_helper$_cell; |
- if (t1 == null) { |
- this.__js_helper$_current = null; |
- return false; |
- } else { |
- this.__js_helper$_current = t1.hashMapCellKey; |
- this.__js_helper$_cell = t1.__js_helper$_next; |
- return true; |
- } |
- } |
- } |
- } |
-}], ["dart._internal", "dart:_internal",, H, { |
- "^": "", |
- IterableElementError_noElement: function() { |
- return new P.StateError("No element"); |
- }, |
- Symbol_getName: function(symbol) { |
- return symbol.get$__internal$_name(); |
- }, |
- ListIterable: { |
- "^": "Iterable;", |
- get$iterator: function(_) { |
- return new H.ListIterator(this, this.get$length(this), 0, null); |
- }, |
- forEach$1: function(_, action) { |
- var $length, i; |
- $length = this.get$length(this); |
- for (i = 0; i < $length; ++i) { |
- action.call$1(this.elementAt$1(0, i)); |
- if ($length !== this.get$length(this)) |
- throw H.wrapException(new P.ConcurrentModificationError(this)); |
- } |
- }, |
- map$1: function(_, f) { |
- return H.setRuntimeTypeInfo(new H.MappedListIterable(this, f), [null, null]); |
- }, |
- toList$1$growable: function(_, growable) { |
- var result, i, t1; |
- if (growable) { |
- result = H.setRuntimeTypeInfo([], [H.getRuntimeTypeArgument(this, "ListIterable", 0)]); |
- C.JSArray_methods.set$length(result, this.get$length(this)); |
- } else |
- result = H.setRuntimeTypeInfo(Array(this.get$length(this)), [H.getRuntimeTypeArgument(this, "ListIterable", 0)]); |
- for (i = 0; i < this.get$length(this); ++i) { |
- t1 = this.elementAt$1(0, i); |
- if (i >= result.length) |
- return H.ioore(result, i); |
- result[i] = t1; |
- } |
- return result; |
- }, |
- toList$0: function($receiver) { |
- return this.toList$1$growable($receiver, true); |
- }, |
- $isEfficientLengthIterable: 1 |
- }, |
- ListIterator: { |
- "^": "Object;__internal$_iterable,__internal$_length,__internal$_index,__internal$_current", |
- get$current: function() { |
- return this.__internal$_current; |
- }, |
- moveNext$0: function() { |
- var t1, $length, t2; |
- t1 = this.__internal$_iterable; |
- $length = t1.get$length(t1); |
- if (this.__internal$_length !== $length) |
- throw H.wrapException(new P.ConcurrentModificationError(t1)); |
- t2 = this.__internal$_index; |
- if (t2 >= $length) { |
- this.__internal$_current = null; |
- return false; |
- } |
- this.__internal$_current = t1.elementAt$1(0, t2); |
- ++this.__internal$_index; |
- return true; |
- } |
- }, |
- MappedIterable: { |
- "^": "Iterable;__internal$_iterable,_f", |
- get$iterator: function(_) { |
- var t1 = new H.MappedIterator(null, J.get$iterator$a(this.__internal$_iterable), this._f); |
- t1.$builtinTypeInfo = this.$builtinTypeInfo; |
- return t1; |
- }, |
- get$length: function(_) { |
- return J.get$length$as(this.__internal$_iterable); |
- }, |
- $asIterable: function($S, $T) { |
- return [$T]; |
- }, |
- static: {MappedIterable_MappedIterable: function(iterable, $function, $S, $T) { |
- if (!!J.getInterceptor(iterable).$isEfficientLengthIterable) |
- return H.setRuntimeTypeInfo(new H.EfficientLengthMappedIterable(iterable, $function), [$S, $T]); |
- return H.setRuntimeTypeInfo(new H.MappedIterable(iterable, $function), [$S, $T]); |
- }} |
- }, |
- EfficientLengthMappedIterable: { |
- "^": "MappedIterable;__internal$_iterable,_f", |
- $isEfficientLengthIterable: 1, |
- $asEfficientLengthIterable: function($S, $T) { |
- return [$T]; |
- } |
- }, |
- MappedIterator: { |
- "^": "Iterator;__internal$_current,_iterator,_f", |
- moveNext$0: function() { |
- var t1 = this._iterator; |
- if (t1.moveNext$0()) { |
- this.__internal$_current = this._f$1(t1.get$current()); |
- return true; |
- } |
- this.__internal$_current = null; |
- return false; |
- }, |
- get$current: function() { |
- return this.__internal$_current; |
- }, |
- _f$1: function(arg0) { |
- return this._f.call$1(arg0); |
- } |
- }, |
- MappedListIterable: { |
- "^": "ListIterable;_source,_f", |
- get$length: function(_) { |
- return J.get$length$as(this._source); |
- }, |
- elementAt$1: function(_, index) { |
- return this._f$1(J.elementAt$1$a(this._source, index)); |
- }, |
- _f$1: function(arg0) { |
- return this._f.call$1(arg0); |
- }, |
- $asListIterable: function($S, $T) { |
- return [$T]; |
- }, |
- $asIterable: function($S, $T) { |
- return [$T]; |
- }, |
- $asEfficientLengthIterable: function($S, $T) { |
- return [$T]; |
- } |
- } |
-}], ["dart._js_names", "dart:_js_names",, H, { |
- "^": "", |
- extractKeys: function(victim) { |
- var t1 = H.setRuntimeTypeInfo(victim ? Object.keys(victim) : [], [null]); |
- t1.fixed$length = Array; |
- return t1; |
- } |
-}], ["dart.async", "dart:async",, P, { |
- "^": "", |
- _AsyncRun__initializeScheduleImmediate: function() { |
- var t1, div, span; |
- t1 = {}; |
- if (self.scheduleImmediate != null) |
- return P._AsyncRun__scheduleImmediateJsOverride$closure(); |
- if (self.MutationObserver != null && self.document != null) { |
- div = self.document.createElement("div"); |
- span = self.document.createElement("span"); |
- t1._captured_storedCallback_0 = null; |
- new self.MutationObserver(H.convertDartClosureToJS(new P._AsyncRun__initializeScheduleImmediate_internalCallback(t1), 1)).observe(div, {childList: true}); |
- return new P._AsyncRun__initializeScheduleImmediate_closure(t1, div, span); |
- } else if (self.setImmediate != null) |
- return P._AsyncRun__scheduleImmediateWithSetImmediate$closure(); |
- return P._AsyncRun__scheduleImmediateWithTimer$closure(); |
- }, |
- _AsyncRun__scheduleImmediateJsOverride: [function(callback) { |
- ++init.globalState.topEventLoop._activeJsAsyncCount; |
- self.scheduleImmediate(H.convertDartClosureToJS(new P._AsyncRun__scheduleImmediateJsOverride_internalCallback(callback), 0)); |
- }, "call$1", "_AsyncRun__scheduleImmediateJsOverride$closure", 2, 0, 11], |
- _AsyncRun__scheduleImmediateWithSetImmediate: [function(callback) { |
- ++init.globalState.topEventLoop._activeJsAsyncCount; |
- self.setImmediate(H.convertDartClosureToJS(new P._AsyncRun__scheduleImmediateWithSetImmediate_internalCallback(callback), 0)); |
- }, "call$1", "_AsyncRun__scheduleImmediateWithSetImmediate$closure", 2, 0, 11], |
- _AsyncRun__scheduleImmediateWithTimer: [function(callback) { |
- P.Timer__createTimer(C.Duration_0, callback); |
- }, "call$1", "_AsyncRun__scheduleImmediateWithTimer$closure", 2, 0, 11], |
- _registerErrorHandler: function(errorHandler, zone) { |
- var t1 = H.getDynamicRuntimeType(); |
- t1 = H.buildFunctionType(t1, [t1, t1])._isTest$1(errorHandler); |
- if (t1) { |
- zone.toString; |
- return errorHandler; |
- } else { |
- zone.toString; |
- return errorHandler; |
- } |
- }, |
- Completer_Completer: function($T) { |
- return H.setRuntimeTypeInfo(new P._AsyncCompleter(H.setRuntimeTypeInfo(new P._Future(0, $.Zone__current, null), [$T])), [$T]); |
- }, |
- _microtaskLoop: function() { |
- var t1, t2; |
- for (; t1 = $._nextCallback, t1 != null;) { |
- $._lastPriorityCallback = null; |
- t2 = t1.next; |
- $._nextCallback = t2; |
- if (t2 == null) |
- $._lastCallback = null; |
- $.Zone__current = t1.zone; |
- t1.callback$0(); |
- } |
- }, |
- _microtaskLoopEntry: [function() { |
- $._isInCallbackLoop = true; |
- try { |
- P._microtaskLoop(); |
- } finally { |
- $.Zone__current = C.C__RootZone; |
- $._lastPriorityCallback = null; |
- $._isInCallbackLoop = false; |
- if ($._nextCallback != null) |
- $.get$_AsyncRun_scheduleImmediateClosure().call$1(P._microtaskLoopEntry$closure()); |
- } |
- }, "call$0", "_microtaskLoopEntry$closure", 0, 0, 1], |
- _scheduleAsyncCallback: function(newEntry) { |
- if ($._nextCallback == null) { |
- $._lastCallback = newEntry; |
- $._nextCallback = newEntry; |
- if (!$._isInCallbackLoop) |
- $.get$_AsyncRun_scheduleImmediateClosure().call$1(P._microtaskLoopEntry$closure()); |
- } else { |
- $._lastCallback.next = newEntry; |
- $._lastCallback = newEntry; |
- } |
- }, |
- scheduleMicrotask: function(callback) { |
- var currentZone, t1; |
- currentZone = $.Zone__current; |
- if (C.C__RootZone === currentZone) { |
- P._rootScheduleMicrotask(null, null, C.C__RootZone, callback); |
- return; |
- } |
- currentZone.toString; |
- if (C.C__RootZone.get$errorZone() === currentZone) { |
- P._rootScheduleMicrotask(null, null, currentZone, callback); |
- return; |
- } |
- t1 = $.Zone__current; |
- P._rootScheduleMicrotask(null, null, t1, t1.bindCallback$2$runGuarded(callback, true)); |
- }, |
- StreamIterator_StreamIterator: function(stream, $T) { |
- var t1, t2, t3; |
- t1 = H.setRuntimeTypeInfo(new P._StreamIteratorImpl(null, null, null, 0), [$T]); |
- t2 = t1.get$_onData(); |
- t3 = t1.get$_onError(); |
- t1._subscription = stream.listen$4$cancelOnError$onDone$onError(t2, true, t1.get$_onDone(), t3); |
- return t1; |
- }, |
- Timer_Timer: function(duration, callback) { |
- var t1 = $.Zone__current; |
- if (t1 === C.C__RootZone) { |
- t1.toString; |
- return P.Timer__createTimer(duration, callback); |
- } |
- return P.Timer__createTimer(duration, t1.bindCallback$2$runGuarded(callback, true)); |
- }, |
- Timer__createTimer: function(duration, callback) { |
- var milliseconds = C.JSInt_methods._tdivFast$1(duration._duration, 1000); |
- return H.TimerImpl$(milliseconds < 0 ? 0 : milliseconds, callback); |
- }, |
- Zone__enter: function(zone) { |
- var previous = $.Zone__current; |
- $.Zone__current = zone; |
- return previous; |
- }, |
- _rootHandleUncaughtError: function($self, $parent, zone, error, stackTrace) { |
- var entry, t1, t2; |
- entry = new P._AsyncCallbackEntry(new P._rootHandleUncaughtError_closure(error, stackTrace), C.C__RootZone, null); |
- t1 = $._nextCallback; |
- if (t1 == null) { |
- P._scheduleAsyncCallback(entry); |
- $._lastPriorityCallback = $._lastCallback; |
- } else { |
- t2 = $._lastPriorityCallback; |
- if (t2 == null) { |
- entry.next = t1; |
- $._lastPriorityCallback = entry; |
- $._nextCallback = entry; |
- } else { |
- entry.next = t2.next; |
- t2.next = entry; |
- $._lastPriorityCallback = entry; |
- if (entry.next == null) |
- $._lastCallback = entry; |
- } |
- } |
- }, |
- _rootRun: function($self, $parent, zone, f) { |
- var old, t1; |
- if ($.Zone__current === zone) |
- return f.call$0(); |
- old = P.Zone__enter(zone); |
- try { |
- t1 = f.call$0(); |
- return t1; |
- } finally { |
- $.Zone__current = old; |
- } |
- }, |
- _rootRunUnary: function($self, $parent, zone, f, arg) { |
- var old, t1; |
- if ($.Zone__current === zone) |
- return f.call$1(arg); |
- old = P.Zone__enter(zone); |
- try { |
- t1 = f.call$1(arg); |
- return t1; |
- } finally { |
- $.Zone__current = old; |
- } |
- }, |
- _rootRunBinary: function($self, $parent, zone, f, arg1, arg2) { |
- var old, t1; |
- if ($.Zone__current === zone) |
- return f.call$2(arg1, arg2); |
- old = P.Zone__enter(zone); |
- try { |
- t1 = f.call$2(arg1, arg2); |
- return t1; |
- } finally { |
- $.Zone__current = old; |
- } |
- }, |
- _rootScheduleMicrotask: function($self, $parent, zone, f) { |
- var t1 = C.C__RootZone !== zone; |
- if (t1) { |
- f = zone.bindCallback$2$runGuarded(f, !(!t1 || C.C__RootZone.get$errorZone() === zone)); |
- zone = C.C__RootZone; |
- } |
- P._scheduleAsyncCallback(new P._AsyncCallbackEntry(f, zone, null)); |
- }, |
- _AsyncRun__initializeScheduleImmediate_internalCallback: { |
- "^": "Closure:2;_box_0", |
- call$1: function(_) { |
- var t1, f; |
- H.leaveJsAsync(); |
- t1 = this._box_0; |
- f = t1._captured_storedCallback_0; |
- t1._captured_storedCallback_0 = null; |
- f.call$0(); |
- } |
- }, |
- _AsyncRun__initializeScheduleImmediate_closure: { |
- "^": "Closure:4;_box_0,_captured_div_1,_captured_span_2", |
- call$1: function(callback) { |
- var t1, t2; |
- ++init.globalState.topEventLoop._activeJsAsyncCount; |
- this._box_0._captured_storedCallback_0 = callback; |
- t1 = this._captured_div_1; |
- t2 = this._captured_span_2; |
- t1.firstChild ? t1.removeChild(t2) : t1.appendChild(t2); |
- } |
- }, |
- _AsyncRun__scheduleImmediateJsOverride_internalCallback: { |
- "^": "Closure:0;_captured_callback_0", |
- call$0: function() { |
- H.leaveJsAsync(); |
- this._captured_callback_0.call$0(); |
- } |
- }, |
- _AsyncRun__scheduleImmediateWithSetImmediate_internalCallback: { |
- "^": "Closure:0;_captured_callback_0", |
- call$0: function() { |
- H.leaveJsAsync(); |
- this._captured_callback_0.call$0(); |
- } |
- }, |
- _UncaughtAsyncError: { |
- "^": "AsyncError;error,stackTrace", |
- toString$0: function(_) { |
- var result, t1; |
- result = "Uncaught Error: " + H.S(this.error); |
- t1 = this.stackTrace; |
- return t1 != null ? result + ("\nStack Trace:\n" + H.S(t1)) : result; |
- }, |
- static: {_UncaughtAsyncError__getBestStackTrace: function(error, stackTrace) { |
- if (stackTrace != null) |
- return stackTrace; |
- if (!!J.getInterceptor(error).$isError) |
- return error.get$stackTrace(); |
- return; |
- }} |
- }, |
- Future: { |
- "^": "Object;" |
- }, |
- _Completer: { |
- "^": "Object;future<", |
- completeError$2: function(error, stackTrace) { |
- error = error != null ? error : new P.NullThrownError(); |
- if (this.future._state !== 0) |
- throw H.wrapException(new P.StateError("Future already completed")); |
- $.Zone__current.toString; |
- this._completeError$2(error, stackTrace); |
- } |
- }, |
- _AsyncCompleter: { |
- "^": "_Completer;future", |
- complete$1: function(value) { |
- var t1 = this.future; |
- if (t1._state !== 0) |
- throw H.wrapException(new P.StateError("Future already completed")); |
- t1._asyncComplete$1(value); |
- }, |
- _completeError$2: function(error, stackTrace) { |
- this.future._asyncCompleteError$2(error, stackTrace); |
- } |
- }, |
- _FutureListener: { |
- "^": "Object;_nextListener<,result<,state,callback,errorCallback", |
- get$_zone: function() { |
- return this.result._zone; |
- }, |
- get$handlesValue: function() { |
- return (this.state & 1) !== 0; |
- }, |
- get$hasErrorTest: function() { |
- return this.state === 6; |
- }, |
- get$handlesComplete: function() { |
- return this.state === 8; |
- }, |
- get$_onValue: function() { |
- return this.callback; |
- }, |
- get$_whenCompleteAction: function() { |
- return this.callback; |
- } |
- }, |
- _Future: { |
- "^": "Object;_state?,_zone<,_resultOrListeners", |
- get$_hasError: function() { |
- return this._state === 8; |
- }, |
- set$_isChained: function(value) { |
- if (value) |
- this._state = 2; |
- else |
- this._state = 0; |
- }, |
- then$2$onError: function(f, onError) { |
- var result, t1; |
- result = H.setRuntimeTypeInfo(new P._Future(0, $.Zone__current, null), [null]); |
- t1 = result._zone; |
- if (t1 !== C.C__RootZone) { |
- t1.toString; |
- if (onError != null) |
- onError = P._registerErrorHandler(onError, t1); |
- } |
- this._addListener$1(new P._FutureListener(null, result, onError == null ? 1 : 3, f, onError)); |
- return result; |
- }, |
- _markPendingCompletion$0: function() { |
- if (this._state !== 0) |
- throw H.wrapException(new P.StateError("Future already completed")); |
- this._state = 1; |
- }, |
- get$_value: function() { |
- return this._resultOrListeners; |
- }, |
- get$_error: function() { |
- return this._resultOrListeners; |
- }, |
- _setValue$1: function(value) { |
- this._state = 4; |
- this._resultOrListeners = value; |
- }, |
- _setErrorObject$1: function(error) { |
- this._state = 8; |
- this._resultOrListeners = error; |
- }, |
- _setError$2: function(error, stackTrace) { |
- this._setErrorObject$1(new P.AsyncError(error, stackTrace)); |
- }, |
- _addListener$1: function(listener) { |
- var t1; |
- if (this._state >= 4) { |
- t1 = this._zone; |
- t1.toString; |
- P._rootScheduleMicrotask(null, null, t1, new P._Future__addListener_closure(this, listener)); |
- } else { |
- listener._nextListener = this._resultOrListeners; |
- this._resultOrListeners = listener; |
- } |
- }, |
- _removeListeners$0: function() { |
- var current, prev, next; |
- current = this._resultOrListeners; |
- this._resultOrListeners = null; |
- for (prev = null; current != null; prev = current, current = next) { |
- next = current.get$_nextListener(); |
- current._nextListener = prev; |
- } |
- return prev; |
- }, |
- _complete$1: function(value) { |
- var t1, listeners; |
- t1 = J.getInterceptor(value); |
- if (!!t1.$isFuture) |
- if (!!t1.$is_Future) |
- P._Future__chainCoreFuture(value, this); |
- else |
- P._Future__chainForeignFuture(value, this); |
- else { |
- listeners = this._removeListeners$0(); |
- this._setValue$1(value); |
- P._Future__propagateToListeners(this, listeners); |
- } |
- }, |
- _completeWithValue$1: function(value) { |
- var listeners = this._removeListeners$0(); |
- this._setValue$1(value); |
- P._Future__propagateToListeners(this, listeners); |
- }, |
- _completeError$2: function(error, stackTrace) { |
- var listeners = this._removeListeners$0(); |
- this._setErrorObject$1(new P.AsyncError(error, stackTrace)); |
- P._Future__propagateToListeners(this, listeners); |
- }, |
- _asyncComplete$1: function(value) { |
- var t1; |
- if (value == null) |
- ; |
- else { |
- t1 = J.getInterceptor(value); |
- if (!!t1.$isFuture) { |
- if (!!t1.$is_Future) { |
- t1 = value._state; |
- if (t1 >= 4 && t1 === 8) { |
- this._markPendingCompletion$0(); |
- t1 = this._zone; |
- t1.toString; |
- P._rootScheduleMicrotask(null, null, t1, new P._Future__asyncComplete_closure(this, value)); |
- } else |
- P._Future__chainCoreFuture(value, this); |
- } else |
- P._Future__chainForeignFuture(value, this); |
- return; |
- } |
- } |
- this._markPendingCompletion$0(); |
- t1 = this._zone; |
- t1.toString; |
- P._rootScheduleMicrotask(null, null, t1, new P._Future__asyncComplete_closure0(this, value)); |
- }, |
- _asyncCompleteError$2: function(error, stackTrace) { |
- var t1; |
- this._markPendingCompletion$0(); |
- t1 = this._zone; |
- t1.toString; |
- P._rootScheduleMicrotask(null, null, t1, new P._Future__asyncCompleteError_closure(this, error, stackTrace)); |
- }, |
- $isFuture: 1, |
- static: {_Future__chainForeignFuture: function(source, target) { |
- var e, s, exception, t1; |
- target.set$_state(2); |
- try { |
- source.then$2$onError(new P._Future__chainForeignFuture_closure(target), new P._Future__chainForeignFuture_closure0(target)); |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- P.scheduleMicrotask(new P._Future__chainForeignFuture_closure1(target, e, s)); |
- } |
- }, _Future__chainCoreFuture: function(source, target) { |
- var listener; |
- target._state = 2; |
- listener = new P._FutureListener(null, target, 0, null, null); |
- if (source._state >= 4) |
- P._Future__propagateToListeners(source, listener); |
- else |
- source._addListener$1(listener); |
- }, _Future__propagateToListeners: function(source, listeners) { |
- var t1, t2, t3, hasError, asyncError, t4, listeners0, sourceValue, zone, oldZone, chainSource, result; |
- t1 = {}; |
- t1._captured_source_4 = source; |
- for (t2 = source; true;) { |
- t3 = {}; |
- hasError = t2.get$_hasError(); |
- if (listeners == null) { |
- if (hasError) { |
- asyncError = t1._captured_source_4.get$_error(); |
- t2 = t1._captured_source_4.get$_zone(); |
- t3 = asyncError.get$error(); |
- t4 = asyncError.get$stackTrace(); |
- t2.toString; |
- P._rootHandleUncaughtError(null, null, t2, t3, t4); |
- } |
- return; |
- } |
- for (; listeners.get$_nextListener() != null; listeners = listeners0) { |
- listeners0 = listeners._nextListener; |
- listeners._nextListener = null; |
- P._Future__propagateToListeners(t1._captured_source_4, listeners); |
- } |
- t3._captured_listenerHasValue_1 = true; |
- sourceValue = hasError ? null : t1._captured_source_4.get$_value(); |
- t3._captured_listenerValueOrError_2 = sourceValue; |
- t3._captured_isPropagationAborted_3 = false; |
- t2 = !hasError; |
- if (!t2 || listeners.get$handlesValue() || listeners.state === 8) { |
- zone = listeners.get$_zone(); |
- if (hasError) { |
- t4 = t1._captured_source_4.get$_zone(); |
- t4.toString; |
- if (t4 == null ? zone != null : t4 !== zone) { |
- t4 = t4.get$errorZone(); |
- zone.toString; |
- t4 = t4 === zone; |
- } else |
- t4 = true; |
- t4 = !t4; |
- } else |
- t4 = false; |
- if (t4) { |
- asyncError = t1._captured_source_4.get$_error(); |
- t2 = t1._captured_source_4.get$_zone(); |
- t3 = asyncError.get$error(); |
- t4 = asyncError.get$stackTrace(); |
- t2.toString; |
- P._rootHandleUncaughtError(null, null, t2, t3, t4); |
- return; |
- } |
- oldZone = $.Zone__current; |
- if (oldZone == null ? zone != null : oldZone !== zone) |
- $.Zone__current = zone; |
- else |
- oldZone = null; |
- if (t2) { |
- if (listeners.get$handlesValue()) |
- t3._captured_listenerHasValue_1 = new P._Future__propagateToListeners_handleValueCallback(t3, listeners, sourceValue, zone).call$0(); |
- } else |
- new P._Future__propagateToListeners_handleError(t1, t3, listeners, zone).call$0(); |
- if (listeners.get$handlesComplete()) |
- new P._Future__propagateToListeners_handleWhenCompleteCallback(t1, t3, hasError, listeners, zone).call$0(); |
- if (oldZone != null) |
- $.Zone__current = oldZone; |
- if (t3._captured_isPropagationAborted_3) |
- return; |
- if (t3._captured_listenerHasValue_1 === true) { |
- t2 = t3._captured_listenerValueOrError_2; |
- t2 = (sourceValue == null ? t2 != null : sourceValue !== t2) && !!J.getInterceptor(t2).$isFuture; |
- } else |
- t2 = false; |
- if (t2) { |
- chainSource = t3._captured_listenerValueOrError_2; |
- result = listeners.result; |
- if (chainSource instanceof P._Future) |
- if (chainSource._state >= 4) { |
- result._state = 2; |
- t1._captured_source_4 = chainSource; |
- listeners = new P._FutureListener(null, result, 0, null, null); |
- t2 = chainSource; |
- continue; |
- } else |
- P._Future__chainCoreFuture(chainSource, result); |
- else |
- P._Future__chainForeignFuture(chainSource, result); |
- return; |
- } |
- } |
- result = listeners.result; |
- listeners = result._removeListeners$0(); |
- t2 = t3._captured_listenerHasValue_1; |
- t3 = t3._captured_listenerValueOrError_2; |
- if (t2 === true) { |
- result._state = 4; |
- result._resultOrListeners = t3; |
- } else { |
- result._state = 8; |
- result._resultOrListeners = t3; |
- } |
- t1._captured_source_4 = result; |
- t2 = result; |
- } |
- }} |
- }, |
- _Future__addListener_closure: { |
- "^": "Closure:0;_async$_captured_this_0,_captured_listener_1", |
- call$0: function() { |
- P._Future__propagateToListeners(this._async$_captured_this_0, this._captured_listener_1); |
- } |
- }, |
- _Future__chainForeignFuture_closure: { |
- "^": "Closure:2;_captured_target_0", |
- call$1: function(value) { |
- this._captured_target_0._completeWithValue$1(value); |
- } |
- }, |
- _Future__chainForeignFuture_closure0: { |
- "^": "Closure:5;_captured_target_1", |
- call$2: function(error, stackTrace) { |
- this._captured_target_1._completeError$2(error, stackTrace); |
- }, |
- call$1: function(error) { |
- return this.call$2(error, null); |
- } |
- }, |
- _Future__chainForeignFuture_closure1: { |
- "^": "Closure:0;_captured_target_2,_captured_e_3,_captured_s_4", |
- call$0: function() { |
- this._captured_target_2._completeError$2(this._captured_e_3, this._captured_s_4); |
- } |
- }, |
- _Future__asyncComplete_closure: { |
- "^": "Closure:0;_async$_captured_this_0,_captured_coreFuture_1", |
- call$0: function() { |
- P._Future__chainCoreFuture(this._captured_coreFuture_1, this._async$_captured_this_0); |
- } |
- }, |
- _Future__asyncComplete_closure0: { |
- "^": "Closure:0;_async$_captured_this_2,_captured_value_3", |
- call$0: function() { |
- this._async$_captured_this_2._completeWithValue$1(this._captured_value_3); |
- } |
- }, |
- _Future__asyncCompleteError_closure: { |
- "^": "Closure:0;_async$_captured_this_0,_captured_error_1,_captured_stackTrace_2", |
- call$0: function() { |
- this._async$_captured_this_0._completeError$2(this._captured_error_1, this._captured_stackTrace_2); |
- } |
- }, |
- _Future__propagateToListeners_handleValueCallback: { |
- "^": "Closure:6;_box_1,_captured_listener_3,_captured_sourceValue_4,_captured_zone_5", |
- call$0: function() { |
- var e, s, exception, t1; |
- try { |
- this._box_1._captured_listenerValueOrError_2 = this._captured_zone_5.runUnary$2(this._captured_listener_3.get$_onValue(), this._captured_sourceValue_4); |
- return true; |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- this._box_1._captured_listenerValueOrError_2 = new P.AsyncError(e, s); |
- return false; |
- } |
- } |
- }, |
- _Future__propagateToListeners_handleError: { |
- "^": "Closure:1;_box_2,_box_1,_captured_listener_6,_captured_zone_7", |
- call$0: function() { |
- var asyncError, matchesTest, test, e, s, errorCallback, e0, s0, t1, exception, t2, listenerValueOrError, t3, t4; |
- asyncError = this._box_2._captured_source_4.get$_error(); |
- matchesTest = true; |
- t1 = this._captured_listener_6; |
- if (t1.get$hasErrorTest()) { |
- test = t1.callback; |
- try { |
- matchesTest = this._captured_zone_7.runUnary$2(test, asyncError.get$error()); |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- t1 = asyncError.get$error(); |
- t2 = e; |
- listenerValueOrError = (t1 == null ? t2 == null : t1 === t2) ? asyncError : new P.AsyncError(e, s); |
- t1 = this._box_1; |
- t1._captured_listenerValueOrError_2 = listenerValueOrError; |
- t1._captured_listenerHasValue_1 = false; |
- return; |
- } |
- } |
- errorCallback = t1.errorCallback; |
- if (matchesTest === true && errorCallback != null) { |
- try { |
- t1 = errorCallback; |
- t2 = H.getDynamicRuntimeType(); |
- t2 = H.buildFunctionType(t2, [t2, t2])._isTest$1(t1); |
- t3 = this._captured_zone_7; |
- t4 = this._box_1; |
- if (t2) |
- t4._captured_listenerValueOrError_2 = t3.runBinary$3(errorCallback, asyncError.get$error(), asyncError.get$stackTrace()); |
- else |
- t4._captured_listenerValueOrError_2 = t3.runUnary$2(errorCallback, asyncError.get$error()); |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e0 = t1; |
- s0 = H.getTraceFromException(exception); |
- t1 = asyncError.get$error(); |
- t2 = e0; |
- listenerValueOrError = (t1 == null ? t2 == null : t1 === t2) ? asyncError : new P.AsyncError(e0, s0); |
- t1 = this._box_1; |
- t1._captured_listenerValueOrError_2 = listenerValueOrError; |
- t1._captured_listenerHasValue_1 = false; |
- return; |
- } |
- this._box_1._captured_listenerHasValue_1 = true; |
- } else { |
- t1 = this._box_1; |
- t1._captured_listenerValueOrError_2 = asyncError; |
- t1._captured_listenerHasValue_1 = false; |
- } |
- } |
- }, |
- _Future__propagateToListeners_handleWhenCompleteCallback: { |
- "^": "Closure:1;_box_2,_box_1,_captured_hasError_8,_captured_listener_9,_captured_zone_10", |
- call$0: function() { |
- var t1, e, s, completeResult, t2, exception, result; |
- t1 = {}; |
- t1._captured_completeResult_0 = null; |
- try { |
- completeResult = this._captured_zone_10.run$1(this._captured_listener_9.get$_whenCompleteAction()); |
- t1._captured_completeResult_0 = completeResult; |
- t2 = completeResult; |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- if (this._captured_hasError_8) { |
- t1 = this._box_2._captured_source_4.get$_error().get$error(); |
- t2 = e; |
- t2 = t1 == null ? t2 == null : t1 === t2; |
- t1 = t2; |
- } else |
- t1 = false; |
- t2 = this._box_1; |
- if (t1) |
- t2._captured_listenerValueOrError_2 = this._box_2._captured_source_4.get$_error(); |
- else |
- t2._captured_listenerValueOrError_2 = new P.AsyncError(e, s); |
- t2._captured_listenerHasValue_1 = false; |
- return; |
- } |
- if (!!J.getInterceptor(t2).$isFuture) { |
- result = this._captured_listener_9.get$result(); |
- result.set$_isChained(true); |
- this._box_1._captured_isPropagationAborted_3 = true; |
- t2.then$2$onError(new P._Future__propagateToListeners_handleWhenCompleteCallback_closure(this._box_2, result), new P._Future__propagateToListeners_handleWhenCompleteCallback_closure0(t1, result)); |
- } |
- } |
- }, |
- _Future__propagateToListeners_handleWhenCompleteCallback_closure: { |
- "^": "Closure:2;_box_2,_captured_result_11", |
- call$1: function(ignored) { |
- P._Future__propagateToListeners(this._box_2._captured_source_4, new P._FutureListener(null, this._captured_result_11, 0, null, null)); |
- } |
- }, |
- _Future__propagateToListeners_handleWhenCompleteCallback_closure0: { |
- "^": "Closure:5;_box_0,_captured_result_12", |
- call$2: function(error, stackTrace) { |
- var t1, completeResult; |
- t1 = this._box_0; |
- if (!(t1._captured_completeResult_0 instanceof P._Future)) { |
- completeResult = H.setRuntimeTypeInfo(new P._Future(0, $.Zone__current, null), [null]); |
- t1._captured_completeResult_0 = completeResult; |
- completeResult._setError$2(error, stackTrace); |
- } |
- P._Future__propagateToListeners(t1._captured_completeResult_0, new P._FutureListener(null, this._captured_result_12, 0, null, null)); |
- }, |
- call$1: function(error) { |
- return this.call$2(error, null); |
- } |
- }, |
- _AsyncCallbackEntry: { |
- "^": "Object;callback,zone,next", |
- callback$0: function() { |
- return this.callback.call$0(); |
- } |
- }, |
- StreamSubscription: { |
- "^": "Object;" |
- }, |
- _EventSink: { |
- "^": "Object;" |
- }, |
- _DelayedEvent: { |
- "^": "Object;" |
- }, |
- _StreamIteratorImpl: { |
- "^": "Object;_subscription,_current,_futureOrPrefetch,_state?", |
- _clear$0: function() { |
- this._subscription = null; |
- this._futureOrPrefetch = null; |
- this._current = null; |
- this._state = 1; |
- }, |
- _onData$1: [function(data) { |
- var hasNext; |
- if (this._state === 2) { |
- this._current = data; |
- hasNext = this._futureOrPrefetch; |
- this._futureOrPrefetch = null; |
- this._state = 0; |
- hasNext._complete$1(true); |
- return; |
- } |
- this._subscription.pause$0(); |
- this._futureOrPrefetch = data; |
- this._state = 3; |
- }, "call$1", "get$_onData", 2, 0, function() { |
- return H.computeSignature(function(T) { |
- return {func: 1, void: true, args: [T]}; |
- }, this.$receiver, "_StreamIteratorImpl"); |
- }], |
- _onError$2: [function(error, stackTrace) { |
- var hasNext; |
- if (this._state === 2) { |
- hasNext = this._futureOrPrefetch; |
- this._clear$0(); |
- hasNext._completeError$2(error, stackTrace); |
- return; |
- } |
- this._subscription.pause$0(); |
- this._futureOrPrefetch = new P.AsyncError(error, stackTrace); |
- this._state = 4; |
- }, function(error) { |
- return this._onError$2(error, null); |
- }, "_onError$1", "call$2", "call$1", "get$_onError", 2, 2, 7, 0], |
- _onDone$0: [function() { |
- if (this._state === 2) { |
- var hasNext = this._futureOrPrefetch; |
- this._clear$0(); |
- hasNext._complete$1(false); |
- return; |
- } |
- this._subscription.pause$0(); |
- this._futureOrPrefetch = null; |
- this._state = 5; |
- }, "call$0", "get$_onDone", 0, 0, 1] |
- }, |
- AsyncError: { |
- "^": "Object;error<,stackTrace<", |
- toString$0: function(_) { |
- return H.S(this.error); |
- }, |
- $isError: 1 |
- }, |
- _Zone: { |
- "^": "Object;" |
- }, |
- _rootHandleUncaughtError_closure: { |
- "^": "Closure:0;_captured_error_0,_captured_stackTrace_1", |
- call$0: function() { |
- var t1 = this._captured_error_0; |
- throw H.wrapException(new P._UncaughtAsyncError(t1, P._UncaughtAsyncError__getBestStackTrace(t1, this._captured_stackTrace_1))); |
- } |
- }, |
- _RootZone: { |
- "^": "_Zone;", |
- get$errorZone: function() { |
- return this; |
- }, |
- runGuarded$1: function(f) { |
- var e, s, t1, exception; |
- try { |
- if (C.C__RootZone === $.Zone__current) { |
- t1 = f.call$0(); |
- return t1; |
- } |
- t1 = P._rootRun(null, null, this, f); |
- return t1; |
- } catch (exception) { |
- t1 = H.unwrapException(exception); |
- e = t1; |
- s = H.getTraceFromException(exception); |
- return P._rootHandleUncaughtError(null, null, this, e, s); |
- } |
- }, |
- bindCallback$2$runGuarded: function(f, runGuarded) { |
- if (runGuarded) |
- return new P._RootZone_bindCallback_closure(this, f); |
- else |
- return new P._RootZone_bindCallback_closure0(this, f); |
- }, |
- $index: function(_, key) { |
- return; |
- }, |
- run$1: function(f) { |
- if ($.Zone__current === C.C__RootZone) |
- return f.call$0(); |
- return P._rootRun(null, null, this, f); |
- }, |
- runUnary$2: function(f, arg) { |
- if ($.Zone__current === C.C__RootZone) |
- return f.call$1(arg); |
- return P._rootRunUnary(null, null, this, f, arg); |
- }, |
- runBinary$3: function(f, arg1, arg2) { |
- if ($.Zone__current === C.C__RootZone) |
- return f.call$2(arg1, arg2); |
- return P._rootRunBinary(null, null, this, f, arg1, arg2); |
- } |
- }, |
- _RootZone_bindCallback_closure: { |
- "^": "Closure:0;_async$_captured_this_0,_captured_f_1", |
- call$0: function() { |
- return this._async$_captured_this_0.runGuarded$1(this._captured_f_1); |
- } |
- }, |
- _RootZone_bindCallback_closure0: { |
- "^": "Closure:0;_async$_captured_this_2,_captured_f_3", |
- call$0: function() { |
- return this._async$_captured_this_2.run$1(this._captured_f_3); |
- } |
- } |
-}], ["dart.collection", "dart:collection",, P, { |
- "^": "", |
- LinkedHashMap__makeEmpty: function() { |
- return H.setRuntimeTypeInfo(new H.JsLinkedHashMap(0, null, null, null, null, null, 0), [null, null]); |
- }, |
- LinkedHashMap__makeLiteral: function(keyValuePairs) { |
- return H.fillLiteralMap(keyValuePairs, H.setRuntimeTypeInfo(new H.JsLinkedHashMap(0, null, null, null, null, null, 0), [null, null])); |
- }, |
- _defaultEquals: [function(a, b) { |
- return J.$eq(a, b); |
- }, "call$2", "_defaultEquals$closure", 4, 0, 12], |
- _defaultHashCode: [function(a) { |
- return J.get$hashCode$(a); |
- }, "call$1", "_defaultHashCode$closure", 2, 0, 13], |
- IterableBase_iterableToShortString: function(iterable, leftDelimiter, rightDelimiter) { |
- var parts, t1; |
- if (P._isToStringVisiting(iterable)) { |
- if (leftDelimiter === "(" && rightDelimiter === ")") |
- return "(...)"; |
- return leftDelimiter + "..." + rightDelimiter; |
- } |
- parts = []; |
- t1 = $.get$_toStringVisiting(); |
- t1.push(iterable); |
- try { |
- P._iterablePartsToStrings(iterable, parts); |
- } finally { |
- if (0 >= t1.length) |
- return H.ioore(t1, 0); |
- t1.pop(); |
- } |
- t1 = P.StringBuffer__writeAll(leftDelimiter, parts, ", ") + rightDelimiter; |
- return t1.charCodeAt(0) == 0 ? t1 : t1; |
- }, |
- IterableBase_iterableToFullString: function(iterable, leftDelimiter, rightDelimiter) { |
- var buffer, t1, t2; |
- if (P._isToStringVisiting(iterable)) |
- return leftDelimiter + "..." + rightDelimiter; |
- buffer = new P.StringBuffer(leftDelimiter); |
- t1 = $.get$_toStringVisiting(); |
- t1.push(iterable); |
- try { |
- t2 = buffer; |
- t2._contents = P.StringBuffer__writeAll(t2.get$_contents(), iterable, ", "); |
- } finally { |
- if (0 >= t1.length) |
- return H.ioore(t1, 0); |
- t1.pop(); |
- } |
- t1 = buffer; |
- t1._contents = t1.get$_contents() + rightDelimiter; |
- t1 = buffer.get$_contents(); |
- return t1.charCodeAt(0) == 0 ? t1 : t1; |
- }, |
- _isToStringVisiting: function(o) { |
- var i, t1; |
- for (i = 0; t1 = $.get$_toStringVisiting(), i < t1.length; ++i) |
- if (o === t1[i]) |
- return true; |
- return false; |
- }, |
- _iterablePartsToStrings: function(iterable, parts) { |
- var it, $length, count, next, ultimateString, penultimateString, penultimate, ultimate, ultimate0, elision; |
- it = iterable.get$iterator(iterable); |
- $length = 0; |
- count = 0; |
- while (true) { |
- if (!($length < 80 || count < 3)) |
- break; |
- if (!it.moveNext$0()) |
- return; |
- next = H.S(it.get$current()); |
- parts.push(next); |
- $length += next.length + 2; |
- ++count; |
- } |
- if (!it.moveNext$0()) { |
- if (count <= 5) |
- return; |
- if (0 >= parts.length) |
- return H.ioore(parts, 0); |
- ultimateString = parts.pop(); |
- if (0 >= parts.length) |
- return H.ioore(parts, 0); |
- penultimateString = parts.pop(); |
- } else { |
- penultimate = it.get$current(); |
- ++count; |
- if (!it.moveNext$0()) { |
- if (count <= 4) { |
- parts.push(H.S(penultimate)); |
- return; |
- } |
- ultimateString = H.S(penultimate); |
- if (0 >= parts.length) |
- return H.ioore(parts, 0); |
- penultimateString = parts.pop(); |
- $length += ultimateString.length + 2; |
- } else { |
- ultimate = it.get$current(); |
- ++count; |
- for (; it.moveNext$0(); penultimate = ultimate, ultimate = ultimate0) { |
- ultimate0 = it.get$current(); |
- ++count; |
- if (count > 100) { |
- while (true) { |
- if (!($length > 75 && count > 3)) |
- break; |
- if (0 >= parts.length) |
- return H.ioore(parts, 0); |
- $length -= parts.pop().length + 2; |
- --count; |
- } |
- parts.push("..."); |
- return; |
- } |
- } |
- penultimateString = H.S(penultimate); |
- ultimateString = H.S(ultimate); |
- $length += ultimateString.length + penultimateString.length + 4; |
- } |
- } |
- if (count > parts.length + 2) { |
- $length += 5; |
- elision = "..."; |
- } else |
- elision = null; |
- while (true) { |
- if (!($length > 80 && parts.length > 3)) |
- break; |
- if (0 >= parts.length) |
- return H.ioore(parts, 0); |
- $length -= parts.pop().length + 2; |
- if (elision == null) { |
- $length += 5; |
- elision = "..."; |
- } |
- } |
- if (elision != null) |
- parts.push(elision); |
- parts.push(penultimateString); |
- parts.push(ultimateString); |
- }, |
- LinkedHashMap_LinkedHashMap: function(equals, hashCode, isValidKey, $K, $V) { |
- return H.setRuntimeTypeInfo(new H.JsLinkedHashMap(0, null, null, null, null, null, 0), [$K, $V]); |
- }, |
- LinkedHashMap_LinkedHashMap$identity: function($K, $V) { |
- return H.setRuntimeTypeInfo(new P._LinkedIdentityHashMap(0, null, null, null, null, null, 0), [$K, $V]); |
- }, |
- LinkedHashSet_LinkedHashSet: function(equals, hashCode, isValidKey, $E) { |
- return H.setRuntimeTypeInfo(new P._LinkedHashSet(0, null, null, null, null, null, 0), [$E]); |
- }, |
- Maps_mapToString: function(m) { |
- var t1, result, t2; |
- t1 = {}; |
- if (P._isToStringVisiting(m)) |
- return "{...}"; |
- result = new P.StringBuffer(""); |
- try { |
- $.get$_toStringVisiting().push(m); |
- t2 = result; |
- t2._contents = t2.get$_contents() + "{"; |
- t1._captured_first_0 = true; |
- J.forEach$1$a(m, new P.Maps_mapToString_closure(t1, result)); |
- t1 = result; |
- t1._contents = t1.get$_contents() + "}"; |
- } finally { |
- t1 = $.get$_toStringVisiting(); |
- if (0 >= t1.length) |
- return H.ioore(t1, 0); |
- t1.pop(); |
- } |
- t1 = result.get$_contents(); |
- return t1.charCodeAt(0) == 0 ? t1 : t1; |
- }, |
- _LinkedIdentityHashMap: { |
- "^": "JsLinkedHashMap;__js_helper$_length,_strings,_nums,_rest,_first,_last,_modifications", |
- internalComputeHashCode$1: function(key) { |
- return H.objectHashCode(key) & 0x3ffffff; |
- }, |
- internalFindBucketIndex$2: function(bucket, key) { |
- var $length, i, t1; |
- if (bucket == null) |
- return -1; |
- $length = bucket.length; |
- for (i = 0; i < $length; ++i) { |
- t1 = bucket[i].get$hashMapCellKey(); |
- if (t1 == null ? key == null : t1 === key) |
- return i; |
- } |
- return -1; |
- } |
- }, |
- _LinkedHashSet: { |
- "^": "_HashSetBase;_collection$_length,_collection$_strings,_collection$_nums,_collection$_rest,_collection$_first,_collection$_last,_collection$_modifications", |
- get$iterator: function(_) { |
- var t1 = new P.LinkedHashSetIterator(this, this._collection$_modifications, null, null); |
- t1._cell = this._collection$_first; |
- return t1; |
- }, |
- get$length: function(_) { |
- return this._collection$_length; |
- }, |
- contains$1: function(_, object) { |
- var strings, nums; |
- if (typeof object === "string" && object !== "__proto__") { |
- strings = this._collection$_strings; |
- if (strings == null) |
- return false; |
- return strings[object] != null; |
- } else if (typeof object === "number" && (object & 0x3ffffff) === object) { |
- nums = this._collection$_nums; |
- if (nums == null) |
- return false; |
- return nums[object] != null; |
- } else |
- return this._contains$1(object); |
- }, |
- _contains$1: function(object) { |
- var rest = this._collection$_rest; |
- if (rest == null) |
- return false; |
- return this._findBucketIndex$2(rest[this._computeHashCode$1(object)], object) >= 0; |
- }, |
- lookup$1: function(object) { |
- var t1; |
- if (!(typeof object === "string" && object !== "__proto__")) |
- t1 = typeof object === "number" && (object & 0x3ffffff) === object; |
- else |
- t1 = true; |
- if (t1) |
- return this.contains$1(0, object) ? object : null; |
- else |
- return this._lookup$1(object); |
- }, |
- _lookup$1: function(object) { |
- var rest, bucket, index; |
- rest = this._collection$_rest; |
- if (rest == null) |
- return; |
- bucket = rest[this._computeHashCode$1(object)]; |
- index = this._findBucketIndex$2(bucket, object); |
- if (index < 0) |
- return; |
- return J.$index$as(bucket, index).get$_element(); |
- }, |
- forEach$1: function(_, action) { |
- var cell, modifications; |
- cell = this._collection$_first; |
- modifications = this._collection$_modifications; |
- for (; cell != null;) { |
- action.call$1(cell._element); |
- if (modifications !== this._collection$_modifications) |
- throw H.wrapException(new P.ConcurrentModificationError(this)); |
- cell = cell._next; |
- } |
- }, |
- add$1: function(_, element) { |
- var strings, nums; |
- if (typeof element === "string" && element !== "__proto__") { |
- strings = this._collection$_strings; |
- if (strings == null) { |
- strings = P._LinkedHashSet__newHashTable(); |
- this._collection$_strings = strings; |
- } |
- return this._addHashTableEntry$2(strings, element); |
- } else if (typeof element === "number" && (element & 0x3ffffff) === element) { |
- nums = this._collection$_nums; |
- if (nums == null) { |
- nums = P._LinkedHashSet__newHashTable(); |
- this._collection$_nums = nums; |
- } |
- return this._addHashTableEntry$2(nums, element); |
- } else |
- return this._add$1(element); |
- }, |
- _add$1: function(element) { |
- var rest, hash, bucket; |
- rest = this._collection$_rest; |
- if (rest == null) { |
- rest = P._LinkedHashSet__newHashTable(); |
- this._collection$_rest = rest; |
- } |
- hash = this._computeHashCode$1(element); |
- bucket = rest[hash]; |
- if (bucket == null) |
- rest[hash] = [this._newLinkedCell$1(element)]; |
- else { |
- if (this._findBucketIndex$2(bucket, element) >= 0) |
- return false; |
- bucket.push(this._newLinkedCell$1(element)); |
- } |
- return true; |
- }, |
- remove$1: function(_, object) { |
- if (typeof object === "string" && object !== "__proto__") |
- return this._collection$_removeHashTableEntry$2(this._collection$_strings, object); |
- else if (typeof object === "number" && (object & 0x3ffffff) === object) |
- return this._collection$_removeHashTableEntry$2(this._collection$_nums, object); |
- else |
- return this._remove$1(object); |
- }, |
- _remove$1: function(object) { |
- var rest, bucket, index; |
- rest = this._collection$_rest; |
- if (rest == null) |
- return false; |
- bucket = rest[this._computeHashCode$1(object)]; |
- index = this._findBucketIndex$2(bucket, object); |
- if (index < 0) |
- return false; |
- this._collection$_unlinkCell$1(bucket.splice(index, 1)[0]); |
- return true; |
- }, |
- clear$0: function(_) { |
- if (this._collection$_length > 0) { |
- this._collection$_last = null; |
- this._collection$_first = null; |
- this._collection$_rest = null; |
- this._collection$_nums = null; |
- this._collection$_strings = null; |
- this._collection$_length = 0; |
- this._collection$_modifications = this._collection$_modifications + 1 & 67108863; |
- } |
- }, |
- _addHashTableEntry$2: function(table, element) { |
- if (table[element] != null) |
- return false; |
- table[element] = this._newLinkedCell$1(element); |
- return true; |
- }, |
- _collection$_removeHashTableEntry$2: function(table, element) { |
- var cell; |
- if (table == null) |
- return false; |
- cell = table[element]; |
- if (cell == null) |
- return false; |
- this._collection$_unlinkCell$1(cell); |
- delete table[element]; |
- return true; |
- }, |
- _newLinkedCell$1: function(element) { |
- var cell, last; |
- cell = new P.LinkedHashSetCell(element, null, null); |
- if (this._collection$_first == null) { |
- this._collection$_last = cell; |
- this._collection$_first = cell; |
- } else { |
- last = this._collection$_last; |
- cell._previous = last; |
- last._next = cell; |
- this._collection$_last = cell; |
- } |
- ++this._collection$_length; |
- this._collection$_modifications = this._collection$_modifications + 1 & 67108863; |
- return cell; |
- }, |
- _collection$_unlinkCell$1: function(cell) { |
- var previous, next; |
- previous = cell.get$_previous(); |
- next = cell._next; |
- if (previous == null) |
- this._collection$_first = next; |
- else |
- previous._next = next; |
- if (next == null) |
- this._collection$_last = previous; |
- else |
- next._previous = previous; |
- --this._collection$_length; |
- this._collection$_modifications = this._collection$_modifications + 1 & 67108863; |
- }, |
- _computeHashCode$1: function(element) { |
- return J.get$hashCode$(element) & 0x3ffffff; |
- }, |
- _findBucketIndex$2: function(bucket, element) { |
- var $length, i; |
- if (bucket == null) |
- return -1; |
- $length = bucket.length; |
- for (i = 0; i < $length; ++i) |
- if (J.$eq(bucket[i].get$_element(), element)) |
- return i; |
- return -1; |
- }, |
- $isEfficientLengthIterable: 1, |
- static: {_LinkedHashSet__newHashTable: function() { |
- var table = Object.create(null); |
- table["<non-identifier-key>"] = table; |
- delete table["<non-identifier-key>"]; |
- return table; |
- }} |
- }, |
- LinkedHashSetCell: { |
- "^": "Object;_element<,_next,_previous<" |
- }, |
- LinkedHashSetIterator: { |
- "^": "Object;_set,_collection$_modifications,_cell,_collection$_current", |
- get$current: function() { |
- return this._collection$_current; |
- }, |
- moveNext$0: function() { |
- var t1 = this._set; |
- if (this._collection$_modifications !== t1._collection$_modifications) |
- throw H.wrapException(new P.ConcurrentModificationError(t1)); |
- else { |
- t1 = this._cell; |
- if (t1 == null) { |
- this._collection$_current = null; |
- return false; |
- } else { |
- this._collection$_current = t1._element; |
- this._cell = t1._next; |
- return true; |
- } |
- } |
- } |
- }, |
- _HashSetBase: { |
- "^": "SetBase;" |
- }, |
- Maps_mapToString_closure: { |
- "^": "Closure:8;_collection$_box_0,_captured_result_1", |
- call$2: function(k, v) { |
- var t1, t2; |
- t1 = this._collection$_box_0; |
- if (!t1._captured_first_0) |
- this._captured_result_1._contents += ", "; |
- t1._captured_first_0 = false; |
- t1 = this._captured_result_1; |
- t2 = t1._contents += H.S(k); |
- t1._contents = t2 + ": "; |
- t1._contents += H.S(v); |
- } |
- }, |
- ListQueue: { |
- "^": "Iterable;_table,_head,_tail,_modificationCount", |
- get$iterator: function(_) { |
- return new P._ListQueueIterator(this, this._tail, this._modificationCount, this._head, null); |
- }, |
- forEach$1: function(_, action) { |
- var modificationCount, i, t1; |
- modificationCount = this._modificationCount; |
- for (i = this._head; i !== this._tail; i = (i + 1 & this._table.length - 1) >>> 0) { |
- t1 = this._table; |
- if (i < 0 || i >= t1.length) |
- return H.ioore(t1, i); |
- action.call$1(t1[i]); |
- if (modificationCount !== this._modificationCount) |
- H.throwExpression(new P.ConcurrentModificationError(this)); |
- } |
- }, |
- get$isEmpty: function(_) { |
- return this._head === this._tail; |
- }, |
- get$length: function(_) { |
- return (this._tail - this._head & this._table.length - 1) >>> 0; |
- }, |
- clear$0: function(_) { |
- var i, t1, t2, t3, t4; |
- i = this._head; |
- t1 = this._tail; |
- if (i !== t1) { |
- for (t2 = this._table, t3 = t2.length, t4 = t3 - 1; i !== t1; i = (i + 1 & t4) >>> 0) { |
- if (i < 0 || i >= t3) |
- return H.ioore(t2, i); |
- t2[i] = null; |
- } |
- this._tail = 0; |
- this._head = 0; |
- ++this._modificationCount; |
- } |
- }, |
- toString$0: function(_) { |
- return P.IterableBase_iterableToFullString(this, "{", "}"); |
- }, |
- removeFirst$0: function() { |
- var t1, t2, t3, result; |
- t1 = this._head; |
- if (t1 === this._tail) |
- throw H.wrapException(H.IterableElementError_noElement()); |
- ++this._modificationCount; |
- t2 = this._table; |
- t3 = t2.length; |
- if (t1 >= t3) |
- return H.ioore(t2, t1); |
- result = t2[t1]; |
- t2[t1] = null; |
- this._head = (t1 + 1 & t3 - 1) >>> 0; |
- return result; |
- }, |
- _add$1: function(element) { |
- var t1, t2, t3; |
- t1 = this._table; |
- t2 = this._tail; |
- t3 = t1.length; |
- if (t2 >= t3) |
- return H.ioore(t1, t2); |
- t1[t2] = element; |
- t3 = (t2 + 1 & t3 - 1) >>> 0; |
- this._tail = t3; |
- if (this._head === t3) |
- this._grow$0(); |
- ++this._modificationCount; |
- }, |
- _grow$0: function() { |
- var t1, newTable, t2, split; |
- t1 = Array(this._table.length * 2); |
- t1.fixed$length = Array; |
- newTable = H.setRuntimeTypeInfo(t1, [H.getTypeArgumentByIndex(this, 0)]); |
- t1 = this._table; |
- t2 = this._head; |
- split = t1.length - t2; |
- C.JSArray_methods.setRange$4(newTable, 0, split, t1, t2); |
- C.JSArray_methods.setRange$4(newTable, split, split + this._head, this._table, 0); |
- this._head = 0; |
- this._tail = this._table.length; |
- this._table = newTable; |
- }, |
- ListQueue$1: function(initialCapacity, $E) { |
- var t1 = Array(8); |
- t1.fixed$length = Array; |
- this._table = H.setRuntimeTypeInfo(t1, [$E]); |
- }, |
- $isEfficientLengthIterable: 1, |
- static: {ListQueue$: function(initialCapacity, $E) { |
- var t1 = H.setRuntimeTypeInfo(new P.ListQueue(null, 0, 0, 0), [$E]); |
- t1.ListQueue$1(initialCapacity, $E); |
- return t1; |
- }} |
- }, |
- _ListQueueIterator: { |
- "^": "Object;_queue,_end,_modificationCount,_position,_collection$_current", |
- get$current: function() { |
- return this._collection$_current; |
- }, |
- moveNext$0: function() { |
- var t1, t2, t3; |
- t1 = this._queue; |
- if (this._modificationCount !== t1._modificationCount) |
- H.throwExpression(new P.ConcurrentModificationError(t1)); |
- t2 = this._position; |
- if (t2 === this._end) { |
- this._collection$_current = null; |
- return false; |
- } |
- t1 = t1._table; |
- t3 = t1.length; |
- if (t2 >= t3) |
- return H.ioore(t1, t2); |
- this._collection$_current = t1[t2]; |
- this._position = (t2 + 1 & t3 - 1) >>> 0; |
- return true; |
- } |
- }, |
- SetMixin: { |
- "^": "Object;", |
- map$1: function(_, f) { |
- return H.setRuntimeTypeInfo(new H.EfficientLengthMappedIterable(this, f), [H.getTypeArgumentByIndex(this, 0), null]); |
- }, |
- toString$0: function(_) { |
- return P.IterableBase_iterableToFullString(this, "{", "}"); |
- }, |
- forEach$1: function(_, f) { |
- var t1; |
- for (t1 = this.get$iterator(this); t1.moveNext$0();) |
- f.call$1(t1._collection$_current); |
- }, |
- $isEfficientLengthIterable: 1 |
- }, |
- SetBase: { |
- "^": "SetMixin;" |
- } |
-}], ["dart.core", "dart:core",, P, { |
- "^": "", |
- _symbolToString: function(symbol) { |
- return H.Symbol_getName(symbol); |
- }, |
- Error_safeToString: function(object) { |
- if (typeof object === "number" || typeof object === "boolean" || null == object) |
- return J.toString$0(object); |
- if (typeof object === "string") |
- return JSON.stringify(object); |
- return P.Error__objectToString(object); |
- }, |
- Error__objectToString: function(object) { |
- var t1 = J.getInterceptor(object); |
- if (!!t1.$isClosure) |
- return t1.toString$0(object); |
- return H.Primitives_objectToString(object); |
- }, |
- Exception_Exception: function(message) { |
- return new P._ExceptionImplementation(message); |
- }, |
- identical: [function(a, b) { |
- return a == null ? b == null : a === b; |
- }, "call$2", "identical$closure", 4, 0, 14], |
- identityHashCode: [function(object) { |
- return H.objectHashCode(object); |
- }, "call$1", "identityHashCode$closure", 2, 0, 15], |
- List_List$from: function(elements, growable, $E) { |
- var list, t1; |
- list = H.setRuntimeTypeInfo([], [$E]); |
- for (t1 = J.get$iterator$a(elements); t1.moveNext$0();) |
- list.push(t1.get$current()); |
- if (growable) |
- return list; |
- list.fixed$length = Array; |
- return list; |
- }, |
- print: function(object) { |
- var line = H.S(object); |
- H.printString(line); |
- }, |
- NoSuchMethodError_toString_closure: { |
- "^": "Closure:9;_core$_box_0,_captured_sb_1", |
- call$2: function(key, value) { |
- this._captured_sb_1._contents += this._core$_box_0._captured_comma_0; |
- P._symbolToString(key); |
- } |
- }, |
- bool: { |
- "^": "Object;" |
- }, |
- "+bool": 0, |
- $double: { |
- "^": "num;" |
- }, |
- "+double": 0, |
- Duration: { |
- "^": "Object;_duration", |
- $add: function(_, other) { |
- return new P.Duration(C.JSInt_methods.$add(this._duration, other.get$_duration())); |
- }, |
- $lt: function(_, other) { |
- return C.JSInt_methods.$lt(this._duration, other.get$_duration()); |
- }, |
- $eq: function(_, other) { |
- if (other == null) |
- return false; |
- if (!(other instanceof P.Duration)) |
- return false; |
- return this._duration === other._duration; |
- }, |
- get$hashCode: function(_) { |
- return this._duration & 0x1FFFFFFF; |
- }, |
- toString$0: function(_) { |
- var t1, t2, twoDigitMinutes, twoDigitSeconds, sixDigitUs; |
- t1 = new P.Duration_toString_twoDigits(); |
- t2 = this._duration; |
- if (t2 < 0) |
- return "-" + new P.Duration(-t2).toString$0(0); |
- twoDigitMinutes = t1.call$1(C.JSInt_methods.remainder$1(C.JSInt_methods._tdivFast$1(t2, 60000000), 60)); |
- twoDigitSeconds = t1.call$1(C.JSInt_methods.remainder$1(C.JSInt_methods._tdivFast$1(t2, 1000000), 60)); |
- sixDigitUs = new P.Duration_toString_sixDigits().call$1(C.JSInt_methods.remainder$1(t2, 1000000)); |
- return "" + C.JSInt_methods._tdivFast$1(t2, 3600000000) + ":" + H.S(twoDigitMinutes) + ":" + H.S(twoDigitSeconds) + "." + H.S(sixDigitUs); |
- } |
- }, |
- Duration_toString_sixDigits: { |
- "^": "Closure:10;", |
- call$1: function(n) { |
- if (n >= 100000) |
- return "" + n; |
- if (n >= 10000) |
- return "0" + n; |
- if (n >= 1000) |
- return "00" + n; |
- if (n >= 100) |
- return "000" + n; |
- if (n >= 10) |
- return "0000" + n; |
- return "00000" + n; |
- } |
- }, |
- Duration_toString_twoDigits: { |
- "^": "Closure:10;", |
- call$1: function(n) { |
- if (n >= 10) |
- return "" + n; |
- return "0" + n; |
- } |
- }, |
- Error: { |
- "^": "Object;", |
- get$stackTrace: function() { |
- return H.getTraceFromException(this.$thrownJsError); |
- } |
- }, |
- NullThrownError: { |
- "^": "Error;", |
- toString$0: function(_) { |
- return "Throw of null."; |
- } |
- }, |
- ArgumentError: { |
- "^": "Error;_hasValue,invalidValue,name,message", |
- get$_errorName: function() { |
- return "Invalid argument" + (!this._hasValue ? "(s)" : ""); |
- }, |
- get$_errorExplanation: function() { |
- return ""; |
- }, |
- toString$0: function(_) { |
- var t1, nameString, message, prefix, explanation, errorValue; |
- t1 = this.name; |
- nameString = t1 != null ? " (" + H.S(t1) + ")" : ""; |
- t1 = this.message; |
- message = t1 == null ? "" : ": " + H.S(t1); |
- prefix = this.get$_errorName() + nameString + message; |
- if (!this._hasValue) |
- return prefix; |
- explanation = this.get$_errorExplanation(); |
- errorValue = P.Error_safeToString(this.invalidValue); |
- return prefix + explanation + ": " + H.S(errorValue); |
- }, |
- static: {ArgumentError$: function(message) { |
- return new P.ArgumentError(false, null, null, message); |
- }} |
- }, |
- RangeError: { |
- "^": "ArgumentError;start,end,_hasValue,invalidValue,name,message", |
- get$_errorName: function() { |
- return "RangeError"; |
- }, |
- get$_errorExplanation: function() { |
- var t1, explanation, t2; |
- t1 = this.start; |
- if (t1 == null) { |
- t1 = this.end; |
- explanation = t1 != null ? ": Not less than or equal to " + H.S(t1) : ""; |
- } else { |
- t2 = this.end; |
- if (t2 == null) |
- explanation = ": Not greater than or equal to " + H.S(t1); |
- else { |
- if (typeof t2 !== "number") |
- return t2.$gt(); |
- if (typeof t1 !== "number") |
- return H.iae(t1); |
- if (t2 > t1) |
- explanation = ": Not in range " + t1 + ".." + t2 + ", inclusive"; |
- else |
- explanation = t2 < t1 ? ": Valid value range is empty" : ": Only valid value is " + t1; |
- } |
- } |
- return explanation; |
- }, |
- static: {RangeError$value: function(value, $name, message) { |
- return new P.RangeError(null, null, true, value, $name, "Value not in range"); |
- }, RangeError$range: function(invalidValue, minValue, maxValue, $name, message) { |
- return new P.RangeError(minValue, maxValue, true, invalidValue, $name, "Invalid value"); |
- }, RangeError_checkValidRange: function(start, end, $length, startName, endName, message) { |
- if (0 > start || start > $length) |
- throw H.wrapException(P.RangeError$range(start, 0, $length, "start", message)); |
- if (start > end || end > $length) |
- throw H.wrapException(P.RangeError$range(end, start, $length, "end", message)); |
- return end; |
- }} |
- }, |
- IndexError: { |
- "^": "ArgumentError;indexable,length>,_hasValue,invalidValue,name,message", |
- get$_errorName: function() { |
- return "RangeError"; |
- }, |
- get$_errorExplanation: function() { |
- P.Error_safeToString(this.indexable); |
- var explanation = ": index should be less than " + H.S(this.length); |
- return J.$lt$n(this.invalidValue, 0) ? ": index must not be negative" : explanation; |
- }, |
- static: {IndexError$: function(invalidValue, indexable, $name, message, $length) { |
- var t1 = $length != null ? $length : J.get$length$as(indexable); |
- return new P.IndexError(indexable, t1, true, invalidValue, $name, "Index out of range"); |
- }} |
- }, |
- UnsupportedError: { |
- "^": "Error;message", |
- toString$0: function(_) { |
- return "Unsupported operation: " + this.message; |
- } |
- }, |
- StateError: { |
- "^": "Error;message", |
- toString$0: function(_) { |
- return "Bad state: " + this.message; |
- } |
- }, |
- ConcurrentModificationError: { |
- "^": "Error;modifiedObject", |
- toString$0: function(_) { |
- var t1 = this.modifiedObject; |
- if (t1 == null) |
- return "Concurrent modification during iteration."; |
- return "Concurrent modification during iteration: " + H.S(P.Error_safeToString(t1)) + "."; |
- } |
- }, |
- StackOverflowError: { |
- "^": "Object;", |
- toString$0: function(_) { |
- return "Stack Overflow"; |
- }, |
- get$stackTrace: function() { |
- return; |
- }, |
- $isError: 1 |
- }, |
- CyclicInitializationError: { |
- "^": "Error;variableName", |
- toString$0: function(_) { |
- return "Reading static variable '" + this.variableName + "' during its initialization"; |
- } |
- }, |
- _ExceptionImplementation: { |
- "^": "Object;message", |
- toString$0: function(_) { |
- var t1 = this.message; |
- if (t1 == null) |
- return "Exception"; |
- return "Exception: " + H.S(t1); |
- } |
- }, |
- Expando: { |
- "^": "Object;name", |
- toString$0: function(_) { |
- return "Expando:" + H.S(this.name); |
- }, |
- $index: function(_, object) { |
- var values = H.Primitives_getProperty(object, "expando$values"); |
- return values == null ? null : H.Primitives_getProperty(values, this._getKey$0()); |
- }, |
- $indexSet: function(_, object, value) { |
- var values = H.Primitives_getProperty(object, "expando$values"); |
- if (values == null) { |
- values = new P.Object(); |
- H.Primitives_setProperty(object, "expando$values", values); |
- } |
- H.Primitives_setProperty(values, this._getKey$0(), value); |
- }, |
- _getKey$0: function() { |
- var key, t1; |
- key = H.Primitives_getProperty(this, "expando$key"); |
- if (key == null) { |
- t1 = $.Expando__keyCount; |
- $.Expando__keyCount = t1 + 1; |
- key = "expando$key$" + t1; |
- H.Primitives_setProperty(this, "expando$key", key); |
- } |
- return key; |
- } |
- }, |
- $int: { |
- "^": "num;" |
- }, |
- "+int": 0, |
- Iterable: { |
- "^": "Object;", |
- map$1: function(_, f) { |
- return H.MappedIterable_MappedIterable(this, f, H.getRuntimeTypeArgument(this, "Iterable", 0), null); |
- }, |
- forEach$1: function(_, f) { |
- var t1; |
- for (t1 = this.get$iterator(this); t1.moveNext$0();) |
- f.call$1(t1.get$current()); |
- }, |
- toList$1$growable: function(_, growable) { |
- return P.List_List$from(this, growable, H.getRuntimeTypeArgument(this, "Iterable", 0)); |
- }, |
- toList$0: function($receiver) { |
- return this.toList$1$growable($receiver, true); |
- }, |
- get$length: function(_) { |
- var it, count; |
- it = this.get$iterator(this); |
- for (count = 0; it.moveNext$0();) |
- ++count; |
- return count; |
- }, |
- elementAt$1: function(_, index) { |
- var t1, elementIndex, element; |
- if (index < 0) |
- H.throwExpression(P.RangeError$range(index, 0, null, "index", null)); |
- for (t1 = this.get$iterator(this), elementIndex = 0; t1.moveNext$0();) { |
- element = t1.get$current(); |
- if (index === elementIndex) |
- return element; |
- ++elementIndex; |
- } |
- throw H.wrapException(P.IndexError$(index, this, "index", null, elementIndex)); |
- }, |
- toString$0: function(_) { |
- return P.IterableBase_iterableToShortString(this, "(", ")"); |
- } |
- }, |
- Iterator: { |
- "^": "Object;" |
- }, |
- List: { |
- "^": "Object;", |
- $isEfficientLengthIterable: 1 |
- }, |
- "+List": 0, |
- Null: { |
- "^": "Object;", |
- toString$0: function(_) { |
- return "null"; |
- } |
- }, |
- "+Null": 0, |
- num: { |
- "^": "Object;" |
- }, |
- "+num": 0, |
- Object: { |
- "^": ";", |
- $eq: function(_, other) { |
- return this === other; |
- }, |
- get$hashCode: function(_) { |
- return H.Primitives_objectHashCode(this); |
- }, |
- toString$0: function(_) { |
- return H.Primitives_objectToString(this); |
- } |
- }, |
- StackTrace: { |
- "^": "Object;" |
- }, |
- String: { |
- "^": "Object;" |
- }, |
- "+String": 0, |
- StringBuffer: { |
- "^": "Object;_contents<", |
- get$length: function(_) { |
- return this._contents.length; |
- }, |
- toString$0: function(_) { |
- var t1 = this._contents; |
- return t1.charCodeAt(0) == 0 ? t1 : t1; |
- }, |
- static: {StringBuffer__writeAll: function(string, objects, separator) { |
- var iterator = J.get$iterator$a(objects); |
- if (!iterator.moveNext$0()) |
- return string; |
- if (separator.length === 0) { |
- do |
- string += H.S(iterator.get$current()); |
- while (iterator.moveNext$0()); |
- } else { |
- string += H.S(iterator.get$current()); |
- for (; iterator.moveNext$0();) |
- string = string + separator + H.S(iterator.get$current()); |
- } |
- return string; |
- }} |
- }, |
- Symbol: { |
- "^": "Object;" |
- } |
-}], ["dart.isolate", "dart:isolate",, P, { |
- "^": "", |
- Capability: { |
- "^": "Object;" |
- } |
-}], ["dart2js._js_primitives", "dart:_js_primitives",, H, { |
- "^": "", |
- printString: function(string) { |
- if (typeof dartPrint == "function") { |
- dartPrint(string); |
- return; |
- } |
- if (typeof console == "object" && typeof console.log != "undefined") { |
- console.log(string); |
- return; |
- } |
- if (typeof window == "object") |
- return; |
- if (typeof print == "function") { |
- print(string); |
- return; |
- } |
- throw "Unable to print message: " + String(string); |
- } |
-}], ["", "test.dart",, V, { |
- "^": "", |
- main: [function() { |
- var $goto = 0, completer = new P.Completer_Completer(), $returnValue, handler = 2, currentError; |
- function main(errorCode, result) { |
- if (errorCode === 1) { |
- currentError = result; |
- $goto = handler; |
- } |
- while (true) |
- switch ($goto) { |
- case 0: |
- // Function start |
- // goto return |
- $goto = 1; |
- break; |
- case 1: |
- // return |
- return H.asyncHelper($returnValue, 0, completer, null); |
- case 2: |
- // rethrow |
- return H.asyncHelper(currentError, 1, completer); |
- } |
- } |
- return H.asyncHelper(null, main, completer, null); |
- }, "call$0", "main$closure", 0, 0, 16] |
-}, 1]]; |
-setupProgram(dart, 0); |
-// getInterceptor methods |
-J.getInterceptor = function(receiver) { |
- if (typeof receiver == "number") { |
- if (Math.floor(receiver) == receiver) |
- return J.JSInt.prototype; |
- return J.JSDouble.prototype; |
- } |
- if (typeof receiver == "string") |
- return J.JSString.prototype; |
- if (receiver == null) |
- return J.JSNull.prototype; |
- if (typeof receiver == "boolean") |
- return J.JSBool.prototype; |
- if (receiver.constructor == Array) |
- return J.JSArray.prototype; |
- if (!(receiver instanceof P.Object)) |
- return J.UnknownJavaScriptObject.prototype; |
- return receiver; |
-}; |
-J.getInterceptor$a = function(receiver) { |
- if (receiver == null) |
- return receiver; |
- if (receiver.constructor == Array) |
- return J.JSArray.prototype; |
- if (!(receiver instanceof P.Object)) |
- return J.UnknownJavaScriptObject.prototype; |
- return receiver; |
-}; |
-J.getInterceptor$as = function(receiver) { |
- if (typeof receiver == "string") |
- return J.JSString.prototype; |
- if (receiver == null) |
- return receiver; |
- if (receiver.constructor == Array) |
- return J.JSArray.prototype; |
- if (!(receiver instanceof P.Object)) |
- return J.UnknownJavaScriptObject.prototype; |
- return receiver; |
-}; |
-J.getInterceptor$n = function(receiver) { |
- if (typeof receiver == "number") |
- return J.JSNumber.prototype; |
- if (receiver == null) |
- return receiver; |
- if (!(receiver instanceof P.Object)) |
- return J.UnknownJavaScriptObject.prototype; |
- return receiver; |
-}; |
-J.getInterceptor$ns = function(receiver) { |
- if (typeof receiver == "number") |
- return J.JSNumber.prototype; |
- if (typeof receiver == "string") |
- return J.JSString.prototype; |
- if (receiver == null) |
- return receiver; |
- if (!(receiver instanceof P.Object)) |
- return J.UnknownJavaScriptObject.prototype; |
- return receiver; |
-}; |
-J.$add$ns = function(receiver, a0) { |
- if (typeof receiver == "number" && typeof a0 == "number") |
- return receiver + a0; |
- return J.getInterceptor$ns(receiver).$add(receiver, a0); |
-}; |
-J.$eq = function(receiver, a0) { |
- if (receiver == null) |
- return a0 == null; |
- if (typeof receiver != "object") |
- return a0 != null && receiver === a0; |
- return J.getInterceptor(receiver).$eq(receiver, a0); |
-}; |
-J.$index$as = function(receiver, a0) { |
- if (receiver.constructor == Array || typeof receiver == "string") |
- if (a0 >>> 0 === a0 && a0 < receiver.length) |
- return receiver[a0]; |
- return J.getInterceptor$as(receiver).$index(receiver, a0); |
-}; |
-J.$lt$n = function(receiver, a0) { |
- if (typeof receiver == "number" && typeof a0 == "number") |
- return receiver < a0; |
- return J.getInterceptor$n(receiver).$lt(receiver, a0); |
-}; |
-J.elementAt$1$a = function(receiver, a0) { |
- return J.getInterceptor$a(receiver).elementAt$1(receiver, a0); |
-}; |
-J.forEach$1$a = function(receiver, a0) { |
- return J.getInterceptor$a(receiver).forEach$1(receiver, a0); |
-}; |
-J.get$hashCode$ = function(receiver) { |
- return J.getInterceptor(receiver).get$hashCode(receiver); |
-}; |
-J.get$iterator$a = function(receiver) { |
- return J.getInterceptor$a(receiver).get$iterator(receiver); |
-}; |
-J.get$length$as = function(receiver) { |
- return J.getInterceptor$as(receiver).get$length(receiver); |
-}; |
-J.map$1$a = function(receiver, a0) { |
- return J.getInterceptor$a(receiver).map$1(receiver, a0); |
-}; |
-J.toString$0 = function(receiver) { |
- return J.getInterceptor(receiver).toString$0(receiver); |
-}; |
-C.JSArray_methods = J.JSArray.prototype; |
-C.JSInt_methods = J.JSInt.prototype; |
-C.JSString_methods = J.JSString.prototype; |
-C.C_DynamicRuntimeType = new H.DynamicRuntimeType(); |
-C.C__RootZone = new P._RootZone(); |
-C.Duration_0 = new P.Duration(0); |
-C.JS_CONST_8ZY = function getTagFallback(o) { |
- var constructor = o.constructor; |
- if (typeof constructor == "function") { |
- var name = constructor.name; |
- if (typeof name == "string" && |
- name.length > 2 && |
- name !== "Object" && |
- name !== "Function.prototype") { |
- return name; |
- } |
- } |
- var s = Object.prototype.toString.call(o); |
- return s.substring(8, s.length - 1); |
-}; |
-{ |
- init.isHunkLoaded = function(hunkHash) { |
- return !!$dart_deferred_initializers[hunkHash]; |
- }; |
- init.deferredInitialized = new Object(null); |
- init.isHunkInitialized = function(hunkHash) { |
- return init.deferredInitialized[hunkHash]; |
- }; |
- init.initializeLoadedHunk = function(hunkHash) { |
- $dart_deferred_initializers[hunkHash](globalsHolder, $); |
- init.deferredInitialized[hunkHash] = true; |
- }; |
-} |
-init.deferredLibraryUris = {}; |
-init.deferredLibraryHashes = {}; |
-$.Primitives_mirrorFunctionCacheName = "$cachedFunction"; |
-$.Primitives_mirrorInvokeCacheName = "$cachedInvocation"; |
-$.Closure_functionCounter = 0; |
-$.BoundClosure_selfFieldNameCache = null; |
-$.BoundClosure_receiverFieldNameCache = null; |
-$._nextCallback = null; |
-$._lastCallback = null; |
-$._lastPriorityCallback = null; |
-$._isInCallbackLoop = false; |
-$.Zone__current = C.C__RootZone; |
-$.Expando__keyCount = 0; |
-(function(lazies) { |
- var descriptorLength = 4; |
- for (var i = 0; i < lazies.length; i += descriptorLength) { |
- var fieldName = lazies[i]; |
- var getterName = lazies[i + 1]; |
- var lazyValue = lazies[i + 2]; |
- var staticName = lazies[i + 3]; |
- Isolate.$lazy(fieldName, getterName, lazyValue, staticName); |
- } |
-})(["IsolateNatives_thisScript", "get$IsolateNatives_thisScript", function() { |
- return H.IsolateNatives_computeThisScript(); |
-}, "thisScript", "IsolateNatives_workerIds", "get$IsolateNatives_workerIds", function() { |
- return new P.Expando(null); |
-}, "workerIds", "TypeErrorDecoder_noSuchMethodPattern", "get$TypeErrorDecoder_noSuchMethodPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn({toString: function() { |
- return "$receiver$"; |
- }})); |
-}, "noSuchMethodPattern", "TypeErrorDecoder_notClosurePattern", "get$TypeErrorDecoder_notClosurePattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn({$method$: null, toString: function() { |
- return "$receiver$"; |
- }})); |
-}, "notClosurePattern", "TypeErrorDecoder_nullCallPattern", "get$TypeErrorDecoder_nullCallPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn(null)); |
-}, "nullCallPattern", "TypeErrorDecoder_nullLiteralCallPattern", "get$TypeErrorDecoder_nullLiteralCallPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(function() { |
- var $argumentsExpr$ = '$arguments$'; |
- try { |
- null.$method$($argumentsExpr$); |
- } catch (e) { |
- return e.message; |
- } |
- }()); |
-}, "nullLiteralCallPattern", "TypeErrorDecoder_undefinedCallPattern", "get$TypeErrorDecoder_undefinedCallPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokeCallErrorOn(void 0)); |
-}, "undefinedCallPattern", "TypeErrorDecoder_undefinedLiteralCallPattern", "get$TypeErrorDecoder_undefinedLiteralCallPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(function() { |
- var $argumentsExpr$ = '$arguments$'; |
- try { |
- (void 0).$method$($argumentsExpr$); |
- } catch (e) { |
- return e.message; |
- } |
- }()); |
-}, "undefinedLiteralCallPattern", "TypeErrorDecoder_nullPropertyPattern", "get$TypeErrorDecoder_nullPropertyPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErrorOn(null)); |
-}, "nullPropertyPattern", "TypeErrorDecoder_nullLiteralPropertyPattern", "get$TypeErrorDecoder_nullLiteralPropertyPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(function() { |
- try { |
- null.$method$; |
- } catch (e) { |
- return e.message; |
- } |
- }()); |
-}, "nullLiteralPropertyPattern", "TypeErrorDecoder_undefinedPropertyPattern", "get$TypeErrorDecoder_undefinedPropertyPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(H.TypeErrorDecoder_provokePropertyErrorOn(void 0)); |
-}, "undefinedPropertyPattern", "TypeErrorDecoder_undefinedLiteralPropertyPattern", "get$TypeErrorDecoder_undefinedLiteralPropertyPattern", function() { |
- return H.TypeErrorDecoder_extractPattern(function() { |
- try { |
- (void 0).$method$; |
- } catch (e) { |
- return e.message; |
- } |
- }()); |
-}, "undefinedLiteralPropertyPattern", "_AsyncRun_scheduleImmediateClosure", "get$_AsyncRun_scheduleImmediateClosure", function() { |
- return P._AsyncRun__initializeScheduleImmediate(); |
-}, "scheduleImmediateClosure", "_toStringVisiting", "get$_toStringVisiting", function() { |
- return []; |
-}, "_toStringVisiting"]); |
-; |
- |
-{ |
- init.metadata = [null]; |
- init.types = [{func: 1}, {func: 1, void: true}, {func: 1, args: [,]}, {func: 1, args: [, P.StackTrace]}, {func: 1, args: [{func: 1, void: true}]}, {func: 1, args: [,], opt: [,]}, {func: 1, ret: P.bool}, {func: 1, void: true, args: [P.Object], opt: [P.StackTrace]}, {func: 1, args: [,,]}, {func: 1, args: [P.Symbol,,]}, {func: 1, ret: P.String, args: [P.$int]}, {func: 1, void: true, args: [{func: 1, void: true}]}, {func: 1, ret: P.bool, args: [,,]}, {func: 1, ret: P.$int, args: [,]}, {func: 1, ret: P.bool, args: [P.Object, P.Object]}, {func: 1, ret: P.$int, args: [P.Object]}, {func: 1, ret: P.Future}]; |
-} |
- |
-$ = null; |
-Isolate = Isolate.$finishIsolateConstructor(Isolate); |
-$ = new Isolate(); |
-function convertToFastObject(properties) { |
- function MyClass() { |
- } |
- MyClass.prototype = properties; |
- new MyClass(); |
- return properties; |
-} |
-; |
-function convertToSlowObject(properties) { |
- properties.__MAGIC_SLOW_PROPERTY = 1; |
- delete properties.__MAGIC_SLOW_PROPERTY; |
- return properties; |
-} |
-; |
-A = convertToFastObject(A); |
-B = convertToFastObject(B); |
-C = convertToFastObject(C); |
-D = convertToFastObject(D); |
-E = convertToFastObject(E); |
-F = convertToFastObject(F); |
-G = convertToFastObject(G); |
-H = convertToFastObject(H); |
-J = convertToFastObject(J); |
-K = convertToFastObject(K); |
-L = convertToFastObject(L); |
-M = convertToFastObject(M); |
-N = convertToFastObject(N); |
-O = convertToFastObject(O); |
-P = convertToFastObject(P); |
-Q = convertToFastObject(Q); |
-R = convertToFastObject(R); |
-S = convertToFastObject(S); |
-T = convertToFastObject(T); |
-U = convertToFastObject(U); |
-V = convertToFastObject(V); |
-W = convertToFastObject(W); |
-X = convertToFastObject(X); |
-Y = convertToFastObject(Y); |
-Z = convertToFastObject(Z); |
-function init() { |
- Isolate.$isolateProperties = Object.create(null); |
- init.allClasses = Object.create(null); |
- init.getTypeFromName = function(name) { |
- return init.allClasses[name]; |
- }; |
- init.interceptorsByTag = Object.create(null); |
- init.leafTags = Object.create(null); |
- init.finishedClasses = Object.create(null); |
- Isolate.$lazy = function(fieldName, getterName, lazyValue, staticName, prototype) { |
- if (!init.lazies) |
- init.lazies = Object.create(null); |
- init.lazies[fieldName] = getterName; |
- prototype = prototype || Isolate.$isolateProperties; |
- var sentinelUndefined = {}; |
- var sentinelInProgress = {}; |
- prototype[fieldName] = sentinelUndefined; |
- prototype[getterName] = function() { |
- var result = this[fieldName]; |
- try { |
- if (result === sentinelUndefined) { |
- this[fieldName] = sentinelInProgress; |
- try { |
- result = this[fieldName] = lazyValue(); |
- } finally { |
- if (result === sentinelUndefined) |
- this[fieldName] = null; |
- } |
- } else |
- if (result === sentinelInProgress) |
- H.throwCyclicInit(staticName || fieldName); |
- return result; |
- } finally { |
- this[getterName] = function() { |
- return this[fieldName]; |
- }; |
- } |
- }; |
- }; |
- Isolate.$finishIsolateConstructor = function(oldIsolate) { |
- var isolateProperties = oldIsolate.$isolateProperties; |
- function Isolate() { |
- var staticNames = Object.keys(isolateProperties); |
- for (var i = 0; i < staticNames.length; i++) { |
- var staticName = staticNames[i]; |
- this[staticName] = isolateProperties[staticName]; |
- } |
- var lazies = init.lazies; |
- var lazyInitializers = lazies ? Object.keys(lazies) : []; |
- for (var i = 0; i < lazyInitializers.length; i++) |
- this[lazies[lazyInitializers[i]]] = null; |
- function ForceEfficientMap() { |
- } |
- ForceEfficientMap.prototype = this; |
- new ForceEfficientMap(); |
- for (var i = 0; i < lazyInitializers.length; i++) { |
- var lazyInitName = lazies[lazyInitializers[i]]; |
- this[lazyInitName] = isolateProperties[lazyInitName]; |
- } |
- } |
- Isolate.prototype = oldIsolate.prototype; |
- Isolate.prototype.constructor = Isolate; |
- Isolate.$isolateProperties = isolateProperties; |
- return Isolate; |
- }; |
-} |
-;// BEGIN invoke [main]. |
-(function(callback) { |
- if (typeof document === "undefined") { |
- callback(null); |
- return; |
- } |
- if (document.currentScript) { |
- callback(document.currentScript); |
- return; |
- } |
- var scripts = document.scripts; |
- function onLoad(event) { |
- for (var i = 0; i < scripts.length; ++i) |
- scripts[i].removeEventListener("load", onLoad, false); |
- callback(event.target); |
- } |
- for (var i = 0; i < scripts.length; ++i) |
- scripts[i].addEventListener("load", onLoad, false); |
-})(function(currentScript) { |
- init.currentScript = currentScript; |
- if (typeof dartMainRunner === "function") |
- dartMainRunner(function(a) { |
- H.startRootIsolate(V.main$closure(), a); |
- }, []); |
- else |
- (function(a) { |
- H.startRootIsolate(V.main$closure(), a); |
- })([]); |
-}); |
-; |
-// END invoke [main]. |
-})() |
- |
-//# sourceMappingURL=out.js.map |