evaluateValue method
Implementation
bool evaluateValue(Object? value) {
if (value == null) return false;
if (value is String) {
return value.isNotEmpty;
} else if (value is bool) {
return value;
} else if (value is num) {
return value != 0;
} else if (value is Iterable) {
// A `List`, also a `Set` or any other collection: not empty.
return value.isNotEmpty;
} else if (value is Map) {
return value.isNotEmpty;
} else {
throw StateError("Can't evaluate value of type: ${value.runtimeType}");
}
}