use std::future::Future;
use crate::ws::io::socket::{DeboaWebSocket, UpgradedIo, WebSocket};
use deboa::{response::DeboaResponse, Result};
pub trait IntoWebSocket {
fn into_websocket(self) -> impl Future<Output = Result<WebSocket<UpgradedIo>>>;
}
impl IntoWebSocket for DeboaResponse {
async fn into_websocket(self) -> Result<WebSocket<UpgradedIo>> {
let upgraded = self
.upgrade()
.await?;
Ok(WebSocket::new(upgraded))
}
}