mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
57 lines
2.0 KiB
Swift
57 lines
2.0 KiB
Swift
// RUN: %empty-directory(%t)
|
|
// RUN: %target-swift-emit-module-interface(%t.swiftinterface) %s -module-name Test
|
|
// RUN: %target-swift-typecheck-module-from-interface(%t.swiftinterface) -module-name Test
|
|
// RUN: %FileCheck %s < %t.swiftinterface
|
|
|
|
// REQUIRES: concurrency
|
|
|
|
// Global actors are no longer protected with a feature guard.
|
|
// CHECK-NOT: $GlobalActors
|
|
|
|
// CHECK: @globalActor public struct GlobalActor {
|
|
@available(SwiftStdlib 5.1, *)
|
|
@globalActor public struct GlobalActor {
|
|
public actor Actor { }
|
|
public static let shared = Actor()
|
|
}
|
|
|
|
// CHECK: @Test.GlobalActor public func funcBoundToGlobalActor()
|
|
@available(SwiftStdlib 5.1, *)
|
|
@GlobalActor public func funcBoundToGlobalActor() { }
|
|
|
|
// CHECK: public func funcWithParameterBoundToGlobalActor(_ x: Test.ClassBoundToGlobalActor)
|
|
@available(SwiftStdlib 5.1, *)
|
|
public func funcWithParameterBoundToGlobalActor(_ x: ClassBoundToGlobalActor) { }
|
|
|
|
// CHECK: @Test.GlobalActor public class ClassBoundToGlobalActor
|
|
@available(SwiftStdlib 5.1, *)
|
|
@GlobalActor public class ClassBoundToGlobalActor { }
|
|
|
|
// CHECK: extension Test.ClassBoundToGlobalActor
|
|
@available(SwiftStdlib 5.1, *)
|
|
extension ClassBoundToGlobalActor {
|
|
public func someMethod() { }
|
|
}
|
|
|
|
// CHECK: @Test.GlobalActor public class DerivedFromClassBoundToGlobalActor : Test.ClassBoundToGlobalActor
|
|
@available(SwiftStdlib 5.1, *)
|
|
public class DerivedFromClassBoundToGlobalActor: ClassBoundToGlobalActor {}
|
|
|
|
// CHECK: public class NoActorClass
|
|
@available(SwiftStdlib 5.1, *)
|
|
public class NoActorClass {
|
|
// CHECK: @Test.GlobalActor public var varBoundToGlobalActor: Swift.Int
|
|
@GlobalActor public var varBoundToGlobalActor: Int
|
|
|
|
// CHECK: @Test.GlobalActor public init()
|
|
@GlobalActor public init() {
|
|
self.varBoundToGlobalActor = 0
|
|
}
|
|
|
|
// CHECK: @Test.GlobalActor public func methodBoundToGlobalActor()
|
|
@GlobalActor public func methodBoundToGlobalActor() { }
|
|
}
|
|
|
|
// CHECK: extension Test.GlobalActor : _Concurrency.GlobalActor {}
|
|
// CHECK: extension Test.ClassBoundToGlobalActor : Swift.Sendable {}
|