fuse<T> method Null safety

Converter<Object?, T> fuse <T>(
  1. Converter<String, T> other
)
override

Fuses this with other.

Encoding with the resulting converter is equivalent to converting with this before converting with other.

Implementation

Converter<Object?, T> fuse<T>(Converter<String, T> other) {
  if (other is Utf8Encoder) {
    // The instance check guarantees that `T` is (a subtype of) List<int>,
    // but the static type system doesn't know that, and so we cast.
    return JsonUtf8Encoder(indent, _toEncodable) as Converter<Object?, T>;
  }
  return super.fuse<T>(other);
}