pub trait Curve:
'static
+ Copy
+ Clone
+ Debug
+ Default
+ Eq
+ Ord
+ Send
+ Sync {
type FieldBytesSize: ArrayLength<u8> + Add + Eq;
type Uint: ArrayEncoding + AddMod<Output = Self::Uint> + Encoding + Integer + NegMod<Output = Self::Uint> + Random + RandomMod + SubMod<Output = Self::Uint> + Zeroize + FieldBytesEncoding<Self> + ShrAssign<usize>;
const ORDER: Self::Uint;
}
Expand description
Required Associated Constants§
Required Associated Types§
Sourcetype FieldBytesSize: ArrayLength<u8> + Add + Eq
type FieldBytesSize: ArrayLength<u8> + Add + Eq
Size of a serialized field element in bytes.
This is typically the same as Self::Uint::ByteSize
but for curves
with an unusual field modulus (e.g. P-224, P-521) it may be different.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.