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

Unified Diff: runtime/lib/string_base.dart

Issue 12282038: Remove deprecated string features. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Merge to head Created 7 years, 10 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
« no previous file with comments | « runtime/lib/string.cc ('k') | runtime/vm/bootstrap_natives.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/lib/string_base.dart
diff --git a/runtime/lib/string_base.dart b/runtime/lib/string_base.dart
index 8b28aaeba8385ecd46dc062207d0dc603a825c9f..bb39e4ee64622afc0931f512777dd33f9aeba987 100644
--- a/runtime/lib/string_base.dart
+++ b/runtime/lib/string_base.dart
@@ -38,11 +38,7 @@ class _StringBase {
String operator [](int index) native "String_charAt";
- int charCodeAt(int index) native "String_charCodeAt";
-
- int codeUnitAt(int index) {
- return charCodeAt(index);
- }
+ int codeUnitAt(int index) native "String_codeUnitAt";
int get length native "String_getLength";
@@ -73,8 +69,8 @@ class _StringBase {
int otherLength = other.length;
int len = (thisLength < otherLength) ? thisLength : otherLength;
for (int i = 0; i < len; i++) {
- int thisCodePoint = this.charCodeAt(i);
- int otherCodePoint = other.charCodeAt(i);
+ int thisCodePoint = this.codeUnitAt(i);
+ int otherCodePoint = other.codeUnitAt(i);
if (thisCodePoint < otherCodePoint) {
return -1;
}
@@ -97,7 +93,7 @@ class _StringBase {
return false;
}
for (int i = 0; i < len; i++) {
- if (this.charCodeAt(i + start) != other.charCodeAt(i)) {
+ if (this.codeUnitAt(i + start) != other.codeUnitAt(i)) {
return false;
}
}
@@ -216,7 +212,7 @@ class _StringBase {
final int len = this.length;
int first = 0;
for (; first < len; first++) {
- if (!_isWhitespace(this.charCodeAt(first))) {
+ if (!_isWhitespace(this.codeUnitAt(first))) {
break;
}
}
@@ -226,7 +222,7 @@ class _StringBase {
}
int last = len - 1;
for (; last >= first; last--) {
- if (!_isWhitespace(this.charCodeAt(last))) {
+ if (!_isWhitespace(this.codeUnitAt(last))) {
break;
}
}
@@ -300,10 +296,10 @@ class _StringBase {
while (i < length) {
buffer.add(onMatch(new _StringMatch(i, this, "")));
// Special case to avoid splitting a surrogate pair.
- int code = this.charCodeAt(i);
+ int code = this.codeUnitAt(i);
if ((code & ~0x3FF) == 0xD800 && length > i + 1) {
// Leading surrogate;
- code = this.charCodeAt(i + 1);
+ code = this.codeUnitAt(i + 1);
if ((code & ~0x3FF) == 0xDC00) {
// Matching trailing surrogate.
buffer.add(onNonMatch(this.substring(i, i + 2)));
@@ -383,7 +379,11 @@ class _StringBase {
List<String> split(Pattern pattern) {
if ((pattern is String) && pattern.isEmpty) {
- return splitChars();
+ List<String> result = new List<String>(length);
+ for (int i = 0; i < length; i++) {
+ result[i] = this[i];
+ }
+ return result;
}
int length = this.length;
Iterator iterator = pattern.allMatches(this).iterator;
@@ -415,25 +415,7 @@ class _StringBase {
return result;
}
- List<String> splitChars() {
- int len = this.length;
- final result = new List<String>.fixedLength(len);
- for (int i = 0; i < len; i++) {
- result[i] = this[i];
- }
- return result;
- }
-
- List<int> get charCodes {
- int len = this.length;
- final result = new List<int>.fixedLength(len);
- for (int i = 0; i < len; i++) {
- result[i] = this.charCodeAt(i);
- }
- return result;
- }
-
- Iterable<int> get codeUnits => new CodeUnits(this);
+ List<int> get codeUnits => new CodeUnits(this);
Runes get runes => new Runes(this);
@@ -507,7 +489,7 @@ class _OneByteString extends _StringBase implements String {
List<String> split(Pattern pattern) {
if ((pattern is _OneByteString) && (pattern.length == 1)) {
- return _splitWithCharCode(pattern.charCodeAt(0));
+ return _splitWithCharCode(pattern.codeUnitAt(0));
}
return super.split(pattern);
}
« no previous file with comments | « runtime/lib/string.cc ('k') | runtime/vm/bootstrap_natives.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698