package main type versionItem struct { name string path string } func (v versionItem) Title() string { return v.name } func (v versionItem) Description() string { return v.path } func (v versionItem) FilterValue() string { return v.name } type menuItem struct { title string desc string } func (m menuItem) Title() string { return m.title } func (m menuItem) Description() string { return m.desc } func (m menuItem) FilterValue() string { return m.title } type mirrorItem struct { url string } func (m mirrorItem) Title() string { return m.url } func (m mirrorItem) Description() string { return "" } func (m mirrorItem) FilterValue() string { return m.url }