mirror of
https://github.com/tokio-rs/axum.git
synced 2024-11-30 04:02:42 +01:00
e4c389c94d
* initial working impl * support `#[from_request(via(...))]` * support extracting the whole thing at once * rely on type inference * fix footgun * fix typo * generate rejection enums * move tests to trybuild * minor clean up * docs * Support multiple generic extractors with same "via" type * support `Result` as well * Update axum-macros/src/from_request.rs Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com> * Add `#[automatically_derived]` * remove needless `#[derive(Debug)]` on macro types * Fix error messages that different for some reason * Update axum-macros/src/lib.rs Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com> * add more `#[automatically_derived]` * support same types in tuple structs * update docs * prep axum-macros for release * address review feedback * Update axum-macros/src/lib.rs Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com> * Update axum-macros/src/lib.rs Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com> * Update known limitation Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
22 lines
389 B
Rust
22 lines
389 B
Rust
use axum::{
|
|
body::Body,
|
|
extract::{rejection::JsonRejection, FromRequest, Json},
|
|
};
|
|
use axum_macros::FromRequest;
|
|
use serde::Deserialize;
|
|
|
|
#[derive(Deserialize, FromRequest)]
|
|
#[from_request(via(Json))]
|
|
struct Extractor {
|
|
one: i32,
|
|
two: String,
|
|
three: bool,
|
|
}
|
|
|
|
fn assert_from_request()
|
|
where
|
|
Extractor: FromRequest<Body, Rejection = JsonRejection>,
|
|
{
|
|
}
|
|
|
|
fn main() {}
|