pub trait ConditionallyNegatable {
    // Required method
    fn conditional_negate(&mut self, choice: Choice);
Expand description

A type which can be conditionally negated in constant time.


A generic implementation of ConditionallyNegatable is provided for types T which are ConditionallySelectable and have Neg implemented on &T.

Required Methods§


fn conditional_negate(&mut self, choice: Choice)

Negate self if choice == Choice(1); otherwise, leave it unchanged.

This function should execute in constant time.



impl<T> ConditionallyNegatable for T
where T: ConditionallySelectable, for<'a> &'a T: Neg<Output = T>,