]> git.bitcoin.ninja Git - ldk-java/blobdiff - typescript_strings.py
[TS] Don't null-check array conversions that aren't nullable
[ldk-java] / typescript_strings.py
index ce229cbee5e7881e581e9d8dda9c7f29fc305be3..92c734ac0f1eb912b8ca4087a884e7ca9e0aa4e7 100644 (file)
@@ -23,6 +23,7 @@ class Consts:
             uint32_t = ['number', 'number', 'Uint32Array'],
             int64_t = ['bigint', 'bigint', 'BigInt64Array'],
             uint64_t = ['bigint', 'bigint', 'BigUint64Array'],
+            double = ['number', 'number', 'Float64Array'],
         )
         self.java_type_map = dict(
             String = "number"
@@ -798,11 +799,14 @@ import * as bindings from '../bindings.mjs'
         else:
             return "FREE(" + arr_name + ")"
 
-    def map_hu_array_elems(self, arr_name, conv_name, arr_ty, elem_ty):
+    def map_hu_array_elems(self, arr_name, conv_name, arr_ty, elem_ty, is_nullable):
         if elem_ty.rust_obj == "LDKU5":
             return arr_name + " != null ? bindings.uint5ArrToBytes(" + arr_name + ") : null"
         assert elem_ty.c_ty == "uint64_t" or elem_ty.c_ty.endswith("Array") or elem_ty.rust_obj == "LDKStr"
-        return arr_name + " != null ? " + arr_name + ".map(" + conv_name + " => " + elem_ty.from_hu_conv[0] + ") : null"
+        if is_nullable:
+            return arr_name + " != null ? " + arr_name + ".map(" + conv_name + " => " + elem_ty.from_hu_conv[0] + ") : null"
+        else:
+            return arr_name + ".map(" + conv_name + " => " + elem_ty.from_hu_conv[0] + ")"
 
     def str_ref_to_native_call(self, var_name, str_len):
         return "str_ref_to_ts(" + var_name + ", " + str_len + ")"