BatchValidationResult.fromResults constructor
- List<
JsonValidationResult> results
Creates a BatchValidationResult from a list of per-item JsonValidationResult values.
results must be in the same order as the corresponding input items to ensure
failureIndices correctly identifies each failing position.
Failure results (where JsonValidationResult.isValid is false) should have
non-empty JsonValidationResult.errors lists. A JsonValidationResult.failure
constructed with an empty errors list will be counted in failureIndices but
will produce no bullet lines in the consolidated log message.
Implementation
factory BatchValidationResult.fromResults(List<JsonValidationResult> results) {
final List<int> failureIndices = <int>[
for (int i = 0; i < results.length; i++)
if (!results[i].isValid) i,
];
return BatchValidationResult._(
isValid: failureIndices.isEmpty,
results: List<JsonValidationResult>.unmodifiable(results),
failureCount: failureIndices.length,
failureIndices: List<int>.unmodifiable(failureIndices),
);
}