Cargo Features
[dependencies]
sunscreen_curve25519 = { version = "0.8.1", default-features = false, features = ["std", "alloc", "nightly", "u32_backend", "u64_backend", "simd_backend", "avx2_backend", "serde"] }
- default = std, u64_backend
-
These default features are set whenever
sunscreen_curve25519
is added without
somewhere in the dependency tree.default-features = false - std default = alloc
- alloc std
-
Affects
scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,edwards::VartimeEdwardsPrecomputation
,ristretto::VartimeRistrettoPrecomputation
… - nightly simd_backend?
-
Affects
backend::vector
… - u32_backend
-
The u32 backend uses u32s with u64 products.
Affects
serial::u32
,field::FieldElement
… - u64_backend default simd_backend?
-
The u64 backend uses u64s with u128 products.
Affects
serial::u64
,field::FieldElement
… - simd_backend avx2_backend? = nightly, packed_simd, u64_backend
-
The SIMD backend uses parallel formulas, using either AVX2 or AVX512-IFMA.
Affects
backend::vector
… - avx2_backend = simd_backend
-
DEPRECATED: this is now an alias for
simd_backend
and may be removed in some future release.
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- serde implicit feature
-
Enables serde
serde:
A generic serialization/deserialization framework
- packed_simd simd_backend?
-
Enables packed_simd_2
The original packed_simd package was orphaned, see https://github.com/rust-lang/packed_simd/issues/303#issuecomment-701361161