+ /**
+ * Releases any [`OffersMessage`]s that need to be sent.
+ *
+ * Typically, this is used for messages initiating a payment flow rather than in response to
+ * another message. The latter should use the return value of [`Self::handle_message`].
+ */
+ public ThreeTuple_OffersMessageDestinationBlindedPathZ[] release_pending_messages() {
+ long ret = bindings.OffersMessageHandler_release_pending_messages(this.ptr);
+ GC.KeepAlive(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ int ret_conv_49_len = InternalUtils.getArrayLength(ret);
+ ThreeTuple_OffersMessageDestinationBlindedPathZ[] ret_conv_49_arr = new ThreeTuple_OffersMessageDestinationBlindedPathZ[ret_conv_49_len];
+ for (int x = 0; x < ret_conv_49_len; x++) {
+ long ret_conv_49 = InternalUtils.getU64ArrayElem(ret, x);
+ ThreeTuple_OffersMessageDestinationBlindedPathZ ret_conv_49_hu_conv = new ThreeTuple_OffersMessageDestinationBlindedPathZ(null, ret_conv_49);
+ if (ret_conv_49_hu_conv != null) { ret_conv_49_hu_conv.ptrs_to.AddLast(this); };
+ ret_conv_49_arr[x] = ret_conv_49_hu_conv;
+ }
+ bindings.free_buffer(ret);
+ return ret_conv_49_arr;
+ }
+