File tree 12 files changed +50
-27
lines changed
BuildSystemIntegrationTests 12 files changed +50
-27
lines changed Original file line number Diff line number Diff line change 10
10
//
11
11
//===----------------------------------------------------------------------===//
12
12
13
- #if compiler(>=6)
14
13
import Foundation
15
- package import LanguageServerProtocol
16
14
import LanguageServerProtocolExtensions
17
- package import SKOptions
15
+ import SwiftExtensions
18
16
import TSCExtensions
19
17
20
- import enum PackageLoading. Platform
21
18
import struct TSCBasic. AbsolutePath
22
19
import class TSCBasic. Process
20
+
21
+ #if compiler(>=6)
22
+ package import LanguageServerProtocol
23
+ package import SKOptions
23
24
#else
24
- import Foundation
25
25
import LanguageServerProtocol
26
- import LanguageServerProtocolExtensions
27
26
import SKOptions
28
- import TSCExtensions
29
-
30
- import enum PackageLoading. Platform
31
- import struct TSCBasic. AbsolutePath
32
- import class TSCBasic. Process
33
27
#endif
34
28
35
29
/// The path to the SDK.
Original file line number Diff line number Diff line change @@ -21,7 +21,6 @@ import TSCExtensions
21
21
import ToolchainRegistry
22
22
import XCTest
23
23
24
- import enum PackageLoading. Platform
25
24
import struct TSCBasic. AbsolutePath
26
25
import class TSCBasic. Process
27
26
import enum TSCBasic. ProcessEnv
Original file line number Diff line number Diff line change @@ -19,15 +19,13 @@ import IndexStoreDB
19
19
package import LanguageServerProtocol
20
20
package import LanguageServerProtocolExtensions
21
21
import LanguageServerProtocolJSONRPC
22
- import PackageLoading
23
22
import SKLogging
24
23
package import SKOptions
25
24
import SemanticIndex
26
25
import SourceKitD
27
26
package import SwiftExtensions
28
27
package import ToolchainRegistry
29
28
30
- import struct PackageModel. BuildFlags
31
29
import struct TSCBasic. AbsolutePath
32
30
import protocol TSCBasic. FileSystem
33
31
#else
@@ -39,15 +37,13 @@ import IndexStoreDB
39
37
import LanguageServerProtocol
40
38
import LanguageServerProtocolExtensions
41
39
import LanguageServerProtocolJSONRPC
42
- import PackageLoading
43
40
import SKLogging
44
41
import SKOptions
45
42
import SemanticIndex
46
43
import SourceKitD
47
44
import SwiftExtensions
48
45
import ToolchainRegistry
49
46
50
- import struct PackageModel. BuildFlags
51
47
import struct TSCBasic. AbsolutePath
52
48
import protocol TSCBasic. FileSystem
53
49
#endif
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ add_library(SwiftExtensions STATIC
12
12
FileManagerExtensions.swift
13
13
NSLock+WithLock.swift
14
14
PipeAsStringHandler.swift
15
+ Platform.swift
15
16
ResultExtensions.swift
16
17
Sequence+AsyncMap.swift
17
18
Sequence+ContainsAnyIn.swift
Original file line number Diff line number Diff line change
1
+ //===----------------------------------------------------------------------===//
2
+ //
3
+ // This source file is part of the Swift.org open source project
4
+ //
5
+ // Copyright (c) 2014 - 2024 Apple Inc. and the Swift project authors
6
+ // Licensed under Apache License v2.0 with Runtime Library Exception
7
+ //
8
+ // See https://swift.org/LICENSE.txt for license information
9
+ // See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
10
+ //
11
+ //===----------------------------------------------------------------------===//
12
+
13
+ package enum Platform : Equatable , Sendable {
14
+ case darwin
15
+ case linux
16
+ case windows
17
+
18
+ package static var current : Platform ? {
19
+ #if os(Windows)
20
+ return . windows
21
+ #elseif canImport(Darwin)
22
+ return . darwin
23
+ #else
24
+ return . linux
25
+ #endif
26
+ }
27
+
28
+ /// The file extension used for a dynamic library on this platform.
29
+ package var dynamicLibraryExtension : String {
30
+ switch self {
31
+ case . darwin: return " .dylib "
32
+ case . linux: return " .so "
33
+ case . windows: return " .dll "
34
+ }
35
+ }
36
+
37
+ package var executableExtension : String {
38
+ switch self {
39
+ case . windows: return " .exe "
40
+ case . linux, . darwin: return " "
41
+ }
42
+ }
43
+ }
Original file line number Diff line number Diff line change @@ -14,7 +14,6 @@ import RegexBuilder
14
14
import SKLogging
15
15
import SwiftExtensions
16
16
17
- import enum PackageLoading. Platform
18
17
import class TSCBasic. Process
19
18
20
19
#if compiler(>=6)
Original file line number Diff line number Diff line change @@ -19,8 +19,6 @@ import SourceKitLSP
19
19
import TSCBasic
20
20
import XCTest
21
21
22
- import struct PackageModel. BuildFlags
23
-
24
22
final class FallbackBuildSystemTests : XCTestCase {
25
23
26
24
func testSwift( ) throws {
Original file line number Diff line number Diff line change @@ -19,8 +19,6 @@ import SourceKitD
19
19
import SwiftExtensions
20
20
import XCTest
21
21
22
- import enum PackageLoading. Platform
23
-
24
22
fileprivate extension HoverResponse {
25
23
func contains( string: String ) -> Bool {
26
24
switch self . contents {
Original file line number Diff line number Diff line change @@ -16,11 +16,11 @@ import LanguageServerProtocol
16
16
import LanguageServerProtocolExtensions
17
17
import SKTestSupport
18
18
import SourceKitD
19
+ import SwiftExtensions
19
20
import TSCBasic
20
21
import ToolchainRegistry
21
22
import XCTest
22
23
23
- import enum PackageLoading. Platform
24
24
import class TSCBasic. Process
25
25
26
26
final class SourceKitDTests : XCTestCase {
Original file line number Diff line number Diff line change @@ -17,7 +17,6 @@ import SKOptions
17
17
import SKTestSupport
18
18
import SemanticIndex
19
19
import SourceKitLSP
20
- import SourceKitLSPAPI
21
20
import SwiftExtensions
22
21
import TSCExtensions
23
22
import ToolchainRegistry
Original file line number Diff line number Diff line change @@ -16,8 +16,6 @@ import SKTestSupport
16
16
import SwiftExtensions
17
17
import XCTest
18
18
19
- import enum PackageLoading. Platform
20
-
21
19
class DefinitionTests : XCTestCase {
22
20
func testJumpToDefinitionAtEndOfIdentifier( ) async throws {
23
21
let testClient = try await TestSourceKitLSPClient ( )
Original file line number Diff line number Diff line change @@ -17,8 +17,6 @@ import TSCBasic
17
17
import ToolchainRegistry
18
18
import XCTest
19
19
20
- import enum PackageLoading. Platform
21
-
22
20
#if canImport(Android)
23
21
import Android
24
22
#endif
You can’t perform that action at this time.
0 commit comments