2014-01-09 06:52:54 +01:00
|
|
|
// Copyright (c) 2013-2014 Conformal Systems LLC.
|
2013-07-18 16:49:28 +02:00
|
|
|
// Use of this source code is governed by an ISC
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
2015-01-30 21:54:30 +01:00
|
|
|
package blockchain
|
2013-07-18 16:49:28 +02:00
|
|
|
|
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
// timeSorter implements sort.Interface to allow a slice of timestamps to
|
|
|
|
// be sorted.
|
|
|
|
type timeSorter []time.Time
|
|
|
|
|
|
|
|
// Len returns the number of timestamps in the slice. It is part of the
|
|
|
|
// sort.Interface implementation.
|
|
|
|
func (s timeSorter) Len() int {
|
|
|
|
return len(s)
|
|
|
|
}
|
|
|
|
|
|
|
|
// Swap swaps the timestamps at the passed indices. It is part of the
|
|
|
|
// sort.Interface implementation.
|
|
|
|
func (s timeSorter) Swap(i, j int) {
|
|
|
|
s[i], s[j] = s[j], s[i]
|
|
|
|
}
|
|
|
|
|
|
|
|
// Less returns whether the timstamp with index i should sort before the
|
|
|
|
// timestamp with index j. It is part of the sort.Interface implementation.
|
|
|
|
func (s timeSorter) Less(i, j int) bool {
|
|
|
|
return s[i].Before(s[j])
|
|
|
|
}
|