mirror of
https://github.com/eeeXun/GTT.git
synced 2025-05-17 08:10:22 -07:00
GetSrcLang, GetDstLang, SetSrcLang, SetDstLang, SwapLang are reusable functions from translator to translator. So make Language struct. GetEngineName is also a reusable function. So make EngineName struct. Finally, let Translator to inherit those functions in these three (Language, TTSLock, EngineName) structs. No need to write the duplicated functions for each Translator.
31 lines
461 B
Go
31 lines
461 B
Go
package core
|
|
|
|
type Language struct {
|
|
srcLang string
|
|
dstLang string
|
|
}
|
|
|
|
func NewLanguage() *Language {
|
|
return &Language{}
|
|
}
|
|
|
|
func (l *Language) GetSrcLang() string {
|
|
return l.srcLang
|
|
}
|
|
|
|
func (l *Language) GetDstLang() string {
|
|
return l.dstLang
|
|
}
|
|
|
|
func (l *Language) SetSrcLang(lang string) {
|
|
l.srcLang = lang
|
|
}
|
|
|
|
func (l *Language) SetDstLang(lang string) {
|
|
l.dstLang = lang
|
|
}
|
|
|
|
func (l *Language) SwapLang() {
|
|
l.srcLang, l.dstLang = l.dstLang, l.srcLang
|
|
}
|