| package container |
| |
| import "sort" |
| |
| // History is a convenience type for storing a list of containers, |
| // sorted by creation date in descendant order. |
| type History []*Container |
| |
| // Len returns the number of containers in the history. |
| func (history *History) Len() int { |
| return len(*history) |
| } |
| |
| // Less compares two containers and returns true if the second one |
| // was created before the first one. |
| func (history *History) Less(i, j int) bool { |
| containers := *history |
| return containers[j].Created.Before(containers[i].Created) |
| } |
| |
| // Swap switches containers i and j positions in the history. |
| func (history *History) Swap(i, j int) { |
| containers := *history |
| containers[i], containers[j] = containers[j], containers[i] |
| } |
| |
| // sort orders the history by creation date in descendant order. |
| func (history *History) sort() { |
| sort.Sort(history) |
| } |