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();
}