X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=c-bindings-gen%2Fsrc%2Fmain.rs;h=f5a7656c0af60aecba2729388b9d503087d89ae8;hb=e43afef7dd47763f55a18cff4bdbf1fd4ca4e201;hp=0e9a42286a1434ef6a8e3ea4f8c60356277c658e;hpb=077c4d770eaa919ed9f4aef56375abe9ef50e55a;p=ldk-c-bindings diff --git a/c-bindings-gen/src/main.rs b/c-bindings-gen/src/main.rs index 0e9a422..f5a7656 100644 --- a/c-bindings-gen/src/main.rs +++ b/c-bindings-gen/src/main.rs @@ -849,7 +849,8 @@ fn writeln_struct<'a, 'b, W: std::io::Write>(w: &mut W, s: &'a syn::ItemStruct, write!(w, "\t}}").unwrap(); }, syn::Fields::Unnamed(fields) => { - assert!(s.generics.lt_token.is_none()); + assert!(!s.generics.params.iter() + .any(|gen| if let syn::GenericParam::Lifetime(_) = gen { false } else { true })); writeln!(w, "{} (", types.maybe_resolve_ident(&s.ident).unwrap()).unwrap(); for (idx, field) in fields.unnamed.iter().enumerate() { write!(w, "\t\t").unwrap(); @@ -1359,6 +1360,7 @@ fn writeln_impl(w: &mut W, w_uses: &mut HashSet continue, ExportStatus::NotImplementable => panic!("(C-not implementable) must only appear on traits"), } + if m.sig.asyncness.is_some() { continue; } let mut meth_gen_types = gen_types.push_ctx(); assert!(meth_gen_types.learn_generics(&m.sig.generics, types)); if m.defaultness.is_some() { unimplemented!(); }