edaxGetBookMoveWithPositionByMoves method
- String moves
Get book move list with position by specified moves.
Implementation
@useResult
MoveListWithPosition edaxGetBookMoveWithPositionByMoves(final String moves) {
return using((Arena arena) {
final dstM = arena<bindings.MoveList>();
final dstP = arena<bindings.Position>();
final movesPointer = moves.toCharPointer(arena);
final symetry = _bindings.edax_get_bookmove_with_position_by_moves(
movesPointer,
dstM,
dstP,
);
final moveList = dstM.ref;
final resultMoveList = <Move>[];
for (var k = 0; k < moveList.n_moves; k++) {
final m = moveList.move[k + 1];
resultMoveList.add(Move.fromCStruct(m));
}
final position = Position.fromCStruct(dstP.ref);
return MoveListWithPosition(resultMoveList, position, symetry);
});
}