зеркало из https://github.com/microsoft/clang-1.git
Switch another function to StringRef instead of char pointer pairs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98631 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
f6ac97b101
Коммит
ceafc4b635
|
@ -20,6 +20,7 @@
|
|||
namespace llvm {
|
||||
class MemoryBuffer;
|
||||
class raw_ostream;
|
||||
class StringRef;
|
||||
template <typename T> struct DenseMapInfo;
|
||||
template <typename T> struct isPodLike;
|
||||
}
|
||||
|
@ -209,9 +210,9 @@ public:
|
|||
|
||||
const llvm::MemoryBuffer* getBuffer() const;
|
||||
|
||||
/// getBufferData - Return a pointer to the start and end of the source buffer
|
||||
/// data for the specified FileID.
|
||||
std::pair<const char*, const char*> getBufferData() const;
|
||||
/// getBufferData - Return a StringRef to the source buffer data for the
|
||||
/// specified FileID.
|
||||
llvm::StringRef getBufferData() const;
|
||||
|
||||
/// getDecomposedLoc - Decompose the specified location into a raw FileID +
|
||||
/// Offset pair. The first element is the FileID, the second is the
|
||||
|
|
|
@ -452,9 +452,9 @@ public:
|
|||
return getSLocEntry(FID).getFile().getContentCache()->Entry;
|
||||
}
|
||||
|
||||
/// getBufferData - Return a pointer to the start and end of the source buffer
|
||||
/// data for the specified FileID.
|
||||
///
|
||||
/// getBufferData - Return a StringRef to the source buffer data for the
|
||||
/// specified FileID.
|
||||
///
|
||||
/// \param FID The file ID whose contents will be returned.
|
||||
/// \param Invalid If non-NULL, will be set true if an error occurred.
|
||||
llvm::StringRef getBufferData(FileID FID, bool *Invalid = 0) const;
|
||||
|
|
|
@ -115,9 +115,8 @@ const llvm::MemoryBuffer* FullSourceLoc::getBuffer() const {
|
|||
return SrcMgr->getBuffer(SrcMgr->getFileID(*this));
|
||||
}
|
||||
|
||||
std::pair<const char*, const char*> FullSourceLoc::getBufferData() const {
|
||||
const llvm::MemoryBuffer *Buf = getBuffer();
|
||||
return std::make_pair(Buf->getBufferStart(), Buf->getBufferEnd());
|
||||
llvm::StringRef FullSourceLoc::getBufferData() const {
|
||||
return getBuffer()->getBuffer();
|
||||
}
|
||||
|
||||
std::pair<FileID, unsigned> FullSourceLoc::getDecomposedLoc() const {
|
||||
|
|
|
@ -439,10 +439,10 @@ void HTMLDiagnostics::HandlePiece(Rewriter& R, FileID BugFileID,
|
|||
{
|
||||
FullSourceLoc L = MP->getLocation().asLocation().getInstantiationLoc();
|
||||
assert(L.isFileID());
|
||||
std::pair<const char*, const char*> BufferInfo = L.getBufferData();
|
||||
const char* MacroName = L.getDecomposedLoc().second + BufferInfo.first;
|
||||
Lexer rawLexer(L, PP.getLangOptions(), BufferInfo.first,
|
||||
MacroName, BufferInfo.second);
|
||||
llvm::StringRef BufferInfo = L.getBufferData();
|
||||
const char* MacroName = L.getDecomposedLoc().second + BufferInfo.data();
|
||||
Lexer rawLexer(L, PP.getLangOptions(), BufferInfo.begin(),
|
||||
MacroName, BufferInfo.end());
|
||||
|
||||
Token TheTok;
|
||||
rawLexer.LexFromRawLexer(TheTok);
|
||||
|
|
Загрузка…
Ссылка в новой задаче