1 package org.ldk.structs;
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
6 import java.util.Arrays;
7 import java.lang.ref.Reference;
8 import javax.annotation.Nullable;
10 public class Result_CVec_BlindedPathZNoneZ extends CommonBase {
11 private Result_CVec_BlindedPathZNoneZ(Object _dummy, long ptr) { super(ptr); }
12 protected void finalize() throws Throwable {
13 if (ptr != 0) { bindings.CResult_CVec_BlindedPathZNoneZ_free(ptr); } super.finalize();
16 protected void force_free() {
17 if (ptr != 0) { bindings.CResult_CVec_BlindedPathZNoneZ_free(ptr); ptr = 0; }
20 static Result_CVec_BlindedPathZNoneZ constr_from_ptr(long ptr) {
21 if (bindings.CResult_CVec_BlindedPathZNoneZ_is_ok(ptr)) {
22 return new Result_CVec_BlindedPathZNoneZ_OK(null, ptr);
24 return new Result_CVec_BlindedPathZNoneZ_Err(null, ptr);
27 public static final class Result_CVec_BlindedPathZNoneZ_OK extends Result_CVec_BlindedPathZNoneZ {
28 public final BlindedPath[] res;
29 private Result_CVec_BlindedPathZNoneZ_OK(Object _dummy, long ptr) {
31 long[] res = bindings.CResult_CVec_BlindedPathZNoneZ_get_ok(ptr);
32 int res_conv_13_len = res.length;
33 BlindedPath[] res_conv_13_arr = new BlindedPath[res_conv_13_len];
34 for (int n = 0; n < res_conv_13_len; n++) {
35 long res_conv_13 = res[n];
36 org.ldk.structs.BlindedPath res_conv_13_hu_conv = null; if (res_conv_13 < 0 || res_conv_13 > 4096) { res_conv_13_hu_conv = new org.ldk.structs.BlindedPath(null, res_conv_13); }
37 if (res_conv_13_hu_conv != null) { res_conv_13_hu_conv.ptrs_to.add(this); };
38 res_conv_13_arr[n] = res_conv_13_hu_conv;
40 this.res = res_conv_13_arr;
44 public static final class Result_CVec_BlindedPathZNoneZ_Err extends Result_CVec_BlindedPathZNoneZ {
45 private Result_CVec_BlindedPathZNoneZ_Err(Object _dummy, long ptr) {
51 * Creates a new CResult_CVec_BlindedPathZNoneZ in the success state.
53 public static Result_CVec_BlindedPathZNoneZ ok(BlindedPath[] o) {
54 long ret = bindings.CResult_CVec_BlindedPathZNoneZ_ok(o != null ? Arrays.stream(o).mapToLong(o_conv_13 -> o_conv_13.ptr).toArray() : null);
55 Reference.reachabilityFence(o);
56 if (ret >= 0 && ret <= 4096) { return null; }
57 Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
58 for (BlindedPath o_conv_13: o) { if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.add(o_conv_13); }; };
63 * Creates a new CResult_CVec_BlindedPathZNoneZ in the error state.
65 public static Result_CVec_BlindedPathZNoneZ err() {
66 long ret = bindings.CResult_CVec_BlindedPathZNoneZ_err();
67 if (ret >= 0 && ret <= 4096) { return null; }
68 Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);
73 * Checks if the given object is currently in the success state
75 public boolean is_ok() {
76 boolean ret = bindings.CResult_CVec_BlindedPathZNoneZ_is_ok(this.ptr);
77 Reference.reachabilityFence(this);
82 long ret = bindings.CResult_CVec_BlindedPathZNoneZ_clone_ptr(this.ptr);
83 Reference.reachabilityFence(this);
88 * Creates a new CResult_CVec_BlindedPathZNoneZ which has the same data as `orig`
89 * but with all dynamically-allocated buffers duplicated in new buffers.
91 public Result_CVec_BlindedPathZNoneZ clone() {
92 long ret = bindings.CResult_CVec_BlindedPathZNoneZ_clone(this.ptr);
93 Reference.reachabilityFence(this);
94 if (ret >= 0 && ret <= 4096) { return null; }
95 Result_CVec_BlindedPathZNoneZ ret_hu_conv = Result_CVec_BlindedPathZNoneZ.constr_from_ptr(ret);