[swift-evolution] [Pitch] Add the sign method to the SignedNumberType protocol.
Adam Nemecek
adamnemecek at gmail.com
Sun May 22 02:07:51 CDT 2016
Howdy,
I think that the SignedNumberType should implement a method called sign
that will return -1 for negative numbers, 0 for 0 and 1 for positive
numbers. This is similar to the signum method in e.g. Java and similarly
called methods in other languages.
The implementation is fairly straight forward
extension SignedNumberType {
var sign: Self {
if self == 0 {
return 0
}
else if self > 0 {
return 1
}
return -1
}
}
I was trying to implement is without branching by doing (x > 0) - (x < 0)
but I couldn't get the types right so I'm open to suggestions.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160522/326b7ad2/attachment.html>
More information about the swift-evolution
mailing list