MCPcopy Index your code
hub / github.com/google/codesearch / sortPost

Function sortPost

index/write.go:605–650  ·  view source on GitHub ↗
(post []postEntry)

Source from the content-addressed store, hash-verified

603var sortN [1 << sortK]int
604
605func sortPost(post []postEntry) {
606 if len(post) > len(sortTmp) {
607 sortTmp = make([]postEntry, len(post))
608 }
609 tmp := sortTmp[:len(post)]
610
611 const k = sortK
612 for i := range sortN {
613 sortN[i] = 0
614 }
615 for _, p := range post {
616 r := uintptr(p>>32) & (1<<k - 1)
617 sortN[r]++
618 }
619 tot := 0
620 for i, count := range sortN {
621 sortN[i] = tot
622 tot += count
623 }
624 for _, p := range post {
625 r := uintptr(p>>32) & (1<<k - 1)
626 o := sortN[r]
627 sortN[r]++
628 tmp[o] = p
629 }
630 tmp, post = post, tmp
631
632 for i := range sortN {
633 sortN[i] = 0
634 }
635 for _, p := range post {
636 r := uintptr(p>>(32+k)) & (1<<k - 1)
637 sortN[r]++
638 }
639 tot = 0
640 for i, count := range sortN {
641 sortN[i] = tot
642 tot += count
643 }
644 for _, p := range post {
645 r := uintptr(p>>(32+k)) & (1<<k - 1)
646 o := sortN[r]
647 sortN[r]++
648 tmp[o] = p
649 }
650}

Callers 2

flushPostMethod · 0.85
mergePostMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…