docstr: ivy.Array instance method variant of ivy.take_along_axis. This
  method simply wraps the function, and so the docstring for
  ivy.take_along_axis also applies to this method with minimal changes.
  
  Parameters
  ----------
  self
      The source array.
  indices
      The indices of the values to extract.
  axis
      The axis over which to select values.
  mode
      One of: 'clip', 'fill', 'drop'. Parameter controlling how out-of-bounds
      indices will be handled.
  out
      Optional output, for writing the result to.
  
  Returns
  -------
  ret
      The returned array has the same shape as indices.
  
  Examples
  --------
  >>> arr = ivy.array([[4, 3, 5], [1, 2, 1]])
  >>> indices = ivy.array([[0, 1, 1], [2, 0, 0]])
  >>> y = arr.take_along_axis(indices, 1)
  >>> print(y)
  ivy.array([[4, 3, 3], [1, 1, 1]])
code: def take_along_axis(
      self: ivy.Array,
      indices: ivy.Array,
      axis: int,
      /,
      *,
      mode: str = "fill",
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """ivy.Array instance method variant of ivy.take_along_axis. This
      method simply wraps the function, and so the docstring for
      ivy.take_along_axis also applies to this method with minimal changes.
  
      Parameters
      ----------
      self
          The source array.
      indices
          The indices of the values to extract.
      axis
          The axis over which to select values.
      mode
          One of: 'clip', 'fill', 'drop'. Parameter controlling how out-of-bounds
          indices will be handled.
      out
          Optional output, for writing the result to.
  
      Returns
      -------
      ret
          The returned array has the same shape as indices.
  
      Examples
      --------
      >>> arr = ivy.array([[4, 3, 5], [1, 2, 1]])
      >>> indices = ivy.array([[0, 1, 1], [2, 0, 0]])
      >>> y = arr.take_along_axis(indices, 1)
      >>> print(y)
      ivy.array([[4, 3, 3], [1, 1, 1]])
      """
      return ivy.take_along_axis(
          self._data, indices, axis, mode=mode, out=out
      )
  
imports: import abc
  from typing import Optional, Union, Sequence, Tuple, List, Iterable, Callable, Literal, Any
  from numbers import Number
  import ivy
  from ivy import handle_view
label_desc: Use image node_id 18 for calling the _ArrayWithManipulationExperimental obj's underlying member method code with example usage: obj.take_along_axis() and returns: ivy