clang-tools 22.0.0git
PathMapping.cpp File Reference
#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>

Go to the source code of this file.

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
namespace  clang::clangd
 FIXME: Skip testing on windows temporarily due to the different escaping code mode.

Functions

std::optional< std::string > clang::clangd::doPathMapping (llvm::StringRef S, PathMapping::Direction Dir, const PathMappings &Mappings)
 Returns a modified S with the first matching path in Mappings substituted, if applicable.
void clang::clangd::applyPathMappings (llvm::json::Value &Params, PathMapping::Direction Dir, const PathMappings &Mappings)
 Applies the Mappings to all the file:// URIs in Params.
llvm::raw_ostream & clang::clangd::operator<< (llvm::raw_ostream &OS, const PathMapping &M)
llvm::Expected< PathMappingsclang::clangd::parsePathMappings (llvm::StringRef RawPathMappings)
 Parse the command line RawPathMappings (e.g.
std::unique_ptr< Transportclang::clangd::createPathMappingTransport (std::unique_ptr< Transport > Transp, PathMappings Mappings)
 Creates a wrapping transport over Transp that applies the Mappings to all inbound and outbound LSP messages.