@@ -73,7 +73,7 @@ extension LoggingIterator: IteratorProtocol {
73
73
// since Log is an associated type that cannot be refined in extensions
74
74
// that add functionality.
75
75
76
- public class SequenceLog {
76
+ public class SequenceLogBase {
77
77
// Sequence
78
78
public static var makeIterator = TypeIndexed ( 0 )
79
79
public static var underestimatedCount = TypeIndexed ( 0 )
@@ -133,33 +133,35 @@ public class SequenceLog {
133
133
public static var removeSubrange = TypeIndexed ( 0 )
134
134
public static var replaceSubrange = TypeIndexed ( 0 )
135
135
public static var reserveCapacity = TypeIndexed ( 0 )
136
+ }
136
137
137
- public class func dispatchTester< S> (
138
+ public class SequenceLog : SequenceLogBase {
139
+ public static func dispatchTester< S> (
138
140
_ s: S
139
141
) -> LoggingSequence < LoggingSequence < S > > {
140
142
return LoggingSequence ( wrapping: LoggingSequence ( wrapping: s) )
141
143
}
142
144
}
143
145
144
- public class CollectionLog : SequenceLog {
145
- public override class func dispatchTester< C> (
146
+ public class CollectionLog : SequenceLogBase {
147
+ public static func dispatchTester< C> (
146
148
_ c: C
147
149
) -> LoggingCollection < LoggingCollection < C > > {
148
150
return LoggingCollection ( wrapping: LoggingCollection ( wrapping: c) )
149
151
}
150
152
}
151
153
152
- public class BidirectionalCollectionLog : CollectionLog {
153
- public override class func dispatchTester< C> (
154
+ public class BidirectionalCollectionLog : SequenceLogBase {
155
+ public static func dispatchTester< C> (
154
156
_ c: C
155
157
) -> LoggingBidirectionalCollection < LoggingBidirectionalCollection < C > > {
156
158
return LoggingBidirectionalCollection (
157
159
wrapping: LoggingBidirectionalCollection ( wrapping: c) )
158
160
}
159
161
}
160
162
161
- public class MutableCollectionLog : CollectionLog {
162
- public override class func dispatchTester< C> (
163
+ public class MutableCollectionLog : SequenceLogBase {
164
+ public static func dispatchTester< C> (
163
165
_ c: C
164
166
) -> LoggingMutableCollection < LoggingMutableCollection < C > > {
165
167
return LoggingMutableCollection (
@@ -171,8 +173,8 @@ public class MutableCollectionLog : CollectionLog {
171
173
/// of `RangeReplaceableCollection`.
172
174
///
173
175
/// Each static variable is a mapping of Type -> Number of calls.
174
- public class RangeReplaceableCollectionLog : CollectionLog {
175
- public override class func dispatchTester< C> (
176
+ public class RangeReplaceableCollectionLog : SequenceLogBase {
177
+ public static func dispatchTester< C> (
176
178
_ rrc: C
177
179
) -> LoggingRangeReplaceableCollection < LoggingRangeReplaceableCollection < C > > {
178
180
return LoggingRangeReplaceableCollection (
0 commit comments