projects
/
ldk-c-bindings
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Detect a type as clonable with an explicit `impl Clone`
[ldk-c-bindings]
/
c-bindings-gen
/
src
/
main.rs
diff --git
a/c-bindings-gen/src/main.rs
b/c-bindings-gen/src/main.rs
index f56f30ff34e04c2d360822b1d2aa670d4e0b083a..9d6f9cfeadad7717594a5d878d19e2a0ac2a1af2 100644
(file)
--- a/
c-bindings-gen/src/main.rs
+++ b/
c-bindings-gen/src/main.rs
@@
-1853,7
+1853,8
@@
fn walk_ast<'a>(ast_storage: &'a FullLibraryAST, crate_types: &mut CrateTypes<'a
syn::Item::Impl(i) => {
if let &syn::Type::Path(ref p) = &*i.self_ty {
if let Some(trait_path) = i.trait_.as_ref() {
syn::Item::Impl(i) => {
if let &syn::Type::Path(ref p) = &*i.self_ty {
if let Some(trait_path) = i.trait_.as_ref() {
- if path_matches_nongeneric(&trait_path.1, &["core", "clone", "Clone"]) {
+ if path_matches_nongeneric(&trait_path.1, &["core", "clone", "Clone"]) ||
+ path_matches_nongeneric(&trait_path.1, &["Clone"]) {
if let Some(full_path) = import_resolver.maybe_resolve_path(&p.path, None) {
crate_types.set_clonable("crate::".to_owned() + &full_path);
}
if let Some(full_path) = import_resolver.maybe_resolve_path(&p.path, None) {
crate_types.set_clonable("crate::".to_owned() + &full_path);
}