10 #ifndef LLVM_CLANG_BASIC_MEMORYBUFFERCACHE_H 11 #define LLVM_CLANG_BASIC_MEMORYBUFFERCACHE_H 13 #include "llvm/ADT/IntrusiveRefCntPtr.h" 14 #include "llvm/ADT/StringMap.h" 34 std::unique_ptr<llvm::MemoryBuffer> Buffer;
41 llvm::StringMap<BufferEntry> Buffers;
44 unsigned NextIndex = 0;
47 unsigned FirstRemovableIndex = 0;
54 llvm::MemoryBuffer &addBuffer(llvm::StringRef
Filename,
55 std::unique_ptr<llvm::MemoryBuffer> Buffer);
60 bool tryToRemoveBuffer(llvm::StringRef Filename);
63 llvm::MemoryBuffer *lookupBuffer(llvm::StringRef Filename);
69 bool isBufferFinal(llvm::StringRef Filename);
75 void finalizeCurrentBuffers();
80 #endif // LLVM_CLANG_BASIC_MEMORYBUFFERCACHE_H DominatorTree GraphTraits specialization so the DominatorTree can be iterable by generic graph iterat...
Manage memory buffers across multiple users.
Dataflow Directional Tag Classes.