Implement IntoResponse for boxed slices (#2035)

This commit is contained in:
Alexander van Ratingen 2023-06-26 13:14:28 +02:00 committed by GitHub
parent 466cfcddf7
commit adb387a370
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View file

@ -190,6 +190,12 @@ impl IntoResponse for String {
}
}
impl IntoResponse for Box<str> {
fn into_response(self) -> Response {
String::from(self).into_response()
}
}
impl IntoResponse for Cow<'static, str> {
fn into_response(self) -> Response {
let mut res = Body::from(self).into_response();
@ -315,6 +321,12 @@ impl IntoResponse for Vec<u8> {
}
}
impl IntoResponse for Box<[u8]> {
fn into_response(self) -> Response {
Vec::from(self).into_response()
}
}
impl IntoResponse for Cow<'static, [u8]> {
fn into_response(self) -> Response {
let mut res = Body::from(self).into_response();

View file

@ -53,6 +53,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- **breaking:** Only inherit fallbacks for routers nested with `Router::nest`.
Routers nested with `Router::nest_service` will no longer inherit fallbacks ([#1956])
- **fixed:** Don't remove the `Sec-WebSocket-Key` header in `WebSocketUpgrade` ([#1972])
- **added:** Implement `IntoResponse` for `Box<str>` and `Box<[u8]>` ([#2035])
[#1664]: https://github.com/tokio-rs/axum/pull/1664
[#1751]: https://github.com/tokio-rs/axum/pull/1751