feat(translator): translator interface
This commit is contained in:
22
internals/translator/translator.go
Normal file
22
internals/translator/translator.go
Normal file
@@ -0,0 +1,22 @@
|
||||
package translator
|
||||
|
||||
import "dislate/internals/lang"
|
||||
|
||||
type Translator interface {
|
||||
// Translate a text from a language to another language
|
||||
Translate(from, to lang.Language, text string) (string, error)
|
||||
// Detects the language of the text
|
||||
Detect(text string) (lang.Language, error)
|
||||
}
|
||||
|
||||
type MockTranslator struct{}
|
||||
|
||||
func NewMockTranslator() MockTranslator {
|
||||
return MockTranslator{}
|
||||
}
|
||||
func (t MockTranslator) Translate(from, to lang.Language, text string) (string, error) {
|
||||
return text, nil
|
||||
}
|
||||
func (t MockTranslator) Detect(text string) (lang.Language, error) {
|
||||
return lang.EN, nil
|
||||
}
|
||||
Reference in New Issue
Block a user