diff options
-rw-r--r-- | clang/include/clang/Tooling/Refactoring.h | 15 | ||||
-rw-r--r-- | clang/lib/Tooling/Refactoring.cpp | 12 |
2 files changed, 15 insertions, 12 deletions
diff --git a/clang/include/clang/Tooling/Refactoring.h b/clang/include/clang/Tooling/Refactoring.h index 43ec9acdb3b..cd2fb9f6c56 100644 --- a/clang/include/clang/Tooling/Refactoring.h +++ b/clang/include/clang/Tooling/Refactoring.h @@ -83,16 +83,16 @@ public: /// \brief Creates a Replacement of the range [Start, Start+Length) with /// ReplacementText. - Replacement(SourceManager &Sources, SourceLocation Start, unsigned Length, + Replacement(const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText); /// \brief Creates a Replacement of the given range with ReplacementText. - Replacement(SourceManager &Sources, const CharSourceRange &Range, + Replacement(const SourceManager &Sources, const CharSourceRange &Range, StringRef ReplacementText); /// \brief Creates a Replacement of the node with ReplacementText. template <typename Node> - Replacement(SourceManager &Sources, const Node &NodeToReplace, + Replacement(const SourceManager &Sources, const Node &NodeToReplace, StringRef ReplacementText); /// \brief Returns whether this replacement can be applied to a file. @@ -115,9 +115,10 @@ public: std::string toString() const; private: - void setFromSourceLocation(SourceManager &Sources, SourceLocation Start, + void setFromSourceLocation(const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText); - void setFromSourceRange(SourceManager &Sources, const CharSourceRange &Range, + void setFromSourceRange(const SourceManager &Sources, + const CharSourceRange &Range, StringRef ReplacementText); std::string FilePath; @@ -230,8 +231,8 @@ private: }; template <typename Node> -Replacement::Replacement(SourceManager &Sources, const Node &NodeToReplace, - StringRef ReplacementText) { +Replacement::Replacement(const SourceManager &Sources, + const Node &NodeToReplace, StringRef ReplacementText) { const CharSourceRange Range = CharSourceRange::getTokenRange(NodeToReplace->getSourceRange()); setFromSourceRange(Sources, Range, ReplacementText); diff --git a/clang/lib/Tooling/Refactoring.cpp b/clang/lib/Tooling/Refactoring.cpp index 45353668717..df9600e78c7 100644 --- a/clang/lib/Tooling/Refactoring.cpp +++ b/clang/lib/Tooling/Refactoring.cpp @@ -35,12 +35,13 @@ Replacement::Replacement(StringRef FilePath, unsigned Offset, unsigned Length, : FilePath(FilePath), ReplacementRange(Offset, Length), ReplacementText(ReplacementText) {} -Replacement::Replacement(SourceManager &Sources, SourceLocation Start, +Replacement::Replacement(const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText) { setFromSourceLocation(Sources, Start, Length, ReplacementText); } -Replacement::Replacement(SourceManager &Sources, const CharSourceRange &Range, +Replacement::Replacement(const SourceManager &Sources, + const CharSourceRange &Range, StringRef ReplacementText) { setFromSourceRange(Sources, Range, ReplacementText); } @@ -99,7 +100,7 @@ bool operator==(const Replacement &LHS, const Replacement &RHS) { LHS.getReplacementText() == RHS.getReplacementText(); } -void Replacement::setFromSourceLocation(SourceManager &Sources, +void Replacement::setFromSourceLocation(const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText) { const std::pair<FileID, unsigned> DecomposedLocation = @@ -121,7 +122,8 @@ void Replacement::setFromSourceLocation(SourceManager &Sources, // FIXME: This should go into the Lexer, but we need to figure out how // to handle ranges for refactoring in general first - there is no obvious // good way how to integrate this into the Lexer yet. -static int getRangeSize(SourceManager &Sources, const CharSourceRange &Range) { +static int getRangeSize(const SourceManager &Sources, + const CharSourceRange &Range) { SourceLocation SpellingBegin = Sources.getSpellingLoc(Range.getBegin()); SourceLocation SpellingEnd = Sources.getSpellingLoc(Range.getEnd()); std::pair<FileID, unsigned> Start = Sources.getDecomposedLoc(SpellingBegin); @@ -133,7 +135,7 @@ static int getRangeSize(SourceManager &Sources, const CharSourceRange &Range) { return End.second - Start.second; } -void Replacement::setFromSourceRange(SourceManager &Sources, +void Replacement::setFromSourceRange(const SourceManager &Sources, const CharSourceRange &Range, StringRef ReplacementText) { setFromSourceLocation(Sources, Sources.getSpellingLoc(Range.getBegin()), |