bindings updates
[ldk-java] / src / main / java / org / ldk / structs / Result_C2Tuple_SignatureCVec_SignatureZZNoneZ.java
index 8fbfa3861c0450243171ccbcbf25caeb8ca5c147..1a610732d5d46cc11d8aafd2ea64e52e0bd4516d 100644 (file)
@@ -9,7 +9,7 @@ import java.util.Arrays;
 public class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ extends CommonBase {
        private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ(Object _dummy, long ptr) { super(ptr); }
        protected void finalize() throws Throwable {
-               bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(ptr); super.finalize();
+               if (ptr != 0) { bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_free(ptr); } super.finalize();
        }
 
        static Result_C2Tuple_SignatureCVec_SignatureZZNoneZ constr_from_ptr(long ptr) {
@@ -20,22 +20,28 @@ public class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ extends CommonBase {
                }
        }
        public static final class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK extends Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
-               public TwoTuple<byte[], byte[][]> res;
+               public final TwoTuple<byte[], byte[][]> res;
                private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK(Object _dummy, long ptr) {
                        super(_dummy, ptr);
                        long res = bindings.LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_ok(ptr);
                        byte[] res_a = bindings.LDKC2Tuple_SignatureCVec_SignatureZZ_get_a(res);
                        byte[][] res_b = bindings.LDKC2Tuple_SignatureCVec_SignatureZZ_get_b(res);
-                       TwoTuple<byte[], byte[][]> res_conv = new TwoTuple<byte[], byte[][]>(res_a, res_b);
+                       TwoTuple<byte[], byte[][]> res_conv = new TwoTuple<byte[], byte[][]>(res_a, res_b, () -> {
+                               bindings.C2Tuple_SignatureCVec_SignatureZZ_free(res);
+                       });
                        this.res = res_conv;
                }
-
+               public Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_OK(TwoTuple<byte[], byte[][]> res) {
+                       this(null, bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_ok(bindings.C2Tuple_SignatureCVec_SignatureZZ_new(res.a, res.b)));
+               }
        }
+
        public static final class Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err extends Result_C2Tuple_SignatureCVec_SignatureZZNoneZ {
-               public byte err;
                private Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err(Object _dummy, long ptr) {
                        super(_dummy, ptr);
-                       this.err = bindings.LDKCResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_get_err(ptr);
+               }
+               public Result_C2Tuple_SignatureCVec_SignatureZZNoneZ_Err() {
+                       this(null, bindings.CResult_C2Tuple_SignatureCVec_SignatureZZNoneZ_err());
                }
        }
 }