nextFieldElement method

F nextFieldElement()

Implementation

F nextFieldElement() {
  while (true) {
    List<int> bytes = List<int>.filled(32, 0);
    final bits = _takeBits(numBits).toList();
    for (int i = 0; i < bits.length; i++) {
      int revIndex = numBits - 1 - i;
      int byteIndex = revIndex ~/ 8;
      int bitIndex = revIndex % 8;
      if (bits[i]) {
        bytes[byteIndex] |= (1 << bitIndex);
      }
    }
    try {
      return fromBytes(bytes);
    } catch (e) {
      continue;
    }
  }
}