mirror of
https://github.com/pezkuwichain/serde.git
synced 2026-04-29 18:47:57 +00:00
Use parse_macro_input to report parse errors
This commit is contained in:
@@ -81,7 +81,7 @@ mod try;
|
|||||||
|
|
||||||
#[proc_macro_derive(Serialize, attributes(serde))]
|
#[proc_macro_derive(Serialize, attributes(serde))]
|
||||||
pub fn derive_serialize(input: TokenStream) -> TokenStream {
|
pub fn derive_serialize(input: TokenStream) -> TokenStream {
|
||||||
let input: DeriveInput = syn::parse(input).unwrap();
|
let input = parse_macro_input!(input as DeriveInput);
|
||||||
ser::expand_derive_serialize(&input)
|
ser::expand_derive_serialize(&input)
|
||||||
.unwrap_or_else(compile_error)
|
.unwrap_or_else(compile_error)
|
||||||
.into()
|
.into()
|
||||||
@@ -89,7 +89,7 @@ pub fn derive_serialize(input: TokenStream) -> TokenStream {
|
|||||||
|
|
||||||
#[proc_macro_derive(Deserialize, attributes(serde))]
|
#[proc_macro_derive(Deserialize, attributes(serde))]
|
||||||
pub fn derive_deserialize(input: TokenStream) -> TokenStream {
|
pub fn derive_deserialize(input: TokenStream) -> TokenStream {
|
||||||
let input: DeriveInput = syn::parse(input).unwrap();
|
let input = parse_macro_input!(input as DeriveInput);
|
||||||
de::expand_derive_deserialize(&input)
|
de::expand_derive_deserialize(&input)
|
||||||
.unwrap_or_else(compile_error)
|
.unwrap_or_else(compile_error)
|
||||||
.into()
|
.into()
|
||||||
|
|||||||
Reference in New Issue
Block a user