Update auto-generated bindings
[ldk-java] / src / main / java / org / ldk / structs / Option_u64Z.java
1 package org.ldk.structs;
2
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
5 import org.ldk.util.*;
6 import java.util.Arrays;
7
8
9 /**
10  * An enum which can either contain a u64 or not
11  */
12 @SuppressWarnings("unchecked") // We correctly assign various generic arrays
13 public class Option_u64Z extends CommonBase {
14         private Option_u64Z(Object _dummy, long ptr) { super(ptr); }
15         @Override @SuppressWarnings("deprecation")
16         protected void finalize() throws Throwable {
17                 super.finalize();
18                 if (ptr != 0) { bindings.COption_u64Z_free(ptr); }
19         }
20         static Option_u64Z constr_from_ptr(long ptr) {
21                 bindings.LDKCOption_u64Z raw_val = bindings.LDKCOption_u64Z_ref_from_ptr(ptr);
22                 if (raw_val.getClass() == bindings.LDKCOption_u64Z.Some.class) {
23                         return new Some(ptr, (bindings.LDKCOption_u64Z.Some)raw_val);
24                 }
25                 if (raw_val.getClass() == bindings.LDKCOption_u64Z.None.class) {
26                         return new None(ptr, (bindings.LDKCOption_u64Z.None)raw_val);
27                 }
28                 assert false; return null; // Unreachable without extending the (internal) bindings interface
29         }
30
31         public final static class Some extends Option_u64Z {
32                 public final long some;
33                 private Some(long ptr, bindings.LDKCOption_u64Z.Some obj) {
34                         super(null, ptr);
35                         this.some = obj.some;
36                 }
37         }
38         public final static class None extends Option_u64Z {
39                 private None(long ptr, bindings.LDKCOption_u64Z.None obj) {
40                         super(null, ptr);
41                 }
42         }
43         /**
44          * Constructs a new COption_u64Z containing a u64
45          */
46         public static Option_u64Z constructor_some(long o) {
47                 long ret = bindings.COption_u64Z_some(o);
48                 Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret);
49                 ret_hu_conv.ptrs_to.add(ret_hu_conv);
50                 return ret_hu_conv;
51         }
52
53         /**
54          * Constructs a new COption_u64Z containing nothing
55          */
56         public static Option_u64Z constructor_none() {
57                 long ret = bindings.COption_u64Z_none();
58                 Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret);
59                 ret_hu_conv.ptrs_to.add(ret_hu_conv);
60                 return ret_hu_conv;
61         }
62
63         /**
64          * Creates a new COption_u64Z which has the same data as `orig`
65          * but with all dynamically-allocated buffers duplicated in new buffers.
66          */
67         public Option_u64Z clone() {
68                 long ret = bindings.COption_u64Z_clone(this.ptr);
69                 Option_u64Z ret_hu_conv = Option_u64Z.constr_from_ptr(ret);
70                 ret_hu_conv.ptrs_to.add(this);
71                 return ret_hu_conv;
72         }
73
74 }