code: def while_loop(cond_fun, body_fun, init_val):
      if not (callable(body_fun) and callable(cond_fun)):
          raise ivy.exceptions.IvyException(
              "jax.lax.while_loop: Arguments body_fun and cond_fun should be callable."
          )
      val = init_val
      while cond_fun(val):
          val = body_fun(val)
      return val
  
file_path: ivy/ivy/functional/frontends/jax/lax/control_flow_operators.py
imports: import ivy
  from ivy.functional.frontends.jax.func_wrapper import to_ivy_arrays_and_back
label_desc: Use image node_id 6 for calling a global function with example usage: while_loop(cond_fun, body_fun, init_val) and returns: val