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

Unified Diff: packages/dart_style/lib/src/line_writer.dart

Issue 1521693002: Roll Observatory deps (charted -> ^0.3.0) (Closed) Base URL: https://chromium.googlesource.com/external/github.com/dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years 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: packages/dart_style/lib/src/line_writer.dart
diff --git a/packages/dart_style/lib/src/line_writer.dart b/packages/dart_style/lib/src/line_writer.dart
index 055892ea0b251639921cc77b7391411a96a5e421..9fb5d39f857177ec3c613ca92b4453a4d83d8c73 100644
--- a/packages/dart_style/lib/src/line_writer.dart
+++ b/packages/dart_style/lib/src/line_writer.dart
@@ -82,7 +82,7 @@ class LineWriter {
if (cached != null) return cached;
var writer = new LineWriter._(
- chunk.blockChunks, _lineEnding, pageWidth, column, _blockCache);
+ chunk.block.chunks, _lineEnding, pageWidth, column, _blockCache);
// TODO(rnystrom): Passing in an initial indent here is hacky. The
// LineWriter ensures all but the first chunk have a block indent, and this
@@ -131,7 +131,7 @@ class LineWriter {
_buffer.toString(), totalCost, _selectionStart, _selectionEnd);
}
- /// Takes the first [length] of the chunks with leading [indent], removes
+ /// Takes the chunks from [start] to [end] with leading [indent], removes
/// them, and runs the [LineSplitter] on them.
int _completeLine(int newlines, int indent, int start, int end,
{bool flushLeft}) {
@@ -144,7 +144,7 @@ class LineWriter {
if (debug.traceLineWriter) {
debug.log(debug.green("\nWriting:"));
- debug.dumpChunks(start, chunks);
+ debug.dumpChunks(0, chunks);
debug.log();
}
@@ -163,11 +163,11 @@ class LineWriter {
var chunk = chunks[i];
_writeChunk(chunk);
- if (chunk.blockChunks.isNotEmpty) {
+ if (chunk.isBlock) {
if (!splits.shouldSplitAt(i)) {
// This block didn't split (which implies none of the child blocks
// of that block split either, recursively), so write them all inline.
- _writeChunksUnsplit(chunk.blockChunks);
+ _writeChunksUnsplit(chunk);
} else {
// Include the formatted block contents.
var block = formatBlock(chunk, splits.getColumn(i));
@@ -201,16 +201,18 @@ class LineWriter {
return splits.cost;
}
- /// Writes [chunks] (and any child chunks of them, recursively) without any
- /// splitting.
- void _writeChunksUnsplit(List<Chunk> chunks) {
- for (var chunk in chunks) {
- _writeChunk(chunk);
+ /// Writes the block chunks of [chunk] (and any child chunks of them,
+ /// recursively) without any splitting.
+ void _writeChunksUnsplit(Chunk chunk) {
+ if (!chunk.isBlock) return;
+
+ for (var blockChunk in chunk.block.chunks) {
+ _writeChunk(blockChunk);
- if (chunk.spaceWhenUnsplit) _buffer.write(" ");
+ if (blockChunk.spaceWhenUnsplit) _buffer.write(" ");
// Recurse into the block.
- _writeChunksUnsplit(chunk.blockChunks);
+ _writeChunksUnsplit(blockChunk);
}
}
« no previous file with comments | « packages/dart_style/lib/src/line_splitting/solve_state.dart ('k') | packages/dart_style/lib/src/nesting_builder.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698