Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(148)

Side by Side Diff: lib/runtime/dart/_js_helper.js

Issue 1054343004: Update to use the latest analyzer (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 var _js_helper; 1 var _js_helper;
2 (function(exports) { 2 (function(exports) {
3 'use strict'; 3 'use strict';
4 class NoSideEffects extends core.Object { 4 class NoSideEffects extends core.Object {
5 NoSideEffects() { 5 NoSideEffects() {
6 } 6 }
7 } 7 }
8 class NoThrows extends core.Object { 8 class NoThrows extends core.Object {
9 NoThrows() { 9 NoThrows() {
10 } 10 }
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after
432 let prototypeForTag = hooks.prototypeForTag; 432 let prototypeForTag = hooks.prototypeForTag;
433 exports.getTagFunction = (o) => getTag(o); 433 exports.getTagFunction = (o) => getTag(o);
434 exports.alternateTagFunction = (o, tag) => getUnknownTag(o, tag); 434 exports.alternateTagFunction = (o, tag) => getUnknownTag(o, tag);
435 exports.prototypeForTagFunction = (tag) => prototypeForTag(tag); 435 exports.prototypeForTagFunction = (tag) => prototypeForTag(tag);
436 } 436 }
437 // Function applyHooksTransformer: (dynamic, dynamic) → dynamic 437 // Function applyHooksTransformer: (dynamic, dynamic) → dynamic
438 function applyHooksTransformer(transformer, hooks) { 438 function applyHooksTransformer(transformer, hooks) {
439 let newHooks = transformer(hooks); 439 let newHooks = transformer(hooks);
440 return newHooks || hooks; 440 return newHooks || hooks;
441 } 441 }
442 let _baseHooks = new _foreign_helper.JS_CONST('\nfunction() {\n function type NameInChrome(o) {\n var constructor = o.constructor;\n if (constructor) {\ n var name = constructor.name;\n if (name) return name;\n }\n va r s = Object.prototype.toString.call(o);\n return s.substring(8, s.length - 1 );\n }\n function getUnknownTag(object, tag) {\n // This code really belong s in [getUnknownTagGenericBrowser] but having it\n // here allows [getUnknown Tag] to be tested on d8.\n if (/^HTML[A-Z].*Element$/.test(tag)) {\n // Check that it is not a simple JavaScript object.\n var name = Object.protot ype.toString.call(object);\n if (name == "[object Object]") return null;\n return "HTMLElement";\n }\n }\n function getUnknownTagGenericBrowser(o bject, tag) {\n if (self.HTMLElement && object instanceof HTMLElement) return "HTMLElement";\n return getUnknownTag(object, tag);\n }\n function prototy peForTag(tag) {\n if (typeof window == "undefined") return null;\n if (typ eof window[tag] == "undefined") return null;\n var constructor = window[tag]; \n if (typeof constructor != "function") return null;\n return constructor .prototype;\n }\n function discriminator(tag) { return null; }\n\n var isBrow ser = typeof navigator == "object";\n\n return {\n getTag: typeNameInChrome, \n getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag,\n prototypeForTag: prototypeForTag,\n discriminator: discriminator };\n}'); 442 let _baseHooks = new _foreign_helper.JS_CONST('function() {\n function typeNa meInChrome(o) {\n var constructor = o.constructor;\n if (constructor) {\n var name = constructor.name;\n if (name) return name;\n }\n var s = Object.prototype.toString.call(o);\n return s.substring(8, s.length - 1); \n }\n function getUnknownTag(object, tag) {\n // This code really belongs in [getUnknownTagGenericBrowser] but having it\n // here allows [getUnknownTa g] to be tested on d8.\n if (/^HTML[A-Z].*Element$/.test(tag)) {\n // Ch eck that it is not a simple JavaScript object.\n var name = Object.prototyp e.toString.call(object);\n if (name == "[object Object]") return null;\n return "HTMLElement";\n }\n }\n function getUnknownTagGenericBrowser(obj ect, tag) {\n if (self.HTMLElement && object instanceof HTMLElement) return " HTMLElement";\n return getUnknownTag(object, tag);\n }\n function prototype ForTag(tag) {\n if (typeof window == "undefined") return null;\n if (typeo f window[tag] == "undefined") return null;\n var constructor = window[tag];\n if (typeof constructor != "function") return null;\n return constructor.p rototype;\n }\n function discriminator(tag) { return null; }\n\n var isBrowse r = typeof navigator == "object";\n\n return {\n getTag: typeNameInChrome,\n getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag,\n prototypeForTag: prototypeForTag,\n discriminator: discriminator };\n}');
443 let _constructorNameFallback = new _foreign_helper.JS_CONST('\nfunction getTag Fallback(o) {\n var constructor = o.constructor;\n if (typeof constructor == " function") {\n var name = constructor.name;\n // If the name is a non-empt y string, we use that as the type name of this\n // object. There are variou s cases where that does not work, so we have to\n // detect them and fall thr ough to the toString() based implementation.\n\n if (typeof name == "string" &&\n\n // Sometimes the string is empty. This test also catches minified \n // shadow dom polyfil wrapper for Window on Firefox where the faked\n // constructor name does not \'stick\'. The shortest real DOM object\n // names have three characters (e.g. URL, CSS).\n name.length > 2 & &\n\n // On Firefox we often get "Object" as the constructor name, even f or\n // more specialized DOM objects.\n name !== "Object" &&\n\n // This can happen in Opera.\n name !== "Function.prototype") {\n return name;\n }\n }\n var s = Object.prototype.toString.call(o);\n re turn s.substring(8, s.length - 1);\n}'); 443 let _constructorNameFallback = new _foreign_helper.JS_CONST('function getTagFa llback(o) {\n var constructor = o.constructor;\n if (typeof constructor == "fu nction") {\n var name = constructor.name;\n // If the name is a non-empty string, we use that as the type name of this\n // object. There are various cases where that does not work, so we have to\n // detect them and fall throu gh to the toString() based implementation.\n\n if (typeof name == "string" && \n\n // Sometimes the string is empty. This test also catches minified\n // shadow dom polyfil wrapper for Window on Firefox where the faked\n // constructor name does not \'stick\'. The shortest real DOM object\n // names have three characters (e.g. URL, CSS).\n name.length > 2 &&\ n\n // On Firefox we often get "Object" as the constructor name, even for \n // more specialized DOM objects.\n name !== "Object" &&\n\n // This can happen in Opera.\n name !== "Function.prototype") {\n return name;\n }\n }\n var s = Object.prototype.toString.call(o);\n retu rn s.substring(8, s.length - 1);\n}');
444 let _fallbackConstructorHooksTransformerGenerator = new _foreign_helper.JS_CON ST('\nfunction(getTagFallback) {\n return function(hooks) {\n // If we are n ot in a browser, assume we are in d8.\n // TODO(sra): Recognize jsshell.\n if (typeof navigator != "object") return hooks;\n\n var ua = navigator.userA gent;\n // TODO(antonm): remove a reference to DumpRenderTree.\n if (ua.in dexOf("DumpRenderTree") >= 0) return hooks;\n if (ua.indexOf("Chrome") >= 0) {\n // Confirm constructor name is usable for dispatch.\n function con firm(p) {\n return typeof window == "object" && window[p] && window[p].na me == p;\n }\n if (confirm("Window") && confirm("HTMLElement")) return hooks;\n }\n\n hooks.getTag = getTagFallback;\n };\n}'); 444 let _fallbackConstructorHooksTransformerGenerator = new _foreign_helper.JS_CON ST('function(getTagFallback) {\n return function(hooks) {\n // If we are not in a browser, assume we are in d8.\n // TODO(sra): Recognize jsshell.\n i f (typeof navigator != "object") return hooks;\n\n var ua = navigator.userAge nt;\n // TODO(antonm): remove a reference to DumpRenderTree.\n if (ua.inde xOf("DumpRenderTree") >= 0) return hooks;\n if (ua.indexOf("Chrome") >= 0) {\ n // Confirm constructor name is usable for dispatch.\n function confi rm(p) {\n return typeof window == "object" && window[p] && window[p].name == p;\n }\n if (confirm("Window") && confirm("HTMLElement")) return h ooks;\n }\n\n hooks.getTag = getTagFallback;\n };\n}');
445 let _ieHooksTransformer = new _foreign_helper.JS_CONST('\nfunction(hooks) {\n var userAgent = typeof navigator == "object" ? navigator.userAgent : "";\n if (userAgent.indexOf("Trident/") == -1) return hooks;\n\n var getTag = hooks.getT ag;\n\n var quickMap = {\n "BeforeUnloadEvent": "Event",\n "DataTransfer" : "Clipboard",\n "HTMLDDElement": "HTMLElement",\n "HTMLDTElement": "HTMLE lement",\n "HTMLPhraseElement": "HTMLElement",\n "Position": "Geoposition" \n };\n\n function getTagIE(o) {\n var tag = getTag(o);\n var newTag = q uickMap[tag];\n if (newTag) return newTag;\n // Patches for types which re port themselves as Objects.\n if (tag == "Object") {\n if (window.DataVi ew && (o instanceof window.DataView)) return "DataView";\n }\n return tag; \n }\n\n function prototypeForTagIE(tag) {\n var constructor = window[tag]; \n if (constructor == null) return null;\n return constructor.prototype;\n }\n\n hooks.getTag = getTagIE;\n hooks.prototypeForTag = prototypeForTagIE;\ n}'); 445 let _ieHooksTransformer = new _foreign_helper.JS_CONST('function(hooks) {\n v ar userAgent = typeof navigator == "object" ? navigator.userAgent : "";\n if (u serAgent.indexOf("Trident/") == -1) return hooks;\n\n var getTag = hooks.getTag ;\n\n var quickMap = {\n "BeforeUnloadEvent": "Event",\n "DataTransfer": "Clipboard",\n "HTMLDDElement": "HTMLElement",\n "HTMLDTElement": "HTMLEle ment",\n "HTMLPhraseElement": "HTMLElement",\n "Position": "Geoposition"\n };\n\n function getTagIE(o) {\n var tag = getTag(o);\n var newTag = qui ckMap[tag];\n if (newTag) return newTag;\n // Patches for types which repo rt themselves as Objects.\n if (tag == "Object") {\n if (window.DataView && (o instanceof window.DataView)) return "DataView";\n }\n return tag;\n }\n\n function prototypeForTagIE(tag) {\n var constructor = window[tag];\n if (constructor == null) return null;\n return constructor.prototype;\n }\n\n hooks.getTag = getTagIE;\n hooks.prototypeForTag = prototypeForTagIE;\n} ');
446 let _fixDocumentHooksTransformer = new _foreign_helper.JS_CONST('\nfunction(ho oks) {\n var getTag = hooks.getTag;\n var prototypeForTag = hooks.prototypeFor Tag;\n function getTagFixed(o) {\n var tag = getTag(o);\n if (tag == "Doc ument") {\n // Some browsers and the polymer polyfill call both HTML and XM L documents\n // "Document", so we check for the xmlVersion property, which is the empty\n // string on HTML documents. Since both dart:html classes D ocument and\n // HtmlDocument share the same type, we must patch the instan ces and not\n // the prototype.\n if (!!o.xmlVersion) return "!Documen t";\n return "!HTMLDocument";\n }\n return tag;\n }\n\n function pr ototypeForTagFixed(tag) {\n if (tag == "Document") return null; // Do not pr e-patch Document.\n return prototypeForTag(tag);\n }\n\n hooks.getTag = get TagFixed;\n hooks.prototypeForTag = prototypeForTagFixed;\n}'); 446 let _fixDocumentHooksTransformer = new _foreign_helper.JS_CONST('function(hook s) {\n var getTag = hooks.getTag;\n var prototypeForTag = hooks.prototypeForTa g;\n function getTagFixed(o) {\n var tag = getTag(o);\n if (tag == "Docum ent") {\n // Some browsers and the polymer polyfill call both HTML and XML documents\n // "Document", so we check for the xmlVersion property, which i s the empty\n // string on HTML documents. Since both dart:html classes Doc ument and\n // HtmlDocument share the same type, we must patch the instance s and not\n // the prototype.\n if (!!o.xmlVersion) return "!Document" ;\n return "!HTMLDocument";\n }\n return tag;\n }\n\n function prot otypeForTagFixed(tag) {\n if (tag == "Document") return null; // Do not pre- patch Document.\n return prototypeForTag(tag);\n }\n\n hooks.getTag = getTa gFixed;\n hooks.prototypeForTag = prototypeForTagFixed;\n}');
447 let _firefoxHooksTransformer = new _foreign_helper.JS_CONST('\nfunction(hooks) {\n var userAgent = typeof navigator == "object" ? navigator.userAgent : "";\n if (userAgent.indexOf("Firefox") == -1) return hooks;\n\n var getTag = hooks. getTag;\n\n var quickMap = {\n "BeforeUnloadEvent": "Event",\n "DataTrans fer": "Clipboard",\n "GeoGeolocation": "Geolocation",\n "Location": "!Loca tion", // Fixes issue 18151\n "WorkerMessageEvent": "MessageEve nt",\n "XMLDocument": "!Document"};\n\n function getTagFirefox(o) {\n var tag = getTag(o);\n return quickMap[tag] || tag;\n }\n\n hooks.getTag = get TagFirefox;\n}'); 447 let _firefoxHooksTransformer = new _foreign_helper.JS_CONST('function(hooks) { \n var userAgent = typeof navigator == "object" ? navigator.userAgent : "";\n if (userAgent.indexOf("Firefox") == -1) return hooks;\n\n var getTag = hooks.ge tTag;\n\n var quickMap = {\n "BeforeUnloadEvent": "Event",\n "DataTransfe r": "Clipboard",\n "GeoGeolocation": "Geolocation",\n "Location": "!Locati on", // Fixes issue 18151\n "WorkerMessageEvent": "MessageEvent ",\n "XMLDocument": "!Document"};\n\n function getTagFirefox(o) {\n var t ag = getTag(o);\n return quickMap[tag] || tag;\n }\n\n hooks.getTag = getTa gFirefox;\n}');
448 let _operaHooksTransformer = new _foreign_helper.JS_CONST('\nfunction(hooks) { return hooks; }\n'); 448 let _operaHooksTransformer = new _foreign_helper.JS_CONST('function(hooks) { r eturn hooks; }\n');
449 let _safariHooksTransformer = new _foreign_helper.JS_CONST('\nfunction(hooks) { return hooks; }\n'); 449 let _safariHooksTransformer = new _foreign_helper.JS_CONST('function(hooks) { return hooks; }\n');
450 let _dartExperimentalFixupGetTagHooksTransformer = new _foreign_helper.JS_CONS T('\nfunction(hooks) {\n if (typeof dartExperimentalFixupGetTag != "function") return hooks;\n hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag);\n}'); 450 let _dartExperimentalFixupGetTagHooksTransformer = new _foreign_helper.JS_CONS T('function(hooks) {\n if (typeof dartExperimentalFixupGetTag != "function") re turn hooks;\n hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag);\n}');
451 let _nativeRegExp = Symbol('_nativeRegExp'); 451 let _nativeRegExp = Symbol('_nativeRegExp');
452 // Function regExpGetNative: (JSSyntaxRegExp) → dynamic 452 // Function regExpGetNative: (JSSyntaxRegExp) → dynamic
453 function regExpGetNative(regexp) { 453 function regExpGetNative(regexp) {
454 return regexp[_nativeRegExp]; 454 return regexp[_nativeRegExp];
455 } 455 }
456 let _nativeGlobalVersion = Symbol('_nativeGlobalVersion'); 456 let _nativeGlobalVersion = Symbol('_nativeGlobalVersion');
457 // Function regExpGetGlobalNative: (JSSyntaxRegExp) → dynamic 457 // Function regExpGetGlobalNative: (JSSyntaxRegExp) → dynamic
458 function regExpGetGlobalNative(regexp) { 458 function regExpGetGlobalNative(regexp) {
459 let nativeRegexp = regexp[_nativeGlobalVersion]; 459 let nativeRegexp = regexp[_nativeGlobalVersion];
460 nativeRegexp.lastIndex = 0; 460 nativeRegexp.lastIndex = 0;
(...skipping 3542 matching lines...) Expand 10 before | Expand all | Expand 10 after
4003 exports.jsonEncodeNative = jsonEncodeNative; 4003 exports.jsonEncodeNative = jsonEncodeNative;
4004 exports.getIsolateAffinityTag = getIsolateAffinityTag; 4004 exports.getIsolateAffinityTag = getIsolateAffinityTag;
4005 exports.LoadLibraryFunctionType = LoadLibraryFunctionType; 4005 exports.LoadLibraryFunctionType = LoadLibraryFunctionType;
4006 exports.DeferredLoadCallback = DeferredLoadCallback; 4006 exports.DeferredLoadCallback = DeferredLoadCallback;
4007 exports.loadDeferredLibrary = loadDeferredLibrary; 4007 exports.loadDeferredLibrary = loadDeferredLibrary;
4008 exports.MainError = MainError; 4008 exports.MainError = MainError;
4009 exports.missingMain = missingMain; 4009 exports.missingMain = missingMain;
4010 exports.badMain = badMain; 4010 exports.badMain = badMain;
4011 exports.mainHasTooManyParameters = mainHasTooManyParameters; 4011 exports.mainHasTooManyParameters = mainHasTooManyParameters;
4012 })(_js_helper || (_js_helper = {})); 4012 })(_js_helper || (_js_helper = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698