[Java] Update auto-generated Java structs
[ldk-java] / src / main / java / org / ldk / structs / SocketDescriptor.java
index ae23786d56b45bcd74294782f2ece41db83d22d5..0c76a24546ffb6c098de565092adbb364f1d3137 100644 (file)
@@ -4,6 +4,7 @@ import org.ldk.impl.bindings;
 import org.ldk.enums.*;
 import org.ldk.util.*;
 import java.util.Arrays;
+import java.lang.ref.Reference;
 import javax.annotation.Nullable;
 
 /**
@@ -78,19 +79,23 @@ public class SocketDescriptor extends CommonBase {
                impl_holder.held = new SocketDescriptor(new bindings.LDKSocketDescriptor() {
                        @Override public long send_data(byte[] data, boolean resume_read) {
                                long ret = arg.send_data(data, resume_read);
+                               Reference.reachabilityFence(arg);
                                return ret;
                        }
                        @Override public void disconnect_socket() {
                                arg.disconnect_socket();
+                               Reference.reachabilityFence(arg);
                        }
                        @Override public boolean eq(long other_arg) {
                                SocketDescriptor ret_hu_conv = new SocketDescriptor(null, other_arg);
-                               ret_hu_conv.ptrs_to.add(this);
+                               if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.add(this); };
                                boolean ret = arg.eq(ret_hu_conv);
+                               Reference.reachabilityFence(arg);
                                return ret;
                        }
                        @Override public long hash() {
                                long ret = arg.hash();
+                               Reference.reachabilityFence(arg);
                                return ret;
                        }
                });
@@ -117,6 +122,9 @@ public class SocketDescriptor extends CommonBase {
         */
        public long send_data(byte[] data, boolean resume_read) {
                long ret = bindings.SocketDescriptor_send_data(this.ptr, data, resume_read);
+               Reference.reachabilityFence(this);
+               Reference.reachabilityFence(data);
+               Reference.reachabilityFence(resume_read);
                return ret;
        }
 
@@ -128,6 +136,7 @@ public class SocketDescriptor extends CommonBase {
         */
        public void disconnect_socket() {
                bindings.SocketDescriptor_disconnect_socket(this.ptr);
+               Reference.reachabilityFence(this);
        }
 
        /**
@@ -136,6 +145,16 @@ public class SocketDescriptor extends CommonBase {
         */
        public long hash() {
                long ret = bindings.SocketDescriptor_hash(this.ptr);
+               Reference.reachabilityFence(this);
+               return ret;
+       }
+
+       @Override public int hashCode() {
+               return (int)this.hash();
+       }
+       long clone_ptr() {
+               long ret = bindings.SocketDescriptor_clone_ptr(this.ptr);
+               Reference.reachabilityFence(this);
                return ret;
        }
 
@@ -144,9 +163,10 @@ public class SocketDescriptor extends CommonBase {
         */
        public SocketDescriptor clone() {
                long ret = bindings.SocketDescriptor_clone(this.ptr);
+               Reference.reachabilityFence(this);
                if (ret >= 0 && ret <= 4096) { return null; }
                SocketDescriptor ret_hu_conv = new SocketDescriptor(null, ret);
-               ret_hu_conv.ptrs_to.add(this);
+               if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.add(this); };
                return ret_hu_conv;
        }