make target argument optional for typescript inputs (undocumented)
[ldk-java] / java_strings.py
index 0a479de3c594402c97d5e780057ae58fa1ba8669..682169295aed2849375c7841d70b50e271fdc7fe 100644 (file)
@@ -1,12 +1,54 @@
 from bindingstypes import *
 
 class Consts:
-    def __init__(self, DEBUG):
+    def __init__(self, DEBUG: bool, **kwargs):
 
         self.c_type_map = dict(
-            byte = ['byte'],
+            uint8_t = ['byte'],
+            uint16_t = ['short'],
+            uint32_t = ['int'],
+            long = ['long'],
         )
 
+        self.to_hu_conv_templates = dict(
+            ptr = '{human_type} {var_name}_hu_conv = new {human_type}(null, {var_name});',
+            default = '{human_type} {var_name}_hu_conv = new {human_type}(null, {var_name});'
+        )
+
+        self.bindings_header = """package org.ldk.impl;
+import org.ldk.enums.*;
+
+public class bindings {
+       public static class VecOrSliceDef {
+               public long dataptr;
+               public long datalen;
+               public long stride;
+               public VecOrSliceDef(long dataptr, long datalen, long stride) {
+                       this.dataptr = dataptr; this.datalen = datalen; this.stride = stride;
+               }
+       }
+       static {
+               System.loadLibrary(\"lightningjni\");
+               init(java.lang.Enum.class, VecOrSliceDef.class);
+               init_class_cache();
+       }
+       static native void init(java.lang.Class c, java.lang.Class slicedef);
+       static native void init_class_cache();
+
+       public static native boolean deref_bool(long ptr);
+       public static native long deref_long(long ptr);
+       public static native void free_heap_ptr(long ptr);
+       public static native byte[] read_bytes(long ptr, long len);
+       public static native byte[] get_u8_slice_bytes(long slice_ptr);
+       public static native long bytes_to_u8_vec(byte[] bytes);
+       public static native long new_txpointer_copy_data(byte[] txdata);
+       public static native void txpointer_free(long ptr);
+       public static native byte[] txpointer_get_buffer(long ptr);
+       public static native long vec_slice_len(long vec);
+       public static native long new_empty_slice_vec();
+
+"""
+
         self.common_base = """package org.ldk.structs;
 import java.util.LinkedList;
 class CommonBase {