Skip to content

Commit 15b1559

Browse files
committed
[SourceKit] Move syntax tree serialization to separate function
This will allow us to experiment with other serialization formats in the future more easily.
1 parent 2193a7b commit 15b1559

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

tools/SourceKit/tools/sourcekitd/lib/API/Requests.cpp

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2419,12 +2419,10 @@ void SKEditorConsumer::handleSourceText(StringRef Text) {
24192419
Dict.set(KeySourceText, Text);
24202420
}
24212421

2422-
void SKEditorConsumer::handleSyntaxTree(
2422+
void serializeSyntaxTreeAsJson(
24232423
const swift::syntax::SourceFileSyntax &SyntaxTree,
2424-
std::unordered_set<unsigned> ReusedNodeIds) {
2425-
if (Opts.SyntaxTransferMode == SyntaxTreeTransferMode::Off)
2426-
return;
2427-
2424+
std::unordered_set<unsigned> ReusedNodeIds,
2425+
ResponseBuilder::Dictionary &Dict) {
24282426
std::string SyntaxTreeString;
24292427
{
24302428
llvm::raw_string_ostream SyntaxTreeStream(SyntaxTreeString);
@@ -2437,6 +2435,15 @@ void SKEditorConsumer::handleSyntaxTree(
24372435
Dict.set(KeySerializedSyntaxTree, SyntaxTreeString);
24382436
}
24392437

2438+
void SKEditorConsumer::handleSyntaxTree(
2439+
const swift::syntax::SourceFileSyntax &SyntaxTree,
2440+
std::unordered_set<unsigned> ReusedNodeIds) {
2441+
if (Opts.SyntaxTransferMode == SyntaxTreeTransferMode::Off)
2442+
return;
2443+
2444+
serializeSyntaxTreeAsJson(SyntaxTree, ReusedNodeIds, Dict);
2445+
}
2446+
24402447
void SKEditorConsumer::handleSyntaxReuseRegions(
24412448
std::vector<SourceFileRange> ReuseRegions) {
24422449
if (Opts.EnableSyntaxReuseInfo) {

0 commit comments

Comments
 (0)