#include "PathMapping.h"
#include "Transport.h"
#include "URI.h"
#include "support/Logger.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/Path.h"
#include <algorithm>
#include <optional>
#include <tuple>
namespace clang {
namespace clangd {
std::optional<std::string> doPathMapping(llvm::StringRef S,
PathMapping::Direction Dir,
const PathMappings &Mappings) { … }
void applyPathMappings(llvm::json::Value &V, PathMapping::Direction Dir,
const PathMappings &Mappings) { … }
namespace {
class PathMappingMessageHandler : public Transport::MessageHandler { … };
class PathMappingTransport : public Transport { … };
llvm::Expected<std::string> parsePath(llvm::StringRef Path) { … }
}
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const PathMapping &M) { … }
llvm::Expected<PathMappings>
parsePathMappings(llvm::StringRef RawPathMappings) { … }
std::unique_ptr<Transport>
createPathMappingTransport(std::unique_ptr<Transport> Transp,
PathMappings Mappings) { … }
}
}