docstr: Compute the outer product between two arrays.
  
  Parameters
  ----------
  self : ivy.Array
      The first input array.
  x2 : ivy.Array or ivy.NativeArray
      The second input array.
  out : ivy.Array, optional
      Output array. If provided, it must have the same
      shape as the expected output.
  
  Returns
  -------
  ivy.Array
      The outer product of the two arrays.
  
  Examples
  --------
  >>> x = ivy.array([1, 2, 3])
  >>> y = ivy.array([4, 5])
  >>> z = x.outer(y)
  >>> print(z)
  ivy.array([[ 4,  5],
             [ 8, 10],
             [12, 15]])
docstr_tok: ["Compute","the","outer","product","between","two","arrays",".","Parameters","--","--","--","--","--","self",":","ivy.Array","The","first","input","array",".","x2",":","ivy.Array","or","ivy.NativeArray","The","second","input","array",".","out",":","ivy.Array",",","optional","Output","array",".","If","provided",",","it","must","have","the","same","shape","as","the","expected","output",".","Returns","--","--","--","-","ivy.Array","The","outer","product","of","the","two","arrays",".","Examples","--","--","--","--",">",">",">","x","=","ivy.array","(","[","1",",","2",",","3","]",")",">",">",">","y","=","ivy.array","(","[","4",",","5","]",")",">",">",">","z","=","x.outer","(","y",")",">",">",">","print","(","z",")","ivy.array","(","[","[","4",",","5","]",",","[","8",",","10","]",",","[","12",",","15","]","]",")"]
code: def outer(
      self: ivy.Array,
      x2: Union[ivy.Array, ivy.NativeArray],
      /,
      *,
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """Compute the outer product between two arrays.
  
      Parameters
      ----------
      self : ivy.Array
          The first input array.
      x2 : ivy.Array or ivy.NativeArray
          The second input array.
      out : ivy.Array, optional
          Output array. If provided, it must have the same
          shape as the expected output.
  
      Returns
      -------
      ivy.Array
          The outer product of the two arrays.
  
      Examples
      --------
      >>> x = ivy.array([1, 2, 3])
      >>> y = ivy.array([4, 5])
      >>> z = x.outer(y)
      >>> print(z)
      ivy.array([[ 4,  5],
                 [ 8, 10],
                 [12, 15]])
      """
      return ivy.outer(self._data, x2, out=out)
  
imports: import abc
  from typing import Union, Optional, Literal, Tuple, List, Sequence
  import ivy
label_desc: Use image node_id 16 for calling the _ArrayWithLinearAlgebra obj's underlying member method code with example usage: obj.outer() and returns: ivy