Lines Matching refs:ContentCache
71 /// ContentCache - One instance of this struct is kept for every file
73 class ContentCache {
82 /// file. This is owned by the ContentCache object.
87 /// Reference to the file entry representing this ContentCache.
90 /// the ContentCache encapsulates an imaginary text buffer.
103 /// NumLines - The number of lines in this ContentCache. This is only valid
114 ContentCache(const FileEntry *Ent = 0)
118 ContentCache(const FileEntry *Ent, const FileEntry *contentEnt)
122 ~ContentCache();
127 ContentCache(const ContentCache &RHS)
134 "Passed ContentCache object cannot own a buffer.");
154 /// ContentCache. This can be the size of the source file or the size of an
155 /// arbitrary scratch buffer. If the ContentCache encapsulates a source
160 /// this ContentCache. This can be 0 if the MemBuffer was not actually
196 ContentCache &operator=(const ContentCache& RHS);
206 /// FileInfos contain a "ContentCache *", with the contents of the file.
218 /// Data - This contains the ContentCache* and the bits indicating the
228 static FileInfo get(SourceLocation IL, const ContentCache *Con,
234 assert((X.Data & 7) == 0 &&"ContentCache pointer insufficiently aligned");
243 const ContentCache* getContentCache() const {
244 return reinterpret_cast<const ContentCache*>(Data & ~7UL);
495 /// SourceManager. This set allows us to merge ContentCache entries based
496 /// on their FileEntry*. All ContentCache objects will thus have unique,
498 llvm::DenseMap<const FileEntry*, SrcMgr::ContentCache*> FileInfos;
500 /// \brief True if the ContentCache for files that are overriden by other
508 /// read in. All FileEntry* within the stored ContentCache objects are NULL,
510 std::vector<SrcMgr::ContentCache*> MemBufferInfos;
560 mutable SrcMgr::ContentCache *LastLineNoContentCache;
579 mutable SrcMgr::ContentCache *FakeContentCacheForRecovery;
655 const SrcMgr::ContentCache *IR = getOrCreateContentCache(SourceFile);
762 const SrcMgr::ContentCache *Content = Entry.getFile().getContentCache();
771 const SrcMgr::ContentCache *Content = sloc.getFile().getContentCache();
1143 /// ContentCache allocator.
1236 typedef llvm::DenseMap<const FileEntry*, SrcMgr::ContentCache*>
1318 const SrcMgr::ContentCache *getFakeContentCacheForRecovery() const;
1364 /// createFileID - Create a new fileID for the specified ContentCache and
1365 /// include position. This works regardless of whether the ContentCache
1367 FileID createFileID(const SrcMgr::ContentCache* File,
1372 const SrcMgr::ContentCache *
1375 /// createMemBufferContentCache - Create a new ContentCache for the specified
1377 const SrcMgr::ContentCache*