mod method
Implementation
QrPolynomial mod(QrPolynomial e) {
final int eLength = e.length;
final int valLength = length;
if (valLength - eLength < 0) {
return this;
}
final Uint8List values = Uint8List.fromList(_values);
final int iterLimit = valLength - eLength + 1;
final Uint8List eValues = e._values;
final int e0Log = glog(eValues[0]);
for (int i = 0; i < iterLimit; i++) {
final int v = values[i];
if (v == 0) continue;
final int ratio = glog(v) - e0Log;
for (int j = 0; j < eLength; j++) {
final int eVal = eValues[j];
if (eVal == 0) continue;
values[i + j] ^= gexp(glog(eVal) + ratio);
}
}
return QrPolynomial(values.sublist(valLength - eLength + 1), 0);
}