1
0
mirror of https://github.com/directorz/mailfull-go.git synced 2025-12-18 01:57:04 +00:00

Implement sort.Interface to required struct slice

This commit is contained in:
teru
2016-07-31 13:41:07 +09:00
parent f3e8f83d5a
commit c9e692a68d
4 changed files with 28 additions and 0 deletions

View File

@@ -7,6 +7,13 @@ type User struct {
forwards []string
}
// UserSlice attaches the methods of sort.Interface to []*User.
type UserSlice []*User
func (p UserSlice) Len() int { return len(p) }
func (p UserSlice) Less(i, j int) bool { return p[i].Name() < p[j].Name() }
func (p UserSlice) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
// NewUser creates a new User instance.
func NewUser(name, hashedPassword string, forwards []string) (*User, error) {
if !validUserName(name) {