In order to enable chunked decoding, such as for #12, we need to have an async object decoding option for Decodables
All Decodable's are AsyncDecodable, as you can always await a sync value, but not all AsyncDecodables are (sync)Decodable
We would likely need to add async variants to Decoder for Future<T> decodeObjectAsync<T>({AsyncDecodable? using})'s use
Then, specific Decodable's such as ListCodable can implement the async version as desired, while the Decoder can act with respect to Stream
We could possibly keep everything on Decoder so that people could choose to store futures/streams in their models if desired, or keep it separate with a AsyncDecoder
see this comment for a bit more context: #12 (comment)
In order to enable chunked decoding, such as for #12, we need to have an async object decoding option for
DecodablesAll
Decodable's areAsyncDecodable, as you can always await a sync value, but not allAsyncDecodables are (sync)DecodableWe would likely need to add async variants to
DecoderforFuture<T> decodeObjectAsync<T>({AsyncDecodable? using})'s useThen, specific
Decodable's such asListCodablecan implement the async version as desired, while theDecodercan act with respect toStreamWe could possibly keep everything on
Decoderso that people could choose to store futures/streams in their models if desired, or keep it separate with aAsyncDecodersee this comment for a bit more context: #12 (comment)