@UnstableApi
    default <U> StreamMessage<U> decode(StreamDecoder<T, U> decoder, ByteBufAllocator alloc) {
        return new DecodedStreamMessage<>(this, decoder, alloc);
    }
Creates a decoded {@link StreamMessage} which is decoded from a stream of {@code T} type objects using
the specified {@link StreamDecoder} and {@link ByteBufAllocator}.
core/src/main/java/com/linecorp/armeria/common/stream/StreamMessage.java