pub struct SearchInstance {
pub graph: Arc<Graph>,
pub frontier_models: Vec<Arc<dyn FrontierModel>>,
pub traversal_models: Vec<Arc<dyn TraversalModel>>,
pub map_model: Arc<MapModel>,
pub state_model: Arc<StateModel>,
pub cost_model: Arc<CostModel>,
pub termination_model: Arc<TerminationModel>,
pub label_model: Arc<dyn LabelModel>,
pub default_edge_list: Option<usize>,
}Expand description
instances of read-only objects used for a search that have been prepared for a specific query.
Fields§
§graph: Arc<Graph>§frontier_models: Vec<Arc<dyn FrontierModel>>§traversal_models: Vec<Arc<dyn TraversalModel>>§map_model: Arc<MapModel>§state_model: Arc<StateModel>§cost_model: Arc<CostModel>§termination_model: Arc<TerminationModel>§label_model: Arc<dyn LabelModel>§default_edge_list: Option<usize>Implementations§
Source§impl SearchInstance
impl SearchInstance
Sourcepub fn get_traversal_estimation_model(&self) -> Arc<dyn TraversalModel>
pub fn get_traversal_estimation_model(&self) -> Arc<dyn TraversalModel>
in the case of traversal estimation, where no edges are used, divert to the traversal model associated with the default edge list
pub fn get_frontier_model( &self, edge_list_id: &EdgeListId, ) -> Result<Arc<dyn FrontierModel>, SearchError>
pub fn get_traversal_model( &self, edge_list_id: &EdgeListId, ) -> Result<Arc<dyn TraversalModel>, SearchError>
Auto Trait Implementations§
impl Freeze for SearchInstance
impl !RefUnwindSafe for SearchInstance
impl Send for SearchInstance
impl Sync for SearchInstance
impl Unpin for SearchInstance
impl !UnwindSafe for SearchInstance
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