pub fn search<'a, O, G, F>(
    origin: &O,
    goal: &G,
    range: u32,
    opts: SearchOptions<'a, F>,
) -> SearchResults
where
    O: ?Sized + HasPosition,
    G: ?Sized + HasPosition,
    F: Fn(String) -> CostMatrix<'a> + 'a,
{
    let pos = goal.pos();
    search_real(
        origin.pos(),
        &js_unwrap!({pos: pos_from_packed(@{pos.packed_repr()}), range: @{range}}),
        opts,
    )
}
/// Searches between a single origin and single goal.
Searches between a single origin and single goal.
Searches between a single origin and single goal .
pub fn search<'a, O, G, F>(
    origin: &O,
    goal: &G,
    range: u32,
    opts: SearchOptions<'a, F>,
) -> SearchResults
where
    O: ?Sized + HasPosition,
    G: ?Sized + HasPosition,
    F: Fn(String) -> CostMatrix<'a> + 'a,
{
    let pos = goal.pos();
    search_real(
        origin.pos(),
        &js_unwrap!({pos: pos_from_packed(@{pos.packed_repr()}), range: @{range}}),
        opts,
    )
}
pub fn search < ' a , O , G , F > ( origin : & O , goal : & G , range : u32 , opts : SearchOptions < ' a , F > , ) -> SearchResults where O : ? Sized + HasPosition , G : ? Sized + HasPosition , F : Fn ( String ) -> CostMatrix < ' a > + ' a , { let pos = goal . pos ( ) ; search_real ( origin . pos ( ) , & js_unwrap ! ( { pos pos_from_packed ( { pos packed_repr ( ) } ) range { range } } ) , opts , ) }
Searches between a single origin and single goal.
Searches between a single origin and single goal .
origin
&O
goal
&G
range
u32
opts
SearchOptions<'a, F>