mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
change includes both the necessary protocol updates and the deprecation warnings suitable for migration. A future patch will remove the renamings and make this a hard error.
38 lines
607 B
Swift
38 lines
607 B
Swift
// All of this is required in order to produce materializeForSet
|
|
// declarations for A's properties.
|
|
public protocol ExpressibleByNilLiteral {
|
|
init(nilLiteral: ())
|
|
}
|
|
public enum Optional<T> : ExpressibleByNilLiteral {
|
|
case none
|
|
case some(T)
|
|
|
|
public init(nilLiteral: ()) { self = .none }
|
|
}
|
|
|
|
public struct Y {}
|
|
|
|
public struct X<U> {
|
|
public var a : U
|
|
|
|
public init(_a : U) {
|
|
a = _a
|
|
}
|
|
|
|
public func doneSomething() {}
|
|
}
|
|
|
|
public class A {
|
|
public var y : Y
|
|
public var x : X<Y>
|
|
|
|
public init() {
|
|
y = Y()
|
|
x = X<Y>(_a: y)
|
|
}
|
|
|
|
public func doSomething() {
|
|
x.doneSomething()
|
|
}
|
|
}
|