parseBool static method

bool parseBool(
  1. dynamic value, {
  2. bool whenNull = false,
})

Parses the dynamic value into a bool. This will return true if and only if the value is...

  • true
  • "true" (case insensitive)
  • "yes" (case insensitive)
  • 1

Any other value will result in false.

Implementation

static bool parseBool(
  dynamic value, {
  bool whenNull = false,
}) {
  var result = false;

  if (value == null) {
    result = whenNull;
  } else {
    result = result || value == true;
    result = result || parseInt(value) == 1;
    if (result != true && value is String) {
      final lower = value.toLowerCase();
      result = result || lower == 'true';
      result = result || lower == 'yes';
    }
  }

  return result;
}