Add ability to get the Java object underlying a _JCalls struct
[ldk-java] / genbindings.py
index 07de75e8edf56784477264a42e3c5d24f58bef5b..8c7e7378b0e1f41276ad3f125f753cf8ced1acff 100755 (executable)
@@ -446,6 +446,10 @@ with open(sys.argv[1]) as in_h, open(sys.argv[2], "w") as out_java, open(sys.arg
         out_c.write("\treturn (long)res_ptr;\n")
         out_c.write("}\n")
 
+        out_java.write("\tpublic static native " + struct_name + " " + struct_name + "_get_obj_from_jcalls(long val);\n")
+        out_c.write("JNIEXPORT jobject JNICALL Java_org_ldk_impl_bindings_" + struct_name.replace("_", "_1") + "_1get_1obj_1from_1jcalls (JNIEnv * env, jclass _a, jlong val) {\n")
+        out_c.write("\treturn ((" + struct_name + "_JCalls*)val)->o;\n")
+        out_c.write("}\n")
 
 
     out_java.write("""package org.ldk.impl;