Repository navigation
Expand file tree
/
Copy pathSupportedLanguage.cs
More file actions
60 lines (54 loc) · 2.21 KB
/
Copy pathSupportedLanguage.cs
File metadata and controls
60 lines (54 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System;
using System.Collections.Generic;
using System.Text;
namespace BotSharp.NLP
{
public class SupportedLanguage
{
public static readonly SupportedLanguage English = new SupportedLanguage("en");
public static readonly SupportedLanguage Russian = new SupportedLanguage("ru");
public static readonly SupportedLanguage German = new SupportedLanguage("de");
public static readonly SupportedLanguage Portuguese = new SupportedLanguage("pt");
public static readonly SupportedLanguage PortugueseBrazil = new SupportedLanguage("pt-BR");
public static readonly SupportedLanguage Spanish = new SupportedLanguage("es");
public static readonly SupportedLanguage French = new SupportedLanguage("fr");
public static readonly SupportedLanguage Italian = new SupportedLanguage("it");
public static readonly SupportedLanguage Dutch = new SupportedLanguage("nl");
public static readonly SupportedLanguage Japanese = new SupportedLanguage("ja");
public static readonly SupportedLanguage ChineseChina = new SupportedLanguage("zh-CN");
public static readonly SupportedLanguage ChineseHongKong = new SupportedLanguage("zh-HK");
public static readonly SupportedLanguage ChineseTaiwan = new SupportedLanguage("zh-TW");
private static readonly SupportedLanguage[] AllLangs =
{
English,
Russian,
German,
Portuguese,
PortugueseBrazil,
Spanish,
French,
Italian,
Dutch,
Japanese,
ChineseChina,
ChineseHongKong,
ChineseTaiwan
};
public readonly string code;
private SupportedLanguage(string code)
{
this.code = code;
}
public static SupportedLanguage FromLanguageTag(string languageTag)
{
foreach (var item in AllLangs)
{
if (string.Equals(item.code, languageTag, StringComparison.OrdinalIgnoreCase))
{
return item;
}
}
return English;
}
}
}