github.com/gorgonia/agogo@v0.1.1/game/komi/naughty.go (about) 1 package komi 2 3 import ( 4 "reflect" 5 "unsafe" 6 ) 7 8 func (z *zobrist) makeIterator() { 9 z.it = make([][]int32, z.size, z.size) 10 rowStride := 2 11 for i := range z.it { 12 start := i * rowStride 13 hdr := &reflect.SliceHeader{ 14 Data: uintptr(unsafe.Pointer(&z.table[start])), 15 Len: rowStride, 16 Cap: rowStride, 17 } 18 z.it[i] = *(*[]int32)(unsafe.Pointer(hdr)) 19 } 20 }