pub fn cswap<T: Integer + Copy>(x: T, y: T, c: T) -> (T, T)
Conditional, constant-time swapping. Returns (x, y) if c == 0 and (y, x) if c == T::max. The return value is undefined if c has any other value.
(x, y)
c == 0
(y, x)
c == T::max
c