Add axum-macros crate with #[derive(FromRequest)] (#718)

* 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 <[email protected]>

* 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 <[email protected]>

* 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 <[email protected]>

* Update axum-macros/src/lib.rs

Co-authored-by: Jonas Platte <[email protected]>

* Update known limitation

Co-authored-by: Jonas Platte <[email protected]>
This commit is contained in:
David Pedersen
2022-01-25 15:05:50 +01:00
committed by GitHub
co-authored by Jonas Platte
parent 9004a14302
commit e4c389c94d
23 changed files with 1190 additions and 0 deletions
+1
View File
@@ -4,5 +4,6 @@ members = [
"axum-core",
"axum-debug",
"axum-extra",
"axum-macros",
"examples/*",
]