func (p VersionPtrs) Sort() {
	if len(p) < thresholdForResidualSort {
		sort.Sort(p)
		return
	}

	buf := versionPointerBuffer.Get().(*[]*Version)
	tmp := *buf
	p.multikeyRadixSort(tmp, 0)
	for i := range tmp {
		tmp[i] = nil
	}
	versionPointerBuffer.Put(buf)
}
// Sort reorders the pointers so that the Versions appear in ascending order.
//
// For that it will use optimized algorithms usually less time-complex than
// the generic ones found in package 'Sort'.
// Specifically, variants of radix sort expected to run in O(n).
//
// Allocates a copy of VersionPtrs.
Sort reorders the pointers so that the Versions appear in ascending order.

For that it will use optimized algorithms usually less time-complex than
the generic ones found in package 'Sort'.
Specifically, variants of radix sort expected to run in O(n).

Allocates a copy of VersionPtrs.
// Sort reorders the pointers so that the Versions appear in ascending order . // // For that it will use optimized algorithms usually less time - complex than // the generic ones found in package ' Sort ' . // Specifically variants of radix sort expected to run in O ( n ) . // // Allocates a copy of VersionPtrs .
func (p VersionPtrs) Sort() {
	if len(p) < thresholdForResidualSort {
		sort.Sort(p)
		return
	}
	buf := versionPointerBuffer.Get().(*[]*Version)
	tmp := *buf
	p.multikeyRadixSort(tmp, 0)
	for i := range tmp {
		tmp[i] = nil
	}
	versionPointerBuffer.Put(buf)
}
func ( p VersionPtrs ) Sort ( ) { if len ( p ) < thresholdForResidualSort { sort . Sort ( p ) return } buf := versionPointerBuffer . Get ( ) . ( * [ ] * Version ) tmp := * buf p . multikeyRadixSort ( tmp , 0 ) for i := range tmp { tmp [ i ] = nil } versionPointerBuffer . Put ( buf ) }
Sort reorders the pointers so that the Versions appear in ascending order.
Sort reorders the pointers so that the Versions appear in ascending order .