docstr: ivy.Container instance method variant of ivy.expand_dims. This
  method simply wraps the function, and so the docstring for
  ivy.expand_dims also applies to this method with minimal changes.
  
  Parameters
  ----------
  self
      input container.
  copy
      boolean indicating whether or not to copy the input array.
      If True, the function must always copy.
      If False, the function must never copy and must
      raise a ValueError in case a copy would be necessary.
      If None, the function must reuse existing memory buffer if possible
      and copy otherwise. Default: ``None``.
  axis
      position where a new axis (dimension) of size one will be added. If an
      element of the container has the rank of ``N``, the ``axis`` needs to
      be between ``[-N-1, N]``. Default: ``0``.
  out
      optional output container, for writing the result to. It must have a shape
      that the inputs broadcast to.
  
  Returns
  -------
  ret
      A container with the elements of ``self``, but with the dimensions of
      its elements added by one in a given ``axis``.
  
  Examples
  --------
  >>> x = ivy.Container(a=ivy.array([[0., 1.],
  ...                                [2., 3.]]),
  ...                   b=ivy.array([[4., 5.],
  ...                                [6., 7.]]))
  >>> y = x.expand_dims(axis=1)
  >>> print(y)
  {
      a: ivy.array([[[0., 1.]],
                    [[2., 3.]]]),
      b: ivy.array([[[4., 5.]],
                    [[6., 7.]]])
  }
code: def expand_dims(
      self: ivy.Container,
      /,
      *,
      copy: Optional[Union[bool, ivy.Container]] = None,
      axis: Union[int, Sequence[int], ivy.Container] = 0,
      key_chains: Optional[
          Union[List[str], Dict[str, str], ivy.Container]
      ] = None,
      to_apply: Union[bool, ivy.Container] = True,
      prune_unapplied: Union[bool, ivy.Container] = False,
      map_sequences: Union[bool, ivy.Container] = False,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """ivy.Container instance method variant of ivy.expand_dims. This
      method simply wraps the function, and so the docstring for
      ivy.expand_dims also applies to this method with minimal changes.
  
      Parameters
      ----------
      self
          input container.
      copy
          boolean indicating whether or not to copy the input array.
          If True, the function must always copy.
          If False, the function must never copy and must
          raise a ValueError in case a copy would be necessary.
          If None, the function must reuse existing memory buffer if possible
          and copy otherwise. Default: ``None``.
      axis
          position where a new axis (dimension) of size one will be added. If an
          element of the container has the rank of ``N``, the ``axis`` needs to
          be between ``[-N-1, N]``. Default: ``0``.
      out
          optional output container, for writing the result to. It must have a shape
          that the inputs broadcast to.
  
      Returns
      -------
      ret
          A container with the elements of ``self``, but with the dimensions of
          its elements added by one in a given ``axis``.
  
      Examples
      --------
      >>> x = ivy.Container(a=ivy.array([[0., 1.],
      ...                                [2., 3.]]),
      ...                   b=ivy.array([[4., 5.],
      ...                                [6., 7.]]))
      >>> y = x.expand_dims(axis=1)
      >>> print(y)
      {
          a: ivy.array([[[0., 1.]],
                        [[2., 3.]]]),
          b: ivy.array([[[4., 5.]],
                        [[6., 7.]]])
      }
      """
      return self._static_expand_dims(
          self,
          copy=copy,
          axis=axis,
          key_chains=key_chains,
          to_apply=to_apply,
          prune_unapplied=prune_unapplied,
          map_sequences=map_sequences,
          out=out,
      )
  
imports: from typing import Optional, Union, List, Tuple, Dict, Iterable, Sequence
  from numbers import Number
  import ivy
  from ivy.data_classes.container.base import ContainerBase
label_desc: Use image node_id 4 for calling the _ContainerWithManipulation obj's underlying member method code with example usage: obj.expand_dims() and returns: self