// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://docs.gtk.org/gio/iface.DtlsServerConnection.html).
pub type DtlsServerConnection
///|
pub(open) trait IDtlsServerConnection {
fn as_dtls_server_connection(Self) -> DtlsServerConnection
}
///|
pub impl IDtlsServerConnection for DtlsServerConnection with fn as_dtls_server_connection(
self,
) {
self
}
///|
#borrow(base_socket, certificate, error)
extern "c" fn moonbit_g_dtls_server_connection_new(
base_socket : DatagramBased,
certificate : @glib.Nullable[TlsCertificate],
error : Ref[@glib.Nullable[@glib.Error_]],
) -> DtlsServerConnection = "moonbit_g_dtls_server_connection_new"
///|
/// [Upstream documentation](https://docs.gtk.org/gio/type_func.DtlsServerConnection.new.html).
pub fn DtlsServerConnection::new(
base_socket : &IDatagramBased,
certificate : &ITlsCertificate?,
) -> DtlsServerConnection raise @glib.Error_ {
let error_ : Ref[@glib.Nullable[@glib.Error_]] = Ref(@glib.Nullable::null())
let result = moonbit_g_dtls_server_connection_new(
base_socket.as_datagram_based(),
match certificate {
Some(v) => @glib.Nullable::some(v.as_tls_certificate())
None => @glib.Nullable::null()
},
error_,
)
match error_.val.to_option() {
Some(e) => raise e
None => result
}
}
///|
pub fn DtlsServerConnection::as_datagram_based(
self : DtlsServerConnection,
) -> DatagramBased = "%identity"
///|
pub impl IDatagramBased for DtlsServerConnection with fn as_datagram_based(self) {
self.as_datagram_based()
}
///|
pub fn DtlsServerConnection::as_dtls_connection(
self : DtlsServerConnection,
) -> DtlsConnection = "%identity"
///|
pub impl IDtlsConnection for DtlsServerConnection with fn as_dtls_connection(
self,
) {
self.as_dtls_connection()
}