 	/// Combines each element of the receiver with an accumulator value using `combine`, starting with `initial`.
 	public func reduce<Into>(initial: Into, combine: (Into, Element) -> Into) -> Into {
 		return Swift.reduce(self, initial, combine)
+	}
+
+
+	// MARK: ArrayLiteralConvertible
+
+	public init(arrayLiteral elements: Element...) {
+		self.init(elements)
 	}
 
 

/// Returns the intersection of `set` and `other`.
public func & <Element> (set: Set<Element>, other: Set<Element>) -> Set<Element> {
	return set.intersection(other)
}

/// ArrayLiteralConvertible conformance.
extension Set: ArrayLiteralConvertible {
	public init(arrayLiteral elements: Element...) {
		self.init(elements)
	}
}



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

/// A set of unique elements.
public struct Set<Element: Hashable>: ArrayLiteralConvertible, CollectionType, ExtensibleCollectionType, SequenceType {
	// MARK: Constructors

	/// Constructs a `Set` with the elements of `sequence`.
