Properly convert 2D arrays in from_hu_conv
[ldk-java] / src / main / java / org / ldk / structs / Result_PublicKeySecpErrorZ.java
index 39dd8247d74defbf4e743130268d967de4e80806..15c27f432b95ae5ac358c9112f88a6915c1b5673 100644 (file)
@@ -9,22 +9,35 @@ import java.util.Arrays;
 public class Result_PublicKeySecpErrorZ extends CommonBase {
        private Result_PublicKeySecpErrorZ(Object _dummy, long ptr) { super(ptr); }
        protected void finalize() throws Throwable {
-               bindings.CResult_PublicKeySecpErrorZ_free(ptr); super.finalize();
+               if (ptr != 0) { bindings.CResult_PublicKeySecpErrorZ_free(ptr); } super.finalize();
        }
 
+       static Result_PublicKeySecpErrorZ constr_from_ptr(long ptr) {
+               if (bindings.LDKCResult_PublicKeySecpErrorZ_result_ok(ptr)) {
+                       return new Result_PublicKeySecpErrorZ_OK(null, ptr);
+               } else {
+                       return new Result_PublicKeySecpErrorZ_Err(null, ptr);
+               }
+       }
        public static final class Result_PublicKeySecpErrorZ_OK extends Result_PublicKeySecpErrorZ {
-               public byte[] res;
+               public final byte[] res;
                private Result_PublicKeySecpErrorZ_OK(Object _dummy, long ptr) {
                        super(_dummy, ptr);
                        this.res = bindings.LDKCResult_PublicKeySecpErrorZ_get_ok(ptr);
                }
-
+               public Result_PublicKeySecpErrorZ_OK(byte[] res) {
+                       this(null, bindings.CResult_PublicKeySecpErrorZ_ok(res));
+               }
        }
+
        public static final class Result_PublicKeySecpErrorZ_Err extends Result_PublicKeySecpErrorZ {
-               public LDKSecp256k1Error err;
+               public final LDKSecp256k1Error err;
                private Result_PublicKeySecpErrorZ_Err(Object _dummy, long ptr) {
                        super(_dummy, ptr);
                        this.err = bindings.LDKCResult_PublicKeySecpErrorZ_get_err(ptr);
                }
+               public Result_PublicKeySecpErrorZ_Err(LDKSecp256k1Error err) {
+                       this(null, bindings.CResult_PublicKeySecpErrorZ_err(err));
+               }
        }
 }