checkDigit method

  1. @override
int checkDigit(
  1. String data
)
override

Computes the check digit from data.

Implementation

@override
int checkDigit(String data) {
  if (data.length != 9) {
    throw ArgumentError('Must not be null and must contain 9 digits');
  }

  final sum1 = _compute(data, 10);
  final r1 = sum1 % 11;
  final v1 = r1 == 0 || r1 == 1 ? 0 : (11 - r1);

  final sum2 = _compute(data, 11) + v1 * 2;
  final r2 = sum2 % 11;
  final v2 = r2 == 0 || r2 == 1 ? 0 : (11 - r2);

  return v1 * 10 + v2;
}