- uint32_t res = bindings.LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(ptr);
- byte[] res_a = bindings.LDKC2Tuple_BlockHashChannelMonitorZ_get_a(res);
- uint32_t res_b = bindings.LDKC2Tuple_BlockHashChannelMonitorZ_get_b(res);
- ChannelMonitor res_b_hu_conv = new ChannelMonitor(null, res_b);;
- TwoTuple<byte[], ChannelMonitor> res_conv = new TwoTuple<byte[], ChannelMonitor>(res_a, res_b_hu_conv);
+ number res = bindings.LDKCResult_C2Tuple_BlockHashChannelMonitorZDecodeErrorZ_get_ok(ptr);
+ Uint8Array res_a = bindings.LDKC2Tuple_BlockHashChannelMonitorZ_get_a(res);
+ number res_b = bindings.LDKC2Tuple_BlockHashChannelMonitorZ_get_b(res);
+ const res_b_hu_conv: ChannelMonitor = new ChannelMonitor(null, res_b);
+ res_b_hu_conv.ptrs_to.add(this);;
+ TwoTuple<Uint8Array, ChannelMonitor> res_conv = new TwoTuple<Uint8Array, ChannelMonitor>(res_a, res_b_hu_conv, () -> {
+ bindings.C2Tuple_BlockHashChannelMonitorZ_free(res);
+ });
+ res_b_hu_conv.ptrs_to.add(res_conv);