pub struct MapfProblem {
pub problem_id: String,
pub grid: Grid,
pub agents: Vec<MapfAgent>,
pub objective: MapfObjective,
}Expand description
Static-grid MAPF problem: grid, agents, and objective label.
Fields§
§problem_id: StringStable problem identity for fixtures and capture reports.
grid: GridShared static map; movement is 4-way with wait-in-place.
agents: Vec<MapfAgent>Agents in planning order for the starter planner.
objective: MapfObjectiveReporting objective label (does not change validation rules).
Implementations§
Source§impl MapfProblem
impl MapfProblem
Sourcepub fn validate_plan(&self, plan: &MapfPlan) -> MapfValidationReport
pub fn validate_plan(&self, plan: &MapfPlan) -> MapfValidationReport
Validates plan against this problem’s agents, grid, and conflict rules.
Always returns a full MapfValidationReport; valid is true only when
conflicts is empty.
Trait Implementations§
Source§impl Clone for MapfProblem
impl Clone for MapfProblem
Source§fn clone(&self) -> MapfProblem
fn clone(&self) -> MapfProblem
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 moreSource§impl Debug for MapfProblem
impl Debug for MapfProblem
impl Eq for MapfProblem
Source§impl PartialEq for MapfProblem
impl PartialEq for MapfProblem
impl StructuralPartialEq for MapfProblem
Auto Trait Implementations§
impl Freeze for MapfProblem
impl RefUnwindSafe for MapfProblem
impl Send for MapfProblem
impl Sync for MapfProblem
impl Unpin for MapfProblem
impl UnsafeUnpin for MapfProblem
impl UnwindSafe for MapfProblem
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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