Class PyComplex

java.lang.Object
org.python.core.PyObject
org.python.core.PyComplex
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
PyComplexDerived

public class PyComplex extends PyObject
A builtin python complex number
See Also:
  • Field Details

    • real

      public double real
    • imag

      public double imag
    • exposed_name

      public static final String exposed_name
      See Also:
  • Constructor Details

    • PyComplex

      public PyComplex(PyType subtype, double r, double i)
    • PyComplex

      public PyComplex(double r, double i)
  • Method Details

    • typeSetup

      public static void typeSetup(PyObject dict, PyType.Newstyle marker)
    • complex_new

      public static PyObject complex_new(PyNewWrapper new_, boolean init, PyType subtype, PyObject[] args, String[] keywords)
    • safeRepr

      public String safeRepr() throws PyIgnoreMethodTag
      Overrides:
      safeRepr in class PyObject
      Throws:
      PyIgnoreMethodTag
    • getReal

      public final PyFloat getReal()
    • getImag

      public final PyFloat getImag()
    • toString

      public static String toString(double value)
    • toString

      public String toString()
      Overrides:
      toString in class PyObject
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class PyObject
    • __nonzero__

      public boolean __nonzero__()
      Description copied from class: PyObject
      Equivalent to the standard Python __nonzero__ method. Returns whether of not a given PyObject is considered true.
      Overrides:
      __nonzero__ in class PyObject
    • __cmp__

      public int __cmp__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __cmp__ method.
      Overrides:
      __cmp__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      -1 if this < 0; 0 if this == o; +1 if this > o; -2 if no comparison is implemented
    • __eq__

      public PyObject __eq__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __eq__ method.
      Overrides:
      __eq__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __ne__

      public PyObject __ne__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __ne__ method.
      Overrides:
      __ne__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __ge__

      public PyObject __ge__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __ge__ method.
      Overrides:
      __ge__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __gt__

      public PyObject __gt__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __gt__ method.
      Overrides:
      __gt__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __le__

      public PyObject __le__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __le__ method.
      Overrides:
      __le__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __lt__

      public PyObject __lt__(PyObject other)
      Description copied from class: PyObject
      Equivalent to the standard Python __lt__ method.
      Overrides:
      __lt__ in class PyObject
      Parameters:
      other - the object to compare this with.
      Returns:
      the result of the comparison.
    • __coerce_ex__

      public Object __coerce_ex__(PyObject other)
      Description copied from class: PyObject
      Implements numeric coercion
      Overrides:
      __coerce_ex__ in class PyObject
      Parameters:
      other - the other object involved in the coercion
      Returns:
      null if no coercion is possible; a single PyObject to use to replace o if this is unchanged; or a PyObject[2] consisting of replacements for this and o.
    • __add__

      public PyObject __add__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __add__ method
      Overrides:
      __add__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the add, or null if this operation is not defined
    • __radd__

      public PyObject __radd__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __radd__ method
      Overrides:
      __radd__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the add, or null if this operation is not defined.
    • __sub__

      public PyObject __sub__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __sub__ method
      Overrides:
      __sub__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the sub, or null if this operation is not defined
    • __rsub__

      public PyObject __rsub__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rsub__ method
      Overrides:
      __rsub__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the sub, or null if this operation is not defined.
    • __mul__

      public PyObject __mul__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __mul__ method
      Overrides:
      __mul__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the mul, or null if this operation is not defined
    • __rmul__

      public PyObject __rmul__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rmul__ method
      Overrides:
      __rmul__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the mul, or null if this operation is not defined.
    • __div__

      public PyObject __div__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __div__ method
      Overrides:
      __div__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the div, or null if this operation is not defined
    • __rdiv__

      public PyObject __rdiv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rdiv__ method
      Overrides:
      __rdiv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the div, or null if this operation is not defined.
    • __floordiv__

      public PyObject __floordiv__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __floordiv__ method
      Overrides:
      __floordiv__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the floordiv, or null if this operation is not defined
    • __rfloordiv__

      public PyObject __rfloordiv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rfloordiv__ method
      Overrides:
      __rfloordiv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the floordiv, or null if this operation is not defined.
    • __truediv__

      public PyObject __truediv__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __truediv__ method
      Overrides:
      __truediv__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the truediv, or null if this operation is not defined
    • __rtruediv__

      public PyObject __rtruediv__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rtruediv__ method
      Overrides:
      __rtruediv__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the truediv, or null if this operation is not defined.
    • __mod__

      public PyObject __mod__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __mod__ method
      Overrides:
      __mod__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the mod, or null if this operation is not defined
    • __rmod__

      public PyObject __rmod__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rmod__ method
      Overrides:
      __rmod__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the mod, or null if this operation is not defined.
    • __divmod__

      public PyObject __divmod__(PyObject right)
      Description copied from class: PyObject
      Equivalent to the standard Python __divmod__ method
      Overrides:
      __divmod__ in class PyObject
      Parameters:
      right - the object to perform this binary operation with (the right-hand operand).
      Returns:
      the result of the divmod, or null if this operation is not defined
    • __rdivmod__

      public PyObject __rdivmod__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rdivmod__ method
      Overrides:
      __rdivmod__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the divmod, or null if this operation is not defined.
    • __pow__

      public PyObject __pow__(PyObject right, PyObject modulo)
      Description copied from class: PyObject
      Implements the three argument power function.
      Overrides:
      __pow__ in class PyObject
      Parameters:
      right - the power to raise this number to.
      modulo - the modulus to perform this operation in or null if no modulo is to be used
      Returns:
      this object raised to the given power in the given modulus
    • __rpow__

      public PyObject __rpow__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __rpow__ method
      Overrides:
      __rpow__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the pow, or null if this operation is not defined.
    • _pow

      public static PyObject _pow(PyComplex value, PyComplex right)
    • __neg__

      public PyObject __neg__()
      Description copied from class: PyObject
      Equivalent to the standard Python __neg__ method.
      Overrides:
      __neg__ in class PyObject
      Returns:
      -this.
    • __pos__

      public PyObject __pos__()
      Description copied from class: PyObject
      Equivalent to the standard Python __pos__ method.
      Overrides:
      __pos__ in class PyObject
      Returns:
      +this.
    • __invert__

      public PyObject __invert__()
      Description copied from class: PyObject
      Equivalent to the standard Python __invert__ method.
      Overrides:
      __invert__ in class PyObject
      Returns:
      ~this.
    • __abs__

      public PyObject __abs__()
      Description copied from class: PyObject
      Equivalent to the standard Python __abs__ method.
      Overrides:
      __abs__ in class PyObject
      Returns:
      abs(this).
    • __int__

      public PyObject __int__()
      Description copied from class: PyObject
      Equivalent to the standard Python __int__ method. Should only be overridden by numeric objects that can be reasonably coerced into an integer.
      Overrides:
      __int__ in class PyObject
      Returns:
      an integer corresponding to the value of this object.
    • __long__

      public PyLong __long__()
      Description copied from class: PyObject
      Equivalent to the standard Python __long__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python long.
      Overrides:
      __long__ in class PyObject
      Returns:
      a PyLong corresponding to the value of this object.
    • __float__

      public PyFloat __float__()
      Description copied from class: PyObject
      Equivalent to the standard Python __float__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python float.
      Overrides:
      __float__ in class PyObject
      Returns:
      a float corresponding to the value of this object.
    • __complex__

      public PyComplex __complex__()
      Description copied from class: PyObject
      Equivalent to the standard Python __complex__ method. Should only be overridden by numeric objects that can be reasonably coerced into a python complex number.
      Overrides:
      __complex__ in class PyObject
      Returns:
      a complex number corresponding to the value of this object.
    • conjugate

      public PyComplex conjugate()
    • __reduce__

      public PyObject __reduce__()
      Used for pickling.
      Overrides:
      __reduce__ in class PyObject
      Returns:
      a tuple of (class, (Integer))
    • isMappingType

      public boolean isMappingType()
      Overrides:
      isMappingType in class PyObject
    • isSequenceType

      public boolean isSequenceType()
      Overrides:
      isSequenceType in class PyObject