Author: d0k Date: Tue Oct 6 05:23:34 2015 New Revision: 249389 URL: http://llvm.org/viewvc/llvm-project?rev=249389&view=rev Log: [VFS] Port SimpleFormatContext to InMemoryFileSystem.
Modified: cfe/trunk/lib/Index/SimpleFormatContext.h Modified: cfe/trunk/lib/Index/SimpleFormatContext.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/SimpleFormatContext.h?rev=249389&r1=249388&r2=249389&view=diff ============================================================================== --- cfe/trunk/lib/Index/SimpleFormatContext.h (original) +++ cfe/trunk/lib/Index/SimpleFormatContext.h Tue Oct 6 05:23:34 2015 @@ -38,18 +38,17 @@ public: : DiagOpts(new DiagnosticOptions()), Diagnostics(new DiagnosticsEngine(new DiagnosticIDs, DiagOpts.get())), - Files((FileSystemOptions())), + InMemoryFileSystem(new vfs::InMemoryFileSystem), + Files(FileSystemOptions(), InMemoryFileSystem), Sources(*Diagnostics, Files), Rewrite(Sources, Options) { Diagnostics->setClient(new IgnoringDiagConsumer, true); } FileID createInMemoryFile(StringRef Name, StringRef Content) { - std::unique_ptr<llvm::MemoryBuffer> Source = - llvm::MemoryBuffer::getMemBuffer(Content); - const FileEntry *Entry = - Files.getVirtualFile(Name, Source->getBufferSize(), 0); - Sources.overrideFileContents(Entry, std::move(Source)); + InMemoryFileSystem->addFile(Name, 0, + llvm::MemoryBuffer::getMemBuffer(Content)); + const FileEntry *Entry = Files.getFile(Name); assert(Entry != nullptr); return Sources.createFileID(Entry, SourceLocation(), SrcMgr::C_User); } @@ -64,6 +63,7 @@ public: IntrusiveRefCntPtr<DiagnosticOptions> DiagOpts; IntrusiveRefCntPtr<DiagnosticsEngine> Diagnostics; + IntrusiveRefCntPtr<vfs::InMemoryFileSystem> InMemoryFileSystem; FileManager Files; SourceManager Sources; Rewriter Rewrite; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits