clang  3.9.0
Public Member Functions | List of all members
clang::tooling::Replacement Class Reference

A text replacement. More...

#include <Replacement.h>

Public Member Functions

 Replacement ()
 Creates an invalid (not applicable) replacement. More...
 
 Replacement (StringRef FilePath, unsigned Offset, unsigned Length, StringRef ReplacementText)
 Creates a replacement of the range [Offset, Offset+Length) in FilePath with ReplacementText. More...
 
 Replacement (const SourceManager &Sources, SourceLocation Start, unsigned Length, StringRef ReplacementText)
 Creates a Replacement of the range [Start, Start+Length) with ReplacementText. More...
 
 Replacement (const SourceManager &Sources, const CharSourceRange &Range, StringRef ReplacementText, const LangOptions &LangOpts=LangOptions())
 Creates a Replacement of the given range with ReplacementText. More...
 
template<typename Node >
 Replacement (const SourceManager &Sources, const Node &NodeToReplace, StringRef ReplacementText, const LangOptions &LangOpts=LangOptions())
 Creates a Replacement of the node with ReplacementText. More...
 
bool isApplicable () const
 Returns whether this replacement can be applied to a file. More...
 
bool apply (Rewriter &Rewrite) const
 Applies the replacement on the Rewriter. More...
 
std::string toString () const
 Returns a human readable string representation. More...
 
StringRef getFilePath () const
 Accessors. More...
 
unsigned getOffset () const
 
unsigned getLength () const
 
StringRef getReplacementText () const
 

Detailed Description

A text replacement.

Represents a SourceManager independent replacement of a range of text in a specific file.

Definition at line 77 of file Replacement.h.

Constructor & Destructor Documentation

clang::tooling::Replacement::Replacement ( )

Creates an invalid (not applicable) replacement.

Definition at line 32 of file Replacement.cpp.

clang::tooling::Replacement::Replacement ( StringRef  FilePath,
unsigned  Offset,
unsigned  Length,
StringRef  ReplacementText 
)

Creates a replacement of the range [Offset, Offset+Length) in FilePath with ReplacementText.

Parameters
FilePathA source file accessible via a SourceManager.
OffsetThe byte offset of the start of the range in the file.
LengthThe length of the range in bytes.

Definition at line 35 of file Replacement.cpp.

clang::tooling::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 40 of file Replacement.cpp.

clang::tooling::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 45 of file Replacement.cpp.

template<typename Node >
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 243 of file Replacement.h.

References clang::CharSourceRange::getTokenRange().

Member Function Documentation

bool clang::tooling::Replacement::apply ( Rewriter Rewrite) const
StringRef clang::tooling::Replacement::getFilePath ( ) const
inline

Accessors.

Definition at line 114 of file Replacement.h.

Referenced by clang::tooling::operator<(), and clang::tooling::operator==().

unsigned clang::tooling::Replacement::getLength ( ) const
inline
unsigned clang::tooling::Replacement::getOffset ( ) const
inline
StringRef clang::tooling::Replacement::getReplacementText ( ) const
inline
bool clang::tooling::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 52 of file Replacement.cpp.

References clang::tooling::InvalidLocation.

std::string clang::tooling::Replacement::toString ( ) const

Returns a human readable string representation.

Definition at line 75 of file Replacement.cpp.

References clang::tooling::Range::getLength(), clang::tooling::Range::getOffset(), and clang::Result.


The documentation for this class was generated from the following files: