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

Unified Diff: lib/runtime/dart/_js_helper.js

Issue 1071393007: fuse List and js Array together and a few other misc fixes. (Closed) Base URL: git@github.com:dart-lang/dart-dev-compiler.git@master
Patch Set: ptal 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | lib/runtime/dart/collection.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lib/runtime/dart/_js_helper.js
diff --git a/lib/runtime/dart/_js_helper.js b/lib/runtime/dart/_js_helper.js
index 7b44f92687baf50096eb435d36caa4018b5fc615..c75071ae22ca7be76848785399128764c0ce4563 100644
--- a/lib/runtime/dart/_js_helper.js
+++ b/lib/runtime/dart/_js_helper.js
@@ -884,7 +884,7 @@ var _js_helper;
toString() {
if (this[_unmangledName] != null)
return this[_unmangledName];
- let unmangledName = _js_names.unmangleAllIdentifiersIfPreservedAnyways(this[_typeName]);
+ let unmangledName = unmangleAllIdentifiersIfPreservedAnyways(this[_typeName]);
return this[_unmangledName] = unmangledName;
}
get hashCode() {
@@ -1334,6 +1334,14 @@ var _js_helper;
function isNotIdentical(s, t) {
return s !== t;
}
+ // Function unmangleGlobalNameIfPreservedAnyways: (String) → String
+ function unmangleGlobalNameIfPreservedAnyways(str) {
+ return str;
+ }
+ // Function unmangleAllIdentifiersIfPreservedAnyways: (String) → String
+ function unmangleAllIdentifiersIfPreservedAnyways(str) {
+ return str;
+ }
class _Patch extends core.Object {
_Patch() {
}
@@ -1807,19 +1815,16 @@ var _js_helper;
return result;
}
static formatType(className, typeArguments) {
- return _js_names.unmangleAllIdentifiersIfPreservedAnyways(`${className}${joinArguments(typeArguments, 0)}`);
+ return unmangleAllIdentifiersIfPreservedAnyways(`${className}${joinArguments(typeArguments, 0)}`);
}
static objectTypeName(object) {
- let name = constructorNameFallback(_interceptors.getInterceptor(object));
+ let name = Primitives.constructorNameFallback(object);
if (name == 'Object') {
let decompiled = String(object.constructor).match(/^\s*function\s*(\S*)\s*\(/)[1];
if (typeof decompiled == 'string')
if (/^\w+$/.test(decompiled))
name = dart.as(decompiled, core.String);
}
- if (dart.notNull(name.length) > 1 && dart.notNull(core.identical(name.codeUnitAt(0), Primitives.DOLLAR_CHAR_VALUE))) {
- name = name.substring(1);
- }
return Primitives.formatType(name, dart.as(getRuntimeTypeInfo(object), core.List));
}
static objectToString(object) {
@@ -2123,6 +2128,22 @@ var _js_helper;
Primitives.DOLLAR_CHAR_VALUE = 36;
Primitives.timerFrequency = null;
Primitives.timerTicks = null;
+ dart.defineLazyProperties(Primitives, {
+ get constructorNameFallback() {
+ return 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);
+ };
+ },
+ set constructorNameFallback(_) {}
+ });
class JsCache extends core.Object {
static allocate() {
let result = Object.create(null);
@@ -3932,6 +3953,8 @@ var _js_helper;
exports.isJsObject = isJsObject;
exports.isIdentical = isIdentical;
exports.isNotIdentical = isNotIdentical;
+ exports.unmangleGlobalNameIfPreservedAnyways = unmangleGlobalNameIfPreservedAnyways;
+ exports.unmangleAllIdentifiersIfPreservedAnyways = unmangleAllIdentifiersIfPreservedAnyways;
exports.patch = patch;
exports.InternalMap = InternalMap;
exports.requiresPreamble = requiresPreamble;
« no previous file with comments | « no previous file | lib/runtime/dart/collection.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698