deserialize function

dynamic deserialize(
  1. dynamic value
)

Basic deserialization function. Handles:

Implementation

dynamic deserialize(dynamic value) => switch (value) {
      null => null,
      int() || double() || String() || bool() => value,
      List() => value.map(deserialize).toList(),
      Map() => value.map((k, v) => MapEntry(deserialize(k), deserialize(v))),
      _ => throw ArgumentError.value(
          value,
          'value',
          'Cannot deserialize value of type ${value.runtimeType}',
        ),
    };