Files
swift-mirror/test/Serialization/Inputs/vtable-function-deserialization-input.swift
Robert Widmann f97e5dcb0e [SE-0115][1/2] Rename *LiteralConvertible protocols to ExpressibleBy*Literal. This
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.
2016-07-12 15:25:24 -07:00

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()
}
}