#include "test_functions.h" #include #include #include #include #include #include std::vector get_to_squares(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_to_sq(mv)); } return transformed; } std::vector get_from_squared(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_from_sq(mv)); } return transformed; } std::vector get_captured_pieces(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_captured_pc(mv)); } return transformed; } std::vector get_promoted_pieces(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_promoted_to_pc(mv)); } return transformed; } std::vector get_en_passant_flags(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_en_pass_flag(mv)); } return transformed; } std::vector get_pawn_start_flags(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_pawn_st_flag(mv)); } return transformed; } std::vector get_castle_flags(std::vector moves){ std::vector transformed; for (int mv : moves){ transformed.push_back(get_castle_flag(mv)); } return transformed; } std::vector get_notations(std::vector moves, std::array board){ std::vector notations; for (int move : moves){ notations.push_back(to_notation(move, &board)); } return notations; }