pub struct SearchContext<Cost: PartialOrd<Cost>> { /* private fields */ }Implementations§
Source§impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + NumCast + Zero> SearchContext<Cost>
impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + NumCast + Zero> SearchContext<Cost>
pub fn astar_cardinal_manhatten_distance_heuristic<G>(
&mut self,
grid: &G,
start: Coord,
goal: Coord,
config: SearchConfig,
path: &mut Vec<Direction>,
) -> Result<SearchMetadata<Cost>, Error>where
G: CostGrid<Cost = Cost>,
Source§impl<Cost> SearchContext<Cost>
impl<Cost> SearchContext<Cost>
pub fn astar_diagonal_distance_heuristic<G>(
&mut self,
grid: &G,
start: Coord,
goal: Coord,
weights: HeuristicDirectionWeights<Cost>,
config: SearchConfig,
path: &mut Vec<Direction>,
) -> Result<SearchMetadata<Cost>, Error>where
G: CostGrid<Cost = Cost>,
Source§impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + NumCast + Zero + One> SearchContext<Cost>
impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + NumCast + Zero + One> SearchContext<Cost>
pub fn jump_point_search_cardinal_manhatten_distance_heuristic<G>(
&mut self,
grid: &G,
start: Coord,
goal: Coord,
config: SearchConfig,
path: &mut Vec<Direction>,
) -> Result<SearchMetadata<Cost>, Error>where
G: SolidGrid,
Source§impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + Zero> SearchContext<Cost>
impl<Cost: Copy + Add<Cost> + PartialOrd<Cost> + Zero> SearchContext<Cost>
pub fn dijkstra<G, V, D>( &mut self, grid: &G, start: Coord, goal: Coord, directions: D, config: SearchConfig, path: &mut Vec<Direction>, ) -> Result<SearchMetadata<Cost>, Error>
pub fn dijkstra_predicate<G, V, D, F>( &mut self, grid: &G, start: Coord, predicate: F, directions: D, config: SearchConfig, path: &mut Vec<Direction>, ) -> Result<SearchMetadata<Cost>, Error>
Source§impl<C> SearchContext<C>where
C: Copy + Zero + One + Add<C, Output = C> + Mul<C, Output = C> + FloatConst + NumCast + PartialOrd<C>,
impl<C> SearchContext<C>where
C: Copy + Zero + One + Add<C, Output = C> + Mul<C, Output = C> + FloatConst + NumCast + PartialOrd<C>,
pub fn jump_point_search_octile_distance_heuristic<G>(
&mut self,
grid: &G,
start: Coord,
goal: Coord,
config: SearchConfig,
path: &mut Vec<Direction>,
) -> Result<SearchMetadata<C>, Error>where
G: SolidGrid,
Source§impl<Cost: PartialOrd<Cost> + Zero> SearchContext<Cost>
impl<Cost: PartialOrd<Cost> + Zero> SearchContext<Cost>
Source§impl<Cost> SearchContext<Cost>
impl<Cost> SearchContext<Cost>
pub fn populate_distance_map<G, V, D>( &mut self, grid: &G, start: Coord, directions: D, config: SearchConfig, distance_map: &mut DistanceMap<Cost>, ) -> Result<DistanceMapMetadata, Error>
Source§impl<Cost> SearchContext<Cost>
impl<Cost> SearchContext<Cost>
pub fn best_search_uniform_distance_map<G, V, D>( &mut self, grid: &G, start: Coord, config: SearchConfig, max_depth: Cost, distance_map: &UniformDistanceMap<Cost, D>, path: &mut Vec<Direction>, ) -> Result<SearchMetadata<Cost>, Error>
Trait Implementations§
Source§impl<Cost: Clone + PartialOrd<Cost>> Clone for SearchContext<Cost>
impl<Cost: Clone + PartialOrd<Cost>> Clone for SearchContext<Cost>
Source§fn clone(&self) -> SearchContext<Cost>
fn clone(&self) -> SearchContext<Cost>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<Cost> Freeze for SearchContext<Cost>
impl<Cost> RefUnwindSafe for SearchContext<Cost>where
Cost: RefUnwindSafe,
impl<Cost> Send for SearchContext<Cost>where
Cost: Send,
impl<Cost> Sync for SearchContext<Cost>where
Cost: Sync,
impl<Cost> Unpin for SearchContext<Cost>where
Cost: Unpin,
impl<Cost> UnwindSafe for SearchContext<Cost>where
Cost: UnwindSafe,
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