pub trait TowerFamily: Sized {
type B1: TowerField + TryFrom<Self::B128>;
type B8: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1>;
type B16: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8>;
type B32: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16>;
type B64: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16> + ExtensionField<Self::B32>;
type B128: TowerField + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16> + ExtensionField<Self::B32> + ExtensionField<Self::B64>;
}
Expand description
A trait that groups a family of related TowerField
s as associated types.
Required Associated Types§
type B1: TowerField + TryFrom<Self::B128>
type B8: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1>
type B16: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8>
type B32: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16>
type B64: TowerField + TryFrom<Self::B128> + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16> + ExtensionField<Self::B32>
type B128: TowerField + ExtensionField<Self::B1> + ExtensionField<Self::B8> + ExtensionField<Self::B16> + ExtensionField<Self::B32> + ExtensionField<Self::B64>
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.