validate method

  1. @override
ValidationResult<Map<String, dynamic>> validate(
  1. String key,
  2. covariant Map<String, dynamic> input
)
override

Performs type coercion against an input value, and returns a list of errors if the validation was unsuccessful.

Implementation

@override
ValidationResult<Map<String, dynamic>> validate(
  String key,
  Map<String, dynamic> input,
) {
  var errors = <String>[];

  for (var type in possibleTypes) {
    var result = type.validate(key, input);

    if (result.successful) {
      return result;
    } else {
      errors.addAll(result.errors);
    }
  }

  return ValidationResult<Map<String, dynamic>>._failure(errors);
}