Prefixed the E and D generic argument in bincode-derive (#573)

This commit is contained in:
Trangar 2022-08-18 19:01:30 +02:00 committed by GitHub
parent 88ab23f544
commit e3f7d5340e
4 changed files with 21 additions and 12 deletions

View File

@ -39,9 +39,9 @@ impl DeriveEnum {
Ok(())
})?
.generate_fn("encode")
.with_generic_deps("E", [format!("{}::enc::Encoder", crate_name)])
.with_generic_deps("__E", [format!("{}::enc::Encoder", crate_name)])
.with_self_arg(FnSelfArg::RefSelf)
.with_arg("encoder", "&mut E")
.with_arg("encoder", "&mut __E")
.with_return_type(format!(
"core::result::Result<(), {}::error::EncodeError>",
crate_name
@ -237,8 +237,8 @@ impl DeriveEnum {
Ok(())
})?
.generate_fn("decode")
.with_generic_deps("D", [format!("{}::de::Decoder", crate_name)])
.with_arg("decoder", "&mut D")
.with_generic_deps("__D", [format!("{}::de::Decoder", crate_name)])
.with_arg("decoder", "&mut __D")
.with_return_type(format!("core::result::Result<Self, {}::error::DecodeError>", crate_name))
.body(|fn_builder| {
if self.variants.is_empty() {
@ -332,8 +332,8 @@ impl DeriveEnum {
Ok(())
})?
.generate_fn("borrow_decode")
.with_generic_deps("D", [format!("{}::de::BorrowDecoder<'__de>", crate_name)])
.with_arg("decoder", "&mut D")
.with_generic_deps("__D", [format!("{}::de::BorrowDecoder<'__de>", crate_name)])
.with_arg("decoder", "&mut __D")
.with_return_type(format!("core::result::Result<Self, {}::error::DecodeError>", crate_name))
.body(|fn_builder| {
if self.variants.is_empty() {

View File

@ -31,9 +31,9 @@ impl DeriveStruct {
Ok(())
})?
.generate_fn("encode")
.with_generic_deps("E", [format!("{}::enc::Encoder", crate_name)])
.with_generic_deps("__E", [format!("{}::enc::Encoder", crate_name)])
.with_self_arg(virtue::generate::FnSelfArg::RefSelf)
.with_arg("encoder", "&mut E")
.with_arg("encoder", "&mut __E")
.with_return_type(format!(
"core::result::Result<(), {}::error::EncodeError>",
crate_name
@ -80,8 +80,8 @@ impl DeriveStruct {
Ok(())
})?
.generate_fn("decode")
.with_generic_deps("D", [format!("{}::de::Decoder", crate_name)])
.with_arg("decoder", "&mut D")
.with_generic_deps("__D", [format!("{}::de::Decoder", crate_name)])
.with_arg("decoder", "&mut __D")
.with_return_type(format!("core::result::Result<Self, {}::error::DecodeError>", crate_name))
.body(|fn_body| {
// Ok(Self {
@ -141,8 +141,8 @@ impl DeriveStruct {
Ok(())
})?
.generate_fn("borrow_decode")
.with_generic_deps("D", [format!("{}::de::BorrowDecoder<'__de>", crate_name)])
.with_arg("decoder", "&mut D")
.with_generic_deps("__D", [format!("{}::de::BorrowDecoder<'__de>", crate_name)])
.with_arg("decoder", "&mut __D")
.with_return_type(format!("core::result::Result<Self, {}::error::DecodeError>", crate_name))
.body(|fn_body| {
// Ok(Self {

View File

@ -26,3 +26,6 @@ mod issue_523;
#[path = "issues/issue_547.rs"]
mod issue_547;
#[path = "issues/issue_570.rs"]
mod issue_570;

View File

@ -0,0 +1,6 @@
#![cfg(feature = "derive")]
#[derive(bincode::Encode, bincode::Decode)]
pub struct Eg<D, E> {
data: (D, E),
}