The “==“ operation can only compare concrete instances of the enum. With “type == ACType.other” the right side is not an instance. as the associated value is missing.
Regards, Rien Site: http://balancingrock.nl Blog: http://swiftrien.blogspot.com Github: http://github.com/Swiftrien Project: http://swiftfire.nl > On 21 Jan 2017, at 13:56, tridiak via swift-users <swift-users@swift.org> > wrote: > > Been searching and trying to figure out a comparison problem. > > func ==(lhs : ACType, rhs : ACType) -> Bool { > switch (lhs,rhs) { > case (.other, .other): > return true > case (.other, _): > return false > case (_, .other): > return false > default: > return lhs == rhs > } > } > > enum ACType { > case noType > case natural > case armour > case shield > case deflection > case dodge > case sacred > case luck > case other(String) > > static func Stacks(type : ACType) -> Bool { > return type == ACType.noType || type == ACType.dodge || type == > ACType.other > } > } > > I get an error concerning ‘type == ACType.other’. > Compiler blab: Binary operator '==' cannot be applied to operands of type > 'ACType' and '(String) -> ACType' > > How do I fix this? Simply cannot see it. > > TIA Mark > _______________________________________________ > swift-users mailing list > swift-users@swift.org > https://lists.swift.org/mailman/listinfo/swift-users _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users