class_docstr: Base class for nested array objects.
class_docstr_tok: ["Base","class","for","nested","array","objects","."]
code: def ragged_multi_map_in_function(fn, *args, **kwargs):
      arg_nest_idxs = ivy.nested_argwhere(
          args, ivy.is_ivy_nested_array, to_ignore=ivy.NestedArray
      )
      kwarg_nest_idxs = ivy.nested_argwhere(
          kwargs, ivy.is_ivy_nested_array, to_ignore=ivy.NestedArray
      )
      # retrieve all the nested_array in args and kwargs
      arg_nest = ivy.multi_index_nest(args, arg_nest_idxs)
      kwarg_nest = ivy.multi_index_nest(kwargs, kwarg_nest_idxs)
      num_arg_nest, num_kwarg_nest = len(arg_nest), len(kwarg_nest)
      num_nest = num_arg_nest + num_kwarg_nest
      inspect_fn = fn
      if isinstance(fn, str):
          inspect_fn = ivy.__dict__[fn]
      nests = arg_nest + kwarg_nest
  
      def map_fn(vals):
          arg_vals = vals[:num_arg_nest]
          a = ivy.copy_nest(args, to_mutable=True)
          ivy.set_nest_at_indices(a, arg_nest_idxs, arg_vals)
          kwarg_vals = vals[num_arg_nest:]
          kw = ivy.copy_nest(kwargs, to_mutable=True)
          ivy.set_nest_at_indices(kw, kwarg_nest_idxs, kwarg_vals)
          return inspect_fn(*a, **kw)
  
      if num_nest == 0:
          raise ValueError(
              f"No RaggedArrays found in args or kwargs of function {fn}"
          )
      ret = ivy.NestedArray.ragged_multi_map(map_fn, nests)
      return ret
  
imports: import abc
  from typing import List, Tuple
  import ivy
label_desc: Use image node_id 3 for calling the NestedArrayBase obj's underlying member method code with example usage: obj.ragged_multi_map_in_function(fn) and returns: ret, inspect_fn