mirror of
https://github.com/loot/libloot.git
synced 2026-07-27 14:16:01 -07:00
Minor refactor of Language constructors
This commit is contained in:
@@ -39,23 +39,7 @@ const std::vector<LanguageCode> Language::codes({
|
||||
LanguageCode::korean
|
||||
});
|
||||
|
||||
Language::Language(LanguageCode code) {
|
||||
Construct(code);
|
||||
}
|
||||
|
||||
Language::Language(const std::string& locale) {
|
||||
for (LanguageCode code : codes) {
|
||||
if (locale == Language(code).GetLocale()) {
|
||||
Construct(code);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Construct(LanguageCode::english);
|
||||
}
|
||||
|
||||
void Language::Construct(const LanguageCode code) {
|
||||
code_ = code;
|
||||
Language::Language(LanguageCode code) : code_(code) {
|
||||
if (code_ == LanguageCode::spanish) {
|
||||
name_ = "Español";
|
||||
locale_ = "es";
|
||||
@@ -93,6 +77,18 @@ void Language::Construct(const LanguageCode code) {
|
||||
}
|
||||
}
|
||||
|
||||
Language::Language(const std::string& locale) : Language(GetCode(locale)) {}
|
||||
|
||||
LanguageCode Language::GetCode(const std::string& locale) {
|
||||
for (LanguageCode code : codes) {
|
||||
if (locale == Language(code).GetLocale()) {
|
||||
return code;
|
||||
}
|
||||
}
|
||||
|
||||
return LanguageCode::english;
|
||||
}
|
||||
|
||||
LanguageCode Language::GetCode() const {
|
||||
return code_;
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
std::string GetName() const;
|
||||
std::string GetLocale() const;
|
||||
private:
|
||||
void Construct(const LanguageCode code);
|
||||
static LanguageCode GetCode(const std::string& locale);
|
||||
|
||||
LanguageCode code_;
|
||||
std::string name_;
|
||||
|
||||
Reference in New Issue
Block a user