pub struct RectangularSymmetryReduction;Expand description
Online Pathfinder: Rectangular Symmetry Reduction (RSR).
Per-search room decomposition (no durable preprocess); searches perimeter/macro
edges then materializes cardinal segments. Final path cost recomputes traversal_cost
over steps. Prefer on large rectangular free spaces; falls back to Dijkstra on
mismatched room-path costs.
Trait Implementations§
Source§impl Clone for RectangularSymmetryReduction
impl Clone for RectangularSymmetryReduction
Source§fn clone(&self) -> RectangularSymmetryReduction
fn clone(&self) -> RectangularSymmetryReduction
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RectangularSymmetryReduction
Source§impl Debug for RectangularSymmetryReduction
impl Debug for RectangularSymmetryReduction
Source§impl Default for RectangularSymmetryReduction
impl Default for RectangularSymmetryReduction
Source§fn default() -> RectangularSymmetryReduction
fn default() -> RectangularSymmetryReduction
Returns the “default value” for a type. Read more
Source§impl Pathfinder for RectangularSymmetryReduction
impl Pathfinder for RectangularSymmetryReduction
Source§fn name(&self) -> &'static str
fn name(&self) -> &'static str
Stable algorithm identifier for benchmarks, logs, and solver portfolios.
Source§fn search(
&self,
grid: &Grid,
request: SearchRequest,
) -> Result<SearchOutcome<Path, SearchStats>, GridSearchError>
fn search( &self, grid: &Grid, request: SearchRequest, ) -> Result<SearchOutcome<Path, SearchStats>, GridSearchError>
Auto Trait Implementations§
impl Freeze for RectangularSymmetryReduction
impl RefUnwindSafe for RectangularSymmetryReduction
impl Send for RectangularSymmetryReduction
impl Sync for RectangularSymmetryReduction
impl Unpin for RectangularSymmetryReduction
impl UnsafeUnpin for RectangularSymmetryReduction
impl UnwindSafe for RectangularSymmetryReduction
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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