forked from swiftlang/swift
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathUnderscoredProto.swiftinterface
101 lines (76 loc) · 2.35 KB
/
UnderscoredProto.swiftinterface
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// swift-interface-format-version: 1.0
// swift-module-flags: -swift-version 5 -enable-library-evolution -module-name UnderscoredProto
public protocol _UnderscoredProto {}
public protocol _UnderscoredProto2 {
associatedtype Elem
}
public extension _UnderscoredProto {
func fromProtoExtension()
}
public extension _UnderscoredProto2 {
func fromProto2Extension(takesElem: Elem)
}
@available(*, deprecated, message: "")
public extension _UnderscoredProto {
func fromDeprecatedProtoExtension(){}
}
public extension _UnderscoredProto2 where Elem == String {
func fromConditionalProto2Extension(takesElemIfString: Elem)
}
@available(*, deprecated, message: "")
public extension _UnderscoredProto2 where Elem == Int {
func fromDeprecatedConditionalProto2Extension(takesElemInt: Elem)
}
public struct A<T> {
public func fromA(takesT: T)
}
extension A {
public func fromAExtension(takesT: T)
}
extension A : _UnderscoredProto {}
extension A : _UnderscoredProto2 where T == String {
public typealias Elem = Int
public func fromAConditionalExtension(takesTIfString: T)
}
public class B<T>: _UnderscoredProto {
public func fromB(takesT: T)
}
extension B: _UnderscoredProto2 {
public typealias Elem = String
}
public class C<U,V>: B<String> where U: Equatable {
public func fromC(takesUIfEquatable: U)
}
public protocol _UnderscoredProto3 {
associatedtype Elem1
associatedtype Elem2
}
extension _UnderscoredProto3 {
public func fromProto3Extension(takesElem1: Elem1)
public func fromProto3Extension(takesElem2: Elem2)
}
public protocol _UnderscoredProto4: _UnderscoredProto3 where Elem2: Equatable {}
extension _UnderscoredProto4 {
public func fromProto4Extension(takesElem2IfEquatable: Elem2)
}
extension _UnderscoredProto4 where Elem2: Hashable {
public func fromProto4Extension(takesElem2IfHashable: Elem2)
}
extension C: _UnderscoredProto4 {
public typealias Elem1 = V
public typealias Elem2 = U
public func fromCConditionlExtension(takesU: U)
}
public struct D<T, U> {
public func fromD(takesT: T, takesU: U)
}
public protocol Other1 {}
public protocol _SomeProto {
associatedtype Item
}
extension _SomeProto where Item: Other1 {
public func fromSomeProtoExtensionSplitConditions(takesItemIfOther1: Item)
}
extension D: _SomeProto where T: Equatable {
public typealias Item = T
}