You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

23 lines
589 B

//
// InfiniteSequence.swift
// Platform
//
// Created by Krunoslav Zaher on 6/13/15.
// Copyright © 2015 Krunoslav Zaher. All rights reserved.
//
/// Sequence that repeats `repeatedValue` infinite number of times.
struct InfiniteSequence<Element> : Sequence {
typealias Iterator = AnyIterator<Element>
private let repeatedValue: Element
init(repeatedValue: Element) {
self.repeatedValue = repeatedValue
}
func makeIterator() -> Iterator {
let repeatedValue = self.repeatedValue
return AnyIterator { repeatedValue }
}
}