Struct kas_core::layout::GridSolver
source · [−]pub struct GridSolver<CSR, RSR, S: GridStorage> { /* private fields */ }Expand description
A RulesSolver for grids supporting cell-spans
This implementation relies on the caller to provide storage for solver data.
Implementations
sourceimpl<CSR: DefaultWithLen, RSR: DefaultWithLen, S: GridStorage> GridSolver<CSR, RSR, S>
impl<CSR: DefaultWithLen, RSR: DefaultWithLen, S: GridStorage> GridSolver<CSR, RSR, S>
sourcepub fn new(axis: AxisInfo, dim: GridDimensions, storage: &mut S) -> Self
pub fn new(axis: AxisInfo, dim: GridDimensions, storage: &mut S) -> Self
Construct.
Argument order is consistent with other RulesSolvers.
axis:AxisInfoinstance passed intosize_rulesdim: grid dimensionsstorage: reference to persistent storage
Trait Implementations
sourceimpl<CSR, RSR, S: GridStorage> RulesSolver for GridSolver<CSR, RSR, S>where
CSR: AsRef<[(SizeRules, u32, u32)]> + AsMut<[(SizeRules, u32, u32)]>,
RSR: AsRef<[(SizeRules, u32, u32)]> + AsMut<[(SizeRules, u32, u32)]>,
impl<CSR, RSR, S: GridStorage> RulesSolver for GridSolver<CSR, RSR, S>where
CSR: AsRef<[(SizeRules, u32, u32)]> + AsMut<[(SizeRules, u32, u32)]>,
RSR: AsRef<[(SizeRules, u32, u32)]> + AsMut<[(SizeRules, u32, u32)]>,
type Storage = S
type Storage = S
Type of storage
type ChildInfo = GridChildInfo
type ChildInfo = GridChildInfo
Type required by RulesSolver::for_child (see implementation documentation)
Auto Trait Implementations
impl<CSR, RSR, S> RefUnwindSafe for GridSolver<CSR, RSR, S>where
CSR: RefUnwindSafe,
RSR: RefUnwindSafe,
S: RefUnwindSafe,
impl<CSR, RSR, S> Send for GridSolver<CSR, RSR, S>where
CSR: Send,
RSR: Send,
S: Send,
impl<CSR, RSR, S> Sync for GridSolver<CSR, RSR, S>where
CSR: Sync,
RSR: Sync,
S: Sync,
impl<CSR, RSR, S> Unpin for GridSolver<CSR, RSR, S>where
CSR: Unpin,
RSR: Unpin,
S: Unpin,
impl<CSR, RSR, S> UnwindSafe for GridSolver<CSR, RSR, S>where
CSR: UnwindSafe,
RSR: UnwindSafe,
S: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
sourcefn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
Try approximate conversion from Self to T Read more
sourcefn cast_approx(self) -> T
fn cast_approx(self) -> T
Cast approximately from Self to T Read more
sourceimpl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
sourcefn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Cast to integer, truncating Read more
sourcefn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Cast to the nearest integer Read more
sourcefn cast_floor(self) -> T
fn cast_floor(self) -> T
Cast the floor to an integer Read more
sourcefn try_cast_trunc(self) -> Result<T, Error>
fn try_cast_trunc(self) -> Result<T, Error>
Try converting to integer with truncation Read more
sourcefn try_cast_nearest(self) -> Result<T, Error>
fn try_cast_nearest(self) -> Result<T, Error>
Try converting to the nearest integer Read more
sourcefn try_cast_floor(self) -> Result<T, Error>
fn try_cast_floor(self) -> Result<T, Error>
Try converting the floor to an integer Read more
sourcefn try_cast_ceil(self) -> Result<T, Error>
fn try_cast_ceil(self) -> Result<T, Error>
Try convert the ceiling to an integer Read more