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

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

Issue 1043003002: keep mixin and interface implementation info at runtime (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
« no previous file with comments | « no previous file | lib/runtime/dart/_internal.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 var _interceptors; 1 var _interceptors;
2 (function(exports) { 2 (function(exports) {
3 'use strict'; 3 'use strict';
4 class Interceptor extends core.Object { 4 class Interceptor extends core.Object {
5 Interceptor() { 5 Interceptor() {
6 } 6 }
7 ['=='](other) { 7 ['=='](other) {
8 return core.identical(this, other); 8 return core.identical(this, other);
9 } 9 }
10 get hashCode() { 10 get hashCode() {
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 if (!(typeof index == 'number')) 338 if (!(typeof index == 'number'))
339 throw new core.ArgumentError(index); 339 throw new core.ArgumentError(index);
340 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(ind ex) < 0) 340 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(ind ex) < 0)
341 throw new core.RangeError.value(index); 341 throw new core.RangeError.value(index);
342 this[index] = value; 342 this[index] = value;
343 } 343 }
344 asMap() { 344 asMap() {
345 return new _internal.IterableMixinWorkaround().asMapList(this); 345 return new _internal.IterableMixinWorkaround().asMapList(this);
346 } 346 }
347 } 347 }
348 JSArray[dart.implements] = [core.List$(E), JSIndexable];
348 dart.defineNamedConstructor(JSArray, 'fixed'); 349 dart.defineNamedConstructor(JSArray, 'fixed');
349 dart.defineNamedConstructor(JSArray, 'emptyGrowable'); 350 dart.defineNamedConstructor(JSArray, 'emptyGrowable');
350 dart.defineNamedConstructor(JSArray, 'growable'); 351 dart.defineNamedConstructor(JSArray, 'growable');
351 dart.defineNamedConstructor(JSArray, 'typed'); 352 dart.defineNamedConstructor(JSArray, 'typed');
352 dart.defineNamedConstructor(JSArray, 'markFixed'); 353 dart.defineNamedConstructor(JSArray, 'markFixed');
353 dart.defineNamedConstructor(JSArray, 'markGrowable'); 354 dart.defineNamedConstructor(JSArray, 'markGrowable');
354 return JSArray; 355 return JSArray;
355 }); 356 });
356 let JSArray = JSArray$(dart.dynamic); 357 let JSArray = JSArray$(dart.dynamic);
357 let JSMutableArray$ = dart.generic(function(E) { 358 let JSMutableArray$ = dart.generic(function(E) {
358 class JSMutableArray extends JSArray$(E) { 359 class JSMutableArray extends JSArray$(E) {
359 } 360 }
361 JSMutableArray[dart.implements] = [JSMutableIndexable];
360 return JSMutableArray; 362 return JSMutableArray;
361 }); 363 });
362 let JSMutableArray = JSMutableArray$(dart.dynamic); 364 let JSMutableArray = JSMutableArray$(dart.dynamic);
363 let JSFixedArray$ = dart.generic(function(E) { 365 let JSFixedArray$ = dart.generic(function(E) {
364 class JSFixedArray extends JSMutableArray$(E) { 366 class JSFixedArray extends JSMutableArray$(E) {
365 } 367 }
366 return JSFixedArray; 368 return JSFixedArray;
367 }); 369 });
368 let JSFixedArray = JSFixedArray$(dart.dynamic); 370 let JSFixedArray = JSFixedArray$(dart.dynamic);
369 let JSExtendableArray$ = dart.generic(function(E) { 371 let JSExtendableArray$ = dart.generic(function(E) {
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
680 } 682 }
681 ['>='](other) { 683 ['>='](other) {
682 if (!dart.is(other, core.num)) 684 if (!dart.is(other, core.num))
683 throw new core.ArgumentError(other); 685 throw new core.ArgumentError(other);
684 return this >= other; 686 return this >= other;
685 } 687 }
686 get runtimeType() { 688 get runtimeType() {
687 return core.num; 689 return core.num;
688 } 690 }
689 } 691 }
692 JSNumber[dart.implements] = [core.num];
690 JSNumber._MIN_INT32 = -2147483648; 693 JSNumber._MIN_INT32 = -2147483648;
691 JSNumber._MAX_INT32 = 2147483647; 694 JSNumber._MAX_INT32 = 2147483647;
692 let _bitCount = Symbol('_bitCount'); 695 let _bitCount = Symbol('_bitCount');
693 let _spread = Symbol('_spread'); 696 let _spread = Symbol('_spread');
694 let _shru = Symbol('_shru'); 697 let _shru = Symbol('_shru');
695 let _shrs = Symbol('_shrs'); 698 let _shrs = Symbol('_shrs');
696 let _ors = Symbol('_ors'); 699 let _ors = Symbol('_ors');
697 class JSInt extends JSNumber { 700 class JSInt extends JSNumber {
698 JSInt() { 701 JSInt() {
699 super.JSNumber(); 702 super.JSNumber();
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 i = dart.as(JSInt[_shru](dart.as(JSInt[_ors](i, dart.as(JSInt[_shrs](i, 16 ), core.int)), core.int), 0), core.int); 747 i = dart.as(JSInt[_shru](dart.as(JSInt[_ors](i, dart.as(JSInt[_shrs](i, 16 ), core.int)), core.int), 0), core.int);
745 return i; 748 return i;
746 } 749 }
747 get runtimeType() { 750 get runtimeType() {
748 return core.int; 751 return core.int;
749 } 752 }
750 ['~']() { 753 ['~']() {
751 return dart.as(~this >>> 0, core.int); 754 return dart.as(~this >>> 0, core.int);
752 } 755 }
753 } 756 }
757 JSInt[dart.implements] = [core.int, core.double];
754 class JSDouble extends JSNumber { 758 class JSDouble extends JSNumber {
755 JSDouble() { 759 JSDouble() {
756 super.JSNumber(); 760 super.JSNumber();
757 } 761 }
758 get runtimeType() { 762 get runtimeType() {
759 return core.double; 763 return core.double;
760 } 764 }
761 } 765 }
766 JSDouble[dart.implements] = [core.double];
762 class JSPositiveInt extends JSInt { 767 class JSPositiveInt extends JSInt {
763 } 768 }
764 class JSUInt32 extends JSPositiveInt { 769 class JSUInt32 extends JSPositiveInt {
765 } 770 }
766 class JSUInt31 extends JSUInt32 { 771 class JSUInt31 extends JSUInt32 {
767 } 772 }
768 let _defaultSplit = Symbol('_defaultSplit'); 773 let _defaultSplit = Symbol('_defaultSplit');
769 let _isWhitespace = Symbol('_isWhitespace'); 774 let _isWhitespace = Symbol('_isWhitespace');
770 let _skipLeadingWhitespace = Symbol('_skipLeadingWhitespace'); 775 let _skipLeadingWhitespace = Symbol('_skipLeadingWhitespace');
771 let _skipTrailingWhitespace = Symbol('_skipTrailingWhitespace'); 776 let _skipTrailingWhitespace = Symbol('_skipTrailingWhitespace');
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after
1179 return this.length; 1184 return this.length;
1180 } 1185 }
1181 get(index) { 1186 get(index) {
1182 if (!(typeof index == 'number')) 1187 if (!(typeof index == 'number'))
1183 throw new core.ArgumentError(index); 1188 throw new core.ArgumentError(index);
1184 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(index ) < 0) 1189 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(index ) < 0)
1185 throw new core.RangeError.value(index); 1190 throw new core.RangeError.value(index);
1186 return this[index]; 1191 return this[index];
1187 } 1192 }
1188 } 1193 }
1194 JSString[dart.implements] = [core.String, JSIndexable];
1189 let _string = Symbol('_string'); 1195 let _string = Symbol('_string');
1190 class _CodeUnits extends _internal.UnmodifiableListBase$(core.int) { 1196 class _CodeUnits extends _internal.UnmodifiableListBase$(core.int) {
1191 _CodeUnits(string$) { 1197 _CodeUnits(string$) {
1192 this[_string] = string$; 1198 this[_string] = string$;
1193 super.UnmodifiableListBase(); 1199 super.UnmodifiableListBase();
1194 } 1200 }
1195 get length() { 1201 get length() {
1196 return this[_string].length; 1202 return this[_string].length;
1197 } 1203 }
1198 get(i) { 1204 get(i) {
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
1330 toString() { 1336 toString() {
1331 return String(this); 1337 return String(this);
1332 } 1338 }
1333 get hashCode() { 1339 get hashCode() {
1334 return this ? 2 * 3 * 23 * 3761 : 269 * 811; 1340 return this ? 2 * 3 * 23 * 3761 : 269 * 811;
1335 } 1341 }
1336 get runtimeType() { 1342 get runtimeType() {
1337 return core.bool; 1343 return core.bool;
1338 } 1344 }
1339 } 1345 }
1346 JSBool[dart.implements] = [core.bool];
1340 class JSNull extends Interceptor { 1347 class JSNull extends Interceptor {
1341 JSNull() { 1348 JSNull() {
1342 super.Interceptor(); 1349 super.Interceptor();
1343 } 1350 }
1344 ['=='](other) { 1351 ['=='](other) {
1345 return core.identical(null, other); 1352 return core.identical(null, other);
1346 } 1353 }
1347 toString() { 1354 toString() {
1348 return 'null'; 1355 return 'null';
1349 } 1356 }
1350 get hashCode() { 1357 get hashCode() {
1351 return 0; 1358 return 0;
1352 } 1359 }
1353 get runtimeType() { 1360 get runtimeType() {
1354 return core.Null; 1361 return core.Null;
1355 } 1362 }
1356 noSuchMethod(invocation) { 1363 noSuchMethod(invocation) {
1357 return super.noSuchMethod(invocation); 1364 return super.noSuchMethod(invocation);
1358 } 1365 }
1359 } 1366 }
1367 JSNull[dart.implements] = [core.Null];
1360 class JSIndexable extends core.Object { 1368 class JSIndexable extends core.Object {
1361 } 1369 }
1362 class JSMutableIndexable extends JSIndexable { 1370 class JSMutableIndexable extends JSIndexable {
1363 } 1371 }
1364 class JSObject extends core.Object { 1372 class JSObject extends core.Object {
1365 } 1373 }
1366 class JavaScriptObject extends Interceptor { 1374 class JavaScriptObject extends Interceptor {
1367 JavaScriptObject() { 1375 JavaScriptObject() {
1368 super.Interceptor(); 1376 super.Interceptor();
1369 } 1377 }
1370 get hashCode() { 1378 get hashCode() {
1371 return 0; 1379 return 0;
1372 } 1380 }
1373 get runtimeType() { 1381 get runtimeType() {
1374 return JSObject; 1382 return JSObject;
1375 } 1383 }
1376 } 1384 }
1385 JavaScriptObject[dart.implements] = [JSObject];
1377 class PlainJavaScriptObject extends JavaScriptObject { 1386 class PlainJavaScriptObject extends JavaScriptObject {
1378 PlainJavaScriptObject() { 1387 PlainJavaScriptObject() {
1379 super.JavaScriptObject(); 1388 super.JavaScriptObject();
1380 } 1389 }
1381 } 1390 }
1382 class UnknownJavaScriptObject extends JavaScriptObject { 1391 class UnknownJavaScriptObject extends JavaScriptObject {
1383 UnknownJavaScriptObject() { 1392 UnknownJavaScriptObject() {
1384 super.JavaScriptObject(); 1393 super.JavaScriptObject();
1385 } 1394 }
1386 toString() { 1395 toString() {
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1419 exports.findInterceptorForType = findInterceptorForType; 1428 exports.findInterceptorForType = findInterceptorForType;
1420 exports.JSBool = JSBool; 1429 exports.JSBool = JSBool;
1421 exports.JSNull = JSNull; 1430 exports.JSNull = JSNull;
1422 exports.JSIndexable = JSIndexable; 1431 exports.JSIndexable = JSIndexable;
1423 exports.JSMutableIndexable = JSMutableIndexable; 1432 exports.JSMutableIndexable = JSMutableIndexable;
1424 exports.JSObject = JSObject; 1433 exports.JSObject = JSObject;
1425 exports.JavaScriptObject = JavaScriptObject; 1434 exports.JavaScriptObject = JavaScriptObject;
1426 exports.PlainJavaScriptObject = PlainJavaScriptObject; 1435 exports.PlainJavaScriptObject = PlainJavaScriptObject;
1427 exports.UnknownJavaScriptObject = UnknownJavaScriptObject; 1436 exports.UnknownJavaScriptObject = UnknownJavaScriptObject;
1428 })(_interceptors || (_interceptors = {})); 1437 })(_interceptors || (_interceptors = {}));
OLDNEW
« no previous file with comments | « no previous file | lib/runtime/dart/_internal.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698