|  | @@ -138,7 +138,8 @@ impl SimpleMove {
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -pub fn generate_moves(game: &Game, side: Side, moves: &mut Vec<Move>) {
 |  | 
 | 
											
												
													
														|  | 
 |  | +pub fn generate_moves(game: &Game, side: Side) -> Vec<Move> {
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |      let mut moves: Vec<Move> = Vec::with_capacity(128);
 |  |      let mut moves: Vec<Move> = Vec::with_capacity(128);
 | 
											
												
													
														|  |      generate_pawn_pushes(game, side, &mut moves);
 |  |      generate_pawn_pushes(game, side, &mut moves);
 | 
											
												
													
														|  |      generate_pawn_doublepushes(game, side, &mut moves);
 |  |      generate_pawn_doublepushes(game, side, &mut moves);
 | 
											
										
											
												
													
														|  | @@ -151,6 +152,7 @@ pub fn generate_moves(game: &Game, side: Side, moves: &mut Vec<Move>) {
 | 
											
												
													
														|  |      generate_queen_moves(game, side, &mut moves, false);
 |  |      generate_queen_moves(game, side, &mut moves, false);
 | 
											
												
													
														|  |      generate_king_moves(game, side, &mut moves, false);
 |  |      generate_king_moves(game, side, &mut moves, false);
 | 
											
												
													
														|  |      generate_castling_moves(game, side, &mut moves);
 |  |      generate_castling_moves(game, side, &mut moves);
 | 
											
												
													
														|  | 
 |  | +    return moves;
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  /**
 |  |  /**
 | 
											
										
											
												
													
														|  | @@ -172,8 +174,7 @@ pub fn generate_possattacking_moves(game: &Game, side: Side) -> Vec<Move> {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  pub fn generate_legal_moves(game: &Game, side: Side) -> Vec<Move> {
 |  |  pub fn generate_legal_moves(game: &Game, side: Side) -> Vec<Move> {
 | 
											
												
													
														|  | -    let mut moves = Vec::new();
 |  | 
 | 
											
												
													
														|  | -    generate_moves(game, side, &mut moves);
 |  | 
 | 
											
												
													
														|  | 
 |  | +    let moves = generate_moves(game, side);
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      moves.into_iter().filter(|mov| {
 |  |      moves.into_iter().filter(|mov| {
 | 
											
												
													
														|  |          let tryout = super::search::apply_move(game, *mov);
 |  |          let tryout = super::search::apply_move(game, *mov);
 |