fn succ(&self, state: &Self::State) -> Self::Iter {
        let mut v = vec![];
        let (x, y) = *state;
        if x < 10 && y < 10 && x == y {
            v.push(((x + 1, y + 1), 1.0));
        }
        if x < 10 && y == 0 {
            v.push(((x + 1, y), 0.5));
        } else if x == 10 && y < 10 {
            v.push(((x, y + 1), 0.8));
        }
        v.into_iter()
    }
/// Defines how robot can move around in 10x10 field.
Defines how robot can move around in 10x10 field.
Defines how robot can move around in 10x10 field .
fn succ(&self, state: &Self::State) -> Self::Iter {
        let mut v = vec![];
        let (x, y) = *state;
        if x < 10 && y < 10 && x == y {
            v.push(((x + 1, y + 1), 1.0));
        }
        if x < 10 && y == 0 {
            v.push(((x + 1, y), 0.5));
        } else if x == 10 && y < 10 {
            v.push(((x, y + 1), 0.8));
        }
        v.into_iter()
    }
fn succ ( & self , state : & Self :: State ) -> Self :: Iter { let mut v = vec ! [ ] ; let ( x , y ) = * state ; if x < 10 && y < 10 && x == y { v . push ( ( ( x + 1 , y + 1 ) , 1.0 ) ) ; } if x < 10 && y == 0 { v . push ( ( ( x + 1 , y ) , 0.5 ) ) ; } else if x == 10 && y < 10 { v . push ( ( ( x , y + 1 ) , 0.8 ) ) ; } v . into_iter ( ) }
Defines how robot can move around in 10x10 field.
Defines how robot can move around in 10x10 field .
&self
state
&Self::State
&self
state
&Self::State