//===----------------------------------------------------------------------===// // // This source file is part of the Swift.org open source project // // Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors // Licensed under Apache License v2.0 with Runtime Library Exception // // See https://swift.org/LICENSE.txt for license information // See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors // //===----------------------------------------------------------------------===// public func checkStrideable( instances: [S], distances: [S.Stride], distanceOracle: (Int, Int) -> S.Stride, _ message: @autoclosure () -> String = "", stackTrace: SourceLocStack = SourceLocStack(), showFrame: Bool = true, file: String = #file, line: UInt = #line ) { for i in instances.indices { let first = instances[i] for j in instances.indices { let second = instances[j] expectEqual(distanceOracle(i, j), first.distance(to: second)) expectEqual(second, first.advanced(by: distanceOracle(i, j))) } } }