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

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

Issue 1156993015: fixes #193, factory constructors as static methods (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 6 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 core = dart.defineLibrary(core, {}); 1 var core = dart.defineLibrary(core, {});
2 var _js_helper = dart.lazyImport(_js_helper); 2 var _js_helper = dart.lazyImport(_js_helper);
3 var _internal = dart.lazyImport(_internal); 3 var _internal = dart.lazyImport(_internal);
4 var collection = dart.lazyImport(collection); 4 var collection = dart.lazyImport(collection);
5 var _interceptors = dart.lazyImport(_interceptors); 5 var _interceptors = dart.lazyImport(_interceptors);
6 var math = dart.lazyImport(math); 6 var math = dart.lazyImport(math);
7 var convert = dart.lazyImport(convert); 7 var convert = dart.lazyImport(convert);
8 (function(exports, _js_helper, _internal, collection, _interceptors, math, conve rt) { 8 (function(exports, _js_helper, _internal, collection, _interceptors, math, conve rt) {
9 'use strict'; 9 'use strict';
10 class Object { 10 class Object {
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 let override = dart.const(new _Override()); 87 let override = dart.const(new _Override());
88 class _Proxy extends Object { 88 class _Proxy extends Object {
89 _Proxy() { 89 _Proxy() {
90 } 90 }
91 } 91 }
92 dart.setSignature(_Proxy, { 92 dart.setSignature(_Proxy, {
93 constructors: () => ({_Proxy: [_Proxy, []]}) 93 constructors: () => ({_Proxy: [_Proxy, []]})
94 }); 94 });
95 let proxy = dart.const(new _Proxy()); 95 let proxy = dart.const(new _Proxy());
96 class bool extends Object { 96 class bool extends Object {
97 fromEnvironment(name, opts) { 97 static fromEnvironment(name, opts) {
98 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : fa lse; 98 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : fa lse;
99 throw new UnsupportedError('bool.fromEnvironment can only be used as a con st constructor'); 99 throw new UnsupportedError('bool.fromEnvironment can only be used as a con st constructor');
100 } 100 }
101 toString() { 101 toString() {
102 return this ? "true" : "false"; 102 return this ? "true" : "false";
103 } 103 }
104 } 104 }
105 dart.defineNamedConstructor(bool, 'fromEnvironment');
106 dart.setSignature(bool, { 105 dart.setSignature(bool, {
107 constructors: () => ({fromEnvironment: [bool, [String], {defaultValue: bool} ]}) 106 constructors: () => ({fromEnvironment: [bool, [String], {defaultValue: bool} ]})
108 }); 107 });
109 let Comparator$ = dart.generic(function(T) { 108 let Comparator$ = dart.generic(function(T) {
110 let Comparator = dart.typedef('Comparator', () => dart.functionType(int, [T, T])); 109 let Comparator = dart.typedef('Comparator', () => dart.functionType(int, [T, T]));
111 return Comparator; 110 return Comparator;
112 }); 111 });
113 let Comparator = Comparator$(); 112 let Comparator = Comparator$();
114 let Comparable$ = dart.generic(function(T) { 113 let Comparable$ = dart.generic(function(T) {
115 class Comparable extends Object { 114 class Comparable extends Object {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 if (second === void 0) 151 if (second === void 0)
153 second = 0; 152 second = 0;
154 if (millisecond === void 0) 153 if (millisecond === void 0)
155 millisecond = 0; 154 millisecond = 0;
156 this._internal(year, month, day, hour, minute, second, millisecond, true); 155 this._internal(year, month, day, hour, minute, second, millisecond, true);
157 } 156 }
158 now() { 157 now() {
159 this._now(); 158 this._now();
160 } 159 }
161 static parse(formattedString) { 160 static parse(formattedString) {
162 let re = new RegExp('^([+-]?\\d{4,6})-?(\\d\\d)-?(\\d\\d)' + '(?:[ T](\\d\ \d)(?::?(\\d\\d)(?::?(\\d\\d)(.\\d{1,6})?)?)?' + '( ?[zZ]| ?([-+])(\\d\\d)(?::?( \\d\\d))?)?)?$'); 161 let re = RegExp.new('^([+-]?\\d{4,6})-?(\\d\\d)-?(\\d\\d)' + '(?:[ T](\\d\ \d)(?::?(\\d\\d)(?::?(\\d\\d)(.\\d{1,6})?)?)?' + '( ?[zZ]| ?([-+])(\\d\\d)(?::?( \\d\\d))?)?)?$');
163 let match = re.firstMatch(formattedString); 162 let match = re.firstMatch(formattedString);
164 if (match != null) { 163 if (match != null) {
165 let parseIntOrZero = matched => { 164 let parseIntOrZero = matched => {
166 if (matched == null) 165 if (matched == null)
167 return 0; 166 return 0;
168 return int.parse(matched); 167 return int.parse(matched);
169 }; 168 };
170 dart.fn(parseIntOrZero, int, [String]); 169 dart.fn(parseIntOrZero, int, [String]);
171 let parseDoubleOrZero = matched => { 170 let parseDoubleOrZero = matched => {
172 if (matched == null) 171 if (matched == null)
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after
741 } 740 }
742 range(invalidValue, minValue, maxValue, name, message) { 741 range(invalidValue, minValue, maxValue, name, message) {
743 if (name === void 0) 742 if (name === void 0)
744 name = null; 743 name = null;
745 if (message === void 0) 744 if (message === void 0)
746 message = null; 745 message = null;
747 this.start = minValue; 746 this.start = minValue;
748 this.end = maxValue; 747 this.end = maxValue;
749 super.value(invalidValue, name, message != null ? message : "Invalid value "); 748 super.value(invalidValue, name, message != null ? message : "Invalid value ");
750 } 749 }
751 index(index, indexable, name, message, length) { 750 static index(index, indexable, name, message, length) {
752 return new IndexError(index, indexable, name, message, length); 751 return new IndexError(index, indexable, name, message, length);
753 } 752 }
754 static checkValueInInterval(value, minValue, maxValue, name, message) { 753 static checkValueInInterval(value, minValue, maxValue, name, message) {
755 if (name === void 0) 754 if (name === void 0)
756 name = null; 755 name = null;
757 if (message === void 0) 756 if (message === void 0)
758 message = null; 757 message = null;
759 if (dart.notNull(value) < dart.notNull(minValue) || dart.notNull(value) > dart.notNull(maxValue)) { 758 if (dart.notNull(value) < dart.notNull(minValue) || dart.notNull(value) > dart.notNull(maxValue)) {
760 throw new RangeError.range(value, minValue, maxValue, name, message); 759 throw new RangeError.range(value, minValue, maxValue, name, message);
761 } 760 }
762 } 761 }
763 static checkValidIndex(index, indexable, name, length, message) { 762 static checkValidIndex(index, indexable, name, length, message) {
764 if (name === void 0) 763 if (name === void 0)
765 name = null; 764 name = null;
766 if (length === void 0) 765 if (length === void 0)
767 length = null; 766 length = null;
768 if (message === void 0) 767 if (message === void 0)
769 message = null; 768 message = null;
770 if (length == null) 769 if (length == null)
771 length = dart.as(dart.dload(indexable, 'length'), int); 770 length = dart.as(dart.dload(indexable, 'length'), int);
772 if (dart.notNull(index) < 0 || dart.notNull(index) >= dart.notNull(length) ) { 771 if (dart.notNull(index) < 0 || dart.notNull(index) >= dart.notNull(length) ) {
773 if (name == null) 772 if (name == null)
774 name = "index"; 773 name = "index";
775 throw new RangeError.index(index, indexable, name, message, length); 774 throw RangeError.index(index, indexable, name, message, length);
776 } 775 }
777 } 776 }
778 static checkValidRange(start, end, length, startName, endName, message) { 777 static checkValidRange(start, end, length, startName, endName, message) {
779 if (startName === void 0) 778 if (startName === void 0)
780 startName = null; 779 startName = null;
781 if (endName === void 0) 780 if (endName === void 0)
782 endName = null; 781 endName = null;
783 if (message === void 0) 782 if (message === void 0)
784 message = null; 783 message = null;
785 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(length)) { 784 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(length)) {
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
817 } else if (dart.notNull(this.end) < dart.notNull(this.start)) { 816 } else if (dart.notNull(this.end) < dart.notNull(this.start)) {
818 explanation = ": Valid value range is empty"; 817 explanation = ": Valid value range is empty";
819 } else { 818 } else {
820 explanation = `: Only valid value is ${this.start}`; 819 explanation = `: Only valid value is ${this.start}`;
821 } 820 }
822 return `RangeError: ${this.message} (${value})${explanation}`; 821 return `RangeError: ${this.message} (${value})${explanation}`;
823 } 822 }
824 } 823 }
825 dart.defineNamedConstructor(RangeError, 'value'); 824 dart.defineNamedConstructor(RangeError, 'value');
826 dart.defineNamedConstructor(RangeError, 'range'); 825 dart.defineNamedConstructor(RangeError, 'range');
827 dart.defineNamedConstructor(RangeError, 'index');
828 dart.setSignature(RangeError, { 826 dart.setSignature(RangeError, {
829 constructors: () => ({ 827 constructors: () => ({
830 RangeError: [RangeError, [Object]], 828 RangeError: [RangeError, [Object]],
831 value: [RangeError, [num], [String, String]], 829 value: [RangeError, [num], [String, String]],
832 range: [RangeError, [num, int, int], [String, String]], 830 range: [RangeError, [num, int, int], [String, String]],
833 index: [RangeError, [int, Object], [String, String, int]] 831 index: [RangeError, [int, Object], [String, String, int]]
834 }), 832 }),
835 statics: () => ({ 833 statics: () => ({
836 checkValueInInterval: [dart.void, [int, int, int], [String, String]], 834 checkValueInInterval: [dart.void, [int, int, int], [String, String]],
837 checkValidIndex: [dart.void, [int, Object], [String, int, String]], 835 checkValidIndex: [dart.void, [int, Object], [String, int, String]],
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
1044 super.Error(); 1042 super.Error();
1045 } 1043 }
1046 toString() { 1044 toString() {
1047 return this.variableName == null ? "Reading static variable during its ini tialization" : `Reading static variable '${this.variableName}' during its initia lization`; 1045 return this.variableName == null ? "Reading static variable during its ini tialization" : `Reading static variable '${this.variableName}' during its initia lization`;
1048 } 1046 }
1049 } 1047 }
1050 dart.setSignature(CyclicInitializationError, { 1048 dart.setSignature(CyclicInitializationError, {
1051 constructors: () => ({CyclicInitializationError: [CyclicInitializationError, [], [String]]}) 1049 constructors: () => ({CyclicInitializationError: [CyclicInitializationError, [], [String]]})
1052 }); 1050 });
1053 class Exception extends Object { 1051 class Exception extends Object {
1054 Exception(message) { 1052 static new(message) {
1055 if (message === void 0) 1053 if (message === void 0)
1056 message = null; 1054 message = null;
1057 return new _ExceptionImplementation(message); 1055 return new _ExceptionImplementation(message);
1058 } 1056 }
1059 } 1057 }
1060 dart.setSignature(Exception, { 1058 dart.setSignature(Exception, {
1061 constructors: () => ({Exception: [Exception, [], [Object]]}) 1059 constructors: () => ({new: [Exception, [], [Object]]})
1062 }); 1060 });
1063 class _ExceptionImplementation extends Object { 1061 class _ExceptionImplementation extends Object {
1064 _ExceptionImplementation(message) { 1062 _ExceptionImplementation(message) {
1065 if (message === void 0) 1063 if (message === void 0)
1066 message = null; 1064 message = null;
1067 this.message = message; 1065 this.message = message;
1068 } 1066 }
1069 toString() { 1067 toString() {
1070 if (this.message == null) 1068 if (this.message == null)
1071 return "Exception"; 1069 return "Exception";
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
1253 }); 1251 });
1254 function identical(a, b) { 1252 function identical(a, b) {
1255 return _js_helper.Primitives.identicalImplementation(a, b); 1253 return _js_helper.Primitives.identicalImplementation(a, b);
1256 } 1254 }
1257 dart.fn(identical, bool, [Object, Object]); 1255 dart.fn(identical, bool, [Object, Object]);
1258 function identityHashCode(object) { 1256 function identityHashCode(object) {
1259 return _js_helper.objectHashCode(object); 1257 return _js_helper.objectHashCode(object);
1260 } 1258 }
1261 dart.fn(identityHashCode, () => dart.functionType(int, [Object])); 1259 dart.fn(identityHashCode, () => dart.functionType(int, [Object]));
1262 class int extends num { 1260 class int extends num {
1263 fromEnvironment(name, opts) { 1261 static fromEnvironment(name, opts) {
1264 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : nu ll; 1262 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : nu ll;
1265 throw new UnsupportedError('int.fromEnvironment can only be used as a cons t constructor'); 1263 throw new UnsupportedError('int.fromEnvironment can only be used as a cons t constructor');
1266 } 1264 }
1267 static parse(source, opts) { 1265 static parse(source, opts) {
1268 let radix = opts && 'radix' in opts ? opts.radix : null; 1266 let radix = opts && 'radix' in opts ? opts.radix : null;
1269 let onError = opts && 'onError' in opts ? opts.onError : null; 1267 let onError = opts && 'onError' in opts ? opts.onError : null;
1270 return _js_helper.Primitives.parseInt(source, radix, onError); 1268 return _js_helper.Primitives.parseInt(source, radix, onError);
1271 } 1269 }
1272 } 1270 }
1273 dart.defineNamedConstructor(int, 'fromEnvironment');
1274 dart.setSignature(int, { 1271 dart.setSignature(int, {
1275 constructors: () => ({fromEnvironment: [int, [String], {defaultValue: int}]} ), 1272 constructors: () => ({fromEnvironment: [int, [String], {defaultValue: int}]} ),
1276 statics: () => ({parse: [int, [String], {radix: int, onError: dart.functionT ype(int, [String])}]}), 1273 statics: () => ({parse: [int, [String], {radix: int, onError: dart.functionT ype(int, [String])}]}),
1277 names: ['parse'] 1274 names: ['parse']
1278 }); 1275 });
1279 class Invocation extends Object { 1276 class Invocation extends Object {
1280 get isAccessor() { 1277 get isAccessor() {
1281 return dart.notNull(this.isGetter) || dart.notNull(this.isSetter); 1278 return dart.notNull(this.isGetter) || dart.notNull(this.isSetter);
1282 } 1279 }
1283 } 1280 }
1284 let $iterator = dart.JsSymbol('$iterator'); 1281 let $iterator = dart.JsSymbol('$iterator');
1285 let $join = dart.JsSymbol('$join'); 1282 let $join = dart.JsSymbol('$join');
1286 let Iterable$ = dart.generic(function(E) { 1283 let Iterable$ = dart.generic(function(E) {
1287 class Iterable extends Object { 1284 class Iterable extends Object {
1288 Iterable() { 1285 Iterable() {
1289 } 1286 }
1290 generate(count, generator) { 1287 static generate(count, generator) {
1291 if (generator === void 0) 1288 if (generator === void 0)
1292 generator = null; 1289 generator = null;
1293 if (dart.notNull(count) <= 0) 1290 if (dart.notNull(count) <= 0)
1294 return new (_internal.EmptyIterable$(E))(); 1291 return new (_internal.EmptyIterable$(E))();
1295 return new (exports._GeneratorIterable$(E))(count, generator); 1292 return new (exports._GeneratorIterable$(E))(count, generator);
1296 } 1293 }
1297 [dart.JsSymbol.iterator]() { 1294 [dart.JsSymbol.iterator]() {
1298 return new dart.JsIterator(this[$iterator]); 1295 return new dart.JsIterator(this[$iterator]);
1299 } 1296 }
1300 [$join](separator) { 1297 [$join](separator) {
1301 if (separator === void 0) 1298 if (separator === void 0)
1302 separator = ""; 1299 separator = "";
1303 let buffer = new StringBuffer(); 1300 let buffer = new StringBuffer();
1304 buffer.writeAll(this, separator); 1301 buffer.writeAll(this, separator);
1305 return dart.toString(buffer); 1302 return dart.toString(buffer);
1306 } 1303 }
1307 } 1304 }
1308 dart.defineNamedConstructor(Iterable, 'generate');
1309 dart.setSignature(Iterable, { 1305 dart.setSignature(Iterable, {
1310 constructors: () => ({ 1306 constructors: () => ({
1311 Iterable: [Iterable$(E), []], 1307 Iterable: [Iterable$(E), []],
1312 generate: [Iterable$(E), [int], [dart.functionType(E, [int])]] 1308 generate: [Iterable$(E), [int], [dart.functionType(E, [int])]]
1313 }), 1309 }),
1314 methods: () => ({[$join]: [String, [], [String]]}) 1310 methods: () => ({[$join]: [String, [], [String]]})
1315 }); 1311 });
1316 return Iterable; 1312 return Iterable;
1317 }); 1313 });
1318 let Iterable = Iterable$(); 1314 let Iterable = Iterable$();
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
1473 let $retainWhere = dart.JsSymbol('$retainWhere'); 1469 let $retainWhere = dart.JsSymbol('$retainWhere');
1474 let $sublist = dart.JsSymbol('$sublist'); 1470 let $sublist = dart.JsSymbol('$sublist');
1475 let $getRange = dart.JsSymbol('$getRange'); 1471 let $getRange = dart.JsSymbol('$getRange');
1476 let $setRange = dart.JsSymbol('$setRange'); 1472 let $setRange = dart.JsSymbol('$setRange');
1477 let $removeRange = dart.JsSymbol('$removeRange'); 1473 let $removeRange = dart.JsSymbol('$removeRange');
1478 let $fillRange = dart.JsSymbol('$fillRange'); 1474 let $fillRange = dart.JsSymbol('$fillRange');
1479 let $replaceRange = dart.JsSymbol('$replaceRange'); 1475 let $replaceRange = dart.JsSymbol('$replaceRange');
1480 let $asMap = dart.JsSymbol('$asMap'); 1476 let $asMap = dart.JsSymbol('$asMap');
1481 let List$ = dart.generic(function(E) { 1477 let List$ = dart.generic(function(E) {
1482 class List extends Object { 1478 class List extends Object {
1483 List(length) { 1479 static new(length) {
1484 if (length === void 0) 1480 if (length === void 0)
1485 length = null; 1481 length = null;
1486 let list = null; 1482 let list = null;
1487 if (length == null) { 1483 if (length == null) {
1488 list = []; 1484 list = [];
1489 } else { 1485 } else {
1490 if (!(typeof length == 'number') || dart.notNull(length) < 0) { 1486 if (!(typeof length == 'number') || dart.notNull(length) < 0) {
1491 throw new ArgumentError(`Length must be a non-negative integer: ${le ngth}`); 1487 throw new ArgumentError(`Length must be a non-negative integer: ${le ngth}`);
1492 } 1488 }
1493 list = new Array(length); 1489 list = new Array(length);
1494 list.fixed$length = Array; 1490 list.fixed$length = Array;
1495 } 1491 }
1496 dart.setType(list, List$(E)); 1492 dart.setType(list, List$(E));
1497 return dart.as(list, List$(E)); 1493 return dart.as(list, List$(E));
1498 } 1494 }
1499 filled(length, fill) { 1495 static filled(length, fill) {
1500 let result = new (List$(E))(length); 1496 let result = List$(E).new(length);
1501 if (length != 0 && dart.notNull(fill != null)) { 1497 if (length != 0 && dart.notNull(fill != null)) {
1502 for (let i = 0; dart.notNull(i) < dart.notNull(result[$length]); i = d art.notNull(i) + 1) { 1498 for (let i = 0; dart.notNull(i) < dart.notNull(result[$length]); i = d art.notNull(i) + 1) {
1503 result[$set](i, fill); 1499 result[$set](i, fill);
1504 } 1500 }
1505 } 1501 }
1506 return result; 1502 return result;
1507 } 1503 }
1508 from(elements, opts) { 1504 static from(elements, opts) {
1509 let growable = opts && 'growable' in opts ? opts.growable : true; 1505 let growable = opts && 'growable' in opts ? opts.growable : true;
1510 let list = new (List$(E))(); 1506 let list = List$(E).new();
1511 for (let e of elements) { 1507 for (let e of elements) {
1512 list[$add](dart.as(e, E)); 1508 list[$add](dart.as(e, E));
1513 } 1509 }
1514 if (growable) 1510 if (growable)
1515 return list; 1511 return list;
1516 return dart.as(_internal.makeListFixedLength(list), List$(E)); 1512 return dart.as(_internal.makeListFixedLength(list), List$(E));
1517 } 1513 }
1518 generate(length, generator, opts) { 1514 static generate(length, generator, opts) {
1519 let growable = opts && 'growable' in opts ? opts.growable : true; 1515 let growable = opts && 'growable' in opts ? opts.growable : true;
1520 let result = null; 1516 let result = null;
1521 if (growable) { 1517 if (growable) {
1522 result = dart.setType([], List$(E)); 1518 result = dart.setType([], List$(E));
1523 result[$length] = length; 1519 result[$length] = length;
1524 } else { 1520 } else {
1525 result = new (List$(E))(length); 1521 result = List$(E).new(length);
1526 } 1522 }
1527 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) { 1523 for (let i = 0; dart.notNull(i) < dart.notNull(length); i = dart.notNull (i) + 1) {
1528 result[$set](i, generator(i)); 1524 result[$set](i, generator(i));
1529 } 1525 }
1530 return result; 1526 return result;
1531 } 1527 }
1532 [$checkMutable](reason) {} 1528 [$checkMutable](reason) {}
1533 [$checkGrowable](reason) {} 1529 [$checkGrowable](reason) {}
1534 [$where](f) { 1530 [$where](f) {
1535 dart.as(f, dart.functionType(bool, [E])); 1531 dart.as(f, dart.functionType(bool, [E]));
(...skipping 13 matching lines...) Expand all
1549 } 1545 }
1550 } 1546 }
1551 } 1547 }
1552 [$map](f) { 1548 [$map](f) {
1553 dart.as(f, dart.functionType(Object, [E])); 1549 dart.as(f, dart.functionType(Object, [E]));
1554 return _internal.IterableMixinWorkaround.mapList(this, f); 1550 return _internal.IterableMixinWorkaround.mapList(this, f);
1555 } 1551 }
1556 [$join](separator) { 1552 [$join](separator) {
1557 if (separator === void 0) 1553 if (separator === void 0)
1558 separator = ""; 1554 separator = "";
1559 let list = new (List$())(this[$length]); 1555 let list = List$().new(this[$length]);
1560 for (let i = 0; dart.notNull(i) < dart.notNull(this[$length]); i = dart. notNull(i) + 1) { 1556 for (let i = 0; dart.notNull(i) < dart.notNull(this[$length]); i = dart. notNull(i) + 1) {
1561 list[$set](i, `${this[$get](i)}`); 1557 list[$set](i, `${this[$get](i)}`);
1562 } 1558 }
1563 return list.join(separator); 1559 return list.join(separator);
1564 } 1560 }
1565 [$take](n) { 1561 [$take](n) {
1566 return new (_internal.IterableMixinWorkaround$(E))().takeList(this, n); 1562 return new (_internal.IterableMixinWorkaround$(E))().takeList(this, n);
1567 } 1563 }
1568 [$takeWhile](test) { 1564 [$takeWhile](test) {
1569 dart.as(test, dart.functionType(bool, [E])); 1565 dart.as(test, dart.functionType(bool, [E]));
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
1642 return !dart.notNull(this[$isEmpty]); 1638 return !dart.notNull(this[$isEmpty]);
1643 } 1639 }
1644 [$toString]() { 1640 [$toString]() {
1645 return collection.ListBase.listToString(this); 1641 return collection.ListBase.listToString(this);
1646 } 1642 }
1647 [$toList](opts) { 1643 [$toList](opts) {
1648 let growable = opts && 'growable' in opts ? opts.growable : true; 1644 let growable = opts && 'growable' in opts ? opts.growable : true;
1649 return dart.as(dart.setType(this.slice(), core.List$(E)), List$(E)); 1645 return dart.as(dart.setType(this.slice(), core.List$(E)), List$(E));
1650 } 1646 }
1651 [$toSet]() { 1647 [$toSet]() {
1652 return new (exports.Set$(E)).from(this); 1648 return exports.Set$(E).from(this);
1653 } 1649 }
1654 get [$iterator]() { 1650 get [$iterator]() {
1655 return new (_internal.ListIterator$(E))(this); 1651 return new (_internal.ListIterator$(E))(this);
1656 } 1652 }
1657 get [$hashCode]() { 1653 get [$hashCode]() {
1658 return _js_helper.Primitives.objectHashCode(this); 1654 return _js_helper.Primitives.objectHashCode(this);
1659 } 1655 }
1660 [$get](index) { 1656 [$get](index) {
1661 if (!(typeof index == 'number')) 1657 if (!(typeof index == 'number'))
1662 throw new ArgumentError(index); 1658 throw new ArgumentError(index);
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
1791 end = this[$length]; 1787 end = this[$length];
1792 } else { 1788 } else {
1793 if (!(typeof end == 'number')) 1789 if (!(typeof end == 'number'))
1794 throw new ArgumentError(end); 1790 throw new ArgumentError(end);
1795 if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dar t.notNull(this[$length])) { 1791 if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dar t.notNull(this[$length])) {
1796 throw new RangeError.range(end, start, this[$length]); 1792 throw new RangeError.range(end, start, this[$length]);
1797 } 1793 }
1798 } 1794 }
1799 if (start == end) 1795 if (start == end)
1800 return dart.setType([], List$(E)); 1796 return dart.setType([], List$(E));
1801 return new (_interceptors.JSArray$(E)).markGrowable(this.slice(start, en d)); 1797 return _interceptors.JSArray$(E).markGrowable(this.slice(start, end));
1802 } 1798 }
1803 [$getRange](start, end) { 1799 [$getRange](start, end) {
1804 return new (_internal.IterableMixinWorkaround$(E))().getRangeList(this, start, end); 1800 return new (_internal.IterableMixinWorkaround$(E))().getRangeList(this, start, end);
1805 } 1801 }
1806 [$setRange](start, end, iterable, skipCount) { 1802 [$setRange](start, end, iterable, skipCount) {
1807 dart.as(iterable, Iterable$(E)); 1803 dart.as(iterable, Iterable$(E));
1808 if (skipCount === void 0) 1804 if (skipCount === void 0)
1809 skipCount = 0; 1805 skipCount = 0;
1810 this[$checkMutable]('set range'); 1806 this[$checkMutable]('set range');
1811 _internal.IterableMixinWorkaround.setRangeList(this, start, end, iterabl e, skipCount); 1807 _internal.IterableMixinWorkaround.setRangeList(this, start, end, iterabl e, skipCount);
(...skipping 21 matching lines...) Expand all
1833 dart.as(replacement, Iterable$(E)); 1829 dart.as(replacement, Iterable$(E));
1834 this[$checkGrowable]('removeRange'); 1830 this[$checkGrowable]('removeRange');
1835 _internal.IterableMixinWorkaround.replaceRangeList(this, start, end, rep lacement); 1831 _internal.IterableMixinWorkaround.replaceRangeList(this, start, end, rep lacement);
1836 } 1832 }
1837 [$asMap]() { 1833 [$asMap]() {
1838 return new (_internal.IterableMixinWorkaround$(E))().asMapList(this); 1834 return new (_internal.IterableMixinWorkaround$(E))().asMapList(this);
1839 } 1835 }
1840 } 1836 }
1841 dart.setBaseClass(List, dart.global.Array); 1837 dart.setBaseClass(List, dart.global.Array);
1842 List[dart.implements] = () => [Iterable$(E), _internal.EfficientLength]; 1838 List[dart.implements] = () => [Iterable$(E), _internal.EfficientLength];
1843 dart.defineNamedConstructor(List, 'filled');
1844 dart.defineNamedConstructor(List, 'from');
1845 dart.defineNamedConstructor(List, 'generate');
1846 dart.setSignature(List, { 1839 dart.setSignature(List, {
1847 constructors: () => ({ 1840 constructors: () => ({
1848 List: [List$(E), [], [int]], 1841 new: [List$(E), [], [int]],
1849 filled: [List$(E), [int, E]], 1842 filled: [List$(E), [int, E]],
1850 from: [List$(E), [Iterable], {growable: bool}], 1843 from: [List$(E), [Iterable], {growable: bool}],
1851 generate: [List$(E), [int, dart.functionType(E, [int])], {growable: bool }] 1844 generate: [List$(E), [int, dart.functionType(E, [int])], {growable: bool }]
1852 }), 1845 }),
1853 methods: () => ({ 1846 methods: () => ({
1854 [$checkMutable]: [Object, [Object]], 1847 [$checkMutable]: [Object, [Object]],
1855 [$checkGrowable]: [Object, [Object]], 1848 [$checkGrowable]: [Object, [Object]],
1856 [$where]: [Iterable$(E), [dart.functionType(bool, [E])]], 1849 [$where]: [Iterable$(E), [dart.functionType(bool, [E])]],
1857 [$expand]: [Iterable, [dart.functionType(Iterable, [E])]], 1850 [$expand]: [Iterable, [dart.functionType(Iterable, [E])]],
1858 [$forEach]: [dart.void, [dart.functionType(dart.void, [E])]], 1851 [$forEach]: [dart.void, [dart.functionType(dart.void, [E])]],
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1898 [$replaceRange]: [dart.void, [int, int, Iterable$(E)]], 1891 [$replaceRange]: [dart.void, [int, int, Iterable$(E)]],
1899 [$asMap]: [Map$(int, E), []] 1892 [$asMap]: [Map$(int, E), []]
1900 }) 1893 })
1901 }); 1894 });
1902 return List; 1895 return List;
1903 }); 1896 });
1904 let List = List$(); 1897 let List = List$();
1905 dart.registerExtension(dart.global.Array, List); 1898 dart.registerExtension(dart.global.Array, List);
1906 let Map$ = dart.generic(function(K, V) { 1899 let Map$ = dart.generic(function(K, V) {
1907 class Map extends Object { 1900 class Map extends Object {
1908 Map() { 1901 static new() {
1909 return new (collection.LinkedHashMap$(K, V))(); 1902 return collection.LinkedHashMap$(K, V).new();
1910 } 1903 }
1911 from(other) { 1904 static from(other) {
1912 return new (collection.LinkedHashMap$(K, V)).from(other); 1905 return collection.LinkedHashMap$(K, V).from(other);
1913 } 1906 }
1914 identity() { 1907 static identity() {
1915 return new (collection.LinkedHashMap$(K, V)).identity(); 1908 return collection.LinkedHashMap$(K, V).identity();
1916 } 1909 }
1917 fromIterable(iterable, opts) { 1910 static fromIterable(iterable, opts) {
1918 return new (collection.LinkedHashMap$(K, V)).fromIterable(iterable, opts ); 1911 return collection.LinkedHashMap$(K, V).fromIterable(iterable, opts);
1919 } 1912 }
1920 fromIterables(keys, values) { 1913 static fromIterables(keys, values) {
1921 return new (collection.LinkedHashMap$(K, V)).fromIterables(keys, values) ; 1914 return collection.LinkedHashMap$(K, V).fromIterables(keys, values);
1922 } 1915 }
1923 } 1916 }
1924 dart.defineNamedConstructor(Map, 'from');
1925 dart.defineNamedConstructor(Map, 'identity');
1926 dart.defineNamedConstructor(Map, 'fromIterable');
1927 dart.defineNamedConstructor(Map, 'fromIterables');
1928 dart.setSignature(Map, { 1917 dart.setSignature(Map, {
1929 constructors: () => ({ 1918 constructors: () => ({
1930 Map: [Map$(K, V), []], 1919 new: [Map$(K, V), []],
1931 from: [Map$(K, V), [Map$()]], 1920 from: [Map$(K, V), [Map$()]],
1932 identity: [Map$(K, V), []], 1921 identity: [Map$(K, V), []],
1933 fromIterable: [Map$(K, V), [Iterable], {key: dart.functionType(K, [dart. bottom]), value: dart.functionType(V, [dart.bottom])}], 1922 fromIterable: [Map$(K, V), [Iterable], {key: dart.functionType(K, [dart. bottom]), value: dart.functionType(V, [dart.bottom])}],
1934 fromIterables: [Map$(K, V), [Iterable$(K), Iterable$(V)]] 1923 fromIterables: [Map$(K, V), [Iterable$(K), Iterable$(V)]]
1935 }) 1924 })
1936 }); 1925 });
1937 return Map; 1926 return Map;
1938 }); 1927 });
1939 let Map = Map$(); 1928 let Map = Map$();
1940 class Null extends Object { 1929 class Null extends Object {
1941 _uninstantiable() { 1930 static _uninstantiable() {
1942 throw new UnsupportedError('class Null cannot be instantiated'); 1931 throw new UnsupportedError('class Null cannot be instantiated');
1943 } 1932 }
1944 toString() { 1933 toString() {
1945 return "null"; 1934 return "null";
1946 } 1935 }
1947 } 1936 }
1948 dart.defineNamedConstructor(Null, '_uninstantiable');
1949 dart.setSignature(Null, { 1937 dart.setSignature(Null, {
1950 constructors: () => ({_uninstantiable: [Null, []]}) 1938 constructors: () => ({_uninstantiable: [Null, []]})
1951 }); 1939 });
1952 num._parseError = false; 1940 num._parseError = false;
1953 class Pattern extends Object {} 1941 class Pattern extends Object {}
1954 function print(object) { 1942 function print(object) {
1955 let line = `${object}`; 1943 let line = `${object}`;
1956 if (_internal.printToZone == null) { 1944 if (_internal.printToZone == null) {
1957 _internal.printToConsole(line); 1945 _internal.printToConsole(line);
1958 } else { 1946 } else {
1959 dart.dcall(_internal.printToZone, line); 1947 dart.dcall(_internal.printToZone, line);
1960 } 1948 }
1961 } 1949 }
1962 dart.fn(print, dart.void, [Object]); 1950 dart.fn(print, dart.void, [Object]);
1963 class Match extends Object {} 1951 class Match extends Object {}
1964 class RegExp extends Object { 1952 class RegExp extends Object {
1965 RegExp(source, opts) { 1953 static new(source, opts) {
1966 let multiLine = opts && 'multiLine' in opts ? opts.multiLine : false; 1954 let multiLine = opts && 'multiLine' in opts ? opts.multiLine : false;
1967 let caseSensitive = opts && 'caseSensitive' in opts ? opts.caseSensitive : true; 1955 let caseSensitive = opts && 'caseSensitive' in opts ? opts.caseSensitive : true;
1968 return new _js_helper.JSSyntaxRegExp(source, {multiLine: multiLine, caseSe nsitive: caseSensitive}); 1956 return new _js_helper.JSSyntaxRegExp(source, {multiLine: multiLine, caseSe nsitive: caseSensitive});
1969 } 1957 }
1970 } 1958 }
1971 RegExp[dart.implements] = () => [Pattern]; 1959 RegExp[dart.implements] = () => [Pattern];
1972 dart.setSignature(RegExp, { 1960 dart.setSignature(RegExp, {
1973 constructors: () => ({RegExp: [RegExp, [String], {multiLine: bool, caseSensi tive: bool}]}) 1961 constructors: () => ({new: [RegExp, [String], {multiLine: bool, caseSensitiv e: bool}]})
1974 }); 1962 });
1975 let Set$ = dart.generic(function(E) { 1963 let Set$ = dart.generic(function(E) {
1976 class Set extends collection.IterableBase$(E) { 1964 class Set extends collection.IterableBase$(E) {
1977 Set() { 1965 static new() {
1978 return new (collection.LinkedHashSet$(E))(); 1966 return collection.LinkedHashSet$(E).new();
1979 } 1967 }
1980 identity() { 1968 static identity() {
1981 return new (collection.LinkedHashSet$(E)).identity(); 1969 return collection.LinkedHashSet$(E).identity();
1982 } 1970 }
1983 from(elements) { 1971 static from(elements) {
1984 return new (collection.LinkedHashSet$(E)).from(elements); 1972 return collection.LinkedHashSet$(E).from(elements);
1985 } 1973 }
1986 } 1974 }
1987 Set[dart.implements] = () => [_internal.EfficientLength]; 1975 Set[dart.implements] = () => [_internal.EfficientLength];
1988 dart.defineNamedConstructor(Set, 'identity');
1989 dart.defineNamedConstructor(Set, 'from');
1990 dart.setSignature(Set, { 1976 dart.setSignature(Set, {
1991 constructors: () => ({ 1977 constructors: () => ({
1992 Set: [exports.Set$(E), []], 1978 new: [exports.Set$(E), []],
1993 identity: [exports.Set$(E), []], 1979 identity: [exports.Set$(E), []],
1994 from: [exports.Set$(E), [Iterable]] 1980 from: [exports.Set$(E), [Iterable]]
1995 }) 1981 })
1996 }); 1982 });
1997 return Set; 1983 return Set;
1998 }); 1984 });
1999 dart.defineLazyClassGeneric(exports, 'Set', {get: Set$}); 1985 dart.defineLazyClassGeneric(exports, 'Set', {get: Set$});
2000 let Sink$ = dart.generic(function(T) { 1986 let Sink$ = dart.generic(function(T) {
2001 class Sink extends Object {} 1987 class Sink extends Object {}
2002 return Sink; 1988 return Sink;
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
2070 reset: [dart.void, []] 2056 reset: [dart.void, []]
2071 }), 2057 }),
2072 statics: () => ({ 2058 statics: () => ({
2073 _initTicker: [dart.void, []], 2059 _initTicker: [dart.void, []],
2074 _now: [int, []] 2060 _now: [int, []]
2075 }), 2061 }),
2076 names: ['_initTicker', '_now'] 2062 names: ['_initTicker', '_now']
2077 }); 2063 });
2078 Stopwatch._frequency = null; 2064 Stopwatch._frequency = null;
2079 class String extends Object { 2065 class String extends Object {
2080 fromCharCodes(charCodes, start, end) { 2066 static fromCharCodes(charCodes, start, end) {
2081 if (start === void 0) 2067 if (start === void 0)
2082 start = 0; 2068 start = 0;
2083 if (end === void 0) 2069 if (end === void 0)
2084 end = null; 2070 end = null;
2085 if (!dart.is(charCodes, _interceptors.JSArray)) { 2071 if (!dart.is(charCodes, _interceptors.JSArray)) {
2086 return String._stringFromIterable(charCodes, start, end); 2072 return String._stringFromIterable(charCodes, start, end);
2087 } 2073 }
2088 let list = dart.as(charCodes, List); 2074 let list = dart.as(charCodes, List);
2089 let len = list[$length]; 2075 let len = list[$length];
2090 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(len)) { 2076 if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(len)) {
2091 throw new RangeError.range(start, 0, len); 2077 throw new RangeError.range(start, 0, len);
2092 } 2078 }
2093 if (end == null) { 2079 if (end == null) {
2094 end = len; 2080 end = len;
2095 } else if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dart.notNull(len)) { 2081 } else if (dart.notNull(end) < dart.notNull(start) || dart.notNull(end) > dart.notNull(len)) {
2096 throw new RangeError.range(end, start, len); 2082 throw new RangeError.range(end, start, len);
2097 } 2083 }
2098 if (dart.notNull(start) > 0 || dart.notNull(end) < dart.notNull(len)) { 2084 if (dart.notNull(start) > 0 || dart.notNull(end) < dart.notNull(len)) {
2099 list = list[$sublist](start, end); 2085 list = list[$sublist](start, end);
2100 } 2086 }
2101 return _js_helper.Primitives.stringFromCharCodes(list); 2087 return _js_helper.Primitives.stringFromCharCodes(list);
2102 } 2088 }
2103 fromCharCode(charCode) { 2089 static fromCharCode(charCode) {
2104 return _js_helper.Primitives.stringFromCharCode(charCode); 2090 return _js_helper.Primitives.stringFromCharCode(charCode);
2105 } 2091 }
2106 fromEnvironment(name, opts) { 2092 static fromEnvironment(name, opts) {
2107 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : nu ll; 2093 let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : nu ll;
2108 throw new UnsupportedError('String.fromEnvironment can only be used as a c onst constructor'); 2094 throw new UnsupportedError('String.fromEnvironment can only be used as a c onst constructor');
2109 } 2095 }
2110 static _stringFromIterable(charCodes, start, end) { 2096 static _stringFromIterable(charCodes, start, end) {
2111 if (dart.notNull(start) < 0) 2097 if (dart.notNull(start) < 0)
2112 throw new RangeError.range(start, 0, charCodes[$length]); 2098 throw new RangeError.range(start, 0, charCodes[$length]);
2113 if (end != null && dart.notNull(end) < dart.notNull(start)) { 2099 if (end != null && dart.notNull(end) < dart.notNull(start)) {
2114 throw new RangeError.range(end, start, charCodes[$length]); 2100 throw new RangeError.range(end, start, charCodes[$length]);
2115 } 2101 }
2116 let it = charCodes[$iterator]; 2102 let it = charCodes[$iterator];
(...skipping 11 matching lines...) Expand all
2128 if (!dart.notNull(it.moveNext())) { 2114 if (!dart.notNull(it.moveNext())) {
2129 throw new RangeError.range(end, start, i); 2115 throw new RangeError.range(end, start, i);
2130 } 2116 }
2131 list[$add](it.current); 2117 list[$add](it.current);
2132 } 2118 }
2133 } 2119 }
2134 return _js_helper.Primitives.stringFromCharCodes(list); 2120 return _js_helper.Primitives.stringFromCharCodes(list);
2135 } 2121 }
2136 } 2122 }
2137 String[dart.implements] = () => [Comparable$(String), Pattern]; 2123 String[dart.implements] = () => [Comparable$(String), Pattern];
2138 dart.defineNamedConstructor(String, 'fromCharCodes');
2139 dart.defineNamedConstructor(String, 'fromCharCode');
2140 dart.defineNamedConstructor(String, 'fromEnvironment');
2141 dart.setSignature(String, { 2124 dart.setSignature(String, {
2142 constructors: () => ({ 2125 constructors: () => ({
2143 fromCharCodes: [String, [Iterable$(int)], [int, int]], 2126 fromCharCodes: [String, [Iterable$(int)], [int, int]],
2144 fromCharCode: [String, [int]], 2127 fromCharCode: [String, [int]],
2145 fromEnvironment: [String, [String], {defaultValue: String}] 2128 fromEnvironment: [String, [String], {defaultValue: String}]
2146 }), 2129 }),
2147 statics: () => ({_stringFromIterable: [String, [Iterable$(int), int, int]]}) , 2130 statics: () => ({_stringFromIterable: [String, [Iterable$(int), int, int]]}) ,
2148 names: ['_stringFromIterable'] 2131 names: ['_stringFromIterable']
2149 }); 2132 });
2150 dart.defineLazyClass(exports, { 2133 dart.defineLazyClass(exports, {
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
2312 get isEmpty() { 2295 get isEmpty() {
2313 return this.length == 0; 2296 return this.length == 0;
2314 } 2297 }
2315 get isNotEmpty() { 2298 get isNotEmpty() {
2316 return !dart.notNull(this.isEmpty); 2299 return !dart.notNull(this.isEmpty);
2317 } 2300 }
2318 write(obj) { 2301 write(obj) {
2319 this[_writeString](`${obj}`); 2302 this[_writeString](`${obj}`);
2320 } 2303 }
2321 writeCharCode(charCode) { 2304 writeCharCode(charCode) {
2322 this[_writeString](new String.fromCharCode(charCode)); 2305 this[_writeString](String.fromCharCode(charCode));
2323 } 2306 }
2324 writeAll(objects, separator) { 2307 writeAll(objects, separator) {
2325 if (separator === void 0) 2308 if (separator === void 0)
2326 separator = ""; 2309 separator = "";
2327 let iterator = objects[$iterator]; 2310 let iterator = objects[$iterator];
2328 if (!dart.notNull(iterator.moveNext())) 2311 if (!dart.notNull(iterator.moveNext()))
2329 return; 2312 return;
2330 if (separator.isEmpty) { 2313 if (separator.isEmpty) {
2331 do { 2314 do {
2332 this.write(iterator.current); 2315 this.write(iterator.current);
(...skipping 29 matching lines...) Expand all
2362 write: [dart.void, [Object]], 2345 write: [dart.void, [Object]],
2363 writeCharCode: [dart.void, [int]], 2346 writeCharCode: [dart.void, [int]],
2364 writeAll: [dart.void, [Iterable], [String]], 2347 writeAll: [dart.void, [Iterable], [String]],
2365 writeln: [dart.void, [], [Object]], 2348 writeln: [dart.void, [], [Object]],
2366 clear: [dart.void, []], 2349 clear: [dart.void, []],
2367 [_writeString]: [dart.void, [Object]] 2350 [_writeString]: [dart.void, [Object]]
2368 }) 2351 })
2369 }); 2352 });
2370 class StringSink extends Object {} 2353 class StringSink extends Object {}
2371 class Symbol extends Object { 2354 class Symbol extends Object {
2372 Symbol(name) { 2355 static new(name) {
2373 return new _internal.Symbol(name); 2356 return new _internal.Symbol(name);
2374 } 2357 }
2375 } 2358 }
2376 dart.setSignature(Symbol, { 2359 dart.setSignature(Symbol, {
2377 constructors: () => ({Symbol: [Symbol, [String]]}) 2360 constructors: () => ({new: [Symbol, [String]]})
2378 }); 2361 });
2379 class Type extends Object {} 2362 class Type extends Object {}
2380 let _writeAuthority = dart.JsSymbol('_writeAuthority'); 2363 let _writeAuthority = dart.JsSymbol('_writeAuthority');
2381 let _userInfo = dart.JsSymbol('_userInfo'); 2364 let _userInfo = dart.JsSymbol('_userInfo');
2382 let _host = dart.JsSymbol('_host'); 2365 let _host = dart.JsSymbol('_host');
2383 let _port = dart.JsSymbol('_port'); 2366 let _port = dart.JsSymbol('_port');
2384 let _path = dart.JsSymbol('_path'); 2367 let _path = dart.JsSymbol('_path');
2385 let _query = dart.JsSymbol('_query'); 2368 let _query = dart.JsSymbol('_query');
2386 let _fragment = dart.JsSymbol('_fragment'); 2369 let _fragment = dart.JsSymbol('_fragment');
2387 let _pathSegments = dart.JsSymbol('_pathSegments'); 2370 let _pathSegments = dart.JsSymbol('_pathSegments');
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
2603 this.scheme = scheme; 2586 this.scheme = scheme;
2604 this[_userInfo] = userInfo; 2587 this[_userInfo] = userInfo;
2605 this[_host] = host; 2588 this[_host] = host;
2606 this[_port] = port; 2589 this[_port] = port;
2607 this[_path] = path; 2590 this[_path] = path;
2608 this[_query] = query; 2591 this[_query] = query;
2609 this[_fragment] = fragment; 2592 this[_fragment] = fragment;
2610 this[_pathSegments] = null; 2593 this[_pathSegments] = null;
2611 this[_queryParameters] = null; 2594 this[_queryParameters] = null;
2612 } 2595 }
2613 Uri(opts) { 2596 static new(opts) {
2614 let scheme = opts && 'scheme' in opts ? opts.scheme : ""; 2597 let scheme = opts && 'scheme' in opts ? opts.scheme : "";
2615 let userInfo = opts && 'userInfo' in opts ? opts.userInfo : ""; 2598 let userInfo = opts && 'userInfo' in opts ? opts.userInfo : "";
2616 let host = opts && 'host' in opts ? opts.host : null; 2599 let host = opts && 'host' in opts ? opts.host : null;
2617 let port = opts && 'port' in opts ? opts.port : null; 2600 let port = opts && 'port' in opts ? opts.port : null;
2618 let path = opts && 'path' in opts ? opts.path : null; 2601 let path = opts && 'path' in opts ? opts.path : null;
2619 let pathSegments = opts && 'pathSegments' in opts ? opts.pathSegments : nu ll; 2602 let pathSegments = opts && 'pathSegments' in opts ? opts.pathSegments : nu ll;
2620 let query = opts && 'query' in opts ? opts.query : null; 2603 let query = opts && 'query' in opts ? opts.query : null;
2621 let queryParameters = opts && 'queryParameters' in opts ? opts.queryParame ters : null; 2604 let queryParameters = opts && 'queryParameters' in opts ? opts.queryParame ters : null;
2622 let fragment = opts && 'fragment' in opts ? opts.fragment : null; 2605 let fragment = opts && 'fragment' in opts ? opts.fragment : null;
2623 scheme = Uri._makeScheme(scheme, Uri._stringOrNullLength(scheme)); 2606 scheme = Uri._makeScheme(scheme, Uri._stringOrNullLength(scheme));
2624 userInfo = Uri._makeUserInfo(userInfo, 0, Uri._stringOrNullLength(userInfo )); 2607 userInfo = Uri._makeUserInfo(userInfo, 0, Uri._stringOrNullLength(userInfo ));
2625 host = Uri._makeHost(host, 0, Uri._stringOrNullLength(host), false); 2608 host = Uri._makeHost(host, 0, Uri._stringOrNullLength(host), false);
2626 if (query == "") 2609 if (query == "")
2627 query = null; 2610 query = null;
2628 query = Uri._makeQuery(query, 0, Uri._stringOrNullLength(query), queryPara meters); 2611 query = Uri._makeQuery(query, 0, Uri._stringOrNullLength(query), queryPara meters);
2629 fragment = Uri._makeFragment(fragment, 0, Uri._stringOrNullLength(fragment )); 2612 fragment = Uri._makeFragment(fragment, 0, Uri._stringOrNullLength(fragment ));
2630 port = Uri._makePort(port, scheme); 2613 port = Uri._makePort(port, scheme);
2631 let isFile = scheme == "file"; 2614 let isFile = scheme == "file";
2632 if (host == null && (dart.notNull(userInfo.isNotEmpty) || port != null || dart.notNull(isFile))) { 2615 if (host == null && (dart.notNull(userInfo.isNotEmpty) || port != null || dart.notNull(isFile))) {
2633 host = ""; 2616 host = "";
2634 } 2617 }
2635 let ensureLeadingSlash = host != null; 2618 let ensureLeadingSlash = host != null;
2636 path = Uri._makePath(path, 0, Uri._stringOrNullLength(path), pathSegments, ensureLeadingSlash, isFile); 2619 path = Uri._makePath(path, 0, Uri._stringOrNullLength(path), pathSegments, ensureLeadingSlash, isFile);
2637 return new Uri._internal(scheme, userInfo, host, port, path, query, fragme nt); 2620 return new Uri._internal(scheme, userInfo, host, port, path, query, fragme nt);
2638 } 2621 }
2639 http(authority, unencodedPath, queryParameters) { 2622 static http(authority, unencodedPath, queryParameters) {
2640 if (queryParameters === void 0) 2623 if (queryParameters === void 0)
2641 queryParameters = null; 2624 queryParameters = null;
2642 return Uri._makeHttpUri("http", authority, unencodedPath, queryParameters) ; 2625 return Uri._makeHttpUri("http", authority, unencodedPath, queryParameters) ;
2643 } 2626 }
2644 https(authority, unencodedPath, queryParameters) { 2627 static https(authority, unencodedPath, queryParameters) {
2645 if (queryParameters === void 0) 2628 if (queryParameters === void 0)
2646 queryParameters = null; 2629 queryParameters = null;
2647 return Uri._makeHttpUri("https", authority, unencodedPath, queryParameters ); 2630 return Uri._makeHttpUri("https", authority, unencodedPath, queryParameters );
2648 } 2631 }
2649 static _makeHttpUri(scheme, authority, unencodedPath, queryParameters) { 2632 static _makeHttpUri(scheme, authority, unencodedPath, queryParameters) {
2650 let userInfo = ""; 2633 let userInfo = "";
2651 let host = null; 2634 let host = null;
2652 let port = null; 2635 let port = null;
2653 if (authority != null && dart.notNull(authority.isNotEmpty)) { 2636 if (authority != null && dart.notNull(authority.isNotEmpty)) {
2654 let hostStart = 0; 2637 let hostStart = 0;
(...skipping 25 matching lines...) Expand all
2680 for (; dart.notNull(hostEnd) < dart.notNull(authority.length); hostEnd = dart.notNull(hostEnd) + 1) { 2663 for (; dart.notNull(hostEnd) < dart.notNull(authority.length); hostEnd = dart.notNull(hostEnd) + 1) {
2681 if (authority.codeUnitAt(hostEnd) == Uri._COLON) { 2664 if (authority.codeUnitAt(hostEnd) == Uri._COLON) {
2682 let portString = authority.substring(dart.notNull(hostEnd) + 1); 2665 let portString = authority.substring(dart.notNull(hostEnd) + 1);
2683 if (portString.isNotEmpty) 2666 if (portString.isNotEmpty)
2684 port = int.parse(portString); 2667 port = int.parse(portString);
2685 break; 2668 break;
2686 } 2669 }
2687 } 2670 }
2688 host = authority.substring(hostStart, hostEnd); 2671 host = authority.substring(hostStart, hostEnd);
2689 } 2672 }
2690 return new Uri({scheme: scheme, userInfo: userInfo, host: dart.as(host, St ring), port: dart.as(port, int), pathSegments: unencodedPath.split("/"), queryPa rameters: queryParameters}); 2673 return Uri.new({scheme: scheme, userInfo: userInfo, host: dart.as(host, St ring), port: dart.as(port, int), pathSegments: unencodedPath.split("/"), queryPa rameters: queryParameters});
2691 } 2674 }
2692 file(path, opts) { 2675 static file(path, opts) {
2693 let windows = opts && 'windows' in opts ? opts.windows : null; 2676 let windows = opts && 'windows' in opts ? opts.windows : null;
2694 windows = windows == null ? Uri._isWindows : windows; 2677 windows = windows == null ? Uri._isWindows : windows;
2695 return windows ? dart.as(Uri._makeWindowsFileUrl(path), Uri) : dart.as(Uri ._makeFileUri(path), Uri); 2678 return windows ? dart.as(Uri._makeWindowsFileUrl(path), Uri) : dart.as(Uri ._makeFileUri(path), Uri);
2696 } 2679 }
2697 static get base() { 2680 static get base() {
2698 let uri = _js_helper.Primitives.currentUri(); 2681 let uri = _js_helper.Primitives.currentUri();
2699 if (uri != null) 2682 if (uri != null)
2700 return Uri.parse(uri); 2683 return Uri.parse(uri);
2701 throw new UnsupportedError("'Uri.base' is not supported"); 2684 throw new UnsupportedError("'Uri.base' is not supported");
2702 } 2685 }
2703 static get _isWindows() { 2686 static get _isWindows() {
2704 return false; 2687 return false;
2705 } 2688 }
2706 static _checkNonWindowsPathReservedCharacters(segments, argumentError) { 2689 static _checkNonWindowsPathReservedCharacters(segments, argumentError) {
2707 segments[$forEach](dart.fn(segment => { 2690 segments[$forEach](dart.fn(segment => {
2708 if (dart.dsend(segment, 'contains', "/")) { 2691 if (dart.dsend(segment, 'contains', "/")) {
2709 if (argumentError) { 2692 if (argumentError) {
2710 throw new ArgumentError(`Illegal path character ${segment}`); 2693 throw new ArgumentError(`Illegal path character ${segment}`);
2711 } else { 2694 } else {
2712 throw new UnsupportedError(`Illegal path character ${segment}`); 2695 throw new UnsupportedError(`Illegal path character ${segment}`);
2713 } 2696 }
2714 } 2697 }
2715 })); 2698 }));
2716 } 2699 }
2717 static _checkWindowsPathReservedCharacters(segments, argumentError, firstSeg ment) { 2700 static _checkWindowsPathReservedCharacters(segments, argumentError, firstSeg ment) {
2718 if (firstSegment === void 0) 2701 if (firstSegment === void 0)
2719 firstSegment = 0; 2702 firstSegment = 0;
2720 segments[$skip](firstSegment)[$forEach](dart.fn(segment => { 2703 segments[$skip](firstSegment)[$forEach](dart.fn(segment => {
2721 if (dart.dsend(segment, 'contains', new RegExp('["*/:<>?\\\\|]'))) { 2704 if (dart.dsend(segment, 'contains', RegExp.new('["*/:<>?\\\\|]'))) {
2722 if (argumentError) { 2705 if (argumentError) {
2723 throw new ArgumentError("Illegal character in path"); 2706 throw new ArgumentError("Illegal character in path");
2724 } else { 2707 } else {
2725 throw new UnsupportedError("Illegal character in path"); 2708 throw new UnsupportedError("Illegal character in path");
2726 } 2709 }
2727 } 2710 }
2728 })); 2711 }));
2729 } 2712 }
2730 static _checkWindowsDriveLetter(charCode, argumentError) { 2713 static _checkWindowsDriveLetter(charCode, argumentError) {
2731 if (dart.notNull(Uri._UPPER_CASE_A) <= dart.notNull(charCode) && dart.notN ull(charCode) <= dart.notNull(Uri._UPPER_CASE_Z) || dart.notNull(Uri._LOWER_CASE _A) <= dart.notNull(charCode) && dart.notNull(charCode) <= dart.notNull(Uri._LOW ER_CASE_Z)) { 2714 if (dart.notNull(Uri._UPPER_CASE_A) <= dart.notNull(charCode) && dart.notN ull(charCode) <= dart.notNull(Uri._UPPER_CASE_Z) || dart.notNull(Uri._LOWER_CASE _A) <= dart.notNull(charCode) && dart.notNull(charCode) <= dart.notNull(Uri._LOW ER_CASE_Z)) {
2732 return; 2715 return;
2733 } 2716 }
2734 if (argumentError) { 2717 if (argumentError) {
2735 throw new ArgumentError("Illegal drive letter " + dart.notNull(new Strin g.fromCharCode(charCode))); 2718 throw new ArgumentError("Illegal drive letter " + dart.notNull(String.fr omCharCode(charCode)));
2736 } else { 2719 } else {
2737 throw new UnsupportedError("Illegal drive letter " + dart.notNull(new St ring.fromCharCode(charCode))); 2720 throw new UnsupportedError("Illegal drive letter " + dart.notNull(String .fromCharCode(charCode)));
2738 } 2721 }
2739 } 2722 }
2740 static _makeFileUri(path) { 2723 static _makeFileUri(path) {
2741 let sep = "/"; 2724 let sep = "/";
2742 if (path.startsWith(sep)) { 2725 if (path.startsWith(sep)) {
2743 return new Uri({scheme: "file", pathSegments: path.split(sep)}); 2726 return Uri.new({scheme: "file", pathSegments: path.split(sep)});
2744 } else { 2727 } else {
2745 return new Uri({pathSegments: path.split(sep)}); 2728 return Uri.new({pathSegments: path.split(sep)});
2746 } 2729 }
2747 } 2730 }
2748 static _makeWindowsFileUrl(path) { 2731 static _makeWindowsFileUrl(path) {
2749 if (path.startsWith("\\\\?\\")) { 2732 if (path.startsWith("\\\\?\\")) {
2750 if (path.startsWith("\\\\?\\UNC\\")) { 2733 if (path.startsWith("\\\\?\\UNC\\")) {
2751 path = `\\${path.substring(7)}`; 2734 path = `\\${path.substring(7)}`;
2752 } else { 2735 } else {
2753 path = path.substring(4); 2736 path = path.substring(4);
2754 if (dart.notNull(path.length) < 3 || path.codeUnitAt(1) != Uri._COLON || path.codeUnitAt(2) != Uri._BACKSLASH) { 2737 if (dart.notNull(path.length) < 3 || path.codeUnitAt(1) != Uri._COLON || path.codeUnitAt(2) != Uri._BACKSLASH) {
2755 throw new ArgumentError("Windows paths with \\\\?\\ prefix must be a bsolute"); 2738 throw new ArgumentError("Windows paths with \\\\?\\ prefix must be a bsolute");
2756 } 2739 }
2757 } 2740 }
2758 } else { 2741 } else {
2759 path = path.replaceAll("/", "\\"); 2742 path = path.replaceAll("/", "\\");
2760 } 2743 }
2761 let sep = "\\"; 2744 let sep = "\\";
2762 if (dart.notNull(path.length) > 1 && path.get(1) == ":") { 2745 if (dart.notNull(path.length) > 1 && path.get(1) == ":") {
2763 Uri._checkWindowsDriveLetter(path.codeUnitAt(0), true); 2746 Uri._checkWindowsDriveLetter(path.codeUnitAt(0), true);
2764 if (path.length == 2 || path.codeUnitAt(2) != Uri._BACKSLASH) { 2747 if (path.length == 2 || path.codeUnitAt(2) != Uri._BACKSLASH) {
2765 throw new ArgumentError("Windows paths with drive letter must be absol ute"); 2748 throw new ArgumentError("Windows paths with drive letter must be absol ute");
2766 } 2749 }
2767 let pathSegments = path.split(sep); 2750 let pathSegments = path.split(sep);
2768 Uri._checkWindowsPathReservedCharacters(pathSegments, true, 1); 2751 Uri._checkWindowsPathReservedCharacters(pathSegments, true, 1);
2769 return new Uri({scheme: "file", pathSegments: pathSegments}); 2752 return Uri.new({scheme: "file", pathSegments: pathSegments});
2770 } 2753 }
2771 if (dart.notNull(path.length) > 0 && path.get(0) == sep) { 2754 if (dart.notNull(path.length) > 0 && path.get(0) == sep) {
2772 if (dart.notNull(path.length) > 1 && path.get(1) == sep) { 2755 if (dart.notNull(path.length) > 1 && path.get(1) == sep) {
2773 let pathStart = path.indexOf("\\", 2); 2756 let pathStart = path.indexOf("\\", 2);
2774 let hostPart = pathStart == -1 ? path.substring(2) : path.substring(2, pathStart); 2757 let hostPart = pathStart == -1 ? path.substring(2) : path.substring(2, pathStart);
2775 let pathPart = pathStart == -1 ? "" : path.substring(dart.notNull(path Start) + 1); 2758 let pathPart = pathStart == -1 ? "" : path.substring(dart.notNull(path Start) + 1);
2776 let pathSegments = pathPart.split(sep); 2759 let pathSegments = pathPart.split(sep);
2777 Uri._checkWindowsPathReservedCharacters(pathSegments, true); 2760 Uri._checkWindowsPathReservedCharacters(pathSegments, true);
2778 return new Uri({scheme: "file", host: hostPart, pathSegments: pathSegm ents}); 2761 return Uri.new({scheme: "file", host: hostPart, pathSegments: pathSegm ents});
2779 } else { 2762 } else {
2780 let pathSegments = path.split(sep); 2763 let pathSegments = path.split(sep);
2781 Uri._checkWindowsPathReservedCharacters(pathSegments, true); 2764 Uri._checkWindowsPathReservedCharacters(pathSegments, true);
2782 return new Uri({scheme: "file", pathSegments: pathSegments}); 2765 return Uri.new({scheme: "file", pathSegments: pathSegments});
2783 } 2766 }
2784 } else { 2767 } else {
2785 let pathSegments = path.split(sep); 2768 let pathSegments = path.split(sep);
2786 Uri._checkWindowsPathReservedCharacters(pathSegments, true); 2769 Uri._checkWindowsPathReservedCharacters(pathSegments, true);
2787 return new Uri({pathSegments: pathSegments}); 2770 return Uri.new({pathSegments: pathSegments});
2788 } 2771 }
2789 } 2772 }
2790 replace(opts) { 2773 replace(opts) {
2791 let scheme = opts && 'scheme' in opts ? opts.scheme : null; 2774 let scheme = opts && 'scheme' in opts ? opts.scheme : null;
2792 let userInfo = opts && 'userInfo' in opts ? opts.userInfo : null; 2775 let userInfo = opts && 'userInfo' in opts ? opts.userInfo : null;
2793 let host = opts && 'host' in opts ? opts.host : null; 2776 let host = opts && 'host' in opts ? opts.host : null;
2794 let port = opts && 'port' in opts ? opts.port : null; 2777 let port = opts && 'port' in opts ? opts.port : null;
2795 let path = opts && 'path' in opts ? opts.path : null; 2778 let path = opts && 'path' in opts ? opts.path : null;
2796 let pathSegments = opts && 'pathSegments' in opts ? opts.pathSegments : nu ll; 2779 let pathSegments = opts && 'pathSegments' in opts ? opts.pathSegments : nu ll;
2797 let query = opts && 'query' in opts ? opts.query : null; 2780 let query = opts && 'query' in opts ? opts.query : null;
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
2842 if (fragment != null) { 2825 if (fragment != null) {
2843 fragment = Uri._makeFragment(fragment, 0, fragment.length); 2826 fragment = Uri._makeFragment(fragment, 0, fragment.length);
2844 } else if (this.hasFragment) { 2827 } else if (this.hasFragment) {
2845 fragment = this.fragment; 2828 fragment = this.fragment;
2846 } 2829 }
2847 return new Uri._internal(scheme, userInfo, host, port, path, query, fragme nt); 2830 return new Uri._internal(scheme, userInfo, host, port, path, query, fragme nt);
2848 } 2831 }
2849 get pathSegments() { 2832 get pathSegments() {
2850 if (this[_pathSegments] == null) { 2833 if (this[_pathSegments] == null) {
2851 let pathToSplit = !dart.notNull(this.path.isEmpty) && this.path.codeUnit At(0) == Uri._SLASH ? this.path.substring(1) : this.path; 2834 let pathToSplit = !dart.notNull(this.path.isEmpty) && this.path.codeUnit At(0) == Uri._SLASH ? this.path.substring(1) : this.path;
2852 this[_pathSegments] = new (collection.UnmodifiableListView$(String))(pat hToSplit == "" ? dart.const(dart.setType([], List$(String))) : new (List$(String )).from(pathToSplit.split("/")[$map](Uri.decodeComponent), {growable: false})); 2835 this[_pathSegments] = new (collection.UnmodifiableListView$(String))(pat hToSplit == "" ? dart.const(dart.setType([], List$(String))) : List$(String).fro m(pathToSplit.split("/")[$map](Uri.decodeComponent), {growable: false}));
2853 } 2836 }
2854 return this[_pathSegments]; 2837 return this[_pathSegments];
2855 } 2838 }
2856 get queryParameters() { 2839 get queryParameters() {
2857 if (this[_queryParameters] == null) { 2840 if (this[_queryParameters] == null) {
2858 this[_queryParameters] = new (collection.UnmodifiableMapView$(String, St ring))(Uri.splitQueryString(this.query)); 2841 this[_queryParameters] = new (collection.UnmodifiableMapView$(String, St ring))(Uri.splitQueryString(this.query));
2859 } 2842 }
2860 return this[_queryParameters]; 2843 return this[_queryParameters];
2861 } 2844 }
2862 static _makePort(port, scheme) { 2845 static _makePort(port, scheme) {
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
3061 let firstDigit = source.codeUnitAt(dart.notNull(index) + 1); 3044 let firstDigit = source.codeUnitAt(dart.notNull(index) + 1);
3062 let secondDigit = source.codeUnitAt(dart.notNull(index) + 2); 3045 let secondDigit = source.codeUnitAt(dart.notNull(index) + 2);
3063 if (!dart.notNull(Uri._isHexDigit(firstDigit)) || !dart.notNull(Uri._isHex Digit(secondDigit))) { 3046 if (!dart.notNull(Uri._isHexDigit(firstDigit)) || !dart.notNull(Uri._isHex Digit(secondDigit))) {
3064 return "%"; 3047 return "%";
3065 } 3048 }
3066 let value = dart.notNull(Uri._hexValue(firstDigit)) * 16 + dart.notNull(Ur i._hexValue(secondDigit)); 3049 let value = dart.notNull(Uri._hexValue(firstDigit)) * 16 + dart.notNull(Ur i._hexValue(secondDigit));
3067 if (Uri._isUnreservedChar(value)) { 3050 if (Uri._isUnreservedChar(value)) {
3068 if (dart.notNull(lowerCase) && dart.notNull(Uri._UPPER_CASE_A) <= dart.n otNull(value) && dart.notNull(Uri._UPPER_CASE_Z) >= dart.notNull(value)) { 3051 if (dart.notNull(lowerCase) && dart.notNull(Uri._UPPER_CASE_A) <= dart.n otNull(value) && dart.notNull(Uri._UPPER_CASE_Z) >= dart.notNull(value)) {
3069 value = dart.notNull(value) | 32; 3052 value = dart.notNull(value) | 32;
3070 } 3053 }
3071 return new String.fromCharCode(value); 3054 return String.fromCharCode(value);
3072 } 3055 }
3073 if (dart.notNull(firstDigit) >= dart.notNull(Uri._LOWER_CASE_A) || dart.no tNull(secondDigit) >= dart.notNull(Uri._LOWER_CASE_A)) { 3056 if (dart.notNull(firstDigit) >= dart.notNull(Uri._LOWER_CASE_A) || dart.no tNull(secondDigit) >= dart.notNull(Uri._LOWER_CASE_A)) {
3074 return source.substring(index, dart.notNull(index) + 3).toUpperCase(); 3057 return source.substring(index, dart.notNull(index) + 3).toUpperCase();
3075 } 3058 }
3076 return null; 3059 return null;
3077 } 3060 }
3078 static _isUnreservedChar(ch) { 3061 static _isUnreservedChar(ch) {
3079 return dart.notNull(ch) < 127 && dart.notNull(!dart.equals(dart.dsend(Uri. _unreservedTable[$get](dart.notNull(ch) >> 4), '&', 1 << (dart.notNull(ch) & 15) ), 0)); 3062 return dart.notNull(ch) < 127 && dart.notNull(!dart.equals(dart.dsend(Uri. _unreservedTable[$get](dart.notNull(ch) >> 4), '&', 1 << (dart.notNull(ch) & 15) ), 0));
3080 } 3063 }
3081 static _escapeChar(char) { 3064 static _escapeChar(char) {
3082 dart.assert(dart.dsend(char, '<=', 1114111)); 3065 dart.assert(dart.dsend(char, '<=', 1114111));
3083 let hexDigits = "0123456789ABCDEF"; 3066 let hexDigits = "0123456789ABCDEF";
3084 let codeUnits = null; 3067 let codeUnits = null;
3085 if (dart.dsend(char, '<', 128)) { 3068 if (dart.dsend(char, '<', 128)) {
3086 codeUnits = new List(3); 3069 codeUnits = List.new(3);
3087 codeUnits[$set](0, Uri._PERCENT); 3070 codeUnits[$set](0, Uri._PERCENT);
3088 codeUnits[$set](1, hexDigits.codeUnitAt(dart.as(dart.dsend(char, '>>', 4 ), int))); 3071 codeUnits[$set](1, hexDigits.codeUnitAt(dart.as(dart.dsend(char, '>>', 4 ), int)));
3089 codeUnits[$set](2, hexDigits.codeUnitAt(dart.as(dart.dsend(char, '&', 15 ), int))); 3072 codeUnits[$set](2, hexDigits.codeUnitAt(dart.as(dart.dsend(char, '&', 15 ), int)));
3090 } else { 3073 } else {
3091 let flag = 192; 3074 let flag = 192;
3092 let encodedBytes = 2; 3075 let encodedBytes = 2;
3093 if (dart.dsend(char, '>', 2047)) { 3076 if (dart.dsend(char, '>', 2047)) {
3094 flag = 224; 3077 flag = 224;
3095 encodedBytes = 3; 3078 encodedBytes = 3;
3096 if (dart.dsend(char, '>', 65535)) { 3079 if (dart.dsend(char, '>', 65535)) {
3097 encodedBytes = 4; 3080 encodedBytes = 4;
3098 flag = 240; 3081 flag = 240;
3099 } 3082 }
3100 } 3083 }
3101 codeUnits = new List(3 * dart.notNull(encodedBytes)); 3084 codeUnits = List.new(3 * dart.notNull(encodedBytes));
3102 let index = 0; 3085 let index = 0;
3103 while ((encodedBytes = dart.notNull(encodedBytes) - 1) >= 0) { 3086 while ((encodedBytes = dart.notNull(encodedBytes) - 1) >= 0) {
3104 let byte = dart.as(dart.dsend(dart.dsend(dart.dsend(char, '>>', 6 * da rt.notNull(encodedBytes)), '&', 63), '|', flag), int); 3087 let byte = dart.as(dart.dsend(dart.dsend(dart.dsend(char, '>>', 6 * da rt.notNull(encodedBytes)), '&', 63), '|', flag), int);
3105 codeUnits[$set](index, Uri._PERCENT); 3088 codeUnits[$set](index, Uri._PERCENT);
3106 codeUnits[$set](dart.notNull(index) + 1, hexDigits.codeUnitAt(dart.not Null(byte) >> 4)); 3089 codeUnits[$set](dart.notNull(index) + 1, hexDigits.codeUnitAt(dart.not Null(byte) >> 4));
3107 codeUnits[$set](dart.notNull(index) + 2, hexDigits.codeUnitAt(dart.not Null(byte) & 15)); 3090 codeUnits[$set](dart.notNull(index) + 2, hexDigits.codeUnitAt(dart.not Null(byte) & 15));
3108 index = dart.notNull(index) + 3; 3091 index = dart.notNull(index) + 3;
3109 flag = 128; 3092 flag = 128;
3110 } 3093 }
3111 } 3094 }
3112 return new String.fromCharCodes(dart.as(codeUnits, Iterable$(int))); 3095 return String.fromCharCodes(dart.as(codeUnits, Iterable$(int)));
3113 } 3096 }
3114 static _normalize(component, start, end, charTable) { 3097 static _normalize(component, start, end, charTable) {
3115 let buffer = null; 3098 let buffer = null;
3116 let sectionStart = start; 3099 let sectionStart = start;
3117 let index = start; 3100 let index = start;
3118 while (dart.notNull(index) < dart.notNull(end)) { 3101 while (dart.notNull(index) < dart.notNull(end)) {
3119 let char = component.codeUnitAt(index); 3102 let char = component.codeUnitAt(index);
3120 if (dart.notNull(char) < 127 && (dart.notNull(charTable[$get](dart.notNu ll(char) >> 4)) & 1 << (dart.notNull(char) & 15)) != 0) { 3103 if (dart.notNull(char) < 127 && (dart.notNull(charTable[$get](dart.notNu ll(char) >> 4)) & 1 << (dart.notNull(char) & 15)) != 0) {
3121 index = dart.notNull(index) + 1; 3104 index = dart.notNull(index) + 1;
3122 } else { 3105 } else {
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after
3531 } 3514 }
3532 3515
3533 } 3516 }
3534 if (wildcardSeen) { 3517 if (wildcardSeen) {
3535 if (dart.notNull(parts[$length]) > 7) { 3518 if (dart.notNull(parts[$length]) > 7) {
3536 error('an address with a wildcard must have less than 7 parts'); 3519 error('an address with a wildcard must have less than 7 parts');
3537 } 3520 }
3538 } else if (parts[$length] != 8) { 3521 } else if (parts[$length] != 8) {
3539 error('an address without a wildcard must contain exactly 8 parts'); 3522 error('an address without a wildcard must contain exactly 8 parts');
3540 } 3523 }
3541 let bytes = new (List$(int))(16); 3524 let bytes = List$(int).new(16);
3542 for (let i = 0, index = 0; dart.notNull(i) < dart.notNull(parts[$length]); i = dart.notNull(i) + 1) { 3525 for (let i = 0, index = 0; dart.notNull(i) < dart.notNull(parts[$length]); i = dart.notNull(i) + 1) {
3543 let value = parts[$get](i); 3526 let value = parts[$get](i);
3544 if (value == -1) { 3527 if (value == -1) {
3545 let wildCardLength = 9 - dart.notNull(parts[$length]); 3528 let wildCardLength = 9 - dart.notNull(parts[$length]);
3546 for (let j = 0; dart.notNull(j) < dart.notNull(wildCardLength); j = da rt.notNull(j) + 1) { 3529 for (let j = 0; dart.notNull(j) < dart.notNull(wildCardLength); j = da rt.notNull(j) + 1) {
3547 bytes[$set](index, 0); 3530 bytes[$set](index, 0);
3548 bytes[$set](dart.notNull(index) + 1, 0); 3531 bytes[$set](dart.notNull(index) + 1, 0);
3549 index = dart.notNull(index) + 2; 3532 index = dart.notNull(index) + 2;
3550 } 3533 }
3551 } else { 3534 } else {
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
3606 simple = codeUnit != Uri._PERCENT && codeUnit != Uri._PLUS; 3589 simple = codeUnit != Uri._PERCENT && codeUnit != Uri._PLUS;
3607 } 3590 }
3608 let bytes = null; 3591 let bytes = null;
3609 if (simple) { 3592 if (simple) {
3610 if (dart.notNull(dart.equals(encoding, convert.UTF8)) || dart.notNull(da rt.equals(encoding, convert.LATIN1))) { 3593 if (dart.notNull(dart.equals(encoding, convert.UTF8)) || dart.notNull(da rt.equals(encoding, convert.LATIN1))) {
3611 return text; 3594 return text;
3612 } else { 3595 } else {
3613 bytes = text.codeUnits; 3596 bytes = text.codeUnits;
3614 } 3597 }
3615 } else { 3598 } else {
3616 bytes = new (List$(int))(); 3599 bytes = List$(int).new();
3617 for (let i = 0; dart.notNull(i) < dart.notNull(text.length); i = dart.no tNull(i) + 1) { 3600 for (let i = 0; dart.notNull(i) < dart.notNull(text.length); i = dart.no tNull(i) + 1) {
3618 let codeUnit = text.codeUnitAt(i); 3601 let codeUnit = text.codeUnitAt(i);
3619 if (dart.notNull(codeUnit) > 127) { 3602 if (dart.notNull(codeUnit) > 127) {
3620 throw new ArgumentError("Illegal percent encoding in URI"); 3603 throw new ArgumentError("Illegal percent encoding in URI");
3621 } 3604 }
3622 if (codeUnit == Uri._PERCENT) { 3605 if (codeUnit == Uri._PERCENT) {
3623 if (dart.notNull(i) + 3 > dart.notNull(text.length)) { 3606 if (dart.notNull(i) + 3 > dart.notNull(text.length)) {
3624 throw new ArgumentError('Truncated URI'); 3607 throw new ArgumentError('Truncated URI');
3625 } 3608 }
3626 bytes[$add](Uri._hexCharPairToByte(text, dart.notNull(i) + 1)); 3609 bytes[$add](Uri._hexCharPairToByte(text, dart.notNull(i) + 1));
3627 i = dart.notNull(i) + 2; 3610 i = dart.notNull(i) + 2;
3628 } else if (dart.notNull(plusToSpace) && codeUnit == Uri._PLUS) { 3611 } else if (dart.notNull(plusToSpace) && codeUnit == Uri._PLUS) {
3629 bytes[$add](Uri._SPACE); 3612 bytes[$add](Uri._SPACE);
3630 } else { 3613 } else {
3631 bytes[$add](codeUnit); 3614 bytes[$add](codeUnit);
3632 } 3615 }
3633 } 3616 }
3634 } 3617 }
3635 return encoding.decode(bytes); 3618 return encoding.decode(bytes);
3636 } 3619 }
3637 static _isAlphabeticCharacter(codeUnit) { 3620 static _isAlphabeticCharacter(codeUnit) {
3638 return dart.notNull(codeUnit) >= dart.notNull(Uri._LOWER_CASE_A) && dart.n otNull(codeUnit) <= dart.notNull(Uri._LOWER_CASE_Z) || dart.notNull(codeUnit) >= dart.notNull(Uri._UPPER_CASE_A) && dart.notNull(codeUnit) <= dart.notNull(Uri._ UPPER_CASE_Z); 3621 return dart.notNull(codeUnit) >= dart.notNull(Uri._LOWER_CASE_A) && dart.n otNull(codeUnit) <= dart.notNull(Uri._LOWER_CASE_Z) || dart.notNull(codeUnit) >= dart.notNull(Uri._UPPER_CASE_A) && dart.notNull(codeUnit) <= dart.notNull(Uri._ UPPER_CASE_Z);
3639 } 3622 }
3640 } 3623 }
3641 dart.defineNamedConstructor(Uri, '_internal'); 3624 dart.defineNamedConstructor(Uri, '_internal');
3642 dart.defineNamedConstructor(Uri, 'http');
3643 dart.defineNamedConstructor(Uri, 'https');
3644 dart.defineNamedConstructor(Uri, 'file');
3645 dart.setSignature(Uri, { 3625 dart.setSignature(Uri, {
3646 constructors: () => ({ 3626 constructors: () => ({
3647 _internal: [Uri, [String, String, String, num, String, String, String]], 3627 _internal: [Uri, [String, String, String, num, String, String, String]],
3648 Uri: [Uri, [], {scheme: String, userInfo: String, host: String, port: int, path: String, pathSegments: Iterable$(String), query: String, queryParameters: Map$(String, String), fragment: String}], 3628 new: [Uri, [], {scheme: String, userInfo: String, host: String, port: int, path: String, pathSegments: Iterable$(String), query: String, queryParameters: Map$(String, String), fragment: String}],
3649 http: [Uri, [String, String], [Map$(String, String)]], 3629 http: [Uri, [String, String], [Map$(String, String)]],
3650 https: [Uri, [String, String], [Map$(String, String)]], 3630 https: [Uri, [String, String], [Map$(String, String)]],
3651 file: [Uri, [String], {windows: bool}] 3631 file: [Uri, [String], {windows: bool}]
3652 }), 3632 }),
3653 methods: () => ({ 3633 methods: () => ({
3654 replace: [Uri, [], {scheme: String, userInfo: String, host: String, port: int, path: String, pathSegments: Iterable$(String), query: String, queryParamete rs: Map$(String, String), fragment: String}], 3634 replace: [Uri, [], {scheme: String, userInfo: String, host: String, port: int, path: String, pathSegments: Iterable$(String), query: String, queryParamete rs: Map$(String, String), fragment: String}],
3655 [_merge]: [String, [String, String]], 3635 [_merge]: [String, [String, String]],
3656 [_hasDotSegments]: [bool, [String]], 3636 [_hasDotSegments]: [bool, [String]],
3657 [_removeDotSegments]: [String, [String]], 3637 [_removeDotSegments]: [String, [String]],
3658 resolve: [Uri, [String]], 3638 resolve: [Uri, [String]],
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
3744 Uri._pathCharTable = dart.const([0, 0, 32722, 12287, 65535, 34815, 65534, 1843 1]); 3724 Uri._pathCharTable = dart.const([0, 0, 32722, 12287, 65535, 34815, 65534, 1843 1]);
3745 Uri._pathCharOrSlashTable = dart.const([0, 0, 65490, 12287, 65535, 34815, 6553 4, 18431]); 3725 Uri._pathCharOrSlashTable = dart.const([0, 0, 65490, 12287, 65535, 34815, 6553 4, 18431]);
3746 Uri._queryCharTable = dart.const([0, 0, 65490, 45055, 65535, 34815, 65534, 184 31]); 3726 Uri._queryCharTable = dart.const([0, 0, 65490, 45055, 65535, 34815, 65534, 184 31]);
3747 function _symbolToString(symbol) { 3727 function _symbolToString(symbol) {
3748 return _internal.Symbol.getName(dart.as(symbol, _internal.Symbol)); 3728 return _internal.Symbol.getName(dart.as(symbol, _internal.Symbol));
3749 } 3729 }
3750 dart.fn(_symbolToString, String, [Symbol]); 3730 dart.fn(_symbolToString, String, [Symbol]);
3751 function _symbolMapToStringMap(map) { 3731 function _symbolMapToStringMap(map) {
3752 if (map == null) 3732 if (map == null)
3753 return null; 3733 return null;
3754 let result = new (Map$(String, Object))(); 3734 let result = Map$(String, Object).new();
3755 map.forEach(dart.fn((key, value) => { 3735 map.forEach(dart.fn((key, value) => {
3756 result.set(_symbolToString(key), value); 3736 result.set(_symbolToString(key), value);
3757 }, Object, [Symbol, Object])); 3737 }, Object, [Symbol, Object]));
3758 return result; 3738 return result;
3759 } 3739 }
3760 dart.fn(_symbolMapToStringMap, Object, [Map$(Symbol, Object)]); 3740 dart.fn(_symbolMapToStringMap, Object, [Map$(Symbol, Object)]);
3761 class SupportJsExtensionMethods extends Object { 3741 class SupportJsExtensionMethods extends Object {
3762 SupportJsExtensionMethods() { 3742 SupportJsExtensionMethods() {
3763 } 3743 }
3764 } 3744 }
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
3896 exports.Stopwatch = Stopwatch; 3876 exports.Stopwatch = Stopwatch;
3897 exports.String = String; 3877 exports.String = String;
3898 exports.RuneIterator = RuneIterator; 3878 exports.RuneIterator = RuneIterator;
3899 exports.StringBuffer = StringBuffer; 3879 exports.StringBuffer = StringBuffer;
3900 exports.StringSink = StringSink; 3880 exports.StringSink = StringSink;
3901 exports.Symbol = Symbol; 3881 exports.Symbol = Symbol;
3902 exports.Type = Type; 3882 exports.Type = Type;
3903 exports.Uri = Uri; 3883 exports.Uri = Uri;
3904 exports.SupportJsExtensionMethods = SupportJsExtensionMethods; 3884 exports.SupportJsExtensionMethods = SupportJsExtensionMethods;
3905 })(core, _js_helper, _internal, collection, _interceptors, math, convert); 3885 })(core, _js_helper, _internal, collection, _interceptors, math, convert);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698