17 #ifndef ZNC_TRANSLATION_H 18 #define ZNC_TRANSLATION_H 21 #include <unordered_map> 41 const std::locale& LoadTranslation(
const CString& sDomain);
43 std::unordered_map<CString , std::locale>>
46 std::unordered_map<CString ,
int> m_miReferences;
68 : m_sDomain(sDomain), m_sContext(sContext), m_sEnglish(sEnglish) {}
80 : m_bTranslating(false), m_sText(sText) {}
83 : m_bTranslating(true), m_dTranslation(dTranslation) {}
85 return m_bTranslating ? m_dTranslation.Resolve() : m_sText;
103 const CString& sEnglishes,
int iNum,
COptionalTranslation(const CString &sText)
Definition: Translation.h:79
COptionalTranslation(const CDelayedTranslation &dTranslation)
Definition: Translation.h:82
void PushLanguage(const CString &sLanguage)
Definition: Translation.h:77
CString Resolve() const
Definition: Translation.h:84
void NewReference(const CString &sDomain)
Definition: Translation.h:63
Definition: Translation.h:54
std::vector< CString > VCString
Definition: ZNCString.h:38
String class that is used inside ZNC.
Definition: ZNCString.h:68
void DelReference(const CString &sDomain)
CString Plural(const CString &sDomain, const CString &sContext, const CString &sEnglish, const CString &sEnglishes, int iNum)
Definition: Translation.h:49
static CTranslation & Get()
CDelayedTranslation(const CString &sDomain, const CString &sContext, const CString &sEnglish)
Definition: Translation.h:66
Definition: Translation.h:25
CString Singular(const CString &sDomain, const CString &sContext, const CString &sEnglish)
COptionalTranslation(const char *s)
Definition: Translation.h:81
Definition: Translation.h:97