github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/resource/sort.go (about)

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the LGPLv3, see LICENCE file for details.
     3  
     4  package resource
     5  
     6  import (
     7  	"sort"
     8  )
     9  
    10  // Sort sorts the provided resources.
    11  func Sort(resources []Resource) {
    12  	sort.Sort(byName(resources))
    13  }
    14  
    15  type byName []Resource
    16  
    17  func (sorted byName) Len() int           { return len(sorted) }
    18  func (sorted byName) Swap(i, j int)      { sorted[i], sorted[j] = sorted[j], sorted[i] }
    19  func (sorted byName) Less(i, j int) bool { return sorted[i].Name < sorted[j].Name }