struct AnyIndex A wrapper over an underlying index that hides the specific underlying type. Inheritance Comparable Initializers init init(_:) Required Creates a new index wrapping base. Declaration @inlinable public init<BaseIndex>(_ base: BaseIndex) where BaseIndex: Comparable Type Methods func ...(maximum: Self) -> PartialRangeThrough<Self> Required Returns a partial range up to, and including, its upper bound. Use the prefix closed range operator (prefix ...) to create a partial range of any type that conforms to the Comparable protocol. This example creates a PartialRangeThrough<Double> instance that includes any value less than or equal to 5.0. let throughFive = ...5.0 throughFive.contains(4.0) // true throughFive.contains(5.0) // true throughFive.contains(6.0) // false You can use this type of partial range of a collection's indices to represent the range from the start of the collection up to, and including, the partial range's upper bound. let numbers = [10, 20, 30, 40, 50, 60, 70] print(numbers[...3]) // Prints "[10, 20, 30, 40]" Parameter maximum: The upper bound for the range. Declaration prefix public static func ...(maximum: Self) -> PartialRangeThrough<Self> func ...(minimum: Self) -> PartialRangeFrom<Self> Required Returns a partial range extending upward from a lower bound. Use the postfix range operator (postfix ...) to create a partial range of any type that conforms to the Comparable protocol. This example creates a PartialRangeFrom<Double> instance that includes any value greater than or equal to 5.0. let atLeastFive = 5.0... atLeastFive.contains(4.0) // false atLeastFive.contains(5.0) // true atLeastFive.contains(6.0) // true You can use this type of partial range of a collection's indices to represent the range from the partial range's lower bound up to the end of the collection. let numbers = [10, 20, 30, 40, 50, 60, 70] print(numbers[3...]) // Prints "[40, 50, 60, 70]" Parameter minimum: The lower bound for the range. Declaration postfix public static func ...(minimum: Self) -> PartialRangeFrom<Self> func ...(minimum: Self, maximum: Self) -> ClosedRange<Self> Required Returns a closed range that contains both of its bounds. Use the closed range operator (...) to create a closed range of any type that conforms to the Comparable protocol. This example creates a ClosedRange<Character> from "a" up to, and including, "z". let lowercase = "a"..."z" print(lowercase.contains("z")) // Prints "true" Declaration public static func ...(minimum: Self, maximum: Self) -> ClosedRange<Self> func ..<(maximum: Self) -> PartialRangeUpTo<Self> Required Returns a partial range up to, but not including, its upper bound. Use the prefix half-open range operator (prefix ..<) to create a partial range of any type that conforms to the Comparable protocol. This example creates a PartialRangeUpTo<Double> instance that includes any value less than 5.0. let upToFive = ..<5.0 upToFive.contains(3.14) // true upToFive.contains(6.28) // false upToFive.contains(5.0) // false You can use this type of partial range of a collection's indices to represent the range from the start of the collection up to, but not including, the partial range's upper bound. let numbers = [10, 20, 30, 40, 50, 60, 70] print(numbers[..<3]) // Prints "[10, 20, 30]" Parameter maximum: The upper bound for the range. Declaration prefix public static func ..<(maximum: Self) -> PartialRangeUpTo<Self> func ..<(minimum: Self, maximum: Self) -> Range<Self> Required Returns a half-open range that contains its lower bound but not its upper bound. Use the half-open range operator (..<) to create a range of any type that conforms to the Comparable protocol. This example creates a Range<Double> from zero up to, but not including, 5.0. let lessThanFive = 0.0..<5.0 print(lessThanFive.contains(3.14)) // Prints "true" print(lessThanFive.contains(5.0)) // Prints "false" Declaration public static func ..<(minimum: Self, maximum: Self) -> Range<Self> func <(lhs: AnyIndex, rhs: AnyIndex) -> Bool Required Returns a Boolean value indicating whether the first argument represents a position before the second argument. The types of the two underlying indices must be identical. Declaration @inlinable public static func <(lhs: AnyIndex, rhs: AnyIndex) -> Bool func <=(lhs: Self, rhs: Self) -> Bool Required Returns a Boolean value indicating whether the value of the first argument is less than or equal to that of the second argument. This is the default implementation of the less-than-or-equal-to operator (<=) for any type that conforms to Comparable. Declaration @inlinable public static func <=(lhs: Self, rhs: Self) -> Bool func ==(lhs: AnyIndex, rhs: AnyIndex) -> Bool Required Returns a Boolean value indicating whether two indices wrap equal underlying indices. The types of the two underlying indices must be identical. Declaration @inlinable public static func ==(lhs: AnyIndex, rhs: AnyIndex) -> Bool func >(lhs: Self, rhs: Self) -> Bool Required Returns a Boolean value indicating whether the value of the first argument is greater than that of the second argument. This is the default implementation of the greater-than operator (>) for any type that conforms to Comparable. Declaration @inlinable public static func >(lhs: Self, rhs: Self) -> Bool func >=(lhs: Self, rhs: Self) -> Bool Required Returns a Boolean value indicating whether the value of the first argument is greater than or equal to that of the second argument. This is the default implementation of the greater-than-or-equal-to operator (>=) for any type that conforms to Comparable. Declaration @inlinable public static func >=(lhs: Self, rhs: Self) -> Bool