mirror of
https://github.com/saymrwulf/curve25519-dalek-source.git
synced 2026-09-06 20:41:14 +00:00
Make Scalar::from_bits a const fn.
const_fn is stable since Rust 1.31 (https://github.com/rust-lang/rust/pull/54835) and enables calling `Scalar::from_bits(..)` from other const fn contexts, potentially saving some overhead here and there. Especially useful in contexts where constants are being built from a bit pattern.
This commit is contained in:
parent
805cdbfd3c
commit
3a61a0b70c
1 changed files with 1 additions and 1 deletions
|
|
@ -243,7 +243,7 @@ impl Scalar {
|
||||||
/// This function is intended for applications like X25519 which
|
/// This function is intended for applications like X25519 which
|
||||||
/// require specific bit-patterns when performing scalar
|
/// require specific bit-patterns when performing scalar
|
||||||
/// multiplication.
|
/// multiplication.
|
||||||
pub fn from_bits(bytes: [u8; 32]) -> Scalar {
|
pub const fn from_bits(bytes: [u8; 32]) -> Scalar {
|
||||||
let mut s = Scalar{bytes};
|
let mut s = Scalar{bytes};
|
||||||
// Ensure that s < 2^255 by masking the high bit
|
// Ensure that s < 2^255 by masking the high bit
|
||||||
s.bytes[31] &= 0b0111_1111;
|
s.bytes[31] &= 0b0111_1111;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue