mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Remove OutputFileMap's Knowledge of Range Dependencies
This commit is contained in:
@@ -21,32 +21,26 @@
|
||||
using namespace swift;
|
||||
|
||||
llvm::Expected<OutputFileMap>
|
||||
OutputFileMap::loadFromPath(StringRef Path, StringRef workingDirectory,
|
||||
const bool addEntriesForSourceRangeDependencies) {
|
||||
OutputFileMap::loadFromPath(StringRef Path, StringRef workingDirectory) {
|
||||
llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> FileBufOrErr =
|
||||
llvm::MemoryBuffer::getFile(Path);
|
||||
if (!FileBufOrErr) {
|
||||
return llvm::errorCodeToError(FileBufOrErr.getError());
|
||||
}
|
||||
return loadFromBuffer(std::move(FileBufOrErr.get()), workingDirectory,
|
||||
addEntriesForSourceRangeDependencies);
|
||||
return loadFromBuffer(std::move(FileBufOrErr.get()), workingDirectory);
|
||||
}
|
||||
|
||||
llvm::Expected<OutputFileMap>
|
||||
OutputFileMap::loadFromBuffer(StringRef Data, StringRef workingDirectory,
|
||||
bool addEntriesForSourceRangeDependencies) {
|
||||
OutputFileMap::loadFromBuffer(StringRef Data, StringRef workingDirectory) {
|
||||
std::unique_ptr<llvm::MemoryBuffer> Buffer{
|
||||
llvm::MemoryBuffer::getMemBuffer(Data)};
|
||||
return loadFromBuffer(std::move(Buffer), workingDirectory,
|
||||
addEntriesForSourceRangeDependencies);
|
||||
return loadFromBuffer(std::move(Buffer), workingDirectory);
|
||||
}
|
||||
|
||||
llvm::Expected<OutputFileMap>
|
||||
OutputFileMap::loadFromBuffer(std::unique_ptr<llvm::MemoryBuffer> Buffer,
|
||||
StringRef workingDirectory,
|
||||
bool addEntriesForSourceRangeDependencies) {
|
||||
return parse(std::move(Buffer), workingDirectory,
|
||||
addEntriesForSourceRangeDependencies);
|
||||
StringRef workingDirectory) {
|
||||
return parse(std::move(Buffer), workingDirectory);
|
||||
}
|
||||
|
||||
const TypeToPathMap *OutputFileMap::getOutputMapForInput(StringRef Input) const{
|
||||
@@ -143,8 +137,7 @@ void OutputFileMap::write(llvm::raw_ostream &os,
|
||||
|
||||
llvm::Expected<OutputFileMap>
|
||||
OutputFileMap::parse(std::unique_ptr<llvm::MemoryBuffer> Buffer,
|
||||
StringRef workingDirectory,
|
||||
const bool addEntriesForSourceRangeDependencies) {
|
||||
StringRef workingDirectory) {
|
||||
auto constructError =
|
||||
[](const char *errorString) -> llvm::Expected<OutputFileMap> {
|
||||
return llvm::make_error<llvm::StringError>(errorString,
|
||||
@@ -233,25 +226,6 @@ OutputFileMap::parse(std::unique_ptr<llvm::MemoryBuffer> Buffer,
|
||||
llvm::SmallString<128> PathStorage;
|
||||
OutputMap.insert(std::pair<file_types::ID, std::string>(
|
||||
Kind, resolvePath(Path, PathStorage).str()));
|
||||
|
||||
// HACK: fake up an SwiftRanges & CompiledSource output filenames
|
||||
if (addEntriesForSourceRangeDependencies &&
|
||||
Kind == file_types::TY_SwiftDeps) {
|
||||
// Not for the master-swiftdeps
|
||||
llvm::SmallString<128> Storage;
|
||||
if (!InputPath->getValue(Storage).empty()) {
|
||||
std::string baseName = OutputMap[Kind];
|
||||
baseName.resize(baseName.size() -
|
||||
getExtension(file_types::TY_SwiftDeps).size());
|
||||
auto insertFilename = [&](file_types::ID type) {
|
||||
std::string s = baseName;
|
||||
s += getExtension(type);
|
||||
OutputMap.insert({type, s});
|
||||
};
|
||||
insertFilename(file_types::TY_SwiftRanges);
|
||||
insertFilename(file_types::TY_CompiledSource);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
llvm::SmallString<128> InputStorage;
|
||||
|
||||
Reference in New Issue
Block a user