Chromium Code Reviews| Index: pkg/kernel/lib/binary/ast_from_binary.dart |
| diff --git a/pkg/kernel/lib/binary/ast_from_binary.dart b/pkg/kernel/lib/binary/ast_from_binary.dart |
| index 39b1b9870c036771d2e10e762ff85e0a0fdf3179..6b7f0dfca7aacda45747aab5b6878200326cac90 100644 |
| --- a/pkg/kernel/lib/binary/ast_from_binary.dart |
| +++ b/pkg/kernel/lib/binary/ast_from_binary.dart |
| @@ -177,7 +177,8 @@ class BinaryBuilder { |
| 'Magic number was: ${magic.toRadixString(16)}'); |
| } |
| readStringTable(); |
| - Map<String, List<int>> uriToLineStarts = readUriToLineStarts(); |
| + Map<String, LineStartsAndSource> uriToLineStartsAndSource = |
| + readUriToLineStartsAndSource(); |
| importTable.length = readUInt(); |
| for (int i = 0; i < importTable.length; ++i) { |
| importTable[i] = new Library(null); |
| @@ -187,15 +188,17 @@ class BinaryBuilder { |
| readLibrary(); |
| } |
| var mainMethod = readMemberReference(allowNull: true); |
| - return new Program(importTable, uriToLineStarts)..mainMethod = mainMethod; |
| + return new Program(importTable, uriToLineStartsAndSource) |
| + ..mainMethod = mainMethod; |
| } |
| - Map<String, List<int>> readUriToLineStarts() { |
| + Map<String, LineStartsAndSource> readUriToLineStartsAndSource() { |
| readSourceUriTable(); |
| int length = _sourceUriTable.length; |
| - Map<String, List<int>> uriToLineStarts = {}; |
| + Map<String, LineStartsAndSource> uriToLineStarts = {}; |
|
Kevin Millikin (Google)
2016/12/20 12:03:33
<String, LineStartsAndSource>{}.
jensj
2016/12/20 13:30:22
Done.
|
| for (int i = 0; i < length; ++i) { |
| String uri = _sourceUriTable[i]; |
| + String sourceCode = readStringEntry(); |
| int lineCount = readUInt(); |
| List<int> lineStarts = new List<int>(lineCount); |
| int previousLineStart = 0; |
| @@ -204,7 +207,7 @@ class BinaryBuilder { |
| lineStarts[j] = lineStart; |
| previousLineStart = lineStart; |
| } |
| - uriToLineStarts[uri] = lineStarts; |
| + uriToLineStarts[uri] = new LineStartsAndSource(lineStarts, sourceCode); |
| } |
| return uriToLineStarts; |
| } |