deepCopy function

Object? deepCopy(
  1. Object? value
)

A deep copy of maps and lists, other values as they are.

Implementation

Object? deepCopy(Object? value) {
  if (value is Map<String, Object?>) {
    return <String, Object?>{
      for (final entry in value.entries) entry.key: deepCopy(entry.value),
    };
  }
  if (value is Map<Object?, Object?>) {
    return <Object?, Object?>{
      for (final entry in value.entries) entry.key: deepCopy(entry.value),
    };
  }
  if (value is List<Object?>) return [for (final item in value) deepCopy(item)];
  return value;
}