code: def hstack(tup):
      out_dtype = ivy.dtype(tup[0])
      for i in tup:
          out_dtype = ivy.as_ivy_dtype(
              np_frontend.promote_numpy_dtypes(i.dtype, out_dtype)
          )
      return ivy.hstack(tup)
  
file_path: ivy/ivy/functional/frontends/numpy/manipulation_routines/joining_arrays.py
imports: import ivy
  from ivy.functional.frontends.numpy.func_wrapper import to_ivy_arrays_and_back, handle_numpy_casting, handle_numpy_dtype, from_zero_dim_arrays_to_scalar, handle_numpy_out
  import ivy.functional.frontends.numpy
label_desc: Use image node_id 3 for calling a global function with example usage: hstack(tup) and returns: ivy