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

Unified Diff: pkg/analysis_server/lib/src/services/correction/util.dart

Issue 2869083002: Convert server to use RangeFactory (Closed)
Patch Set: Created 3 years, 7 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/analysis_server/lib/src/services/correction/util.dart
diff --git a/pkg/analysis_server/lib/src/services/correction/util.dart b/pkg/analysis_server/lib/src/services/correction/util.dart
index 91956794c516aa42a74571a54437fa65c3f684c0..ea5770b93ac1584264333723d8d75201b1edbc3e 100644
--- a/pkg/analysis_server/lib/src/services/correction/util.dart
+++ b/pkg/analysis_server/lib/src/services/correction/util.dart
@@ -10,7 +10,6 @@ import 'package:analysis_server/protocol/protocol_generated.dart'
show SourceChange, SourceEdit;
import 'package:analysis_server/src/protocol_server.dart'
show doSourceChange_addElementEdit;
-import 'package:analysis_server/src/services/correction/source_range.dart';
import 'package:analysis_server/src/services/correction/strings.dart';
import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/ast/token.dart';
@@ -23,6 +22,7 @@ import 'package:analyzer/src/dart/scanner/scanner.dart';
import 'package:analyzer/src/generated/engine.dart';
import 'package:analyzer/src/generated/resolver.dart';
import 'package:analyzer/src/generated/source.dart';
+import 'package:analyzer_plugin/utilities/range_factory.dart';
import 'package:path/path.dart';
/**
@@ -178,7 +178,7 @@ List<SourceRange> getCommentRanges(CompilationUnit unit) {
while (token != null && token.type != TokenType.EOF) {
Token commentToken = token.precedingComments;
while (commentToken != null) {
- ranges.add(rangeToken(commentToken));
+ ranges.add(range.token(commentToken));
commentToken = commentToken.next;
}
token = token.next;
@@ -972,30 +972,29 @@ class CorrectionUtils {
}
/**
- * Returns a [SourceRange] that covers [range] and extends (if possible) to
- * cover whole lines.
+ * Returns a [SourceRange] that covers [sourceRange] and extends (if possible)
+ * to cover whole lines.
*/
- SourceRange getLinesRange(SourceRange range,
+ SourceRange getLinesRange(SourceRange sourceRange,
{bool skipLeadingEmptyLines: false}) {
// start
- int startOffset = range.offset;
+ int startOffset = sourceRange.offset;
int startLineOffset = getLineContentStart(startOffset);
if (skipLeadingEmptyLines) {
startLineOffset = skipEmptyLinesLeft(startLineOffset);
}
// end
- int endOffset = range.end;
+ int endOffset = sourceRange.end;
int afterEndLineOffset = getLineContentEnd(endOffset);
// range
- return rangeStartEnd(startLineOffset, afterEndLineOffset);
+ return range.offsetEndIndex(startLineOffset, afterEndLineOffset);
}
/**
* Returns a [SourceRange] that covers all the given [Statement]s.
*/
SourceRange getLinesRangeStatements(List<Statement> statements) {
- SourceRange range = rangeNodes(statements);
- return getLinesRange(range);
+ return getLinesRange(range.nodes(statements));
}
/**
@@ -1322,7 +1321,7 @@ class CorrectionUtils {
List<Token> tokens = TokenUtils.getTokens(source);
for (Token token in tokens) {
if (token.type == TokenType.STRING) {
- lineRanges.add(rangeToken(token));
+ lineRanges.add(range.token(token));
}
token = token.next;
}
@@ -1378,7 +1377,7 @@ class CorrectionUtils {
bool selectionIncludesNonWhitespaceOutsideNode(
SourceRange selection, AstNode node) {
return _selectionIncludesNonWhitespaceOutsideRange(
- selection, rangeNode(node));
+ selection, range.node(node));
}
/**
@@ -1501,17 +1500,19 @@ class CorrectionUtils {
* between "selection" and "range" start/end.
*/
bool _selectionIncludesNonWhitespaceOutsideRange(
- SourceRange selection, SourceRange range) {
+ SourceRange selection, SourceRange sourceRange) {
// selection should cover range
- if (!selection.covers(range)) {
+ if (!selection.covers(sourceRange)) {
return false;
}
// non-whitespace between selection start and range start
- if (!isJustWhitespaceOrComment(rangeStartStart(selection, range))) {
+ if (!isJustWhitespaceOrComment(
+ range.offsetEndIndex(selection.offset, sourceRange.offset))) {
return true;
}
// non-whitespace after range
- if (!isJustWhitespaceOrComment(rangeEndEnd(range, selection))) {
+ if (!isJustWhitespaceOrComment(
+ range.offsetEndIndex(sourceRange.end, selection.end))) {
return true;
}
// only whitespace in selection around range

Powered by Google App Engine
This is Rietveld 408576698