 /// Hashable conformance.
 ///
 /// This hash function has not been proven in this usage, but is based on Bob Jenkins’ one-at-a-time hash.
-extension Set : Hashable {
+extension Set: Hashable {
 	public var hashValue: Int {
 		var h = reduce(0) { into, each in
 			var h = into + each.hashValue



/// CollectionType conformance.
extension Set : CollectionType {
	public typealias IndexType = DictionaryIndex<Element, Unit>
	public var startIndex: IndexType { return values.startIndex }
	public var endIndex: IndexType { return values.endIndex }

//  Copyright (c) 2014 Rob Rix. All rights reserved.

/// A set of unique elements.
public struct Set<Element: Hashable> {
	public init<S: SequenceType where S.Generator.Element == Element>(_ sequence: S) {
		self.values = [:]
		extend(sequence)
	}
