Skip to content

Commit e6115dd

Browse files
committed
[SourceKit] Don't return buffer name in syntactic expansions
1 parent cb9c9e0 commit e6115dd

File tree

5 files changed

+19
-19
lines changed

5 files changed

+19
-19
lines changed

include/swift/IDE/Utils.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ class SourceEditConsumer {
580580
void remove(SourceManager &SM, CharSourceRange Range);
581581
void acceptMacroExpansionBuffer(SourceManager &SM, unsigned bufferID,
582582
SourceFile *containingSF,
583-
bool adjustExpansion);
583+
bool adjustExpansion, bool includeBufferName);
584584
};
585585

586586
/// This helper stream inserts text into a SourceLoc by calling functions in

lib/IDE/Utils.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
#include "swift/IDE/Utils.h"
14+
#include "swift/AST/SourceFile.h"
1415
#include "swift/Basic/Edit.h"
1516
#include "swift/Basic/Platform.h"
1617
#include "swift/Basic/SourceManager.h"
@@ -659,7 +660,7 @@ adjustMacroExpansionWhitespace(GeneratedSourceInfo::Kind kind,
659660

660661
void swift::ide::SourceEditConsumer::acceptMacroExpansionBuffer(
661662
SourceManager &SM, unsigned bufferID, SourceFile *containingSF,
662-
bool adjustExpansion) {
663+
bool adjustExpansion, bool includeBufferName) {
663664
auto generatedInfo = SM.getGeneratedSourceInfo(bufferID);
664665
if (!generatedInfo || generatedInfo->originalSourceRange.isInvalid())
665666
return;
@@ -706,9 +707,14 @@ void swift::ide::SourceEditConsumer::acceptMacroExpansionBuffer(
706707
originalPath = SM.getIdentifierForBuffer(*originalFile->getBufferID());
707708
}
708709

710+
StringRef bufferName;
711+
if (includeBufferName) {
712+
bufferName = SM.getIdentifierForBuffer(bufferID);
713+
}
714+
709715
accept(SM, {originalPath,
710716
originalSourceRange,
711-
SM.getIdentifierForBuffer(bufferID),
717+
bufferName,
712718
rewrittenBuffer,
713719
{}});
714720
}

lib/IDETool/SyntacticMacroExpansion.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,8 @@ bool SyntacticMacroExpansionInstance::getExpansion(
465465
// Send all edits to the consumer.
466466
for (unsigned bufferID : bufferIDs) {
467467
consumer.acceptMacroExpansionBuffer(SourceMgr, bufferID, SF,
468-
/*adjust=*/false);
468+
/*adjust=*/false,
469+
/*includeBufferName=*/false);
469470
}
470471

471472
return false;

lib/Refactoring/Refactoring.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8767,7 +8767,7 @@ static bool expandMacro(SourceManager &SM, ResolvedCursorInfoPtr cursorInfo,
87678767
// Send all of the rewritten buffer snippets.
87688768
for (auto bufferID: bufferIDs) {
87698769
editConsumer.acceptMacroExpansionBuffer(SM, bufferID, containingSF,
8770-
adjustExpansion);
8770+
adjustExpansion, /*includeBufferName=*/true);
87718771
}
87728772

87738773
// For an attached macro, remove the custom attribute; it's been fully

test/SourceKit/Macros/syntactic_expansion.swift.expected

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@
1919
key.column: 1,
2020
key.endline: 13,
2121
key.endcolumn: 1,
22-
key.text: "static func requirement() where Element : P {\n Element.requirement()\n}",
23-
key.buffer_name: "macro_565056f2d01a68bdc1cc2ee8aa618595.swift"
22+
key.text: "static func requirement() where Element : P {\n Element.requirement()\n}"
2423
}
2524
],
2625
key.category: source.edit.kind.active
@@ -32,8 +31,7 @@
3231
key.column: 2,
3332
key.endline: 13,
3433
key.endcolumn: 2,
35-
key.text: "extension Generic : P where Element: P {}",
36-
key.buffer_name: "macro_a05c1290cb88fd731ba683e5aa86fdb7.swift"
34+
key.text: "extension Generic : P where Element: P {}"
3735
}
3836
],
3937
key.category: source.edit.kind.active
@@ -57,8 +55,7 @@
5755
key.column: 17,
5856
key.endline: 7,
5957
key.endcolumn: 17,
60-
key.text: "{\n get {\n _value.wrappedValue\n }\n\n set {\n _value.wrappedValue = newValue\n }\n}",
61-
key.buffer_name: "macro_f51f41c03929a32f838d53f437ec0a36.swift"
58+
key.text: "{\n get {\n _value.wrappedValue\n }\n\n set {\n _value.wrappedValue = newValue\n }\n}"
6259
}
6360
],
6461
key.category: source.edit.kind.active
@@ -70,8 +67,7 @@
7067
key.column: 12,
7168
key.endline: 7,
7269
key.endcolumn: 12,
73-
key.text: "var _value: MyWrapperThingy<Int>",
74-
key.buffer_name: "macro_4cb3f1a23406c36f4ca3076cfc889d56.swift"
70+
key.text: "var _value: MyWrapperThingy<Int>"
7571
}
7672
],
7773
key.category: source.edit.kind.active
@@ -95,8 +91,7 @@
9591
key.column: 3,
9692
key.endline: 7,
9793
key.endcolumn: 3,
98-
key.text: "@Wrapper",
99-
key.buffer_name: "macro_a4c2cd1a73caad3b1eb8f265e55461ee.swift"
94+
key.text: "@Wrapper"
10095
}
10196
],
10297
key.category: source.edit.kind.active
@@ -108,8 +103,7 @@
108103
key.column: 3,
109104
key.endline: 10,
110105
key.endcolumn: 3,
111-
key.text: "@Wrapper",
112-
key.buffer_name: "macro_8bd5a8e09442bf0ec36f456f59a93687.swift"
106+
key.text: "@Wrapper"
113107
}
114108
],
115109
key.category: source.edit.kind.active
@@ -121,8 +115,7 @@
121115
key.column: 3,
122116
key.endline: 12,
123117
key.endcolumn: 35,
124-
key.text: "struct blah8 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu0_() {\n }\n}\nstruct blah16 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu1_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu2_() {\n }\n}\nstruct blah32 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu3_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu4_() {\n }\n}\nstruct blah64 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu5_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu6_() {\n }\n}",
125-
key.buffer_name: "macro_a01f07de3e9ee8585adf794ccd6dec8c.swift"
118+
key.text: "struct blah8 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu0_() {\n }\n}\nstruct blah16 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu1_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu2_() {\n }\n}\nstruct blah32 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu3_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu4_() {\n }\n}\nstruct blah64 {\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu5_() {\n }\n func macro_a01f07de3e9ee8585adf794ccd6dec8c6methodfMu6_() {\n }\n}"
126119
}
127120
],
128121
key.category: source.edit.kind.active

0 commit comments

Comments
 (0)