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

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: Rebase Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « lib/runtime/dart/_isolate_helper.js ('k') | lib/runtime/dart/_js_names.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 var _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 779 matching lines...) Expand 10 before | Expand all | Expand 10 after
790 } 790 }
791 if (onMatch == null) 791 if (onMatch == null)
792 onMatch = _matchString; 792 onMatch = _matchString;
793 if (onNonMatch == null) 793 if (onNonMatch == null)
794 onNonMatch = _stringIdentity; 794 onNonMatch = _stringIdentity;
795 if (typeof pattern == 'string') { 795 if (typeof pattern == 'string') {
796 return stringReplaceAllStringFuncUnchecked(receiver, pattern, onMatch, onN onMatch); 796 return stringReplaceAllStringFuncUnchecked(receiver, pattern, onMatch, onN onMatch);
797 } 797 }
798 let buffer = new core.StringBuffer(); 798 let buffer = new core.StringBuffer();
799 let startIndex = 0; 799 let startIndex = 0;
800 for (let match of dart.dinvoke(pattern, 'allMatches', receiver)) { 800 for (let match of dart.as(dart.dinvoke(pattern, 'allMatches', receiver), cor e.Iterable$(core.Match))) {
801 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', startIndex, match.start))); 801 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', startIndex, match.start)));
802 buffer.write(dart.dinvokef(onMatch, match)); 802 buffer.write(dart.dinvokef(onMatch, match));
803 startIndex = match.end; 803 startIndex = match.end;
804 } 804 }
805 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', s tartIndex))); 805 buffer.write(dart.dinvokef(onNonMatch, dart.dinvoke(receiver, 'substring', s tartIndex)));
806 return buffer.toString(); 806 return buffer.toString();
807 } 807 }
808 // Function stringReplaceAllEmptyFuncUnchecked: (dynamic, dynamic, dynamic) → dynamic 808 // Function stringReplaceAllEmptyFuncUnchecked: (dynamic, dynamic, dynamic) → dynamic
809 function stringReplaceAllEmptyFuncUnchecked(receiver, onMatch, onNonMatch) { 809 function stringReplaceAllEmptyFuncUnchecked(receiver, onMatch, onNonMatch) {
810 let buffer = new core.StringBuffer(); 810 let buffer = new core.StringBuffer();
(...skipping 1053 matching lines...) Expand 10 before | Expand all | Expand 10 after
1864 subarray = array; 1864 subarray = array;
1865 } else { 1865 } else {
1866 subarray = array.slice(i, dart.notNull(i) + dart.notNull(kMaxApply) < dart.notNull(end) ? dart.notNull(i) + dart.notNull(kMaxApply) : end); 1866 subarray = array.slice(i, dart.notNull(i) + dart.notNull(kMaxApply) < dart.notNull(end) ? dart.notNull(i) + dart.notNull(kMaxApply) : end);
1867 } 1867 }
1868 result = result + String.fromCharCode.apply(null, subarray); 1868 result = result + String.fromCharCode.apply(null, subarray);
1869 } 1869 }
1870 return result; 1870 return result;
1871 } 1871 }
1872 static stringFromCodePoints(codePoints) { 1872 static stringFromCodePoints(codePoints) {
1873 let a = new core.List$(core.int).from([]); 1873 let a = new core.List$(core.int).from([]);
1874 for (let i of codePoints) { 1874 for (let i of dart.as(codePoints, core.Iterable)) {
1875 if (!(typeof i == 'number')) 1875 if (!(typeof i == 'number'))
1876 throw new core.ArgumentError(i); 1876 throw new core.ArgumentError(i);
1877 if (dart.dbinary(i, '<=', 65535)) { 1877 if (dart.dbinary(i, '<=', 65535)) {
1878 a.add(dart.as(i, core.int)); 1878 a.add(dart.as(i, core.int));
1879 } else if (dart.dbinary(i, '<=', 1114111)) { 1879 } else if (dart.dbinary(i, '<=', 1114111)) {
1880 a.add(55296['+'](dart.dbinary(dart.dbinary(dart.dbinary(i, '-', 65536) , '>>', 10), '&', 1023))); 1880 a.add(55296['+'](dart.dbinary(dart.dbinary(dart.dbinary(i, '-', 65536) , '>>', 10), '&', 1023)));
1881 a.add(56320['+'](dart.dbinary(i, '&', 1023))); 1881 a.add(56320['+'](dart.dbinary(i, '&', 1023)));
1882 } else { 1882 } else {
1883 throw new core.ArgumentError(i); 1883 throw new core.ArgumentError(i);
1884 } 1884 }
1885 } 1885 }
1886 return Primitives[_fromCharCodeApply](a); 1886 return Primitives[_fromCharCodeApply](a);
1887 } 1887 }
1888 static stringFromCharCodes(charCodes) { 1888 static stringFromCharCodes(charCodes) {
1889 for (let i of charCodes) { 1889 for (let i of dart.as(charCodes, core.Iterable)) {
1890 if (!(typeof i == 'number')) 1890 if (!(typeof i == 'number'))
1891 throw new core.ArgumentError(i); 1891 throw new core.ArgumentError(i);
1892 if (dart.dbinary(i, '<', 0)) 1892 if (dart.dbinary(i, '<', 0))
1893 throw new core.ArgumentError(i); 1893 throw new core.ArgumentError(i);
1894 if (dart.dbinary(i, '>', 65535)) 1894 if (dart.dbinary(i, '>', 65535))
1895 return Primitives.stringFromCodePoints(charCodes); 1895 return Primitives.stringFromCodePoints(charCodes);
1896 } 1896 }
1897 return Primitives[_fromCharCodeApply](dart.as(charCodes, core.List$(core.i nt))); 1897 return Primitives[_fromCharCodeApply](dart.as(charCodes, core.List$(core.i nt)));
1898 } 1898 }
1899 static stringFromCharCode(charCode) { 1899 static stringFromCharCode(charCode) {
(...skipping 2102 matching lines...) Expand 10 before | Expand all | Expand 10 after
4002 exports.UnimplementedNoSuchMethodError = UnimplementedNoSuchMethodError; 4002 exports.UnimplementedNoSuchMethodError = UnimplementedNoSuchMethodError;
4003 exports.random64 = random64; 4003 exports.random64 = random64;
4004 exports.jsonEncodeNative = jsonEncodeNative; 4004 exports.jsonEncodeNative = jsonEncodeNative;
4005 exports.getIsolateAffinityTag = getIsolateAffinityTag; 4005 exports.getIsolateAffinityTag = getIsolateAffinityTag;
4006 exports.loadDeferredLibrary = loadDeferredLibrary; 4006 exports.loadDeferredLibrary = loadDeferredLibrary;
4007 exports.MainError = MainError; 4007 exports.MainError = MainError;
4008 exports.missingMain = missingMain; 4008 exports.missingMain = missingMain;
4009 exports.badMain = badMain; 4009 exports.badMain = badMain;
4010 exports.mainHasTooManyParameters = mainHasTooManyParameters; 4010 exports.mainHasTooManyParameters = mainHasTooManyParameters;
4011 })(_js_helper || (_js_helper = {})); 4011 })(_js_helper || (_js_helper = {}));
OLDNEW
« no previous file with comments | « lib/runtime/dart/_isolate_helper.js ('k') | lib/runtime/dart/_js_names.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698