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

Side by Side Diff: test/codegen/expect/dart/_interceptors.js

Issue 1020043002: Replace dart_core.js with actual compiled SDK (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: merge Created 5 years, 9 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 | « test/codegen/expect/dart/_foreign_helper.js ('k') | test/codegen/expect/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
(Empty)
1 var _interceptors;
2 (function(exports) {
3 'use strict';
4 class Interceptor extends core.Object {
5 Interceptor() {
6 }
7 ['=='](other) {
8 return core.identical(this, other);
9 }
10 get hashCode() {
11 return _js_helper.Primitives.objectHashCode(this);
12 }
13 toString() {
14 return _js_helper.Primitives.objectToString(this);
15 }
16 noSuchMethod(invocation) {
17 throw new core.NoSuchMethodError(this, invocation.memberName, invocation.p ositionalArguments, invocation.namedArguments);
18 }
19 get runtimeType() {
20 return _js_helper.getRuntimeType(this);
21 }
22 }
23 let JSArray$ = dart.generic(function(E) {
24 class JSArray extends Interceptor {
25 JSArray() {
26 super.Interceptor();
27 }
28 JSArray$fixed(length) {
29 if (dart.notNull(!(typeof length == number)) || dart.notNull(length) < 0 ) {
30 throw new core.ArgumentError(`Length must be a non-negative integer: $ {length}`);
31 }
32 return new JSArray.markFixed(new Array(length));
33 }
34 JSArray$emptyGrowable() {
35 return new JSArray.markGrowable([]);
36 }
37 JSArray$growable(length) {
38 if (dart.notNull(!(typeof length == number)) || dart.notNull(length) < 0 ) {
39 throw new core.ArgumentError(`Length must be a non-negative integer: $ {length}`);
40 }
41 return new JSArray.markGrowable(new Array(length));
42 }
43 JSArray$typed(allocation) {
44 return dart.as(allocation, JSArray$(E));
45 }
46 JSArray$markFixed(allocation) {
47 return dart.as(markFixedList(new JSArray.typed(allocation)), JSArray$(E) );
48 }
49 JSArray$markGrowable(allocation) {
50 return dart.as(new JSArray.typed(allocation), JSArray$(E));
51 }
52 static markFixedList(list) {
53 list.fixed$length = Array;
54 return dart.as(list, core.List);
55 }
56 checkMutable(reason) {
57 if (!dart.is(this, JSMutableArray)) {
58 throw new core.UnsupportedError(dart.as(reason, core.String));
59 }
60 }
61 checkGrowable(reason) {
62 if (!dart.is(this, JSExtendableArray)) {
63 throw new core.UnsupportedError(dart.as(reason, core.String));
64 }
65 }
66 add(value) {
67 this.checkGrowable('add');
68 this.push(value);
69 }
70 removeAt(index) {
71 if (!(typeof index == number))
72 throw new core.ArgumentError(index);
73 if (dart.notNull(index) < 0 || dart.notNull(index) >= dart.notNull(this. length)) {
74 throw new core.RangeError.value(index);
75 }
76 this.checkGrowable('removeAt');
77 return dart.as(this.splice(index, 1)[0], E);
78 }
79 insert(index, value) {
80 if (!(typeof index == number))
81 throw new core.ArgumentError(index);
82 if (dart.notNull(index) < 0 || dart.notNull(index) > dart.notNull(this.l ength)) {
83 throw new core.RangeError.value(index);
84 }
85 this.checkGrowable('insert');
86 this.splice(index, 0, value);
87 }
88 insertAll(index, iterable) {
89 this.checkGrowable('insertAll');
90 _internal.IterableMixinWorkaround.insertAllList(this, index, iterable);
91 }
92 setAll(index, iterable) {
93 this.checkMutable('setAll');
94 _internal.IterableMixinWorkaround.setAllList(this, index, iterable);
95 }
96 removeLast() {
97 this.checkGrowable('removeLast');
98 if (this.length === 0)
99 throw new core.RangeError.value(-1);
100 return dart.as(this.pop(), E);
101 }
102 remove(element) {
103 this.checkGrowable('remove');
104 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
105 if (dart.equals(this.get(i), element)) {
106 this.splice(i, 1);
107 return true;
108 }
109 }
110 return false;
111 }
112 removeWhere(test) {
113 _internal.IterableMixinWorkaround.removeWhereList(this, test);
114 }
115 retainWhere(test) {
116 _internal.IterableMixinWorkaround.removeWhereList(this, (element) => !da rt.notNull(test(element)));
117 }
118 where(f) {
119 return new _internal.IterableMixinWorkaround().where(this, f);
120 }
121 expand(f) {
122 return _internal.IterableMixinWorkaround.expand(this, f);
123 }
124 addAll(collection) {
125 for (let e of collection) {
126 this.add(e);
127 }
128 }
129 clear() {
130 this.length = 0;
131 }
132 forEach(f) {
133 let length = this.length;
134 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
135 f(dart.as(this[i], E));
136 if (length !== this.length) {
137 throw new core.ConcurrentModificationError(this);
138 }
139 }
140 }
141 map(f) {
142 return _internal.IterableMixinWorkaround.mapList(this, f);
143 }
144 join(separator) {
145 if (separator === void 0)
146 separator = "";
147 let list = new core.List(this.length);
148 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
149 list.set(i, `${this.get(i)}`);
150 }
151 return list.join(separator);
152 }
153 take(n) {
154 return new _internal.IterableMixinWorkaround().takeList(this, n);
155 }
156 takeWhile(test) {
157 return new _internal.IterableMixinWorkaround().takeWhile(this, test);
158 }
159 skip(n) {
160 return new _internal.IterableMixinWorkaround().skipList(this, n);
161 }
162 skipWhile(test) {
163 return new _internal.IterableMixinWorkaround().skipWhile(this, test);
164 }
165 reduce(combine) {
166 return dart.as(_internal.IterableMixinWorkaround.reduce(this, combine), E);
167 }
168 fold(initialValue, combine) {
169 return _internal.IterableMixinWorkaround.fold(this, initialValue, combin e);
170 }
171 firstWhere(test, opt$) {
172 let orElse = opt$.orElse === void 0 ? null : opt$.orElse;
173 return dart.as(_internal.IterableMixinWorkaround.firstWhere(this, test, orElse), E);
174 }
175 lastWhere(test, opt$) {
176 let orElse = opt$.orElse === void 0 ? null : opt$.orElse;
177 return dart.as(_internal.IterableMixinWorkaround.lastWhereList(this, tes t, orElse), E);
178 }
179 singleWhere(test) {
180 return dart.as(_internal.IterableMixinWorkaround.singleWhere(this, test) , E);
181 }
182 elementAt(index) {
183 return this.get(index);
184 }
185 sublist(start, end) {
186 if (end === void 0)
187 end = null;
188 _js_helper.checkNull(start);
189 if (!(typeof start == number))
190 throw new core.ArgumentError(start);
191 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(this.l ength)) {
192 throw new core.RangeError.range(start, 0, this.length);
193 }
194 if (end === null) {
195 end = this.length;
196 } else {
197 if (!(typeof end == number))
198 throw new core.ArgumentError(end);
199 if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dar t.notNull(this.length)) {
200 throw new core.RangeError.range(end, start, this.length);
201 }
202 }
203 if (start === end)
204 return new List.from([]);
205 return new JSArray.markGrowable(this.slice(start, end));
206 }
207 getRange(start, end) {
208 return new _internal.IterableMixinWorkaround().getRangeList(this, start, end);
209 }
210 get first() {
211 if (dart.notNull(this.length) > 0)
212 return this.get(0);
213 throw new core.StateError("No elements");
214 }
215 get last() {
216 if (dart.notNull(this.length) > 0)
217 return this.get(dart.notNull(this.length) - 1);
218 throw new core.StateError("No elements");
219 }
220 get single() {
221 if (this.length === 1)
222 return this.get(0);
223 if (this.length === 0)
224 throw new core.StateError("No elements");
225 throw new core.StateError("More than one element");
226 }
227 removeRange(start, end) {
228 this.checkGrowable('removeRange');
229 let receiverLength = this.length;
230 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(receiv erLength)) {
231 throw new core.RangeError.range(start, 0, receiverLength);
232 }
233 if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dart. notNull(receiverLength)) {
234 throw new core.RangeError.range(end, start, receiverLength);
235 }
236 _internal.Lists.copy(this, end, this, start, dart.notNull(receiverLength ) - dart.notNull(end));
237 this.length = dart.notNull(receiverLength) - (dart.notNull(end) - dart.n otNull(start));
238 }
239 setRange(start, end, iterable, skipCount) {
240 if (skipCount === void 0)
241 skipCount = 0;
242 this.checkMutable('set range');
243 _internal.IterableMixinWorkaround.setRangeList(this, start, end, iterabl e, skipCount);
244 }
245 fillRange(start, end, fillValue) {
246 if (fillValue === void 0)
247 fillValue = null;
248 this.checkMutable('fill range');
249 _internal.IterableMixinWorkaround.fillRangeList(this, start, end, fillVa lue);
250 }
251 replaceRange(start, end, iterable) {
252 this.checkGrowable('removeRange');
253 _internal.IterableMixinWorkaround.replaceRangeList(this, start, end, ite rable);
254 }
255 any(f) {
256 return _internal.IterableMixinWorkaround.any(this, f);
257 }
258 every(f) {
259 return _internal.IterableMixinWorkaround.every(this, f);
260 }
261 get reversed() {
262 return new _internal.IterableMixinWorkaround().reversedList(this);
263 }
264 sort(compare) {
265 if (compare === void 0)
266 compare = null;
267 this.checkMutable('sort');
268 _internal.IterableMixinWorkaround.sortList(this, compare);
269 }
270 shuffle(random) {
271 if (random === void 0)
272 random = null;
273 _internal.IterableMixinWorkaround.shuffleList(this, random);
274 }
275 indexOf(element, start) {
276 if (start === void 0)
277 start = 0;
278 return _internal.IterableMixinWorkaround.indexOfList(this, element, star t);
279 }
280 lastIndexOf(element, start) {
281 if (start === void 0)
282 start = null;
283 return _internal.IterableMixinWorkaround.lastIndexOfList(this, element, start);
284 }
285 contains(other) {
286 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.no tNull(i) + 1) {
287 if (dart.equals(this.get(i), other))
288 return true;
289 }
290 return false;
291 }
292 get isEmpty() {
293 return this.length === 0;
294 }
295 get isNotEmpty() {
296 return !dart.notNull(this.isEmpty);
297 }
298 toString() {
299 return collection.ListBase.listToString(this);
300 }
301 toList(opt$) {
302 let growable = opt$.growable === void 0 ? true : opt$.growable;
303 if (growable) {
304 return new JSArray.markGrowable(this.slice());
305 } else {
306 return new JSArray.markFixed(this.slice());
307 }
308 }
309 toSet() {
310 return new core.Set.from(this);
311 }
312 get iterator() {
313 return new _internal.ListIterator(this);
314 }
315 get hashCode() {
316 return _js_helper.Primitives.objectHashCode(this);
317 }
318 get length() {
319 return dart.as(this.length, core.int);
320 }
321 set length(newLength) {
322 if (!(typeof newLength == number))
323 throw new core.ArgumentError(newLength);
324 if (dart.notNull(newLength) < 0)
325 throw new core.RangeError.value(newLength);
326 this.checkGrowable('set length');
327 this.length = newLength;
328 }
329 get(index) {
330 if (!(typeof index == number))
331 throw new core.ArgumentError(index);
332 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(ind ex) < 0)
333 throw new core.RangeError.value(index);
334 return dart.as(this[index], E);
335 }
336 set(index, value) {
337 this.checkMutable('indexed set');
338 if (!(typeof index == number))
339 throw new core.ArgumentError(index);
340 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(ind ex) < 0)
341 throw new core.RangeError.value(index);
342 this[index] = value;
343 }
344 asMap() {
345 return new _internal.IterableMixinWorkaround().asMapList(this);
346 }
347 }
348 dart.defineNamedConstructor(JSArray, 'fixed');
349 dart.defineNamedConstructor(JSArray, 'emptyGrowable');
350 dart.defineNamedConstructor(JSArray, 'growable');
351 dart.defineNamedConstructor(JSArray, 'typed');
352 dart.defineNamedConstructor(JSArray, 'markFixed');
353 dart.defineNamedConstructor(JSArray, 'markGrowable');
354 return JSArray;
355 });
356 let JSArray = JSArray$(dart.dynamic);
357 let JSMutableArray$ = dart.generic(function(E) {
358 class JSMutableArray extends JSArray$(E) {
359 }
360 return JSMutableArray;
361 });
362 let JSMutableArray = JSMutableArray$(dart.dynamic);
363 let JSFixedArray$ = dart.generic(function(E) {
364 class JSFixedArray extends JSMutableArray$(E) {
365 }
366 return JSFixedArray;
367 });
368 let JSFixedArray = JSFixedArray$(dart.dynamic);
369 let JSExtendableArray$ = dart.generic(function(E) {
370 class JSExtendableArray extends JSMutableArray$(E) {
371 }
372 return JSExtendableArray;
373 });
374 let JSExtendableArray = JSExtendableArray$(dart.dynamic);
375 let _handleIEtoString = Symbol('_handleIEtoString');
376 let _isInt32 = Symbol('_isInt32');
377 let _tdivFast = Symbol('_tdivFast');
378 let _tdivSlow = Symbol('_tdivSlow');
379 let _shlPositive = Symbol('_shlPositive');
380 let _shrReceiverPositive = Symbol('_shrReceiverPositive');
381 let _shrOtherPositive = Symbol('_shrOtherPositive');
382 let _shrBothPositive = Symbol('_shrBothPositive');
383 class JSNumber extends Interceptor {
384 JSNumber() {
385 super.Interceptor();
386 }
387 compareTo(b) {
388 if (!dart.is(b, core.num))
389 throw new core.ArgumentError(b);
390 if (this['<'](b)) {
391 return -1;
392 } else if (this['>'](b)) {
393 return 1;
394 } else if (dart.equals(this, b)) {
395 if (dart.equals(this, 0)) {
396 let bIsNegative = b.isNegative;
397 if (this.isNegative === bIsNegative)
398 return 0;
399 if (this.isNegative)
400 return -1;
401 return 1;
402 }
403 return 0;
404 } else if (this.isNaN) {
405 if (b.isNaN) {
406 return 0;
407 }
408 return 1;
409 } else {
410 return -1;
411 }
412 }
413 get isNegative() {
414 return dart.equals(this, 0) ? 1['/'](this) < 0 : this['<'](0);
415 }
416 get isNaN() {
417 return isNaN(this);
418 }
419 get isInfinite() {
420 return this == Infinity || this == -Infinity;
421 }
422 get isFinite() {
423 return isFinite(this);
424 }
425 remainder(b) {
426 _js_helper.checkNull(b);
427 if (!dart.is(b, core.num))
428 throw new core.ArgumentError(b);
429 return this % b;
430 }
431 abs() {
432 return Math.abs(this);
433 }
434 get sign() {
435 return this['>'](0) ? 1 : this['<'](0) ? -1 : this;
436 }
437 toInt() {
438 if (dart.notNull(this['>='](JSNumber._MIN_INT32)) && dart.notNull(this['<= '](JSNumber._MAX_INT32))) {
439 return this | 0;
440 }
441 if (isFinite(this)) {
442 return this.truncateToDouble() + 0;
443 }
444 throw new core.UnsupportedError('' + this);
445 }
446 truncate() {
447 return this.toInt();
448 }
449 ceil() {
450 return this.ceilToDouble().toInt();
451 }
452 floor() {
453 return this.floorToDouble().toInt();
454 }
455 round() {
456 return this.roundToDouble().toInt();
457 }
458 ceilToDouble() {
459 return Math.ceil(this);
460 }
461 floorToDouble() {
462 return Math.floor(this);
463 }
464 roundToDouble() {
465 if (this['<'](0)) {
466 return -Math.round(-this);
467 } else {
468 return Math.round(this);
469 }
470 }
471 truncateToDouble() {
472 return this['<'](0) ? this.ceilToDouble() : this.floorToDouble();
473 }
474 clamp(lowerLimit, upperLimit) {
475 if (!dart.is(lowerLimit, core.num))
476 throw new core.ArgumentError(lowerLimit);
477 if (!dart.is(upperLimit, core.num))
478 throw new core.ArgumentError(upperLimit);
479 if (dart.dbinary(dart.dinvoke(lowerLimit, 'compareTo', upperLimit), '>', 0 )) {
480 throw new core.ArgumentError(lowerLimit);
481 }
482 if (dart.notNull(this.compareTo(dart.as(lowerLimit, core.num))) < 0)
483 return dart.as(lowerLimit, core.num);
484 if (dart.notNull(this.compareTo(dart.as(upperLimit, core.num))) > 0)
485 return dart.as(upperLimit, core.num);
486 return this;
487 }
488 toDouble() {
489 return this;
490 }
491 toStringAsFixed(fractionDigits) {
492 _js_helper.checkInt(fractionDigits);
493 if (dart.notNull(fractionDigits) < 0 || dart.notNull(fractionDigits) > 20) {
494 throw new core.RangeError(fractionDigits);
495 }
496 let result = this.toFixed(fractionDigits);
497 if (dart.notNull(dart.equals(this, 0)) && dart.notNull(this.isNegative))
498 return `-${result}`;
499 return result;
500 }
501 toStringAsExponential(fractionDigits) {
502 if (fractionDigits === void 0)
503 fractionDigits = null;
504 let result = null;
505 if (fractionDigits !== null) {
506 _js_helper.checkInt(fractionDigits);
507 if (dart.notNull(fractionDigits) < 0 || dart.notNull(fractionDigits) > 2 0) {
508 throw new core.RangeError(fractionDigits);
509 }
510 result = this.toExponential(fractionDigits);
511 } else {
512 result = this.toExponential();
513 }
514 if (dart.notNull(dart.equals(this, 0)) && dart.notNull(this.isNegative))
515 return `-${result}`;
516 return result;
517 }
518 toStringAsPrecision(precision) {
519 _js_helper.checkInt(precision);
520 if (dart.notNull(precision) < 1 || dart.notNull(precision) > 21) {
521 throw new core.RangeError(precision);
522 }
523 let result = this.toPrecision(precision);
524 if (dart.notNull(dart.equals(this, 0)) && dart.notNull(this.isNegative))
525 return `-${result}`;
526 return result;
527 }
528 toRadixString(radix) {
529 _js_helper.checkInt(radix);
530 if (dart.notNull(radix) < 2 || dart.notNull(radix) > 36)
531 throw new core.RangeError(radix);
532 let result = this.toString(radix);
533 let rightParenCode = 41;
534 if (result.codeUnitAt(dart.notNull(result.length) - 1) !== rightParenCode) {
535 return result;
536 }
537 return _handleIEtoString(result);
538 }
539 static [_handleIEtoString](result) {
540 let match = /^([\da-z]+)(?:\.([\da-z]+))?\(e\+(\d+)\)$/.exec(result);
541 if (match === null) {
542 throw new core.UnsupportedError(`Unexpected toString result: ${result}`) ;
543 }
544 let result = dart.dindex(match, 1);
545 let exponent = +dart.dindex(match, 3);
546 if (dart.dindex(match, 2) !== null) {
547 result = result + dart.dindex(match, 2);
548 exponent = dart.dindex(match, 2).length;
549 }
550 return core.String['+'](result, core.String['*']("0", exponent));
551 }
552 toString() {
553 if (dart.notNull(dart.equals(this, 0)) && 1 / this < 0) {
554 return '-0.0';
555 } else {
556 return "" + this;
557 }
558 }
559 get hashCode() {
560 return this & 0x1FFFFFFF;
561 }
562 ['-']() {
563 return -this;
564 }
565 ['+'](other) {
566 if (!dart.is(other, core.num))
567 throw new core.ArgumentError(other);
568 return this + other;
569 }
570 ['-'](other) {
571 if (!dart.is(other, core.num))
572 throw new core.ArgumentError(other);
573 return this - other;
574 }
575 ['/'](other) {
576 if (!dart.is(other, core.num))
577 throw new core.ArgumentError(other);
578 return this / other;
579 }
580 ['*'](other) {
581 if (!dart.is(other, core.num))
582 throw new core.ArgumentError(other);
583 return this * other;
584 }
585 ['%'](other) {
586 if (!dart.is(other, core.num))
587 throw new core.ArgumentError(other);
588 let result = this % other;
589 if (result === 0)
590 return 0;
591 if (dart.notNull(result) > 0)
592 return result;
593 if (other < 0) {
594 return dart.notNull(result) - other;
595 } else {
596 return dart.notNull(result) + other;
597 }
598 }
599 [_isInt32](value) {
600 return (value | 0) === value;
601 }
602 ['~/'](other) {
603 if (false)
604 this[_tdivFast](other);
605 if (dart.notNull(this[_isInt32](this)) && dart.notNull(this[_isInt32](othe r)) && 0 !== other && -1 !== other) {
606 return this / other | 0;
607 } else {
608 return this[_tdivSlow](other);
609 }
610 }
611 [_tdivFast](other) {
612 return this[_isInt32](this) ? this / other | 0 : (this / other).toInt();
613 }
614 [_tdivSlow](other) {
615 if (!dart.is(other, core.num))
616 throw new core.ArgumentError(other);
617 return (this / other).toInt();
618 }
619 ['<<'](other) {
620 if (!dart.is(other, core.num))
621 throw new core.ArgumentError(other);
622 if (other < 0)
623 throw new core.ArgumentError(other);
624 return this[_shlPositive](other);
625 }
626 [_shlPositive](other) {
627 return dart.as(other > 31 ? 0 : this << other >>> 0, core.num);
628 }
629 ['>>'](other) {
630 if (false)
631 this[_shrReceiverPositive](other);
632 if (!dart.is(other, core.num))
633 throw new core.ArgumentError(other);
634 if (other < 0)
635 throw new core.ArgumentError(other);
636 return this[_shrOtherPositive](other);
637 }
638 [_shrOtherPositive](other) {
639 return dart.as(this > 0 ? this[_shrBothPositive](other) : this >> (dart.no tNull(other) > 31 ? 31 : other) >>> 0, core.num);
640 }
641 [_shrReceiverPositive](other) {
642 if (other < 0)
643 throw new core.ArgumentError(other);
644 return this[_shrBothPositive](other);
645 }
646 [_shrBothPositive](other) {
647 return dart.as(other > 31 ? 0 : this >>> other, core.num);
648 }
649 ['&'](other) {
650 if (!dart.is(other, core.num))
651 throw new core.ArgumentError(other);
652 return dart.as((this & other) >>> 0, core.num);
653 }
654 ['|'](other) {
655 if (!dart.is(other, core.num))
656 throw new core.ArgumentError(other);
657 return dart.as((this | other) >>> 0, core.num);
658 }
659 ['^'](other) {
660 if (!dart.is(other, core.num))
661 throw new core.ArgumentError(other);
662 return dart.as((this ^ other) >>> 0, core.num);
663 }
664 ['<'](other) {
665 if (!dart.is(other, core.num))
666 throw new core.ArgumentError(other);
667 return this < other;
668 }
669 ['>'](other) {
670 if (!dart.is(other, core.num))
671 throw new core.ArgumentError(other);
672 return this > other;
673 }
674 ['<='](other) {
675 if (!dart.is(other, core.num))
676 throw new core.ArgumentError(other);
677 return this <= other;
678 }
679 ['>='](other) {
680 if (!dart.is(other, core.num))
681 throw new core.ArgumentError(other);
682 return this >= other;
683 }
684 get runtimeType() {
685 return core.num;
686 }
687 }
688 JSNumber._MIN_INT32 = -2147483648;
689 JSNumber._MAX_INT32 = 2147483647;
690 let _bitCount = Symbol('_bitCount');
691 let _shru = Symbol('_shru');
692 let _shrs = Symbol('_shrs');
693 let _ors = Symbol('_ors');
694 let _spread = Symbol('_spread');
695 class JSInt extends JSNumber {
696 JSInt() {
697 super.JSNumber();
698 }
699 get isEven() {
700 return this['&'](1) === 0;
701 }
702 get isOdd() {
703 return this['&'](1) === 1;
704 }
705 toUnsigned(width) {
706 return this['&']((1 << dart.notNull(width)) - 1);
707 }
708 toSigned(width) {
709 let signMask = 1 << dart.notNull(width) - 1;
710 return dart.notNull(this['&'](dart.notNull(signMask) - 1)) - dart.notNull( this['&'](signMask));
711 }
712 get bitLength() {
713 let nonneg = this['<'](0) ? dart.notNull(this['unary-']()) - 1 : this;
714 if (dart.notNull(nonneg) >= 4294967296) {
715 nonneg = (dart.notNull(nonneg) / 4294967296).truncate();
716 return dart.notNull(_bitCount(_spread(nonneg))) + 32;
717 }
718 return _bitCount(_spread(nonneg));
719 }
720 static [_bitCount](i) {
721 i = dart.as(dart.dbinary(_shru(i, 0), '-', dart.dbinary(_shru(i, 1), '&', 1431655765)), core.int);
722 i = (dart.notNull(i) & 858993459)['+'](dart.dbinary(_shru(i, 2), '&', 8589 93459));
723 i = 252645135 & i['+'](_shru(i, 4));
724 i = dart.as(_shru(i, 8), core.int);
725 i = dart.as(_shru(i, 16), core.int);
726 return dart.notNull(i) & 63;
727 }
728 static [_shru](value, shift) {
729 return value >>> shift;
730 }
731 static [_shrs](value, shift) {
732 return value >> shift;
733 }
734 static [_ors](a, b) {
735 return a | b;
736 }
737 static [_spread](i) {
738 i = dart.as(_ors(i, dart.as(_shrs(i, 1), core.int)), core.int);
739 i = dart.as(_ors(i, dart.as(_shrs(i, 2), core.int)), core.int);
740 i = dart.as(_ors(i, dart.as(_shrs(i, 4), core.int)), core.int);
741 i = dart.as(_ors(i, dart.as(_shrs(i, 8), core.int)), core.int);
742 i = dart.as(_shru(dart.as(_ors(i, dart.as(_shrs(i, 16), core.int)), core.i nt), 0), core.int);
743 return i;
744 }
745 get runtimeType() {
746 return core.int;
747 }
748 ['~']() {
749 return dart.as(~this >>> 0, core.int);
750 }
751 }
752 class JSDouble extends JSNumber {
753 JSDouble() {
754 super.JSNumber();
755 }
756 get runtimeType() {
757 return core.double;
758 }
759 }
760 class JSPositiveInt extends JSInt {
761 }
762 class JSUInt32 extends JSPositiveInt {
763 }
764 class JSUInt31 extends JSUInt32 {
765 }
766 let _defaultSplit = Symbol('_defaultSplit');
767 let _isWhitespace = Symbol('_isWhitespace');
768 let _skipLeadingWhitespace = Symbol('_skipLeadingWhitespace');
769 let _skipTrailingWhitespace = Symbol('_skipTrailingWhitespace');
770 class JSString extends Interceptor {
771 JSString() {
772 super.Interceptor();
773 }
774 codeUnitAt(index) {
775 if (!(typeof index == number))
776 throw new core.ArgumentError(index);
777 if (dart.notNull(index) < 0)
778 throw new core.RangeError.value(index);
779 if (dart.notNull(index) >= dart.notNull(this.length))
780 throw new core.RangeError.value(index);
781 return dart.as(this.charCodeAt(index), core.int);
782 }
783 allMatches(string, start) {
784 if (start === void 0)
785 start = 0;
786 _js_helper.checkString(string);
787 _js_helper.checkInt(start);
788 if (0 > dart.notNull(start) || dart.notNull(start) > dart.notNull(string.l ength)) {
789 throw new core.RangeError.range(start, 0, string.length);
790 }
791 return _js_helper.allMatchesInStringUnchecked(this, string, start);
792 }
793 matchAsPrefix(string, start) {
794 if (start === void 0)
795 start = 0;
796 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(string.l ength)) {
797 throw new core.RangeError.range(start, 0, string.length);
798 }
799 if (dart.notNull(start) + dart.notNull(this.length) > dart.notNull(string. length))
800 return null;
801 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.notN ull(i) + 1) {
802 if (string.codeUnitAt(dart.notNull(start) + dart.notNull(i)) !== this.co deUnitAt(i)) {
803 return null;
804 }
805 }
806 return new _js_helper.StringMatch(start, string, this);
807 }
808 ['+'](other) {
809 if (!(typeof other == string))
810 throw new core.ArgumentError(other);
811 return this + other;
812 }
813 endsWith(other) {
814 _js_helper.checkString(other);
815 let otherLength = other.length;
816 if (dart.notNull(otherLength) > dart.notNull(this.length))
817 return false;
818 return dart.equals(other, this.substring(dart.notNull(this.length) - dart. notNull(otherLength)));
819 }
820 replaceAll(from, to) {
821 _js_helper.checkString(to);
822 return dart.as(_js_helper.stringReplaceAllUnchecked(this, from, to), core. String);
823 }
824 replaceAllMapped(from, convert) {
825 return this.splitMapJoin(from, {onMatch: convert});
826 }
827 splitMapJoin(from, opt$) {
828 let onMatch = opt$.onMatch === void 0 ? null : opt$.onMatch;
829 let onNonMatch = opt$.onNonMatch === void 0 ? null : opt$.onNonMatch;
830 return dart.as(_js_helper.stringReplaceAllFuncUnchecked(this, from, onMatc h, onNonMatch), core.String);
831 }
832 replaceFirst(from, to, startIndex) {
833 if (startIndex === void 0)
834 startIndex = 0;
835 _js_helper.checkString(to);
836 _js_helper.checkInt(startIndex);
837 if (dart.notNull(startIndex) < 0 || dart.notNull(startIndex) > dart.notNul l(this.length)) {
838 throw new core.RangeError.range(startIndex, 0, this.length);
839 }
840 return dart.as(_js_helper.stringReplaceFirstUnchecked(this, from, to, star tIndex), core.String);
841 }
842 split(pattern) {
843 _js_helper.checkNull(pattern);
844 if (typeof pattern == string) {
845 return dart.as(this.split(pattern), core.List$(core.String));
846 } else if (dart.notNull(dart.is(pattern, _js_helper.JSSyntaxRegExp)) && _j s_helper.regExpCaptureCount(pattern) === 0) {
847 let re = _js_helper.regExpGetNative(pattern);
848 return dart.as(this.split(re), core.List$(core.String));
849 } else {
850 return this[_defaultSplit](pattern);
851 }
852 }
853 [_defaultSplit](pattern) {
854 let result = new List.from([]);
855 let start = 0;
856 let length = 1;
857 for (let match of pattern.allMatches(this)) {
858 let matchStart = dart.as(dart.dload(match, 'start'), core.int);
859 let matchEnd = dart.as(dart.dload(match, 'end'), core.int);
860 length = dart.notNull(matchEnd) - dart.notNull(matchStart);
861 if (length === 0 && start === matchStart) {
862 continue;
863 }
864 let end = matchStart;
865 result.add(this.substring(start, end));
866 start = matchEnd;
867 }
868 if (dart.notNull(start) < dart.notNull(this.length) || dart.notNull(length ) > 0) {
869 result.add(this.substring(start));
870 }
871 return result;
872 }
873 startsWith(pattern, index) {
874 if (index === void 0)
875 index = 0;
876 _js_helper.checkInt(index);
877 if (dart.notNull(index) < 0 || dart.notNull(index) > dart.notNull(this.len gth)) {
878 throw new core.RangeError.range(index, 0, this.length);
879 }
880 if (typeof pattern == string) {
881 let other = pattern;
882 let otherLength = other.length;
883 let endIndex = dart.notNull(index) + dart.notNull(otherLength);
884 if (dart.notNull(endIndex) > dart.notNull(this.length))
885 return false;
886 return dart.equals(other, this.substring(index, endIndex));
887 }
888 return pattern.matchAsPrefix(this, index) !== null;
889 }
890 substring(startIndex, endIndex) {
891 if (endIndex === void 0)
892 endIndex = null;
893 _js_helper.checkInt(startIndex);
894 if (endIndex === null)
895 endIndex = this.length;
896 _js_helper.checkInt(endIndex);
897 if (dart.notNull(startIndex) < 0)
898 throw new core.RangeError.value(startIndex);
899 if (dart.notNull(startIndex) > dart.notNull(endIndex))
900 throw new core.RangeError.value(startIndex);
901 if (dart.notNull(endIndex) > dart.notNull(this.length))
902 throw new core.RangeError.value(endIndex);
903 return this.substring(startIndex, endIndex);
904 }
905 toLowerCase() {
906 return this.toLowerCase();
907 }
908 toUpperCase() {
909 return this.toUpperCase();
910 }
911 static [_isWhitespace](codeUnit) {
912 if (dart.notNull(codeUnit) < 256) {
913 switch (codeUnit) {
914 case 9:
915 case 10:
916 case 11:
917 case 12:
918 case 13:
919 case 32:
920 case 133:
921 case 160:
922 return true;
923 default:
924 return false;
925 }
926 }
927 switch (codeUnit) {
928 case 5760:
929 case 6158:
930 case 8192:
931 case 8193:
932 case 8194:
933 case 8195:
934 case 8196:
935 case 8197:
936 case 8198:
937 case 8199:
938 case 8200:
939 case 8201:
940 case 8202:
941 case 8232:
942 case 8233:
943 case 8239:
944 case 8287:
945 case 12288:
946 case 65279:
947 return true;
948 default:
949 return false;
950 }
951 }
952 static [_skipLeadingWhitespace](string, index) {
953 let SPACE = 32;
954 let CARRIAGE_RETURN = 13;
955 while (dart.notNull(index) < dart.notNull(string.length)) {
956 let codeUnit = string.codeUnitAt(index);
957 if (codeUnit !== SPACE && codeUnit !== CARRIAGE_RETURN && !dart.notNull( _isWhitespace(codeUnit))) {
958 break;
959 }
960 index = dart.notNull(index) + 1;
961 }
962 return index;
963 }
964 static [_skipTrailingWhitespace](string, index) {
965 let SPACE = 32;
966 let CARRIAGE_RETURN = 13;
967 while (dart.notNull(index) > 0) {
968 let codeUnit = string.codeUnitAt(dart.notNull(index) - 1);
969 if (codeUnit !== SPACE && codeUnit !== CARRIAGE_RETURN && !dart.notNull( _isWhitespace(codeUnit))) {
970 break;
971 }
972 index = dart.notNull(index) - 1;
973 }
974 return index;
975 }
976 trim() {
977 let NEL = 133;
978 let result = this.trim();
979 if (result.length === 0)
980 return result;
981 let firstCode = result.codeUnitAt(0);
982 let startIndex = 0;
983 if (firstCode === NEL) {
984 startIndex = _skipLeadingWhitespace(result, 1);
985 if (startIndex === result.length)
986 return "";
987 }
988 let endIndex = result.length;
989 let lastCode = result.codeUnitAt(dart.notNull(endIndex) - 1);
990 if (lastCode === NEL) {
991 endIndex = _skipTrailingWhitespace(result, dart.notNull(endIndex) - 1);
992 }
993 if (startIndex === 0 && endIndex === result.length)
994 return result;
995 return result.substring(startIndex, endIndex);
996 }
997 trimLeft() {
998 let NEL = 133;
999 let result = null;
1000 let startIndex = 0;
1001 if (typeof this.trimLeft != "undefined") {
1002 result = this.trimLeft();
1003 if (result.length === 0)
1004 return result;
1005 let firstCode = result.codeUnitAt(0);
1006 if (firstCode === NEL) {
1007 startIndex = _skipLeadingWhitespace(result, 1);
1008 }
1009 } else {
1010 result = this;
1011 startIndex = _skipLeadingWhitespace(this, 0);
1012 }
1013 if (startIndex === 0)
1014 return result;
1015 if (startIndex === result.length)
1016 return "";
1017 return result.substring(startIndex);
1018 }
1019 trimRight() {
1020 let NEL = 133;
1021 let result = null;
1022 let endIndex = null;
1023 if (typeof this.trimRight != "undefined") {
1024 result = this.trimRight();
1025 endIndex = result.length;
1026 if (endIndex === 0)
1027 return result;
1028 let lastCode = result.codeUnitAt(dart.notNull(endIndex) - 1);
1029 if (lastCode === NEL) {
1030 endIndex = _skipTrailingWhitespace(result, dart.notNull(endIndex) - 1) ;
1031 }
1032 } else {
1033 result = this;
1034 endIndex = _skipTrailingWhitespace(this, this.length);
1035 }
1036 if (endIndex === result.length)
1037 return result;
1038 if (endIndex === 0)
1039 return "";
1040 return result.substring(0, endIndex);
1041 }
1042 ['*'](times) {
1043 if (0 >= dart.notNull(times))
1044 return '';
1045 if (times === 1 || this.length === 0)
1046 return this;
1047 if (times !== times >>> 0) {
1048 throw new core.OutOfMemoryError();
1049 }
1050 let result = '';
1051 let s = this;
1052 while (true) {
1053 if ((dart.notNull(times) & 1) === 1)
1054 result = s['+'](result);
1055 times = dart.as(times >>> 1, core.int);
1056 if (times === 0)
1057 break;
1058 s = s;
1059 }
1060 return result;
1061 }
1062 padLeft(width, padding) {
1063 if (padding === void 0)
1064 padding = ' ';
1065 let delta = dart.notNull(width) - dart.notNull(this.length);
1066 if (dart.notNull(delta) <= 0)
1067 return this;
1068 return core.String['+'](core.String['*'](padding, delta), this);
1069 }
1070 padRight(width, padding) {
1071 if (padding === void 0)
1072 padding = ' ';
1073 let delta = dart.notNull(width) - dart.notNull(this.length);
1074 if (dart.notNull(delta) <= 0)
1075 return this;
1076 return this['+'](core.String['*'](padding, delta));
1077 }
1078 get codeUnits() {
1079 return new _CodeUnits(this);
1080 }
1081 get runes() {
1082 return new core.Runes(this);
1083 }
1084 indexOf(pattern, start) {
1085 if (start === void 0)
1086 start = 0;
1087 _js_helper.checkNull(pattern);
1088 if (!(typeof start == number))
1089 throw new core.ArgumentError(start);
1090 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(this.len gth)) {
1091 throw new core.RangeError.range(start, 0, this.length);
1092 }
1093 if (typeof pattern == string) {
1094 return this.indexOf(pattern, start);
1095 }
1096 if (dart.is(pattern, _js_helper.JSSyntaxRegExp)) {
1097 let re = pattern;
1098 let match = _js_helper.firstMatchAfter(re, this, start);
1099 return match === null ? -1 : match.start;
1100 }
1101 for (let i = start; dart.notNull(i) <= dart.notNull(this.length); i = dart .notNull(i) + 1) {
1102 if (pattern.matchAsPrefix(this, i) !== null)
1103 return i;
1104 }
1105 return -1;
1106 }
1107 lastIndexOf(pattern, start) {
1108 if (start === void 0)
1109 start = null;
1110 _js_helper.checkNull(pattern);
1111 if (start === null) {
1112 start = this.length;
1113 } else if (!(typeof start == number)) {
1114 throw new core.ArgumentError(start);
1115 } else if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(t his.length)) {
1116 throw new core.RangeError.range(start, 0, this.length);
1117 }
1118 if (typeof pattern == string) {
1119 let other = pattern;
1120 if (dart.notNull(start) + dart.notNull(other.length) > dart.notNull(this .length)) {
1121 start = dart.notNull(this.length) - dart.notNull(other.length);
1122 }
1123 return dart.as(_js_helper.stringLastIndexOfUnchecked(this, other, start) , core.int);
1124 }
1125 for (let i = start; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) {
1126 if (pattern.matchAsPrefix(this, i) !== null)
1127 return i;
1128 }
1129 return -1;
1130 }
1131 contains(other, startIndex) {
1132 if (startIndex === void 0)
1133 startIndex = 0;
1134 _js_helper.checkNull(other);
1135 if (dart.notNull(startIndex) < 0 || dart.notNull(startIndex) > dart.notNul l(this.length)) {
1136 throw new core.RangeError.range(startIndex, 0, this.length);
1137 }
1138 return dart.as(_js_helper.stringContainsUnchecked(this, other, startIndex) , core.bool);
1139 }
1140 get isEmpty() {
1141 return this.length === 0;
1142 }
1143 get isNotEmpty() {
1144 return !dart.notNull(this.isEmpty);
1145 }
1146 compareTo(other) {
1147 if (!(typeof other == string))
1148 throw new core.ArgumentError(other);
1149 return dart.equals(this, other) ? 0 : this < other ? -1 : 1;
1150 }
1151 toString() {
1152 return this;
1153 }
1154 get hashCode() {
1155 let hash = 0;
1156 for (let i = 0; dart.notNull(i) < dart.notNull(this.length); i = dart.notN ull(i) + 1) {
1157 hash = 536870911 & dart.notNull(hash) + this.charCodeAt(i);
1158 hash = 536870911 & dart.notNull(hash) + ((524287 & dart.notNull(hash)) < < 10);
1159 hash = hash ^ hash >> 6;
1160 }
1161 hash = 536870911 & dart.notNull(hash) + ((67108863 & dart.notNull(hash)) < < 3);
1162 hash = hash ^ hash >> 11;
1163 return 536870911 & dart.notNull(hash) + ((16383 & dart.notNull(hash)) << 1 5);
1164 }
1165 get runtimeType() {
1166 return core.String;
1167 }
1168 get length() {
1169 return this.length;
1170 }
1171 get(index) {
1172 if (!(typeof index == number))
1173 throw new core.ArgumentError(index);
1174 if (dart.notNull(index) >= dart.notNull(this.length) || dart.notNull(index ) < 0)
1175 throw new core.RangeError.value(index);
1176 return this[index];
1177 }
1178 }
1179 let _string = Symbol('_string');
1180 class _CodeUnits extends _internal.UnmodifiableListBase$(core.int) {
1181 _CodeUnits($_string) {
1182 this[_string] = $_string;
1183 super.UnmodifiableListBase();
1184 }
1185 get length() {
1186 return this[_string].length;
1187 }
1188 get(i) {
1189 return this[_string].codeUnitAt(i);
1190 }
1191 }
1192 // Function _symbolToString: (Symbol) → String
1193 function _symbolToString(symbol) {
1194 return _internal.Symbol.getName(dart.as(symbol, _internal.Symbol));
1195 }
1196 // Function _symbolMapToStringMap: (Map<Symbol, dynamic>) → dynamic
1197 function _symbolMapToStringMap(map) {
1198 if (map === null)
1199 return null;
1200 let result = new core.Map();
1201 map.forEach((key, value) => {
1202 result.set(_symbolToString(key), value);
1203 });
1204 return result;
1205 }
1206 // Function getInterceptor: (dynamic) → dynamic
1207 function getInterceptor(object) {
1208 return void 0;
1209 }
1210 // Function getDispatchProperty: (dynamic) → dynamic
1211 function getDispatchProperty(object) {
1212 return object[_foreign_helper.JS_EMBEDDED_GLOBAL('String', _js_embedded_name s.DISPATCH_PROPERTY_NAME)];
1213 }
1214 // Function setDispatchProperty: (dynamic, dynamic) → dynamic
1215 function setDispatchProperty(object, value) {
1216 _js_helper.defineProperty(object, dart.as(_foreign_helper.JS_EMBEDDED_GLOBAL ('String', _js_embedded_names.DISPATCH_PROPERTY_NAME), core.String), value);
1217 }
1218 // Function makeDispatchRecord: (dynamic, dynamic, dynamic, dynamic) → dynamic
1219 function makeDispatchRecord(interceptor, proto, extension, indexability) {
1220 return {i: interceptor, p: proto, e: extension, x: indexability};
1221 }
1222 // Function dispatchRecordInterceptor: (dynamic) → dynamic
1223 function dispatchRecordInterceptor(record) {
1224 return record.i;
1225 }
1226 // Function dispatchRecordProto: (dynamic) → dynamic
1227 function dispatchRecordProto(record) {
1228 return record.p;
1229 }
1230 // Function dispatchRecordExtension: (dynamic) → dynamic
1231 function dispatchRecordExtension(record) {
1232 return record.e;
1233 }
1234 // Function dispatchRecordIndexability: (dynamic) → dynamic
1235 function dispatchRecordIndexability(record) {
1236 return record.x;
1237 }
1238 // Function getNativeInterceptor: (dynamic) → dynamic
1239 function getNativeInterceptor(object) {
1240 let record = getDispatchProperty(object);
1241 if (record === null) {
1242 if (_js_helper.initNativeDispatchFlag === null) {
1243 _js_helper.initNativeDispatch();
1244 record = getDispatchProperty(object);
1245 }
1246 }
1247 if (record !== null) {
1248 let proto = dispatchRecordProto(record);
1249 if (false === proto)
1250 return dispatchRecordInterceptor(record);
1251 if (true === proto)
1252 return object;
1253 let objectProto = Object.getPrototypeOf(object);
1254 if (proto === objectProto) {
1255 return dispatchRecordInterceptor(record);
1256 }
1257 let extension = dispatchRecordExtension(record);
1258 if (extension === objectProto) {
1259 let discriminatedTag = proto(object, record);
1260 throw new core.UnimplementedError(`Return interceptor for ${discriminate dTag}`);
1261 }
1262 }
1263 let interceptor = _js_helper.lookupAndCacheInterceptor(object);
1264 if (interceptor === null) {
1265 let proto = Object.getPrototypeOf(object);
1266 if (proto == null || proto === Object.prototype) {
1267 return _foreign_helper.JS_INTERCEPTOR_CONSTANT(PlainJavaScriptObject);
1268 } else {
1269 return _foreign_helper.JS_INTERCEPTOR_CONSTANT(UnknownJavaScriptObject);
1270 }
1271 }
1272 return interceptor;
1273 }
1274 dart.copyProperties(exports, {
1275 get mapTypeToInterceptor() {
1276 return _foreign_helper.JS_EMBEDDED_GLOBAL('', _js_embedded_names.MAP_TYPE_ TO_INTERCEPTOR);
1277 }
1278 });
1279 // Function findIndexForNativeSubclassType: (Type) → int
1280 function findIndexForNativeSubclassType(type) {
1281 if (exports.mapTypeToInterceptor == null)
1282 return null;
1283 let map = dart.as(exports.mapTypeToInterceptor, core.List);
1284 for (let i = 0; dart.notNull(i) + 1 < dart.notNull(map.length); i = 3) {
1285 if (dart.equals(type, map.get(i))) {
1286 return i;
1287 }
1288 }
1289 return null;
1290 }
1291 // Function findInterceptorConstructorForType: (Type) → dynamic
1292 function findInterceptorConstructorForType(type) {
1293 let index = findIndexForNativeSubclassType(type);
1294 if (index === null)
1295 return null;
1296 let map = dart.as(exports.mapTypeToInterceptor, core.List);
1297 return map.get(dart.notNull(index) + 1);
1298 }
1299 // Function findConstructorForNativeSubclassType: (Type, String) → dynamic
1300 function findConstructorForNativeSubclassType(type, name) {
1301 let index = findIndexForNativeSubclassType(type);
1302 if (index === null)
1303 return null;
1304 let map = dart.as(exports.mapTypeToInterceptor, core.List);
1305 let constructorMap = map.get(dart.notNull(index) + 2);
1306 let constructorFn = constructorMap[name];
1307 return constructorFn;
1308 }
1309 // Function findInterceptorForType: (Type) → dynamic
1310 function findInterceptorForType(type) {
1311 let constructor = findInterceptorConstructorForType(type);
1312 if (constructor === null)
1313 return null;
1314 return constructor.prototype;
1315 }
1316 class JSBool extends Interceptor {
1317 JSBool() {
1318 super.Interceptor();
1319 }
1320 toString() {
1321 return String(this);
1322 }
1323 get hashCode() {
1324 return this ? 2 * 3 * 23 * 3761 : 269 * 811;
1325 }
1326 get runtimeType() {
1327 return core.bool;
1328 }
1329 }
1330 class JSNull extends Interceptor {
1331 JSNull() {
1332 super.Interceptor();
1333 }
1334 ['=='](other) {
1335 return core.identical(null, other);
1336 }
1337 toString() {
1338 return 'null';
1339 }
1340 get hashCode() {
1341 return 0;
1342 }
1343 get runtimeType() {
1344 return core.Null;
1345 }
1346 noSuchMethod(invocation) {
1347 return super.noSuchMethod(invocation);
1348 }
1349 }
1350 class JSIndexable extends core.Object {
1351 }
1352 class JSMutableIndexable extends JSIndexable {
1353 }
1354 class JSObject extends core.Object {
1355 }
1356 class JavaScriptObject extends Interceptor {
1357 JavaScriptObject() {
1358 super.Interceptor();
1359 }
1360 get hashCode() {
1361 return 0;
1362 }
1363 get runtimeType() {
1364 return JSObject;
1365 }
1366 }
1367 class PlainJavaScriptObject extends JavaScriptObject {
1368 PlainJavaScriptObject() {
1369 super.JavaScriptObject();
1370 }
1371 }
1372 class UnknownJavaScriptObject extends JavaScriptObject {
1373 UnknownJavaScriptObject() {
1374 super.JavaScriptObject();
1375 }
1376 toString() {
1377 return String(this);
1378 }
1379 }
1380 // Exports:
1381 exports.JSArray = JSArray;
1382 exports.JSArray$ = JSArray$;
1383 exports.Interceptor = Interceptor;
1384 exports.JSMutableArray = JSMutableArray;
1385 exports.JSMutableArray$ = JSMutableArray$;
1386 exports.JSFixedArray = JSFixedArray;
1387 exports.JSFixedArray$ = JSFixedArray$;
1388 exports.JSExtendableArray = JSExtendableArray;
1389 exports.JSExtendableArray$ = JSExtendableArray$;
1390 exports.JSNumber = JSNumber;
1391 exports.JSInt = JSInt;
1392 exports.JSDouble = JSDouble;
1393 exports.JSPositiveInt = JSPositiveInt;
1394 exports.JSUInt32 = JSUInt32;
1395 exports.JSUInt31 = JSUInt31;
1396 exports.JSString = JSString;
1397 exports.getInterceptor = getInterceptor;
1398 exports.getDispatchProperty = getDispatchProperty;
1399 exports.setDispatchProperty = setDispatchProperty;
1400 exports.makeDispatchRecord = makeDispatchRecord;
1401 exports.dispatchRecordInterceptor = dispatchRecordInterceptor;
1402 exports.dispatchRecordProto = dispatchRecordProto;
1403 exports.dispatchRecordExtension = dispatchRecordExtension;
1404 exports.dispatchRecordIndexability = dispatchRecordIndexability;
1405 exports.getNativeInterceptor = getNativeInterceptor;
1406 exports.mapTypeToInterceptor = mapTypeToInterceptor;
1407 exports.findIndexForNativeSubclassType = findIndexForNativeSubclassType;
1408 exports.findInterceptorConstructorForType = findInterceptorConstructorForType;
1409 exports.findConstructorForNativeSubclassType = findConstructorForNativeSubclas sType;
1410 exports.findInterceptorForType = findInterceptorForType;
1411 exports.JSBool = JSBool;
1412 exports.JSNull = JSNull;
1413 exports.JSIndexable = JSIndexable;
1414 exports.JSMutableIndexable = JSMutableIndexable;
1415 exports.JSObject = JSObject;
1416 exports.JavaScriptObject = JavaScriptObject;
1417 exports.PlainJavaScriptObject = PlainJavaScriptObject;
1418 exports.UnknownJavaScriptObject = UnknownJavaScriptObject;
1419 })(_interceptors || (_interceptors = {}));
OLDNEW
« no previous file with comments | « test/codegen/expect/dart/_foreign_helper.js ('k') | test/codegen/expect/dart/_internal.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698