[incrParse] Fix issue because of which the syntax tree always got serialized completely

This commit is contained in:
Alex Hoppen
2018-06-01 14:51:36 -07:00
parent 082a9878d1
commit 85f1c5e7a1

View File

@@ -1796,12 +1796,6 @@ void SwiftEditorDocument::readSyntaxInfo(EditorConsumer &Consumer) {
Impl.ParserDiagnostics = Impl.SyntaxInfo->getDiagnostics();
if (Consumer.syntaxTreeEnabled()) {
std::unordered_set<unsigned> ReusedNodeIds;
Consumer.handleSyntaxTree(Impl.SyntaxInfo->getSourceFile().getSyntaxRoot(),
ReusedNodeIds);
}
SwiftSyntaxMap NewMap = SwiftSyntaxMap(Impl.SyntaxMap.Tokens.size() + 16);
if (Consumer.syntaxTreeEnabled()) {
@@ -2107,6 +2101,12 @@ void SwiftLangSupport::editorOpen(StringRef Name, llvm::MemoryBuffer *Buf,
EditorDoc->readSyntaxInfo(Consumer);
EditorDoc->readSemanticInfo(Snapshot, Consumer);
if (Consumer.syntaxTreeEnabled()) {
assert(EditorDoc->getSyntaxTree().hasValue());
Consumer.handleSyntaxTree(EditorDoc->getSyntaxTree().getValue(),
/*ReusedNodeIds=*/{});
}
}