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

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

Issue 1048863003: Handle for-in loops (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 var _js_helper; 1 var _js_helper;
2 (function(exports) { 2 (function(exports) {
3 'use strict'; 3 'use strict';
4 class NoSideEffects extends core.Object { 4 class NoSideEffects extends core.Object {
5 NoSideEffects() { 5 NoSideEffects() {
6 } 6 }
7 } 7 }
8 class NoThrows extends core.Object { 8 class NoThrows extends core.Object {
9 NoThrows() { 9 NoThrows() {
10 } 10 }
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after
784 } 784 }
785 if (onMatch === null) 785 if (onMatch === null)
786 onMatch = _matchString; 786 onMatch = _matchString;
787 if (onNonMatch === null) 787 if (onNonMatch === null)
788 onNonMatch = _stringIdentity; 788 onNonMatch = _stringIdentity;
789 if (typeof pattern == 'string') { 789 if (typeof pattern == 'string') {
790 return stringReplaceAllStringFuncUnchecked(receiver, pattern, onMatch, onN onMatch); 790 return stringReplaceAllStringFuncUnchecked(receiver, pattern, onMatch, onN onMatch);
791 } 791 }
792 let buffer = new core.StringBuffer(); 792 let buffer = new core.StringBuffer();
793 let startIndex = 0; 793 let startIndex = 0;
794 for (let match of dart.dinvoke(pattern, 'allMatches', receiver)) { 794 for (let match of dart.as(dart.dinvoke(pattern, 'allMatches', receiver), cor e.Iterable$(core.Match))) {
795 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', startIndex, match.start))); 795 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', startIndex, match.start)));
796 buffer.write(dart.dinvokef(onMatch, match)); 796 buffer.write(dart.dinvokef(onMatch, match));
797 startIndex = match.end; 797 startIndex = match.end;
798 } 798 }
799 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', s tartIndex))); 799 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', s tartIndex)));
800 return buffer.toString(); 800 return buffer.toString();
801 } 801 }
802 // Function stringReplaceAllEmptyFuncUnchecked: (dynamic, dynamic, dynamic) → dynamic 802 // Function stringReplaceAllEmptyFuncUnchecked: (dynamic, dynamic, dynamic) → dynamic
803 function stringReplaceAllEmptyFuncUnchecked(receiver, onMatch, onNonMatch) { 803 function stringReplaceAllEmptyFuncUnchecked(receiver, onMatch, onNonMatch) {
804 let buffer = new core.StringBuffer(); 804 let buffer = new core.StringBuffer();
(...skipping 1051 matching lines...) Expand 10 before | Expand all | Expand 10 after
1856 subarray = array; 1856 subarray = array;
1857 } else { 1857 } else {
1858 subarray = array.slice(i, dart.notNull(i) + dart.notNull(kMaxApply) < dart.notNull(end) ? dart.notNull(i) + dart.notNull(kMaxApply) : end); 1858 subarray = array.slice(i, dart.notNull(i) + dart.notNull(kMaxApply) < dart.notNull(end) ? dart.notNull(i) + dart.notNull(kMaxApply) : end);
1859 } 1859 }
1860 result = result + String.fromCharCode.apply(null, subarray); 1860 result = result + String.fromCharCode.apply(null, subarray);
1861 } 1861 }
1862 return result; 1862 return result;
1863 } 1863 }
1864 static stringFromCodePoints(codePoints) { 1864 static stringFromCodePoints(codePoints) {
1865 let a = new core.List$(core.int).from([]); 1865 let a = new core.List$(core.int).from([]);
1866 for (let i of codePoints) { 1866 for (let i of dart.as(codePoints, core.Iterable)) {
1867 if (!(typeof i == 'number')) 1867 if (!(typeof i == 'number'))
1868 throw new core.ArgumentError(i); 1868 throw new core.ArgumentError(i);
1869 if (dart.dbinary(i, '<=', 65535)) { 1869 if (dart.dbinary(i, '<=', 65535)) {
1870 a.add(dart.as(i, core.int)); 1870 a.add(dart.as(i, core.int));
1871 } else if (dart.dbinary(i, '<=', 1114111)) { 1871 } else if (dart.dbinary(i, '<=', 1114111)) {
1872 a.add(55296['+'](dart.dbinary(dart.dbinary(dart.dbinary(i, '-', 65536) , '>>', 10), '&', 1023))); 1872 a.add(55296['+'](dart.dbinary(dart.dbinary(dart.dbinary(i, '-', 65536) , '>>', 10), '&', 1023)));
1873 a.add(56320['+'](dart.dbinary(i, '&', 1023))); 1873 a.add(56320['+'](dart.dbinary(i, '&', 1023)));
1874 } else { 1874 } else {
1875 throw new core.ArgumentError(i); 1875 throw new core.ArgumentError(i);
1876 } 1876 }
1877 } 1877 }
1878 return Primitives[_fromCharCodeApply](a); 1878 return Primitives[_fromCharCodeApply](a);
1879 } 1879 }
1880 static stringFromCharCodes(charCodes) { 1880 static stringFromCharCodes(charCodes) {
1881 for (let i of charCodes) { 1881 for (let i of dart.as(charCodes, core.Iterable)) {
1882 if (!(typeof i == 'number')) 1882 if (!(typeof i == 'number'))
1883 throw new core.ArgumentError(i); 1883 throw new core.ArgumentError(i);
1884 if (dart.dbinary(i, '<', 0)) 1884 if (dart.dbinary(i, '<', 0))
1885 throw new core.ArgumentError(i); 1885 throw new core.ArgumentError(i);
1886 if (dart.dbinary(i, '>', 65535)) 1886 if (dart.dbinary(i, '>', 65535))
1887 return Primitives.stringFromCodePoints(charCodes); 1887 return Primitives.stringFromCodePoints(charCodes);
1888 } 1888 }
1889 return Primitives[_fromCharCodeApply](dart.as(charCodes, core.List$(core.i nt))); 1889 return Primitives[_fromCharCodeApply](dart.as(charCodes, core.List$(core.i nt)));
1890 } 1890 }
1891 static stringFromCharCode(charCode) { 1891 static stringFromCharCode(charCode) {
(...skipping 2093 matching lines...) Expand 10 before | Expand all | Expand 10 after
3985 exports.UnimplementedNoSuchMethodError = UnimplementedNoSuchMethodError; 3985 exports.UnimplementedNoSuchMethodError = UnimplementedNoSuchMethodError;
3986 exports.random64 = random64; 3986 exports.random64 = random64;
3987 exports.jsonEncodeNative = jsonEncodeNative; 3987 exports.jsonEncodeNative = jsonEncodeNative;
3988 exports.getIsolateAffinityTag = getIsolateAffinityTag; 3988 exports.getIsolateAffinityTag = getIsolateAffinityTag;
3989 exports.loadDeferredLibrary = loadDeferredLibrary; 3989 exports.loadDeferredLibrary = loadDeferredLibrary;
3990 exports.MainError = MainError; 3990 exports.MainError = MainError;
3991 exports.missingMain = missingMain; 3991 exports.missingMain = missingMain;
3992 exports.badMain = badMain; 3992 exports.badMain = badMain;
3993 exports.mainHasTooManyParameters = mainHasTooManyParameters; 3993 exports.mainHasTooManyParameters = mainHasTooManyParameters;
3994 })(_js_helper || (_js_helper = {})); 3994 })(_js_helper || (_js_helper = {}));
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698