Files
sourcekit-lsp/Sources/SwiftSourceKitPluginCommon/DynamicallyLoadedSourceKitdD+forPlugin.swift
Alex Hoppen 1cfa8db1d8 Require Swift 6 to build SourceKit-LSP
This significantly cleans up our `import` statements
2025-03-07 08:05:49 -08:00

33 lines
1.1 KiB
Swift

//===----------------------------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2024 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 Foundation
import SKLogging
package import SourceKitD
import SwiftExtensions
extension DynamicallyLoadedSourceKitD {
private static nonisolated(unsafe) var _forPlugin: SourceKitD?
package static var forPlugin: SourceKitD {
get {
guard let _forPlugin else {
fatalError("forPlugin must only be accessed after it was set in sourcekitd_plugin_initialize_2")
}
return _forPlugin
}
set {
precondition(_forPlugin == nil, "DynamicallyLoadedSourceKitD.forPlugin must not be set twice")
_forPlugin = newValue
}
}
}