From: Matt Corallo Date: Thu, 11 Feb 2021 21:14:58 +0000 (-0500) Subject: [bindings] Handle `impl Clone` like `impl ::core::clone::Clone` X-Git-Tag: v0.0.13~27^2~2 X-Git-Url: http://git.bitcoin.ninja/?a=commitdiff_plain;h=6f5f27e9013ff9d30ef4f1912f48b09d5e8e6148;p=rust-lightning [bindings] Handle `impl Clone` like `impl ::core::clone::Clone` --- diff --git a/c-bindings-gen/src/main.rs b/c-bindings-gen/src/main.rs index a93122daf..e919dc758 100644 --- a/c-bindings-gen/src/main.rs +++ b/c-bindings-gen/src/main.rs @@ -903,7 +903,8 @@ fn writeln_impl(w: &mut W, i: &syn::ItemImpl, types: &mut Typ write!(w, "\t{} {{ inner: Box::into_raw(Box::new(Default::default())), is_owned: true }}\n", ident).unwrap(); write!(w, "}}\n").unwrap(); } else if path_matches_nongeneric(&trait_path.1, &["core", "cmp", "PartialEq"]) { - } else if path_matches_nongeneric(&trait_path.1, &["core", "clone", "Clone"]) && types.c_type_has_inner_from_path(&resolved_path) { + } else if (path_matches_nongeneric(&trait_path.1, &["core", "clone", "Clone"]) || path_matches_nongeneric(&trait_path.1, &["Clone"])) && + types.c_type_has_inner_from_path(&resolved_path) { writeln!(w, "impl Clone for {} {{", ident).unwrap(); writeln!(w, "\tfn clone(&self) -> Self {{").unwrap(); writeln!(w, "\t\tSelf {{").unwrap();