Merge pull request #64039 from sophiapoirier/pack-type-syntax-each

[Variadic Generics] type parameter pack syntax change: T... -> each T
This commit is contained in:
Sophia Poirier
2023-03-02 19:17:19 -08:00
committed by GitHub
37 changed files with 410 additions and 391 deletions

View File

@@ -5,13 +5,13 @@
// Experimental features require an asserts compiler
// REQUIRES: asserts
// CHECK: public func variadicFunction<T..., U...>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) where ((T, U)...) : Any
public func variadicFunction<T..., U...>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) {}
// CHECK: public func variadicFunction<each T, each U>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) where (repeat (each T, each U)) : Any
public func variadicFunction<each T, each U>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) {}
// CHECK: public struct VariadicType<T...> {
public struct VariadicType<T...> {
// CHECK: public func variadicMethod<U...>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) where ((T, U)...) : Any
public func variadicMethod<U...>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) {}
// CHECK: public struct VariadicType<each T> {
public struct VariadicType<each T> {
// CHECK: public func variadicMethod<each U>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) where (repeat (each T, each U)) : Any
public func variadicMethod<each U>(t: repeat each T, u: repeat each U) -> (repeat (each T, each U)) {}
// CHECK: public func returnsSelf() -> PackExpansionType.VariadicType<repeat each T>
public func returnsSelf() -> Self {}
@@ -24,11 +24,11 @@ public func returnsVariadicType() -> VariadicType< > {}
// CHECK: public func returnsVariadicType() -> PackExpansionType.VariadicType<Swift.Int, Swift.String, Swift.Float>
public func returnsVariadicType() -> VariadicType<Int, String, Float> {}
// CHECK: public func returnsVariadicType<T...>() -> PackExpansionType.VariadicType<repeat each T>
public func returnsVariadicType<T...>() -> VariadicType<repeat each T> {}
// CHECK: public func returnsVariadicType<each T>() -> PackExpansionType.VariadicType<repeat each T>
public func returnsVariadicType<each T>() -> VariadicType<repeat each T> {}
// CHECK: public typealias VariadicAlias<T...> = PackExpansionType.VariadicType<repeat Swift.Array<each T>>
public typealias VariadicAlias<T...> = VariadicType<repeat Array<each T>>
// CHECK: public typealias VariadicAlias<each T> = PackExpansionType.VariadicType<repeat Swift.Array<each T>>
public typealias VariadicAlias<each T> = VariadicType<repeat Array<each T>>
// CHECK: public func returnsVariadicAlias() -> PackExpansionType.VariadicAlias<>
public func returnsVariadicAlias() -> VariadicAlias< > {}
@@ -36,5 +36,5 @@ public func returnsVariadicAlias() -> VariadicAlias< > {}
// CHECK: public func returnsVariadicAlias() -> PackExpansionType.VariadicAlias<Swift.Int, Swift.String, Swift.Float>
public func returnsVariadicAlias() -> VariadicAlias<Int, String, Float> {}
// CHECK: public func returnsVariadicAlias<T...>() -> PackExpansionType.VariadicAlias<repeat each T>
public func returnsVariadicAlias<T...>() -> VariadicAlias<repeat each T> {}
// CHECK: public func returnsVariadicAlias<each T>() -> PackExpansionType.VariadicAlias<repeat each T>
public func returnsVariadicAlias<each T>() -> VariadicAlias<repeat each T> {}