| Index: pkg/analyzer/lib/src/generated/java_engine.dart
|
| diff --git a/pkg/analyzer/lib/src/generated/java_engine.dart b/pkg/analyzer/lib/src/generated/java_engine.dart
|
| index d0fb62bd8d8a87d260823f4098af53c312a787c7..8b10e718bca85283a249356b597f393dad88c88c 100644
|
| --- a/pkg/analyzer/lib/src/generated/java_engine.dart
|
| +++ b/pkg/analyzer/lib/src/generated/java_engine.dart
|
| @@ -121,6 +121,33 @@ class StringUtilities {
|
|
|
| static Interner INTERNER = new NullInterner();
|
|
|
| + /**
|
| + * Compute line starts for the given [content].
|
| + * Lines end with `\r`, `\n` or `\r\n`.
|
| + */
|
| + static List<int> computeLineStarts(String content) {
|
| + List<int> lineStarts = <int>[0];
|
| + int length = content.length;
|
| + int unit;
|
| + for (int index = 0; index < length; index++) {
|
| + unit = content.codeUnitAt(index);
|
| + // Special-case \r\n.
|
| + if (unit == 0x0D /* \r */) {
|
| + // Peek ahead to detect a following \n.
|
| + if ((index + 1 < length) && content.codeUnitAt(index + 1) == 0x0A) {
|
| + // Line start will get registered at next index at the \n.
|
| + } else {
|
| + lineStarts.add(index + 1);
|
| + }
|
| + }
|
| + // \n
|
| + if (unit == 0x0A) {
|
| + lineStarts.add(index + 1);
|
| + }
|
| + }
|
| + return lineStarts;
|
| + }
|
| +
|
| static endsWith3(String str, int c1, int c2, int c3) {
|
| var length = str.length;
|
| return length >= 3 &&
|
|
|