Class PyLong

All Implemented Interfaces:
Serializable
Direct Known Subclasses:
PyLongDerived

public class PyLong extends PyObject
A builtin python long. This is implemented as a java.math.BigInteger.
See Also:
  • Field Details

  • Constructor Details

    • PyLong

      public PyLong(PyType subType, BigInteger v)
    • PyLong

      public PyLong(BigInteger v)
    • PyLong

      public PyLong(double v)
    • PyLong

      public PyLong(long v)
    • PyLong

      public PyLong(String s)
  • Method Details

    • getValue

      public BigInteger getValue()
    • long___new__

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

      public PyObject getReal()
    • getImag

      public PyObject getImag()
    • getNumerator

      public PyObject getNumerator()
    • getDenominator

      public PyObject getDenominator()
    • 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
    • long___nonzero__

      public boolean long___nonzero__()
    • doubleValue

      public double doubleValue()
    • scaledDoubleValue

      public double scaledDoubleValue(int[] exp)
    • getLong

      public long getLong(long min, long max)
    • getLong

      public long getLong(long min, long max, String overflowMsg)
    • asLong

      public long asLong(int index)
      Overrides:
      asLong in class PyObject
    • asInt

      public int asInt(int index)
      Overrides:
      asInt in class PyObject
    • asInt

      public int asInt()
      Description copied from class: PyObject
      Convert this object into an int. Throws a PyException on failure.
      Overrides:
      asInt in class PyObject
      Returns:
      an int value
    • asLong

      public long asLong()
      Description copied from class: PyObject
      Convert this object into a long. Throws a PyException on failure.
      Overrides:
      asLong in class PyObject
      Returns:
      an long value
    • __tojava__

      public Object __tojava__(Class<?> c)
      Description copied from class: PyObject
      Equivalent to the Jython __tojava__ method. Tries to coerce this object to an instance of the requested Java class. Returns the special object Py.NoConversion if this PyObject can not be converted to the desired Java class.
      Overrides:
      __tojava__ in class PyObject
      Parameters:
      c - the Class to convert this PyObject to.
    • __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<o; 0 if this==o; +1 if this>o; -2 if no comparison is implemented
    • __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 coercion is not implemented Py.None if coercion was not 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(BigInteger value, BigInteger y, PyObject modulo, PyObject left, PyObject right)
    • __lshift__

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

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

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

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

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

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

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

      public PyObject __ror__(PyObject left)
      Description copied from class: PyObject
      Equivalent to the standard Python __ror__ method
      Overrides:
      __ror__ in class PyObject
      Parameters:
      left - the object to perform this binary operation with (the left-hand operand).
      Returns:
      the result of the or, or null if this operation is not defined.
    • __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.
    • __abs__

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

      public PyObject __invert__()
      Description copied from class: PyObject
      Equivalent to the standard Python __invert__ method.
      Overrides:
      __invert__ in class PyObject
      Returns:
      ~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 PyObject __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 or PyInteger 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.
    • __trunc__

      public PyObject __trunc__()
      Description copied from class: PyObject
      Equivalent to the standard Python __trunc__ method. Should only be overridden by numeric objects that can reasonably be truncated to an Integral.
      Overrides:
      __trunc__ in class PyObject
      Returns:
      the Integral closest to x between 0 and x.
    • conjugate

      public PyObject conjugate()
      Description copied from class: PyObject
      Equivalent to the standard Python conjugate method. Should only be overridden by numeric objects that can calculate a complex conjugate.
      Overrides:
      conjugate in class PyObject
      Returns:
      the complex conjugate.
    • __oct__

      public PyString __oct__()
      Description copied from class: PyObject
      Equivalent to the standard Python __oct__ method. Should only be overridden by numeric objects that can be reasonably represented as an octal string.
      Overrides:
      __oct__ in class PyObject
      Returns:
      a string representing this object as an octal number.
    • __hex__

      public PyString __hex__()
      Description copied from class: PyObject
      Equivalent to the standard Python __hex__ method Should only be overridden by numeric objects that can be reasonably represented as a hexadecimal string.
      Overrides:
      __hex__ in class PyObject
      Returns:
      a string representing this object as a hexadecimal number.
    • long___str__

      public PyString long___str__()
    • __str__

      public PyString __str__()
      Description copied from class: PyObject
      Equivalent to the standard Python __str__ method. The default implementation (in PyObject) calls PyObject.__repr__(), making it unnecessary to override __str__ in sub-classes of PyObject where both forms are the same. A common choice is to provide the same implementation to __str__ and toString, for consistency in the printed form of objects between Python and Java.
      Overrides:
      __str__ in class PyObject
    • __unicode__

      public PyUnicode __unicode__()
      Overrides:
      __unicode__ in class PyObject
    • __getnewargs__

      public PyTuple __getnewargs__()
      Overrides:
      __getnewargs__ in class PyObject
    • __index__

      public PyObject __index__()
      Description copied from class: PyObject
      Equivalent to the standard Python __index__ method.
      Overrides:
      __index__ in class PyObject
      Returns:
      a PyInteger or PyLong
    • bit_length

      public int bit_length()
      Description copied from class: PyObject
      Equivalent to the standard Python bit_length method. Should only be overridden by numeric objects that can calculate a bit_length.
      Overrides:
      bit_length in class PyObject
      Returns:
      the bit_length of this object.
    • __format__

      public PyObject __format__(PyObject formatSpec)
      Overrides:
      __format__ in class PyObject
    • isIndex

      public boolean isIndex()
      Description copied from class: PyObject
      Determine if this object can act as an index (implements __index__).
      Overrides:
      isIndex in class PyObject
      Returns:
      true if the object can act as an index
    • asIndex

      public int asIndex(PyObject err)
      Description copied from class: PyObject
      Convert this object into an index-sized integer. Throws a Python exception on Overflow if specified an exception type for err.
      Overrides:
      asIndex in class PyObject
      Parameters:
      err - the Python exception to raise on OverflowErrors
      Returns:
      an index-sized int
    • isMappingType

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

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

      public boolean isSequenceType()
      Overrides:
      isSequenceType in class PyObject