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

Side by Side Diff: test/dart_codegen/expect/core/uri.dart

Issue 1010893004: Allow S->T <: dynamic->T (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: Rebase and address comments 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/dart_codegen/expect/convert/json.dart ('k') | test/dart_codegen/expect/d/d.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 part of dart.core; 1 part of dart.core;
2 class Uri {final String _host; 2 class Uri {final String _host;
3 num _port; 3 num _port;
4 String _path; 4 String _path;
5 final String scheme; 5 final String scheme;
6 String get authority { 6 String get authority {
7 if (!hasAuthority) return ""; 7 if (!hasAuthority) return "";
8 var sb = new StringBuffer(); 8 var sb = new StringBuffer();
9 _writeAuthority(sb); 9 _writeAuthority(sb);
10 return sb.toString(); 10 return sb.toString();
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 } 272 }
273 factory Uri.file(String path, { 273 factory Uri.file(String path, {
274 bool windows} 274 bool windows}
275 ) { 275 ) {
276 windows = windows == null ? Uri._isWindows : windows; 276 windows = windows == null ? Uri._isWindows : windows;
277 return ((__x12) => DEVC$RT.cast(__x12, dynamic, Uri, "CastGeneral", """line 6 98, column 12 of dart:core/uri.dart: """, __x12 is Uri, true))(windows ? _makeWi ndowsFileUrl(path) : _makeFileUri(path)); 277 return ((__x12) => DEVC$RT.cast(__x12, dynamic, Uri, "CastGeneral", """line 6 98, column 12 of dart:core/uri.dart: """, __x12 is Uri, true))(windows ? _makeWi ndowsFileUrl(path) : _makeFileUri(path));
278 } 278 }
279 external static Uri get base; 279 external static Uri get base;
280 external static bool get _isWindows; 280 external static bool get _isWindows;
281 static _checkNonWindowsPathReservedCharacters(List<String> segments, bool argum entError) { 281 static _checkNonWindowsPathReservedCharacters(List<String> segments, bool argum entError) {
282 segments.forEach((segment) { 282 segments.forEach(((__x18) => DEVC$RT.wrap((dynamic f(dynamic __u13)) {
283 dynamic c(dynamic x0) => f(x0);
284 return f == null ? null : c;
285 }
286 , __x18, __t16, __t14, "WrapLiteral", """line 716, column 22 of dart:core/uri. dart: """, __x18 is __t14))((segment) {
283 if (segment.contains("/")) { 287 if (segment.contains("/")) {
284 if (argumentError) { 288 if (argumentError) {
285 throw new ArgumentError("Illegal path character $segment"); 289 throw new ArgumentError("Illegal path character $segment");
286 } 290 }
287 else { 291 else {
288 throw new UnsupportedError("Illegal path character $segment"); 292 throw new UnsupportedError("Illegal path character $segment");
289 } 293 }
290 } 294 }
291 } 295 }
292 ); 296 ));
293 } 297 }
294 static _checkWindowsPathReservedCharacters(List<String> segments, bool argument Error, [int firstSegment = 0]) { 298 static _checkWindowsPathReservedCharacters(List<String> segments, bool argument Error, [int firstSegment = 0]) {
295 segments.skip(firstSegment).forEach((segment) { 299 segments.skip(firstSegment).forEach(((__x20) => DEVC$RT.wrap((dynamic f(dynami c __u19)) {
300 dynamic c(dynamic x0) => f(x0);
301 return f == null ? null : c;
302 }
303 , __x20, __t16, __t14, "WrapLiteral", """line 730, column 41 of dart:core/uri. dart: """, __x20 is __t14))((segment) {
296 if (segment.contains(new RegExp(r'["*/:<>?\\|]'))) { 304 if (segment.contains(new RegExp(r'["*/:<>?\\|]'))) {
297 if (argumentError) { 305 if (argumentError) {
298 throw new ArgumentError("Illegal character in path"); 306 throw new ArgumentError("Illegal character in path");
299 } 307 }
300 else { 308 else {
301 throw new UnsupportedError("Illegal character in path"); 309 throw new UnsupportedError("Illegal character in path");
302 } 310 }
303 } 311 }
304 } 312 }
305 ); 313 ));
306 } 314 }
307 static _checkWindowsDriveLetter(int charCode, bool argumentError) { 315 static _checkWindowsDriveLetter(int charCode, bool argumentError) {
308 if ((_UPPER_CASE_A <= charCode && charCode <= _UPPER_CASE_Z) || (_LOWER_CASE_A <= charCode && charCode <= _LOWER_CASE_Z)) { 316 if ((_UPPER_CASE_A <= charCode && charCode <= _UPPER_CASE_Z) || (_LOWER_CASE_A <= charCode && charCode <= _LOWER_CASE_Z)) {
309 return;} 317 return;}
310 if (argumentError) { 318 if (argumentError) {
311 throw new ArgumentError("Illegal drive letter " + new String.fromCharCode(ch arCode)); 319 throw new ArgumentError("Illegal drive letter " + new String.fromCharCode(ch arCode));
312 } 320 }
313 else { 321 else {
314 throw new UnsupportedError("Illegal drive letter " + new String.fromCharCode (charCode)); 322 throw new UnsupportedError("Illegal drive letter " + new String.fromCharCode (charCode));
315 } 323 }
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 if (userInfo != null) { 392 if (userInfo != null) {
385 userInfo = _makeUserInfo(userInfo, 0, userInfo.length); 393 userInfo = _makeUserInfo(userInfo, 0, userInfo.length);
386 } 394 }
387 else { 395 else {
388 userInfo = this.userInfo; 396 userInfo = this.userInfo;
389 } 397 }
390 if (port != null) { 398 if (port != null) {
391 port = _makePort(port, scheme); 399 port = _makePort(port, scheme);
392 } 400 }
393 else { 401 else {
394 port = ((__x13) => DEVC$RT.cast(__x13, num, int, "CastGeneral", """line 889, column 14 of dart:core/uri.dart: """, __x13 is int, true))(this._port); 402 port = ((__x21) => DEVC$RT.cast(__x21, num, int, "CastGeneral", """line 889, column 14 of dart:core/uri.dart: """, __x21 is int, true))(this._port);
395 if (schemeChanged) { 403 if (schemeChanged) {
396 port = _makePort(port, scheme); 404 port = _makePort(port, scheme);
397 } 405 }
398 } 406 }
399 if (host != null) { 407 if (host != null) {
400 host = _makeHost(host, 0, host.length, false); 408 host = _makeHost(host, 0, host.length, false);
401 } 409 }
402 else if (this.hasAuthority) { 410 else if (this.hasAuthority) {
403 host = this.host; 411 host = this.host;
404 } 412 }
(...skipping 20 matching lines...) Expand all
425 fragment = _makeFragment(fragment, 0, fragment.length); 433 fragment = _makeFragment(fragment, 0, fragment.length);
426 } 434 }
427 else if (this.hasFragment) { 435 else if (this.hasFragment) {
428 fragment = this.fragment; 436 fragment = this.fragment;
429 } 437 }
430 return new Uri._internal(scheme, userInfo, host, port, path, query, fragment) ; 438 return new Uri._internal(scheme, userInfo, host, port, path, query, fragment) ;
431 } 439 }
432 List<String> get pathSegments { 440 List<String> get pathSegments {
433 if (_pathSegments == null) { 441 if (_pathSegments == null) {
434 var pathToSplit = !path.isEmpty && path.codeUnitAt(0) == _SLASH ? path.subst ring(1) : path; 442 var pathToSplit = !path.isEmpty && path.codeUnitAt(0) == _SLASH ? path.subst ring(1) : path;
435 _pathSegments = ((__x14) => DEVC$RT.cast(__x14, DEVC$RT.type((DDC$collectio n$.UnmodifiableListView<dynamic> _) { 443 _pathSegments = ((__x22) => DEVC$RT.cast(__x22, DEVC$RT.type((DDC$collectio n$.UnmodifiableListView<dynamic> _) {
436 } 444 }
437 ), DEVC$RT.type((List<String> _) { 445 ), DEVC$RT.type((List<String> _) {
438 } 446 }
439 ), "CastExact", """line 945, column 23 of dart:core/uri.dart: """, __x14 is List<String>, false))(new UnmodifiableListView(pathToSplit == "" ? const <String > [] : pathToSplit.split("/").map(Uri.decodeComponent).toList(growable: false))) ; 447 ), "CastExact", """line 945, column 23 of dart:core/uri.dart: """, __x22 is List<String>, false))(new UnmodifiableListView(pathToSplit == "" ? const <String > [] : pathToSplit.split("/").map(Uri.decodeComponent).toList(growable: false))) ;
440 } 448 }
441 return _pathSegments; 449 return _pathSegments;
442 } 450 }
443 Map<String, String> get queryParameters { 451 Map<String, String> get queryParameters {
444 if (_queryParameters == null) { 452 if (_queryParameters == null) {
445 _queryParameters = ((__x15) => DEVC$RT.cast(__x15, DEVC$RT.type((DDC$collect ion$.UnmodifiableMapView<dynamic, dynamic> _) { 453 _queryParameters = ((__x23) => DEVC$RT.cast(__x23, DEVC$RT.type((DDC$collect ion$.UnmodifiableMapView<dynamic, dynamic> _) {
446 } 454 }
447 ), DEVC$RT.type((Map<String, String> _) { 455 ), DEVC$RT.type((Map<String, String> _) {
448 } 456 }
449 ), "CastExact", """line 969, column 26 of dart:core/uri.dart: """, __x15 is Map<String, String>, false))(new UnmodifiableMapView(splitQueryString(query))); 457 ), "CastExact", """line 969, column 26 of dart:core/uri.dart: """, __x23 is Map<String, String>, false))(new UnmodifiableMapView(splitQueryString(query)));
450 } 458 }
451 return _queryParameters; 459 return _queryParameters;
452 } 460 }
453 static int _makePort(int port, String scheme) { 461 static int _makePort(int port, String scheme) {
454 if (port != null && port == _defaultPort(scheme)) return null; 462 if (port != null && port == _defaultPort(scheme)) return null;
455 return port; 463 return port;
456 } 464 }
457 static String _makeHost(String host, int start, int end, bool strictIPv6) { 465 static String _makeHost(String host, int start, int end, bool strictIPv6) {
458 if (host == null) return null; 466 if (host == null) return null;
459 if (start == end) return ""; 467 if (start == end) return "";
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
582 } 590 }
583 var result; 591 var result;
584 if (path != null) { 592 if (path != null) {
585 result = _normalize(path, start, end, DEVC$RT.cast(_pathCharOrSlashTable, DE VC$RT.type((List<dynamic> _) { 593 result = _normalize(path, start, end, DEVC$RT.cast(_pathCharOrSlashTable, DE VC$RT.type((List<dynamic> _) {
586 } 594 }
587 ), DEVC$RT.type((List<int> _) { 595 ), DEVC$RT.type((List<int> _) {
588 } 596 }
589 ), "CastDynamic", """line 1139, column 45 of dart:core/uri.dart: """, _pathC harOrSlashTable is List<int>, false)); 597 ), "CastDynamic", """line 1139, column 45 of dart:core/uri.dart: """, _pathC harOrSlashTable is List<int>, false));
590 } 598 }
591 else { 599 else {
592 result = pathSegments.map((s) => _uriEncode(DEVC$RT.cast(_pathCharTable, DEV C$RT.type((List<dynamic> _) { 600 result = pathSegments.map(((__x29) => DEVC$RT.wrap((String f(dynamic __u24)) {
601 String c(dynamic x0) => f(x0);
602 return f == null ? null : c;
603 }
604 , __x29, __t27, __t25, "WrapLiteral", """line 1141, column 33 of dart:core/u ri.dart: """, __x29 is __t25))((s) => _uriEncode(DEVC$RT.cast(_pathCharTable, DE VC$RT.type((List<dynamic> _) {
593 } 605 }
594 ), DEVC$RT.type((List<int> _) { 606 ), DEVC$RT.type((List<int> _) {
595 } 607 }
596 ), "CastDynamic", """line 1141, column 51 of dart:core/uri.dart: """, _pathC harTable is List<int>, false), DEVC$RT.cast(s, dynamic, String, "CastGeneral", " ""line 1141, column 67 of dart:core/uri.dart: """, s is String, true))).join("/" ); 608 ), "CastDynamic", """line 1141, column 51 of dart:core/uri.dart: """, _pathC harTable is List<int>, false), DEVC$RT.cast(s, dynamic, String, "CastGeneral", " ""line 1141, column 67 of dart:core/uri.dart: """, s is String, true)))).join("/ ");
597 } 609 }
598 if (result.isEmpty) { 610 if (result.isEmpty) {
599 if (isFile) return "/"; 611 if (isFile) return "/";
600 } 612 }
601 else if ((isFile || ensureLeadingSlash) && result.codeUnitAt(0) != _SLASH) { 613 else if ((isFile || ensureLeadingSlash) && result.codeUnitAt(0) != _SLASH) {
602 return "/$result"; 614 return "/$result";
603 } 615 }
604 return DEVC$RT.cast(result, dynamic, String, "CastGeneral", """line 1149, col umn 12 of dart:core/uri.dart: """, result is String, true); 616 return DEVC$RT.cast(result, dynamic, String, "CastGeneral", """line 1149, col umn 12 of dart:core/uri.dart: """, result is String, true);
605 } 617 }
606 static String _makeQuery(String query, int start, int end, Map<String, String> queryParameters) { 618 static String _makeQuery(String query, int start, int end, Map<String, String> queryParameters) {
607 if (query == null && queryParameters == null) return null; 619 if (query == null && queryParameters == null) return null;
608 if (query != null && queryParameters != null) { 620 if (query != null && queryParameters != null) {
609 throw new ArgumentError('Both query and queryParameters specified'); 621 throw new ArgumentError('Both query and queryParameters specified');
610 } 622 }
611 if (query != null) return _normalize(query, start, end, DEVC$RT.cast(_queryCh arTable, DEVC$RT.type((List<dynamic> _) { 623 if (query != null) return _normalize(query, start, end, DEVC$RT.cast(_queryCh arTable, DEVC$RT.type((List<dynamic> _) {
612 } 624 }
613 ), DEVC$RT.type((List<int> _) { 625 ), DEVC$RT.type((List<int> _) {
614 } 626 }
615 ), "CastDynamic", """line 1158, column 61 of dart:core/uri.dart: """, _queryCh arTable is List<int>, false)); 627 ), "CastDynamic", """line 1158, column 61 of dart:core/uri.dart: """, _queryCh arTable is List<int>, false));
616 var result = new StringBuffer(); 628 var result = new StringBuffer();
617 var first = true; 629 var first = true;
618 queryParameters.forEach((key, value) { 630 queryParameters.forEach(((__x38) => DEVC$RT.wrap((dynamic f(dynamic __u30, dy namic __u31)) {
631 dynamic c(dynamic x0, dynamic x1) => f(x0, x1);
632 return f == null ? null : c;
633 }
634 , __x38, __t35, __t32, "WrapLiteral", """line 1162, column 29 of dart:core/uri .dart: """, __x38 is __t32))((key, value) {
619 if (!first) { 635 if (!first) {
620 result.write("&"); 636 result.write("&");
621 } 637 }
622 first = false; 638 first = false;
623 result.write(Uri.encodeQueryComponent(DEVC$RT.cast(key, dynamic, String, "C astGeneral", """line 1167, column 45 of dart:core/uri.dart: """, key is String, true))); 639 result.write(Uri.encodeQueryComponent(DEVC$RT.cast(key, dynamic, String, "C astGeneral", """line 1167, column 45 of dart:core/uri.dart: """, key is String, true)));
624 if (value != null && !value.isEmpty) { 640 if (value != null && !value.isEmpty) {
625 result.write("="); 641 result.write("=");
626 result.write(Uri.encodeQueryComponent(DEVC$RT.cast(value, dynamic, String , "CastGeneral", """line 1170, column 47 of dart:core/uri.dart: """, value is St ring, true))); 642 result.write(Uri.encodeQueryComponent(DEVC$RT.cast(value, dynamic, String , "CastGeneral", """line 1170, column 47 of dart:core/uri.dart: """, value is St ring, true)));
627 } 643 }
628 } 644 }
629 ); 645 ));
630 return result.toString(); 646 return result.toString();
631 } 647 }
632 static String _makeFragment(String fragment, int start, int end) { 648 static String _makeFragment(String fragment, int start, int end) {
633 if (fragment == null) return null; 649 if (fragment == null) return null;
634 return _normalize(fragment, start, end, DEVC$RT.cast(_queryCharTable, DEVC$RT .type((List<dynamic> _) { 650 return _normalize(fragment, start, end, DEVC$RT.cast(_queryCharTable, DEVC$RT .type((List<dynamic> _) {
635 } 651 }
636 ), DEVC$RT.type((List<int> _) { 652 ), DEVC$RT.type((List<int> _) {
637 } 653 }
638 ), "CastDynamic", """line 1178, column 45 of dart:core/uri.dart: """, _queryCh arTable is List<int>, false)); 654 ), "CastDynamic", """line 1178, column 45 of dart:core/uri.dart: """, _queryCh arTable is List<int>, false));
639 } 655 }
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
671 } 687 }
672 static bool _isUnreservedChar(int ch) { 688 static bool _isUnreservedChar(int ch) {
673 return ch < 127 && ((_unreservedTable[ch >> 4] & (1 << (ch & 0x0f))) != 0); 689 return ch < 127 && ((_unreservedTable[ch >> 4] & (1 << (ch & 0x0f))) != 0);
674 } 690 }
675 static String _escapeChar(char) { 691 static String _escapeChar(char) {
676 assert (char <= 0x10ffff); const hexDigits = "0123456789ABCDEF"; 692 assert (char <= 0x10ffff); const hexDigits = "0123456789ABCDEF";
677 List codeUnits; 693 List codeUnits;
678 if (char < 0x80) { 694 if (char < 0x80) {
679 codeUnits = new List(3); 695 codeUnits = new List(3);
680 codeUnits[0] = _PERCENT; 696 codeUnits[0] = _PERCENT;
681 codeUnits[1] = hexDigits.codeUnitAt(((__x16) => DEVC$RT.cast(__x16, dynamic , int, "CastGeneral", """line 1248, column 43 of dart:core/uri.dart: """, __x16 is int, true))(char >> 4)); 697 codeUnits[1] = hexDigits.codeUnitAt(((__x39) => DEVC$RT.cast(__x39, dynamic , int, "CastGeneral", """line 1248, column 43 of dart:core/uri.dart: """, __x39 is int, true))(char >> 4));
682 codeUnits[2] = hexDigits.codeUnitAt(((__x17) => DEVC$RT.cast(__x17, dynamic , int, "CastGeneral", """line 1249, column 43 of dart:core/uri.dart: """, __x17 is int, true))(char & 0xf)); 698 codeUnits[2] = hexDigits.codeUnitAt(((__x40) => DEVC$RT.cast(__x40, dynamic , int, "CastGeneral", """line 1249, column 43 of dart:core/uri.dart: """, __x40 is int, true))(char & 0xf));
683 } 699 }
684 else { 700 else {
685 int flag = 0xc0; 701 int flag = 0xc0;
686 int encodedBytes = 2; 702 int encodedBytes = 2;
687 if (char > 0x7ff) { 703 if (char > 0x7ff) {
688 flag = 0xe0; 704 flag = 0xe0;
689 encodedBytes = 3; 705 encodedBytes = 3;
690 if (char > 0xffff) { 706 if (char > 0xffff) {
691 encodedBytes = 4; 707 encodedBytes = 4;
692 flag = 0xf0; 708 flag = 0xf0;
693 } 709 }
694 } 710 }
695 codeUnits = new List(3 * encodedBytes); 711 codeUnits = new List(3 * encodedBytes);
696 int index = 0; 712 int index = 0;
697 while (--encodedBytes >= 0) { 713 while (--encodedBytes >= 0) {
698 int byte = ((__x18) => DEVC$RT.cast(__x18, dynamic, int, "CastGeneral", "" "line 1265, column 20 of dart:core/uri.dart: """, __x18 is int, true))(((char >> (6 * encodedBytes)) & 0x3f) | flag); 714 int byte = ((__x41) => DEVC$RT.cast(__x41, dynamic, int, "CastGeneral", "" "line 1265, column 20 of dart:core/uri.dart: """, __x41 is int, true))(((char >> (6 * encodedBytes)) & 0x3f) | flag);
699 codeUnits[index] = _PERCENT; 715 codeUnits[index] = _PERCENT;
700 codeUnits[index + 1] = hexDigits.codeUnitAt(byte >> 4); 716 codeUnits[index + 1] = hexDigits.codeUnitAt(byte >> 4);
701 codeUnits[index + 2] = hexDigits.codeUnitAt(byte & 0xf); 717 codeUnits[index + 2] = hexDigits.codeUnitAt(byte & 0xf);
702 index += 3; 718 index += 3;
703 flag = 0x80; 719 flag = 0x80;
704 } 720 }
705 } 721 }
706 return new String.fromCharCodes(DEVC$RT.cast(codeUnits, DEVC$RT.type((List<dy namic> _) { 722 return new String.fromCharCodes(DEVC$RT.cast(codeUnits, DEVC$RT.type((List<dy namic> _) {
707 } 723 }
708 ), DEVC$RT.type((Iterable<int> _) { 724 ), DEVC$RT.type((Iterable<int> _) {
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
796 } 812 }
797 return base.substring(0, baseEnd + 1) + reference.substring(refStart - 3 * ba ckCount); 813 return base.substring(0, baseEnd + 1) + reference.substring(refStart - 3 * ba ckCount);
798 } 814 }
799 bool _hasDotSegments(String path) { 815 bool _hasDotSegments(String path) {
800 if (path.length > 0 && path.codeUnitAt(0) == _DOT) return true; 816 if (path.length > 0 && path.codeUnitAt(0) == _DOT) return true;
801 int index = path.indexOf("/."); 817 int index = path.indexOf("/.");
802 return index != -1; 818 return index != -1;
803 } 819 }
804 String _removeDotSegments(String path) { 820 String _removeDotSegments(String path) {
805 if (!_hasDotSegments(path)) return path; 821 if (!_hasDotSegments(path)) return path;
806 List<String> output = ((__x19) => DEVC$RT.cast(__x19, DEVC$RT.type((List<dyna mic> _) { 822 List<String> output = ((__x42) => DEVC$RT.cast(__x42, DEVC$RT.type((List<dyna mic> _) {
807 } 823 }
808 ), DEVC$RT.type((List<String> _) { 824 ), DEVC$RT.type((List<String> _) {
809 } 825 }
810 ), "CastLiteral", """line 1402, column 27 of dart:core/uri.dart: """, __x19 is List<String>, false))([]); 826 ), "CastLiteral", """line 1402, column 27 of dart:core/uri.dart: """, __x42 is List<String>, false))([]);
811 bool appendSlash = false; 827 bool appendSlash = false;
812 for (String segment in path.split("/")) { 828 for (String segment in path.split("/")) {
813 appendSlash = false; 829 appendSlash = false;
814 if (segment == "..") { 830 if (segment == "..") {
815 if (!output.isEmpty && ((output.length != 1) || (output[0] != ""))) output .removeLast(); 831 if (!output.isEmpty && ((output.length != 1) || (output[0] != ""))) output .removeLast();
816 appendSlash = true; 832 appendSlash = true;
817 } 833 }
818 else if ("." == segment) { 834 else if ("." == segment) {
819 appendSlash = true; 835 appendSlash = true;
820 } 836 }
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
870 if (reference.path.startsWith("/")) { 886 if (reference.path.startsWith("/")) {
871 targetPath = _removeDotSegments(reference.path); 887 targetPath = _removeDotSegments(reference.path);
872 } 888 }
873 else { 889 else {
874 targetPath = _removeDotSegments(_merge(this._path, reference.path)); 890 targetPath = _removeDotSegments(_merge(this._path, reference.path));
875 } 891 }
876 if (reference.hasQuery) targetQuery = reference.query; 892 if (reference.hasQuery) targetQuery = reference.query;
877 } 893 }
878 targetUserInfo = this._userInfo; 894 targetUserInfo = this._userInfo;
879 targetHost = this._host; 895 targetHost = this._host;
880 targetPort = ((__x20) => DEVC$RT.cast(__x20, num, int, "CastGeneral", """ line 1489, column 22 of dart:core/uri.dart: """, __x20 is int, true))(this._port ); 896 targetPort = ((__x43) => DEVC$RT.cast(__x43, num, int, "CastGeneral", """ line 1489, column 22 of dart:core/uri.dart: """, __x43 is int, true))(this._port );
881 } 897 }
882 } 898 }
883 String fragment = reference.hasFragment ? reference.fragment : null; 899 String fragment = reference.hasFragment ? reference.fragment : null;
884 return new Uri._internal(targetScheme, targetUserInfo, targetHost, targetPort , targetPath, targetQuery, fragment); 900 return new Uri._internal(targetScheme, targetUserInfo, targetHost, targetPort , targetPath, targetQuery, fragment);
885 } 901 }
886 bool get hasAuthority => _host != null; 902 bool get hasAuthority => _host != null;
887 bool get hasPort => _port != null; 903 bool get hasPort => _port != null;
888 bool get hasQuery => _query != null; 904 bool get hasQuery => _query != null;
889 bool get hasFragment => _fragment != null; 905 bool get hasFragment => _fragment != null;
890 String get origin { 906 String get origin {
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
975 } 991 }
976 return sb.toString(); 992 return sb.toString();
977 } 993 }
978 bool operator ==(other) { 994 bool operator ==(other) {
979 if (other is! Uri) return false; 995 if (other is! Uri) return false;
980 Uri uri = DEVC$RT.cast(other, dynamic, Uri, "CastGeneral", """line 1698, colu mn 15 of dart:core/uri.dart: """, other is Uri, true); 996 Uri uri = DEVC$RT.cast(other, dynamic, Uri, "CastGeneral", """line 1698, colu mn 15 of dart:core/uri.dart: """, other is Uri, true);
981 return scheme == uri.scheme && hasAuthority == uri.hasAuthority && userInfo = = uri.userInfo && host == uri.host && port == uri.port && path == uri.path && ha sQuery == uri.hasQuery && query == uri.query && hasFragment == uri.hasFragment & & fragment == uri.fragment; 997 return scheme == uri.scheme && hasAuthority == uri.hasAuthority && userInfo = = uri.userInfo && host == uri.host && port == uri.port && path == uri.path && ha sQuery == uri.hasQuery && query == uri.query && hasFragment == uri.hasFragment & & fragment == uri.fragment;
982 } 998 }
983 int get hashCode { 999 int get hashCode {
984 int combine(part, current) { 1000 int combine(part, current) {
985 return ((__x21) => DEVC$RT.cast(__x21, dynamic, int, "CastGeneral", """line 1714, column 14 of dart:core/uri.dart: """, __x21 is int, true))((current * 31 + part.hashCode) & 0x3FFFFFFF); 1001 return ((__x44) => DEVC$RT.cast(__x44, dynamic, int, "CastGeneral", """line 1714, column 14 of dart:core/uri.dart: """, __x44 is int, true))((current * 31 + part.hashCode) & 0x3FFFFFFF);
986 } 1002 }
987 return combine(scheme, combine(userInfo, combine(host, combine(port, combine( path, combine(query, combine(fragment, 1))))))); 1003 return combine(scheme, combine(userInfo, combine(host, combine(port, combine( path, combine(query, combine(fragment, 1)))))));
988 } 1004 }
989 static void _addIfNonEmpty(StringBuffer sb, String test, String first, String s econd) { 1005 static void _addIfNonEmpty(StringBuffer sb, String test, String first, String s econd) {
990 if ("" != test) { 1006 if ("" != test) {
991 sb.write(first); 1007 sb.write(first);
992 sb.write(second); 1008 sb.write(second);
993 } 1009 }
994 } 1010 }
995 static String encodeComponent(String component) { 1011 static String encodeComponent(String component) {
(...skipping 26 matching lines...) Expand all
1022 ), DEVC$RT.type((List<int> _) { 1038 ), DEVC$RT.type((List<int> _) {
1023 } 1039 }
1024 ), "CastDynamic", """line 1832, column 23 of dart:core/uri.dart: """, _encodeF ullTable is List<int>, false), uri); 1040 ), "CastDynamic", """line 1832, column 23 of dart:core/uri.dart: """, _encodeF ullTable is List<int>, false), uri);
1025 } 1041 }
1026 static String decodeFull(String uri) { 1042 static String decodeFull(String uri) {
1027 return _uriDecode(uri); 1043 return _uriDecode(uri);
1028 } 1044 }
1029 static Map<String, String> splitQueryString(String query, { 1045 static Map<String, String> splitQueryString(String query, {
1030 Encoding encoding : UTF8} 1046 Encoding encoding : UTF8}
1031 ) { 1047 ) {
1032 return ((__x22) => DEVC$RT.cast(__x22, dynamic, DEVC$RT.type((Map<String, Stri ng> _) { 1048 return ((__x45) => DEVC$RT.cast(__x45, dynamic, DEVC$RT.type((Map<String, Stri ng> _) {
1033 } 1049 }
1034 ), "CastGeneral", """line 1864, column 12 of dart:core/uri.dart: """, __x22 is Map<String, String>, false))(query.split("&").fold({ 1050 ), "CastGeneral", """line 1864, column 12 of dart:core/uri.dart: """, __x45 is Map<String, String>, false))(query.split("&").fold({
1035 } 1051 }
1036 , (map, element) { 1052 , ((__x51) => DEVC$RT.wrap((dynamic f(dynamic __u46, dynamic __u47)) {
1037 int index = ((__x23) => DEVC$RT.cast(__x23, dynamic, int, "CastGeneral", """ line 1865, column 19 of dart:core/uri.dart: """, __x23 is int, true))(element.in dexOf("=")); 1053 dynamic c(dynamic x0, dynamic x1) => f(x0, x1);
1054 return f == null ? null : c;
1055 }
1056 , __x51, __t35, __t48, "WrapLiteral", """line 1864, column 38 of dart:core/uri .dart: """, __x51 is __t48))((map, element) {
1057 int index = ((__x52) => DEVC$RT.cast(__x52, dynamic, int, "CastGeneral", """ line 1865, column 19 of dart:core/uri.dart: """, __x52 is int, true))(element.in dexOf("="));
1038 if (index == -1) { 1058 if (index == -1) {
1039 if (element != "") { 1059 if (element != "") {
1040 map[decodeQueryComponent(DEVC$RT.cast(element, dynamic, String, "CastGen eral", """line 1868, column 36 of dart:core/uri.dart: """, element is String, tr ue), encoding: encoding)] = ""; 1060 map[decodeQueryComponent(DEVC$RT.cast(element, dynamic, String, "CastGen eral", """line 1868, column 36 of dart:core/uri.dart: """, element is String, tr ue), encoding: encoding)] = "";
1041 } 1061 }
1042 } 1062 }
1043 else if (index != 0) { 1063 else if (index != 0) {
1044 var key = element.substring(0, index); 1064 var key = element.substring(0, index);
1045 var value = element.substring(index + 1); 1065 var value = element.substring(index + 1);
1046 map[Uri.decodeQueryComponent(DEVC$RT.cast(key, dynamic, String, "CastGene ral", """line 1873, column 38 of dart:core/uri.dart: """, key is String, true), encoding: encoding)] = decodeQueryComponent(DEVC$RT.cast(value, dynamic, String, "CastGeneral", """line 1874, column 34 of dart:core/uri.dart: """, value is Str ing, true), encoding: encoding); 1066 map[Uri.decodeQueryComponent(DEVC$RT.cast(key, dynamic, String, "CastGene ral", """line 1873, column 38 of dart:core/uri.dart: """, key is String, true), encoding: encoding)] = decodeQueryComponent(DEVC$RT.cast(value, dynamic, String, "CastGeneral", """line 1874, column 34 of dart:core/uri.dart: """, value is Str ing, true), encoding: encoding);
1047 } 1067 }
1048 return map; 1068 return map;
1049 } 1069 }
1050 )); 1070 )));
1051 } 1071 }
1052 static List<int> parseIPv4Address(String host) { 1072 static List<int> parseIPv4Address(String host) {
1053 void error(String msg) { 1073 void error(String msg) {
1054 throw new FormatException('Illegal IPv4 address, $msg'); 1074 throw new FormatException('Illegal IPv4 address, $msg');
1055 } 1075 }
1056 var bytes = host.split('.'); 1076 var bytes = host.split('.');
1057 if (bytes.length != 4) { 1077 if (bytes.length != 4) {
1058 error('IPv4 address should contain exactly 4 parts'); 1078 error('IPv4 address should contain exactly 4 parts');
1059 } 1079 }
1060 return ((__x24) => DEVC$RT.cast(__x24, DEVC$RT.type((List<dynamic> _) { 1080 return ((__x53) => DEVC$RT.cast(__x53, DEVC$RT.type((List<dynamic> _) {
1061 } 1081 }
1062 ), DEVC$RT.type((List<int> _) { 1082 ), DEVC$RT.type((List<int> _) {
1063 } 1083 }
1064 ), "CastDynamic", """line 1896, column 12 of dart:core/uri.dart: """, __x24 is List<int>, false))(bytes.map((byteString) { 1084 ), "CastDynamic", """line 1896, column 12 of dart:core/uri.dart: """, __x53 is List<int>, false))(bytes.map(((__x55) => DEVC$RT.wrap((dynamic f(dynamic __u54) ) {
1085 dynamic c(dynamic x0) => f(x0);
1086 return f == null ? null : c;
1087 }
1088 , __x55, __t16, __t25, "WrapLiteral", """line 1897, column 14 of dart:core/uri .dart: """, __x55 is __t25))((byteString) {
1065 int byte = int.parse(DEVC$RT.cast(byteString, dynamic, String, "CastGeneral" , """line 1898, column 32 of dart:core/uri.dart: """, byteString is String, true )); 1089 int byte = int.parse(DEVC$RT.cast(byteString, dynamic, String, "CastGeneral" , """line 1898, column 32 of dart:core/uri.dart: """, byteString is String, true ));
1066 if (byte < 0 || byte > 255) { 1090 if (byte < 0 || byte > 255) {
1067 error('each part must be in the range of `0..255`'); 1091 error('each part must be in the range of `0..255`');
1068 } 1092 }
1069 return byte; 1093 return byte;
1070 } 1094 }
1071 ).toList()); 1095 )).toList());
1072 } 1096 }
1073 static List<int> parseIPv6Address(String host, [int start = 0, int end]) { 1097 static List<int> parseIPv6Address(String host, [int start = 0, int end]) {
1074 if (end == null) end = host.length; 1098 if (end == null) end = host.length;
1075 void error(String msg, [position]) { 1099 void error(String msg, [position]) {
1076 throw new FormatException('Illegal IPv6 address, $msg', host, DEVC$RT.cast(p osition, dynamic, int, "CastGeneral", """line 1933, column 69 of dart:core/uri.d art: """, position is int, true)); 1100 throw new FormatException('Illegal IPv6 address, $msg', host, DEVC$RT.cast(p osition, dynamic, int, "CastGeneral", """line 1933, column 69 of dart:core/uri.d art: """, position is int, true));
1077 } 1101 }
1078 int parseHex(int start, int end) { 1102 int parseHex(int start, int end) {
1079 if (end - start > 4) { 1103 if (end - start > 4) {
1080 error('an IPv6 part can only contain a maximum of 4 hex digits', start); 1104 error('an IPv6 part can only contain a maximum of 4 hex digits', start);
1081 } 1105 }
1082 int value = int.parse(host.substring(start, end), radix: 16); 1106 int value = int.parse(host.substring(start, end), radix: 16);
1083 if (value < 0 || value > (1 << 16) - 1) { 1107 if (value < 0 || value > (1 << 16) - 1) {
1084 error('each part must be in the range of `0x0..0xFFFF`', start); 1108 error('each part must be in the range of `0x0..0xFFFF`', start);
1085 } 1109 }
1086 return value; 1110 return value;
1087 } 1111 }
1088 if (host.length < 2) error('address is too short'); 1112 if (host.length < 2) error('address is too short');
1089 List<int> parts = ((__x25) => DEVC$RT.cast(__x25, DEVC$RT.type((List<dynamic> _) { 1113 List<int> parts = ((__x56) => DEVC$RT.cast(__x56, DEVC$RT.type((List<dynamic> _) {
1090 } 1114 }
1091 ), DEVC$RT.type((List<int> _) { 1115 ), DEVC$RT.type((List<int> _) {
1092 } 1116 }
1093 ), "CastLiteral", """line 1946, column 23 of dart:core/uri.dart: """, __x25 is List<int>, false))([]); 1117 ), "CastLiteral", """line 1946, column 23 of dart:core/uri.dart: """, __x56 is List<int>, false))([]);
1094 bool wildcardSeen = false; 1118 bool wildcardSeen = false;
1095 int partStart = start; 1119 int partStart = start;
1096 for (int i = start; i < end; i++) { 1120 for (int i = start; i < end; i++) {
1097 if (host.codeUnitAt(i) == _COLON) { 1121 if (host.codeUnitAt(i) == _COLON) {
1098 if (i == start) { 1122 if (i == start) {
1099 i++; 1123 i++;
1100 if (host.codeUnitAt(i) != _COLON) { 1124 if (host.codeUnitAt(i) != _COLON) {
1101 error('invalid start colon.', i); 1125 error('invalid start colon.', i);
1102 } 1126 }
1103 partStart = i; 1127 partStart = i;
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
1190 static const int _RIGHT_BRACKET = 0x5D; 1214 static const int _RIGHT_BRACKET = 0x5D;
1191 static const int _LOWER_CASE_A = 0x61; 1215 static const int _LOWER_CASE_A = 0x61;
1192 static const int _LOWER_CASE_F = 0x66; 1216 static const int _LOWER_CASE_F = 0x66;
1193 static const int _LOWER_CASE_Z = 0x7A; 1217 static const int _LOWER_CASE_Z = 0x7A;
1194 static const int _BAR = 0x7C; 1218 static const int _BAR = 0x7C;
1195 static String _uriEncode(List<int> canonicalTable, String text, { 1219 static String _uriEncode(List<int> canonicalTable, String text, {
1196 Encoding encoding : UTF8, bool spaceToPlus : false} 1220 Encoding encoding : UTF8, bool spaceToPlus : false}
1197 ) { 1221 ) {
1198 byteToHex(byte, buffer) { 1222 byteToHex(byte, buffer) {
1199 const String hex = '0123456789ABCDEF'; 1223 const String hex = '0123456789ABCDEF';
1200 buffer.writeCharCode(hex.codeUnitAt(((__x26) => DEVC$RT.cast(__x26, dynamic , int, "CastGeneral", """line 2059, column 43 of dart:core/uri.dart: """, __x26 is int, true))(byte >> 4))); 1224 buffer.writeCharCode(hex.codeUnitAt(((__x57) => DEVC$RT.cast(__x57, dynamic , int, "CastGeneral", """line 2059, column 43 of dart:core/uri.dart: """, __x57 is int, true))(byte >> 4)));
1201 buffer.writeCharCode(hex.codeUnitAt(((__x27) => DEVC$RT.cast(__x27, dynamic , int, "CastGeneral", """line 2060, column 43 of dart:core/uri.dart: """, __x27 is int, true))(byte & 0x0f))); 1225 buffer.writeCharCode(hex.codeUnitAt(((__x58) => DEVC$RT.cast(__x58, dynamic , int, "CastGeneral", """line 2060, column 43 of dart:core/uri.dart: """, __x58 is int, true))(byte & 0x0f)));
1202 } 1226 }
1203 StringBuffer result = new StringBuffer(); 1227 StringBuffer result = new StringBuffer();
1204 var bytes = encoding.encode(text); 1228 var bytes = encoding.encode(text);
1205 for (int i = 0; i < bytes.length; i++) { 1229 for (int i = 0; i < bytes.length; i++) {
1206 int byte = bytes[i]; 1230 int byte = bytes[i];
1207 if (byte < 128 && ((canonicalTable[byte >> 4] & (1 << (byte & 0x0f))) != 0) ) { 1231 if (byte < 128 && ((canonicalTable[byte >> 4] & (1 << (byte & 0x0f))) != 0) ) {
1208 result.writeCharCode(byte); 1232 result.writeCharCode(byte);
1209 } 1233 }
1210 else if (spaceToPlus && byte == _SPACE) { 1234 else if (spaceToPlus && byte == _SPACE) {
1211 result.writeCharCode(_PLUS); 1235 result.writeCharCode(_PLUS);
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
1247 List<int> bytes; 1271 List<int> bytes;
1248 if (simple) { 1272 if (simple) {
1249 if (encoding == UTF8 || encoding == LATIN1) { 1273 if (encoding == UTF8 || encoding == LATIN1) {
1250 return text; 1274 return text;
1251 } 1275 }
1252 else { 1276 else {
1253 bytes = text.codeUnits; 1277 bytes = text.codeUnits;
1254 } 1278 }
1255 } 1279 }
1256 else { 1280 else {
1257 bytes = ((__x28) => DEVC$RT.cast(__x28, DEVC$RT.type((List<dynamic> _) { 1281 bytes = ((__x59) => DEVC$RT.cast(__x59, DEVC$RT.type((List<dynamic> _) {
1258 } 1282 }
1259 ), DEVC$RT.type((List<int> _) { 1283 ), DEVC$RT.type((List<int> _) {
1260 } 1284 }
1261 ), "CastExact", """line 2134, column 15 of dart:core/uri.dart: """, __x28 is List<int>, false))(new List()); 1285 ), "CastExact", """line 2134, column 15 of dart:core/uri.dart: """, __x59 is List<int>, false))(new List());
1262 for (int i = 0; i < text.length; i++) { 1286 for (int i = 0; i < text.length; i++) {
1263 var codeUnit = text.codeUnitAt(i); 1287 var codeUnit = text.codeUnitAt(i);
1264 if (codeUnit > 127) { 1288 if (codeUnit > 127) {
1265 throw new ArgumentError("Illegal percent encoding in URI"); 1289 throw new ArgumentError("Illegal percent encoding in URI");
1266 } 1290 }
1267 if (codeUnit == _PERCENT) { 1291 if (codeUnit == _PERCENT) {
1268 if (i + 3 > text.length) { 1292 if (i + 3 > text.length) {
1269 throw new ArgumentError('Truncated URI'); 1293 throw new ArgumentError('Truncated URI');
1270 } 1294 }
1271 bytes.add(_hexCharPairToByte(text, i + 1)); 1295 bytes.add(_hexCharPairToByte(text, i + 1));
(...skipping 16 matching lines...) Expand all
1288 static const _schemeTable = const [0x0000, 0x0000, 0x6800, 0x03ff, 0xfffe, 0x07 ff, 0xfffe, 0x07ff]; 1312 static const _schemeTable = const [0x0000, 0x0000, 0x6800, 0x03ff, 0xfffe, 0x07 ff, 0xfffe, 0x07ff];
1289 static const _schemeLowerTable = const [0x0000, 0x0000, 0x6800, 0x03ff, 0x0000, 0x0000, 0xfffe, 0x07ff]; 1313 static const _schemeLowerTable = const [0x0000, 0x0000, 0x6800, 0x03ff, 0x0000, 0x0000, 0xfffe, 0x07ff];
1290 static const _subDelimitersTable = const [0x0000, 0x0000, 0x7fd2, 0x2bff, 0xfff e, 0x87ff, 0xfffe, 0x47ff]; 1314 static const _subDelimitersTable = const [0x0000, 0x0000, 0x7fd2, 0x2bff, 0xfff e, 0x87ff, 0xfffe, 0x47ff];
1291 static const _genDelimitersTable = const [0x0000, 0x0000, 0x8008, 0x8400, 0x000 1, 0x2800, 0x0000, 0x0000]; 1315 static const _genDelimitersTable = const [0x0000, 0x0000, 0x8008, 0x8400, 0x000 1, 0x2800, 0x0000, 0x0000];
1292 static const _userinfoTable = const [0x0000, 0x0000, 0x7fd2, 0x2fff, 0xfffe, 0x 87ff, 0xfffe, 0x47ff]; 1316 static const _userinfoTable = const [0x0000, 0x0000, 0x7fd2, 0x2fff, 0xfffe, 0x 87ff, 0xfffe, 0x47ff];
1293 static const _regNameTable = const [0x0000, 0x0000, 0x7ff2, 0x2bff, 0xfffe, 0x8 7ff, 0xfffe, 0x47ff]; 1317 static const _regNameTable = const [0x0000, 0x0000, 0x7ff2, 0x2bff, 0xfffe, 0x8 7ff, 0xfffe, 0x47ff];
1294 static const _pathCharTable = const [0x0000, 0x0000, 0x7fd2, 0x2fff, 0xffff, 0x 87ff, 0xfffe, 0x47ff]; 1318 static const _pathCharTable = const [0x0000, 0x0000, 0x7fd2, 0x2fff, 0xffff, 0x 87ff, 0xfffe, 0x47ff];
1295 static const _pathCharOrSlashTable = const [0x0000, 0x0000, 0xffd2, 0x2fff, 0xf fff, 0x87ff, 0xfffe, 0x47ff]; 1319 static const _pathCharOrSlashTable = const [0x0000, 0x0000, 0xffd2, 0x2fff, 0xf fff, 0x87ff, 0xfffe, 0x47ff];
1296 static const _queryCharTable = const [0x0000, 0x0000, 0xffd2, 0xafff, 0xffff, 0 x87ff, 0xfffe, 0x47ff]; 1320 static const _queryCharTable = const [0x0000, 0x0000, 0xffd2, 0xafff, 0xffff, 0 x87ff, 0xfffe, 0x47ff];
1297 } 1321 }
1322 typedef void __t14(String __u15);
1323 typedef dynamic __t16(dynamic __u17);
1324 typedef dynamic __t25(String __u26);
1325 typedef String __t27(dynamic __u28);
1326 typedef void __t32(String __u33, String __u34);
1327 typedef dynamic __t35(dynamic __u36, dynamic __u37);
1328 typedef dynamic __t48(dynamic __u49, String __u50);
OLDNEW
« no previous file with comments | « test/dart_codegen/expect/convert/json.dart ('k') | test/dart_codegen/expect/d/d.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698