Files
sourcekit-lsp/Sources/SourceKitLSP/IndexStoreDB+MainFilesProvider.swift
David Goldman 79795bf4d9 Decrease verbosity of info-level logging (#331)
- Don't log entire LSP notifications/requests for the `info` level, instead log of the form:
  - `Notification<method>` e.g. Notification<textDocument/publishDiagnostics>
  - `Request<method(id)>` e.g. Request<textDocument/hover(6)>
  - `Response<method(id)` e.g. Response<textDocument/hover(6)>

- Only log sourcekitd requests/responses at the debug level
2020-10-08 18:20:56 -04:00

31 lines
1.1 KiB
Swift

//===----------------------------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
import IndexStoreDB
import LanguageServerProtocol
import LSPLogging
import SKCore
extension IndexStoreDB: MainFilesProvider {
public func mainFilesContainingFile(_ uri: DocumentURI) -> Set<DocumentURI> {
let mainFiles: Set<DocumentURI>
if let url = uri.fileURL {
mainFiles = Set(self.mainFilesContainingFile(path: url.path)
.lazy.map({ DocumentURI(URL(fileURLWithPath: $0, isDirectory: false)) }))
} else {
mainFiles = []
}
log("mainFilesContainingFile(\(uri.pseudoPath)) -> \(mainFiles)", level: .debug)
return mainFiles
}
}