#include <cassert>
#include <cstring>
#include <iostream>
#include <system/memory.hpp>
#include <dds/dds.hpp>
extern Memory memory;
static Deal make_empty_deal()
{
Deal dl{}; dl.trump = 0;
dl.first = 0;
std::memset(dl.currentTrickSuit, 0, sizeof(dl.currentTrickSuit));
std::memset(dl.currentTrickRank, 0, sizeof(dl.currentTrickRank));
std::memset(dl.remainCards, 0, sizeof(dl.remainCards));
return dl;
}
int main()
{
const int thr = 0;
FutureTricks ft1{};
FutureTricks ft2{};
Deal dl = make_empty_deal();
int r1 = SolveBoard(dl, 0, 1, 0, &ft1, thr);
SolverContext ctx;
int r2 = solve_board(ctx, dl, 0, 1, 0, &ft2);
if (r1 != r2) {
std::cerr << "Return codes differ: legacy=" << r1 << " ctx=" << r2 << std::endl;
return 1;
}
return 0;
}