pub struct PoolLayout {
pub split_vars: usize,
pub tables: Vec<SlotLayout>,
}Fields§
§split_vars: usize§tables: Vec<SlotLayout>Implementations§
Source§impl PoolLayout
impl PoolLayout
pub fn new( tables: &[(&RingSwitchPlan, usize)], field_bits: usize, config: &Config, ) -> Self
Sourcepub fn split_vars_for(
tables: &[(&RingSwitchPlan, usize)],
field_bits: usize,
config: &Config,
) -> usize
pub fn split_vars_for( tables: &[(&RingSwitchPlan, usize)], field_bits: usize, config: &Config, ) -> usize
The split Self::new lays out, priced on
census counts alone: it allocates no blind column.
pub fn at_split(tables: &[(&RingSwitchPlan, usize)], split_vars: usize) -> Self
pub fn num_vars(&self) -> usize
pub fn grid_cols(&self) -> usize
pub fn grid_rows(&self) -> usize
pub fn num_sigma(&self) -> usize
pub fn num_masters(&self) -> usize
pub fn rho_vars(&self) -> usize
pub fn fold_shape(&self) -> FoldShape
Auto Trait Implementations§
impl Freeze for PoolLayout
impl RefUnwindSafe for PoolLayout
impl Send for PoolLayout
impl Sync for PoolLayout
impl Unpin for PoolLayout
impl UnsafeUnpin for PoolLayout
impl UnwindSafe for PoolLayout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more