 	:	.Failure(error ?? Result<(), NSError>.error(function: function, file: file, line: line))
 }
 
+#endif
 
 // MARK: - Operators
 



// MARK: - ErrorTypeConvertible conformance

/// Make NSError conform to ErrorTypeConvertible
extension NSError: ErrorTypeConvertible {

public func materialize<T>(@autoclosure f: () throws -> T) -> Result<T, NSError> {
	do {
		return .Success(try f())
	} catch let error as NSError {
		return .Failure(error)
	}
}

// MARK: - Cocoa API conveniences

#if !os(Linux)

/// Constructs a Result with the result of calling `try` with an error pointer.
///
