Given a wrapper hashmap returning the list of keys, it receives a list of unsafe.Pointer from the internal hashmap, which it then needs to translate. This can be improved by constructing one array, and passing a callback into the internal hashmap's GetKeys to return one key at a time.