1// Package glib was automatically generated by github.com/bnema/puregotk DO NOT EDIT
2package glib
3
4import (
5 "github.com/ebitengine/purego"
6
7 "github.com/bnema/puregotk/pkg/core"
8)
9
10var xHostnameIsAsciiEncoded func(string) bool
11
12// Tests if @hostname contains segments with an ASCII-compatible
13// encoding of an Internationalized Domain Name. If this returns
14// %TRUE, you should decode the hostname with g_hostname_to_unicode()
15// before displaying it to the user.
16//
17// Note that a hostname might contain a mix of encoded and unencoded
18// segments, and so it is possible for g_hostname_is_non_ascii() and
19// g_hostname_is_ascii_encoded() to both return %TRUE for a name.
20func HostnameIsAsciiEncoded(HostnameVar string) bool {
21
22 cret := xHostnameIsAsciiEncoded(HostnameVar)
23
24 return cret
25}
26
27var xHostnameIsIpAddress func(string) bool
28
29// Tests if @hostname is the string form of an IPv4 or IPv6 address.
30// (Eg, "192.168.0.1".)
31//
32// Since 2.66, IPv6 addresses with a zone-id are accepted (RFC6874).
33func HostnameIsIpAddress(HostnameVar string) bool {
34
35 cret := xHostnameIsIpAddress(HostnameVar)
36
37 return cret
38}
39
40var xHostnameIsNonAscii func(string) bool
41
42// Tests if @hostname contains Unicode characters. If this returns
43// %TRUE, you need to encode the hostname with g_hostname_to_ascii()
44// before using it in non-IDN-aware contexts.
45//
46// Note that a hostname might contain a mix of encoded and unencoded
47// segments, and so it is possible for g_hostname_is_non_ascii() and
48// g_hostname_is_ascii_encoded() to both return %TRUE for a name.
49func HostnameIsNonAscii(HostnameVar string) bool {
50
51 cret := xHostnameIsNonAscii(HostnameVar)
52
53 return cret
54}
55
56var xHostnameToAscii func(string) string
57
58// Converts @hostname to its canonical ASCII form; an ASCII-only
59// string containing no uppercase letters and not ending with a
60// trailing dot.
61func HostnameToAscii(HostnameVar string) string {
62
63 cret := xHostnameToAscii(HostnameVar)
64
65 return cret
66}
67
68var xHostnameToUnicode func(string) string
69
70// Converts @hostname to its canonical presentation form; a UTF-8
71// string in Unicode normalization form C, containing no uppercase
72// letters, no forbidden characters, and no ASCII-encoded segments,
73// and not ending with a trailing dot.
74//
75// Of course if @hostname is not an internationalized hostname, then
76// the canonical presentation form will be entirely ASCII.
77func HostnameToUnicode(HostnameVar string) string {
78
79 cret := xHostnameToUnicode(HostnameVar)
80
81 return cret
82}
83
84func init() {
85 core.SetPackageName("GLIB", "glib-2.0")
86 core.SetSharedLibraries("GLIB", []string{"libgobject-2.0.so.0", "libglib-2.0.so.0"})
87 var libs []uintptr
88 for _, libPath := range core.GetPaths("GLIB") {
89 lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
90 if err != nil {
91 panic(err)
92 }
93 libs = append(libs, lib)
94 }
95
96 core.PuregoSafeRegister(&xHostnameIsAsciiEncoded, libs, "g_hostname_is_ascii_encoded")
97 core.PuregoSafeRegister(&xHostnameIsIpAddress, libs, "g_hostname_is_ip_address")
98 core.PuregoSafeRegister(&xHostnameIsNonAscii, libs, "g_hostname_is_non_ascii")
99 core.PuregoSafeRegister(&xHostnameToAscii, libs, "g_hostname_to_ascii")
100 core.PuregoSafeRegister(&xHostnameToUnicode, libs, "g_hostname_to_unicode")
101
102}