Una caja de unión en general es la caja rectangular más pequeña que contendrá un objeto. No puedo hablar sobre la función exacta de GeoHashArea en redis, pero dado que implica que tienen un propósito similar, si ambos representan un área geográfica, entonces GeoHashArea seguramente será una representación poligonal más detallada de un área que un simple rectángulo como geohashBoundingBox.
Para su segunda pregunta, presumiblemente, ya que las variables long_range
y lat_range
se pasan por referencia, existe la posibilidad de que
geohashEncode(&long_range, &lat_range, longitude, latitude, steps, &hash);
modifica su valor y así la función geohashGetCoordRange
se llama de nuevo en los diferentes valores.