1 /*
2 * This file is part of gtkD.
3 *
4 * gtkD is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License
6 * as published by the Free Software Foundation; either version 3
7 * of the License, or (at your option) any later version, with
8 * some exceptions, please read the COPYING file.
9 *
10 * gtkD is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public License
16 * along with gtkD; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18 */19 20 // generated automatically - do not change21 // find conversion definition on APILookup.txt22 // implement new conversion functionalities on the wrap.utils pakage23 24 25 modulegio.NativeSocketAddress;
26 27 privateimportgio.SocketAddress;
28 privateimportgio.c.functions;
29 publicimportgio.c.types;
30 privateimportglib.ConstructionException;
31 privateimportgobject.ObjectG;
32 publicimportgtkc.giotypes;
33 34 35 /**
36 * A socket address of some unknown native type.
37 */38 publicclassNativeSocketAddress : SocketAddress39 {
40 /** the main Gtk struct */41 protectedGNativeSocketAddress* gNativeSocketAddress;
42 43 /** Get the main Gtk struct */44 publicGNativeSocketAddress* getNativeSocketAddressStruct(booltransferOwnership = false)
45 {
46 if (transferOwnership)
47 ownedRef = false;
48 returngNativeSocketAddress;
49 }
50 51 /** the main Gtk struct as a void* */52 protectedoverridevoid* getStruct()
53 {
54 returncast(void*)gNativeSocketAddress;
55 }
56 57 /**
58 * Sets our main struct and passes it to the parent class.
59 */60 publicthis (GNativeSocketAddress* gNativeSocketAddress, boolownedRef = false)
61 {
62 this.gNativeSocketAddress = gNativeSocketAddress;
63 super(cast(GSocketAddress*)gNativeSocketAddress, ownedRef);
64 }
65 66 67 /** */68 publicstaticGTypegetType()
69 {
70 returng_native_socket_address_get_type();
71 }
72 73 /**
74 * Creates a new #GNativeSocketAddress for @native and @len.
75 *
76 * Params:
77 * native = a native address object
78 * len = the length of @native, in bytes
79 *
80 * Returns: a new #GNativeSocketAddress
81 *
82 * Since: 2.46
83 *
84 * Throws: ConstructionException GTK+ fails to create the object.
85 */86 publicthis(void* native, size_tlen)
87 {
88 auto__p = g_native_socket_address_new(native, len);
89 90 if(__pisnull)
91 {
92 thrownewConstructionException("null returned by new");
93 }
94 95 this(cast(GNativeSocketAddress*) __p, true);
96 }
97 }