github.com/rajveermalviya/gamen@v0.1.2-0.20220930195403-9be15877c1aa/internal/wayland/utils.go (about)

     1  //go:build linux && !android
     2  
     3  package wayland
     4  
     5  /*
     6  
     7  #include "wayland-util.h"
     8  
     9  */
    10  import "C"
    11  import "unsafe"
    12  
    13  func castWlArrayToSlice[T any](array *C.struct_wl_array) []T {
    14  	var out T
    15  	return unsafe.Slice((*T)(array.data), uintptr(array.size)/unsafe.Sizeof(out))
    16  }