26 lines
		
	
	
		
			513 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			513 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package whisper
 | |
| 
 | |
| import "sort"
 | |
| 
 | |
| type sortedKeys struct {
 | |
| 	k []int32
 | |
| }
 | |
| 
 | |
| func (self *sortedKeys) Len() int           { return len(self.k) }
 | |
| func (self *sortedKeys) Less(i, j int) bool { return self.k[i] < self.k[j] }
 | |
| func (self *sortedKeys) Swap(i, j int)      { self.k[i], self.k[j] = self.k[j], self.k[i] }
 | |
| 
 | |
| func sortKeys(m map[int32]Hash) []int32 {
 | |
| 	sorted := new(sortedKeys)
 | |
| 	sorted.k = make([]int32, len(m))
 | |
| 	i := 0
 | |
| 	for key, _ := range m {
 | |
| 		sorted.k[i] = key
 | |
| 		i++
 | |
| 	}
 | |
| 
 | |
| 	sort.Sort(sorted)
 | |
| 
 | |
| 	return sorted.k
 | |
| }
 |