blob: fa80b3f8e6266e75c111bc1c595c781203cc6719 [file] [log] [blame]
Bert Frees84f9dbf2017-11-12 22:38:01 +01001package main
2
3import (
4 "C"
5 "golang.org/x/text/language"
6 "golang.org/x/text/language/display"
7)
8
9//export DisplayLanguage
10func DisplayLanguage(lang_c *C.char) *C.char {
11 var lang string
12 var ret string
13 lang = C.GoString(lang_c)
14 switch (lang) {
15 case "bh":
16 ret = "Bihari";
17 break;
18 case "bn":
19 ret = "Bengali";
20 break;
21 case "ckb":
22 ret = "Kurdish";
23 break;
24 case "dra":
25 ret = "Dravidian";
26 break;
27 case "en-GB":
28 ret = "U.K. English";
29 break;
30 case "en-US":
31 ret = "U.S. English";
32 break;
33 case "eo-xsistemo":
34 ret = "Esperanto x-system";;
35 break;
36 case "gez":
37 ret = "Ethiopic";
38 break;
39 case "mun":
40 ret = "Munda";
41 break;
42 case "no":
43 ret = "Norwegian";
44 break;
45 case "or":
46 ret = "Oriya";
47 break;
48 default:
49 var namer display.Namer
50 namer = display.English.Languages()
51 ret = namer.Name(language.MustParse(lang))
52 }
53 return C.CString(ret)
54}
55
56//export NativeLanguage
57func NativeLanguage(lang_c *C.char) *C.char {
58 var lang string
59 var ret string
60 var namer display.Namer
61 lang = C.GoString(lang_c)
62 namer = display.Self
63 ret = namer.Name(language.MustParse(lang))
64 return C.CString(ret)
65}
66
67// main function required for interfacing with C
68func main() {}