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

Unified Diff: pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart

Issue 2994203002: Optimize DDC private library files. (Closed)
Patch Set: Address comments Created 3 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart
diff --git a/pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart b/pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart
index efcea7c971a0d1f046cc863af4cd9b736eaa32ad..937a7ff1281429792dd6767854230e6d28cc6436 100644
--- a/pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart
+++ b/pkg/dev_compiler/tool/input_sdk/private/regexp_helper.dart
@@ -7,8 +7,6 @@ part of dart._js_helper;
// Helper method used by internal libraries.
regExpGetNative(JSSyntaxRegExp regexp) => regexp._nativeRegExp;
-List<String> _stringList(List l) => l == null ? l : new JSArray<String>.of(l);
-
/**
* Returns a native version of the RegExp with the global flag set.
*
@@ -36,7 +34,8 @@ regExpGetGlobalNative(JSSyntaxRegExp regexp) {
*/
int regExpCaptureCount(JSSyntaxRegExp regexp) {
var nativeAnchoredRegExp = regexp._nativeAnchoredVersion;
- var match = JS('JSExtendableArray', "#.exec('')", nativeAnchoredRegExp);
+ JSExtendableArray match =
+ JS('JSExtendableArray', "#.exec('')", nativeAnchoredRegExp);
// The native-anchored regexp always have one capture more than the original,
// and always matches the empty string.
return match.length - 2;
@@ -76,9 +75,8 @@ class JSSyntaxRegExp implements RegExp {
bool get _isMultiLine => JS("bool", "#.multiline", _nativeRegExp);
bool get _isCaseSensitive => JS("bool", "!#.ignoreCase", _nativeRegExp);
- static makeNative(
- String source, bool multiLine, bool caseSensitive, bool global) {
- checkString(source);
+ static makeNative(@nullCheck String source, bool multiLine,
+ bool caseSensitive, bool global) {
String m = multiLine ? 'm' : '';
String i = caseSensitive ? '' : 'i';
String g = global ? 'g' : '';
@@ -105,15 +103,15 @@ class JSSyntaxRegExp implements RegExp {
throw new FormatException("Illegal RegExp pattern: $source, $errorMessage");
}
- Match firstMatch(String string) {
- List m = JS('JSExtendableArray|Null', r'#.exec(#)', _nativeRegExp,
- checkString(string));
+ Match firstMatch(@nullCheck String string) {
+ List m = JS('JSExtendableArray|Null', r'#.exec(#)', _nativeRegExp, string);
if (m == null) return null;
- return new _MatchImplementation(this, _stringList(m));
+ return new _MatchImplementation(this, new JSArray<String>.of(m));
}
- bool hasMatch(String string) {
- return JS('bool', r'#.test(#)', _nativeRegExp, checkString(string));
+ @notNull
+ bool hasMatch(@nullCheck String string) {
+ return JS('bool', r'#.test(#)', _nativeRegExp, string);
}
String stringMatch(String string) {
@@ -122,9 +120,8 @@ class JSSyntaxRegExp implements RegExp {
return null;
}
- Iterable<Match> allMatches(String string, [int start = 0]) {
- checkString(string);
- checkInt(start);
+ Iterable<Match> allMatches(@nullCheck String string,
+ [@nullCheck int start = 0]) {
if (start < 0 || start > string.length) {
throw new RangeError.range(start, 0, string.length);
}
@@ -136,7 +133,7 @@ class JSSyntaxRegExp implements RegExp {
JS("void", "#.lastIndex = #", regexp, start);
List match = JS("JSExtendableArray|Null", "#.exec(#)", regexp, string);
if (match == null) return null;
- return new _MatchImplementation(this, _stringList(match));
+ return new _MatchImplementation(this, new JSArray<String>.of(match));
}
Match _execAnchored(String string, int start) {
@@ -148,7 +145,7 @@ class JSSyntaxRegExp implements RegExp {
// match at the start position.
if (match[match.length - 1] != null) return null;
match.length -= 1;
- return new _MatchImplementation(this, _stringList(match));
+ return new _MatchImplementation(this, new JSArray<String>.of(match));
}
Match matchAsPrefix(String string, [int start = 0]) {

Powered by Google App Engine
This is Rietveld 408576698