toBoolOrNull function

bool? toBoolOrNull(
  1. dynamic value
)

Convert any dynamic value to bool or null safely.

Implementation

bool? toBoolOrNull(value) {
  if (value == null) return null;
  if (value is bool) return value;
  if (value is int) return value == 0 ? false : true;
  if (value is double) return value == 0 ? false : true;
  if (value is String) {
    if (value == "1" || value.toLowerCase() == "true") return true;
    if (value == "0" || value.toLowerCase() == "false") return false;
  }
  return null;
}