boolFromDynamic function

bool boolFromDynamic(
  1. dynamic value, {
  2. required bool fallback,
})

Returns value as bool if possible, or fallback when not parseable.

Accepted truthy values: true, non-zero numbers, 'true', '1'. Accepted falsy values: false, zero numbers, 'false', '0'.

Implementation

bool boolFromDynamic(final dynamic value, {required final bool fallback}) =>
    switch (value) {
      null => fallback,
      final bool v => v,
      final num v => v != 0,
      final String v => switch (v.trim().toLowerCase()) {
        'true' || '1' => true,
        'false' || '0' => false,
        _ => fallback,
      },
      _ => fallback,
    };