use futures::Stream;
use crate::protocols::openai::stream_aggregator::{StreamAggregable, aggregate_stream};
use crate::types::Annotated;
use super::NvVideosResponse;
impl StreamAggregable for NvVideosResponse {
fn empty() -> Self {
Self::empty()
}
fn merge(&mut self, next: Self) {
self.data.extend(next.data);
}
}
impl NvVideosResponse {
pub async fn from_annotated_stream(
stream: impl Stream<Item = Annotated<NvVideosResponse>>,
) -> Result<NvVideosResponse, String> {
aggregate_stream(stream).await
}
}