Я объявляю интерфейс в go
type comparable interface {
GetKey() float32
Compare(comparable) int
}
и реализую этот интерфейс, создав эту структуру
type Note struct {
id int
text string
priority float32
}
func (note Note) GetKey() float32 {
return note.priority
}
func (note Note) Compare(note2 Note) int {
if note.priority < note2.priority {
return -1
} else if note.priority > note2.priority {
return 1
} else {
return 0
}
}
Но когда я передаю объект заметки в функцию, которая принимает сопоставимый интерфейс в качестве параметра, я получаю ошибку «Неправильный тип для сравнения методов» .
Я что-то упускаю или делаю что-то не так? Пожалуйста, помогите
Заранее спасибо