docstr: ivy.Array instance method variant of ivy.roll. This method simply
  wraps the function, and so the docstring for ivy.roll also applies to
  this method with minimal changes.
  
  Parameters
  ----------
  self
      input array.
  shift
      number of places by which the elements are shifted. If ``shift`` is a tuple,
      then ``axis`` must be a tuple of the same size, and each of the given axes
      must be shifted by the corresponding element in ``shift``. If ``shift`` is
      an ``int`` and ``axis`` a tuple, then the same ``shift`` must be used for
      all specified axes. If a shift is positive, then array elements must be
      shifted positively (toward larger indices) along the dimension of ``axis``.
      If a shift is negative, then array elements must be shifted negatively
      (toward smaller indices) along the dimension of ``axis``.
  axis
      axis (or axes) along which elements to shift. If ``axis`` is ``None``, the
      array must be flattened, shifted, and then restored to its original shape.
      Default ``None``.
  out
      optional output array, for writing the result to. It must have a shape that
      the inputs broadcast to.
  
  Returns
  -------
  ret
      an output array having the same data type as ``self`` and whose elements,
      relative to ``self``, are shifted.
  
  Examples
  --------
  >>> x = ivy.array([0., 1., 2.])
  >>> y = x.roll(1)
  >>> print(y)
  ivy.array([2., 0., 1.])
  
  >>> x = ivy.array([[0., 1., 2.],
  ...                [3., 4., 5.]])
  >>> y = x.roll(2, axis=-1)
  >>> print(y)
  ivy.array([[1., 2., 0.],
              [4., 5., 3.]])
docstr_tok: ["ivy.Array","instance","method","variant","of","ivy.roll",".","This","method","simply","wraps","the","function",",","and","so","the","docstring","for","ivy.roll","also","applies","to","this","method","with","minimal","changes",".","Parameters","--","--","--","--","--","self","input","array",".","shift","number","of","places","by","which","the","elements","are","shifted",".","If","``","shift","``","is","a","tuple",",","then","``","axis","``","must","be","a","tuple","of","the","same","size",",","and","each","of","the","given","axes","must","be","shifted","by","the","corresponding","element","in","``","shift","``",".","If","``","shift","``","is","an","``","int","``","and","``","axis","``","a","tuple",",","then","the","same","``","shift","``","must","be","used","for","all","specified","axes",".","If","a","shift","is","positive",",","then","array","elements","must","be","shifted","positively","(","toward","larger","indices",")","along","the","dimension","of","``","axis","``",".","If","a","shift","is","negative",",","then","array","elements","must","be","shifted","negatively","(","toward","smaller","indices",")","along","the","dimension","of","``","axis","``",".","axis","axis","(","or","axes",")","along","which","elements","to","shift",".","If","``","axis","``","is","``","None","``",",","the","array","must","be","flattened",",","shifted",",","and","then","restored","to","its","original","shape",".","Default","``","None","``",".","out","optional","output","array",",","for","writing","the","result","to",".","It","must","have","a","shape","that","the","inputs","broadcast","to",".","Returns","--","--","--","-","ret","an","output","array","having","the","same","data","type","as","``","self","``","and","whose","elements",",","relative","to","``","self","``",",","are","shifted",".","Examples","--","--","--","--",">",">",">","x","=","ivy.array","(","[","0.",",","1.",",","2",".","]",")",">",">",">","y","=","x.roll","(","1",")",">",">",">","print","(","y",")","ivy.array","(","[","2.",",","0.",",","1",".","]",")",">",">",">","x","=","ivy.array","(","[","[","0.",",","1.",",","2",".","]",",","...","[","3.",",","4.",",","5",".","]","]",")",">",">",">","y","=","x.roll","(","2",",","axis=-1",")",">",">",">","print","(","y",")","ivy.array","(","[","[","1.",",","2.",",","0",".","]",",","[","4.",",","5.",",","3",".","]","]",")"]
code: def roll(
      self: ivy.Array,
      /,
      shift: Union[int, Sequence[int]],
      *,
      axis: Optional[Union[int, Sequence[int]]] = None,
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """ivy.Array instance method variant of ivy.roll. This method simply
      wraps the function, and so the docstring for ivy.roll also applies to
      this method with minimal changes.
  
      Parameters
      ----------
      self
          input array.
      shift
          number of places by which the elements are shifted. If ``shift`` is a tuple,
          then ``axis`` must be a tuple of the same size, and each of the given axes
          must be shifted by the corresponding element in ``shift``. If ``shift`` is
          an ``int`` and ``axis`` a tuple, then the same ``shift`` must be used for
          all specified axes. If a shift is positive, then array elements must be
          shifted positively (toward larger indices) along the dimension of ``axis``.
          If a shift is negative, then array elements must be shifted negatively
          (toward smaller indices) along the dimension of ``axis``.
      axis
          axis (or axes) along which elements to shift. If ``axis`` is ``None``, the
          array must be flattened, shifted, and then restored to its original shape.
          Default ``None``.
      out
          optional output array, for writing the result to. It must have a shape that
          the inputs broadcast to.
  
      Returns
      -------
      ret
          an output array having the same data type as ``self`` and whose elements,
          relative to ``self``, are shifted.
  
      Examples
      --------
      >>> x = ivy.array([0., 1., 2.])
      >>> y = x.roll(1)
      >>> print(y)
      ivy.array([2., 0., 1.])
  
      >>> x = ivy.array([[0., 1., 2.],
      ...                [3., 4., 5.]])
      >>> y = x.roll(2, axis=-1)
      >>> print(y)
      ivy.array([[1., 2., 0.],
                  [4., 5., 3.]])
      """
      return ivy.roll(self._data, shift=shift, axis=axis, out=out)
  
imports: import abc
  from typing import Optional, Union, Tuple, List, Iterable, Sequence
  from numbers import Number
  import ivy
  from ivy import handle_view
label_desc: Use image node_id 7 for calling the _ArrayWithManipulation obj's underlying member method code with example usage: obj.roll(shift) and returns: ivy