fn solve(&mut self) {
        self.determine_bounds_v();
        self.determine_bounds_h();
        let mut progress = true;
        while progress {
            progress = self.definite_within_bounds_v()
                | self.definite_within_bounds_h()
                | self.determine_spaces_between_keys_v()
                | self.determine_spaces_between_keys_h()
                | self.separate_keys_v()
                | self.separate_keys_h()
                | self.tighten_bounds_v()
                | self.tighten_bounds_h()
                | self.complete_groups_v()
                | self.complete_groups_h();
        }
    }
//loops until no further deductive steps are possible to make progress on the solution
loops until no further deductive steps are possible to make progress on the solution
loops until no further deductive steps are possible to make progress on the solution
fn solve(&mut self) {
        self.determine_bounds_v();
        self.determine_bounds_h();
        let mut progress = true;
        while progress {
            progress = self.definite_within_bounds_v()
                | self.definite_within_bounds_h()
                | self.determine_spaces_between_keys_v()
                | self.determine_spaces_between_keys_h()
                | self.separate_keys_v()
                | self.separate_keys_h()
                | self.tighten_bounds_v()
                | self.tighten_bounds_h()
                | self.complete_groups_v()
                | self.complete_groups_h();
        }
    }
fn solve ( & mut self ) { self . determine_bounds_v ( ) ; self . determine_bounds_h ( ) ; let mut progress = true ; while progress { progress = self . definite_within_bounds_v ( ) | self . definite_within_bounds_h ( ) | self . determine_spaces_between_keys_v ( ) | self . determine_spaces_between_keys_h ( ) | self . separate_keys_v ( ) | self . separate_keys_h ( ) | self . tighten_bounds_v ( ) | self . tighten_bounds_h ( ) | self . complete_groups_v ( ) | self . complete_groups_h ( ) ; } }
loops until no further deductive steps are possible to make progress on the solution
loops until no further deductive steps are possible to make progress on the solution
&mut self
&mut self