parse static method

MRZResult parse(
  1. List<String?>? input
)

Parse input and return MRZResult instance.

The input must be a non-null non-empty List of lines from a documents machine-readable zone.

If input format is invalid or parsing was unsuccessful, an instance of MRZException is thrown

Implementation

static MRZResult parse(List<String?>? input) {
  final polishedInput = _polishInput(input);
  if (polishedInput == null) {
    throw const InvalidMRZInputException();
  }

  if (_TD1MRZFormatParser.isValidInput(polishedInput)) {
    return _TD1MRZFormatParser.parse(polishedInput);
  }
  if (_TD2MRZFormatParser.isValidInput(polishedInput)) {
    return _TD2MRZFormatParser.parse(polishedInput);
  }
  if (_TD3MRZFormatParser.isValidInput(polishedInput)) {
    return _TD3MRZFormatParser.parse(polishedInput);
  }

  throw const InvalidMRZInputException();
}