validateConfiguration static method
void
validateConfiguration({
- required List<
WheelSegment> segments, - required double size,
- required Duration spinDuration,
- required int extraTurns,
Validates inputs at runtime so release builds keep the same contract as debug builds (where constructor assertions are enabled).
Implementation
static void validateConfiguration({
required List<WheelSegment> segments,
required double size,
required Duration spinDuration,
required int extraTurns,
}) {
if (segments.length < 2) {
throw ArgumentError.value(
segments.length,
'segments',
'must contain at least 2 segments',
);
}
if (!size.isFinite || size <= 0) {
throw ArgumentError.value(
size,
'size',
'must be finite and greater than 0',
);
}
if (spinDuration.isNegative) {
throw ArgumentError.value(
spinDuration,
'spinDuration',
'must not be negative',
);
}
if (extraTurns < 0) {
throw ArgumentError.value(
extraTurns,
'extraTurns',
'must be non-negative',
);
}
}