From 72323e4a44b3cc9ce9c5266ce017efb1f127513b Mon Sep 17 00:00:00 2001 From: Jacob Birkett Date: Sun, 29 Dec 2024 19:35:23 -0600 Subject: [PATCH] derive: use hygenic path for Result in output This stops conflicts with too many generics when type aliases of `Result` are in scope. --- derive/src/node.rs | 16 ++++++++-------- derive/src/scalar.rs | 2 +- derive/src/variants.rs | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/derive/src/node.rs b/derive/src/node.rs index 3603b5c..1f60d5f 100644 --- a/derive/src/node.rs +++ b/derive/src/node.rs @@ -94,7 +94,7 @@ pub fn emit_struct(s: &Struct, named: bool) -> syn::Result { fn insert_child(&mut self, #node: &::knus::ast::SpannedNode<#span_ty>, #ctx: &mut ::knus::decode::Context<#span_ty>) - -> Result> + -> ::std::result::Result> { #insert_child } @@ -102,7 +102,7 @@ pub fn emit_struct(s: &Struct, named: bool) -> syn::Result { #name: &::knus::span::Spanned, #span_ty>, #value: &::knus::ast::Value<#span_ty>, #ctx: &mut ::knus::decode::Context<#span_ty>) - -> Result> + -> ::std::result::Result> { #insert_property } @@ -124,7 +124,7 @@ pub fn emit_struct(s: &Struct, named: bool) -> syn::Result { fn decode_children( #children: &[::knus::ast::SpannedNode<#span_ty>], #ctx: &mut ::knus::decode::Context<#span_ty>) - -> Result> + -> ::std::result::Result> { #decode_children #assign_extra @@ -140,7 +140,7 @@ pub fn emit_struct(s: &Struct, named: bool) -> syn::Result { { fn decode_node(#node: &::knus::ast::SpannedNode<#span_ty>, #ctx: &mut ::knus::decode::Context<#span_ty>) - -> Result> + -> ::std::result::Result> { #decode_specials #decode_args @@ -164,7 +164,7 @@ pub fn emit_new_type(s: &NewType) -> syn::Result { { fn decode_node(#node: &::knus::ast::SpannedNode, #ctx: &mut ::knus::decode::Context) - -> Result> + -> ::std::result::Result> { if #node.arguments.len() > 0 || #node.properties.len() > 0 || @@ -433,7 +433,7 @@ fn decode_args(s: &Common, node: &syn::Ident) -> syn::Result { decoder.push(quote! { let #fld = #iter_args.map(|#val| { #decode_value - }).collect::>()?; + }).collect::>()?; }); } else { decoder.push(quote! { @@ -925,7 +925,7 @@ fn decode_children( match &**#child.node_name { #(#match_branches)* } - }).collect::>>()?; + }).collect::<::std::result::Result<_, ::knus::errors::DecodeError<_>>>()?; #(#postprocess)* }) } else { @@ -945,7 +945,7 @@ fn decode_children( match &**#child.node_name { #(#match_branches)* } - }).collect::>>()?; + }).collect::<::std::result::Result<(), ::knus::errors::DecodeError<_>>>()?; #(#postprocess)* }) } diff --git a/derive/src/scalar.rs b/derive/src/scalar.rs index 84bc3aa..88f4d0c 100644 --- a/derive/src/scalar.rs +++ b/derive/src/scalar.rs @@ -99,7 +99,7 @@ pub fn emit_enum(e: &Enum) -> syn::Result { fn raw_decode(val: &::knus::span::Spanned< ::knus::ast::Literal, S>, ctx: &mut ::knus::decode::Context) - -> Result<#e_name, ::knus::errors::DecodeError> + -> ::std::result::Result<#e_name, ::knus::errors::DecodeError> { match &**val { ::knus::ast::Literal::String(ref s) => { diff --git a/derive/src/variants.rs b/derive/src/variants.rs index 35363a2..27ba9e9 100644 --- a/derive/src/variants.rs +++ b/derive/src/variants.rs @@ -48,7 +48,7 @@ pub fn emit_enum(e: &Enum) -> syn::Result { { fn decode_node(#node: &::knus::ast::SpannedNode<#span_ty>, #ctx: &mut ::knus::decode::Context<#span_ty>) - -> Result> + -> ::std::result::Result> { #decode }