Converts a gpointer to a hash value.
It can be passed to HashTable.new as the hash_func parameter,
when using opaque pointers compared by pointer value as keys in a
This hash function is also appropriate for keys that are integers
stored in pointers, such as GINT_TO_POINTER (n).
a gpointer key
a hash value corresponding to the key.