|  | @@ -201,7 +201,6 @@ pub fn generate_attacking_moves(game: &Game, side: Side) -> Vec<Move> {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  pub fn sort_moves(game: &mut Game, hash: &mut Cache, move_list: &mut Vec<Move>) {
 |  |  pub fn sort_moves(game: &mut Game, hash: &mut Cache, move_list: &mut Vec<Move>) {
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |      move_list.sort_by_cached_key(|mov| {
 |  |      move_list.sort_by_cached_key(|mov| {
 | 
											
												
													
														|  |          let undo = game.apply(*mov);
 |  |          let undo = game.apply(*mov);
 | 
											
												
													
														|  |          if let Some(e) = hash.lookup(game) {
 |  |          if let Some(e) = hash.lookup(game) {
 | 
											
										
											
												
													
														|  | @@ -227,6 +226,15 @@ pub fn sort_moves(game: &mut Game, hash: &mut Cache, move_list: &mut Vec<Move>)
 | 
											
												
													
														|  |      });
 |  |      });
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +pub fn sort_moves_no_hash(game: &mut Game, move_list: &mut Vec<Move>) {
 | 
											
												
													
														|  | 
 |  | +    move_list.sort_by_cached_key(|mov| {
 | 
											
												
													
														|  | 
 |  | +        let undo = game.apply(*mov);
 | 
											
												
													
														|  | 
 |  | +        let eval = crate::evaluate::evaluate(game);
 | 
											
												
													
														|  | 
 |  | +        game.undo_move(undo);
 | 
											
												
													
														|  | 
 |  | +        return eval;
 | 
											
												
													
														|  | 
 |  | +    });
 | 
											
												
													
														|  | 
 |  | +}
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  fn generate_pawn_pushes(game: &Game, side: Side, move_list: &mut Vec<Move>) {
 |  |  fn generate_pawn_pushes(game: &Game, side: Side, move_list: &mut Vec<Move>) {
 | 
											
												
													
														|  |      let pawns = game.pawns(side);
 |  |      let pawns = game.pawns(side);
 |