clang 20.0.0git
|
A text replacement. More...
#include "clang/Tooling/Core/Replacement.h"
Public Member Functions | |
Replacement () | |
Creates an invalid (not applicable) replacement. | |
Replacement (StringRef FilePath, unsigned Offset, unsigned Length, StringRef ReplacementText) | |
Creates a replacement of the range [Offset, Offset+Length) in FilePath with ReplacementText. | |
Replacement (const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText) | |
Creates a Replacement of the range [Start, Start+Length) with ReplacementText. | |
Replacement (const SourceManager &Sources, const CharSourceRange &Range, StringRef ReplacementText, const LangOptions &LangOpts=LangOptions()) | |
Creates a Replacement of the given range with ReplacementText. | |
template<typename Node > | |
Replacement (const SourceManager &Sources, const Node &NodeToReplace, StringRef ReplacementText, const LangOptions &LangOpts=LangOptions()) | |
Creates a Replacement of the node with ReplacementText. | |
bool | isApplicable () const |
Returns whether this replacement can be applied to a file. | |
bool | apply (Rewriter &Rewrite) const |
Applies the replacement on the Rewriter. | |
std::string | toString () const |
Returns a human readable string representation. | |
StringRef | getFilePath () const |
Accessors. | |
unsigned | getOffset () const |
unsigned | getLength () const |
StringRef | getReplacementText () const |
A text replacement.
Represents a SourceManager independent replacement of a range of text in a specific file.
Definition at line 83 of file Replacement.h.
Replacement::Replacement | ( | ) |
Creates an invalid (not applicable) replacement.
Definition at line 45 of file Replacement.cpp.
Replacement::Replacement | ( | StringRef | FilePath, |
unsigned | Offset, | ||
unsigned | Length, | ||
StringRef | ReplacementText | ||
) |
Creates a replacement of the range [Offset, Offset+Length) in FilePath with ReplacementText.
FilePath | A source file accessible via a SourceManager. |
Offset | The byte offset of the start of the range in the file. |
Length | The length of the range in bytes. |
Definition at line 47 of file Replacement.cpp.
Replacement::Replacement | ( | const SourceManager & | Sources, |
SourceLocation | Start, | ||
unsigned | Length, | ||
StringRef | ReplacementText | ||
) |
Creates a Replacement of the range [Start, Start+Length) with ReplacementText.
Definition at line 52 of file Replacement.cpp.
Replacement::Replacement | ( | const SourceManager & | Sources, |
const CharSourceRange & | Range, | ||
StringRef | ReplacementText, | ||
const LangOptions & | LangOpts = LangOptions() |
||
) |
Creates a Replacement of the given range with ReplacementText.
Definition at line 57 of file Replacement.cpp.
clang::tooling::Replacement::Replacement | ( | const SourceManager & | Sources, |
const Node & | NodeToReplace, | ||
StringRef | ReplacementText, | ||
const LangOptions & | LangOpts = LangOptions() |
||
) |
Creates a Replacement of the node with ReplacementText.
Definition at line 362 of file Replacement.h.
References clang::CharSourceRange::getTokenRange().
Applies the replacement on the Rewriter.
Definition at line 68 of file Replacement.cpp.
References clang::SrcMgr::C_User, clang::tooling::Range::getLength(), clang::tooling::Range::getOffset(), clang::Rewrite, and SM.
Referenced by clang::tooling::applyAllReplacements().
|
inline |
Accessors.
Definition at line 120 of file Replacement.h.
Referenced by clang::tooling::Replacements::add(), clang::tooling::RefactoringASTConsumer::HandleTranslationUnit(), clang::tooling::AtomicChange::insert(), clang::tooling::operator<(), clang::tooling::operator==(), and clang::tooling::ReplaceNodeWithTemplate::run().
|
inline |
Definition at line 122 of file Replacement.h.
References clang::tooling::Range::getLength().
Referenced by clang::tooling::Replacements::add(), clang::tooling::calculateRangesAfterReplacements(), combineAndSortRanges(), clang::tooling::Replacements::getAffectedRanges(), clang::tooling::Replacements::getShiftedCodePosition(), clang::tooling::operator<(), and clang::tooling::operator==().
|
inline |
Definition at line 121 of file Replacement.h.
References clang::tooling::Range::getOffset().
Referenced by clang::tooling::Replacements::add(), clang::tooling::calculateRangesAfterReplacements(), combineAndSortRanges(), clang::tooling::Replacements::getAffectedRanges(), clang::tooling::Replacements::getShiftedCodePosition(), clang::tooling::AtomicChange::insert(), clang::tooling::operator<(), and clang::tooling::operator==().
|
inline |
Definition at line 123 of file Replacement.h.
Referenced by clang::tooling::Replacements::add(), clang::tooling::Replacements::getAffectedRanges(), clang::tooling::Replacements::getShiftedCodePosition(), clang::tooling::operator<(), and clang::tooling::operator==().
bool Replacement::isApplicable | ( | ) | const |
Returns whether this replacement can be applied to a file.
Only replacements that are in a valid file can be applied.
Definition at line 64 of file Replacement.cpp.
References InvalidLocation.
std::string Replacement::toString | ( | ) | const |
Returns a human readable string representation.
Definition at line 87 of file Replacement.cpp.
References clang::tooling::Range::getLength(), clang::tooling::Range::getOffset(), and clang::Result.
Referenced by clang::tooling::RefactoringASTConsumer::HandleTranslationUnit(), and clang::format::TokenAnalyzer::process().