Implement new streaming APIs for the `System.Net.Http.Json` extensions (#89258)
* Contributes to #87577
* More updates
* Added unit tests, generated ref, and minor clean up
* Added missing triple slash comments
* Update src/libraries/System.Net.Http.Json/tests/FunctionalTests/HttpClientJsonExtensionsTests.cs
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
* Correct the preprocessor directives, and delegate to JsonTypeInfo overload - per peer feedback.
* Refactor for deferred execution, remove helper methods since they're no longer needed
* Add test to ensure deferred execution semantics, updates from Miha.
* Apply suggestions from code review
Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>
* Update src/libraries/System.Net.Http.Json/src/System/Net/Http/Json/HttpClientJsonExtensions.Get.AsyncEnumerable.cs
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
* Update test per Miha's feedback
* A few more updates from peer review, Eirik's nits.
* No need for the length limit read stream.
* Add limit per invocation, not element. Share length limit read stream logic.
---------
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>