Expose a 12-byte array instead of 10-byte as OnionV2 has changed
[ldk-c-bindings] / c-bindings-gen / src / types.rs
index cd537522505615082ae2e99edef5eca1fd4c142e..0b3aaf32ca6a3f2b74a50ff4788709eb667b2dcd 100644 (file)
@@ -415,6 +415,11 @@ impl<'mod_lifetime, 'crate_lft: 'mod_lifetime> ImportResolver<'mod_lifetime, 'cr
                                        for module in super_mod.split("::") {
                                                path.push(syn::PathSegment { ident: syn::Ident::new(module, Span::call_site()), arguments: syn::PathArguments::None });
                                        }
+                               } else if partial_path == "" && format!("{}", $ident) == "self" {
+                                       new_path = format!("{}{}", module_path, $path_suffix);
+                                       for module in module_path.split("::") {
+                                               path.push(syn::PathSegment { ident: syn::Ident::new(module, Span::call_site()), arguments: syn::PathArguments::None });
+                                       }
                                } else if partial_path == "" && format!("{}", $ident) == "crate" {
                                        new_path = format!("{}{}", crate_name, $path_suffix);
                                        let crate_name_ident = format_ident!("{}", crate_name);
@@ -869,7 +874,7 @@ impl<'a, 'c: 'a> TypeResolver<'a, 'c> {
                        "[u8; 32]" if !is_ref => Some("crate::c_types::ThirtyTwoBytes"),
                        "[u8; 20]" if !is_ref => Some("crate::c_types::TwentyBytes"),
                        "[u8; 16]" if !is_ref => Some("crate::c_types::SixteenBytes"),
-                       "[u8; 10]" if !is_ref => Some("crate::c_types::TenBytes"),
+                       "[u8; 12]" if !is_ref => Some("crate::c_types::TwelveBytes"),
                        "[u8; 4]" if !is_ref => Some("crate::c_types::FourBytes"),
                        "[u8; 3]" if !is_ref => Some("crate::c_types::ThreeBytes"), // Used for RGB values
 
@@ -944,7 +949,7 @@ impl<'a, 'c: 'a> TypeResolver<'a, 'c> {
                        "[u8; 32]" if !is_ref => Some(""),
                        "[u8; 20]" if !is_ref => Some(""),
                        "[u8; 16]" if !is_ref => Some(""),
-                       "[u8; 10]" if !is_ref => Some(""),
+                       "[u8; 12]" if !is_ref => Some(""),
                        "[u8; 4]" if !is_ref => Some(""),
                        "[u8; 3]" if !is_ref => Some(""),
 
@@ -1026,7 +1031,7 @@ impl<'a, 'c: 'a> TypeResolver<'a, 'c> {
                        "[u8; 32]" if !is_ref => Some(".data"),
                        "[u8; 20]" if !is_ref => Some(".data"),
                        "[u8; 16]" if !is_ref => Some(".data"),
-                       "[u8; 10]" if !is_ref => Some(".data"),
+                       "[u8; 12]" if !is_ref => Some(".data"),
                        "[u8; 4]" if !is_ref => Some(".data"),
                        "[u8; 3]" if !is_ref => Some(".data"),
 
@@ -1110,7 +1115,7 @@ impl<'a, 'c: 'a> TypeResolver<'a, 'c> {
                        "[u8; 32]" if is_ref => Some(""),
                        "[u8; 20]" if !is_ref => Some("crate::c_types::TwentyBytes { data: "),
                        "[u8; 16]" if !is_ref => Some("crate::c_types::SixteenBytes { data: "),
-                       "[u8; 10]" if !is_ref => Some("crate::c_types::TenBytes { data: "),
+                       "[u8; 12]" if !is_ref => Some("crate::c_types::TwelveBytes { data: "),
                        "[u8; 4]" if !is_ref => Some("crate::c_types::FourBytes { data: "),
                        "[u8; 3]" if is_ref => Some(""),
 
@@ -1180,7 +1185,7 @@ impl<'a, 'c: 'a> TypeResolver<'a, 'c> {
                        "[u8; 32]" if is_ref => Some(""),
                        "[u8; 20]" if !is_ref => Some(" }"),
                        "[u8; 16]" if !is_ref => Some(" }"),
-                       "[u8; 10]" if !is_ref => Some(" }"),
+                       "[u8; 12]" if !is_ref => Some(" }"),
                        "[u8; 4]" if !is_ref => Some(" }"),
                        "[u8; 3]" if is_ref => Some(""),