RxTests compiles first time on Linux.

This commit is contained in:
Krunoslav Zaher 2015-12-25 19:32:52 -08:00
parent a982be0942
commit b5dbdc452c
1 changed files with 15 additions and 9 deletions

View File

@ -19,18 +19,24 @@ public func == <Element: Equatable>(lhs: Event<Element>, rhs: Event<Element>) ->
switch (lhs, rhs) {
case (.Completed, .Completed): return true
case (.Error(let e1), .Error(let e2)):
let error1 = e1 as NSError
let error2 = e2 as NSError
// if the references are equal, then it's the same object
if let lhsObject = lhs as? AnyObject, rhsObject = rhs as? AnyObject where lhsObject === rhsObject {
if let lhsObject = lhs as? AnyObject,
rhsObject = rhs as? AnyObject
where lhsObject === rhsObject {
return true
}
return error1.domain == error2.domain
&& error1.code == error2.code
&& "\(e1)" == "\(e2)"
#if os(Linux)
return "\(e1)" == "\(e2)"
#else
let error1 = e1 as NSError
let error2 = e2 as NSError
return error1.domain == error2.domain
&& error1.code == error2.code
&& "\(e1)" == "\(e2)"
#endif
case (.Next(let v1), .Next(let v2)): return v1 == v2
default: return false
}
}
}