9#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_DRAFTSTORE_H
10#define LLVM_CLANG_TOOLS_EXTRA_CLANGD_DRAFTSTORE_H
13#include "clang/Basic/LLVM.h"
14#include "llvm/ADT/StringMap.h"
15#include "llvm/Support/VirtualFileSystem.h"
51 llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>
asVFS()
const;
58 mutable std::mutex Mutex;
59 llvm::StringMap<DraftAndTime> Drafts;
A thread-safe container for files opened in a workspace, addressed by filenames.
std::vector< Path > getActiveFiles() const
std::optional< Draft > getDraft(PathRef File) const
llvm::IntrusiveRefCntPtr< llvm::vfs::FileSystem > asVFS() const
void removeDraft(PathRef File)
Remove the draft from the store.
std::string addDraft(PathRef File, llvm::StringRef Version, StringRef Contents)
Replace contents of the draft for File with Contents.
llvm::StringRef PathRef
A typedef to represent a ref to file path.
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
std::shared_ptr< const std::string > Contents