Package org.python.core

# Class PyInteger

java.lang.Object
org.python.core.PyObject
org.python.core.PyInteger

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `DBApiType`, `PyBoolean`, `PyIntegerDerived`

public class PyInteger extends PyObject
A builtin python int.

See Also:
  - Serialized Form

## Nested Class Summary

## Nested classes/interfaces inherited from class org.python.core.PyObject

`PyObject.ConversionException`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final BigInteger`
`MAX_INT`
The maximum value of an int represented by a BigInteger
`static final BigInteger`
`maxInt`
Deprecated.
Use MAX_INT instead.
`static final BigInteger`
`MIN_INT`
The minimum value of an int represented by a BigInteger
`static final BigInteger`
`minInt`
Deprecated.
Use MIN_INT instead.
`static final PyType`
`TYPE`

### Fields inherited from class org.python.core.PyObject

`gcMonitorGlobal`

## Constructor Summary

Constructors
Constructor
Description
`PyInteger(int v)`
`PyInteger(PyType subType, int v)`

## Method Summary

Modifier and Type
Method
Description
`PyObject`
`__abs__()`
Equivalent to the standard Python __abs__ method.
`PyObject`
`__add__(PyObject right)`
Equivalent to the standard Python __add__ method.
`PyObject`
`__and__(PyObject right)`
Equivalent to the standard Python __and__ method
`int`
`__cmp__(PyObject other)`
Equivalent to the standard Python __cmp__ method.
`Object`
`__coerce_ex__(PyObject other)`
Implements numeric coercion
`PyComplex`
`__complex__()`
Equivalent to the standard Python __complex__ method.
`PyObject`
`__div__(PyObject right)`
Equivalent to the standard Python __div__ method
`PyObject`
`__divmod__(PyObject right)`
Equivalent to the standard Python __divmod__ method
`PyFloat`
`__float__()`
Equivalent to the standard Python __float__ method.
`PyObject`
`__floordiv__(PyObject right)`
Equivalent to the standard Python __floordiv__ method
`PyObject`
`__format__(PyObject formatSpec)`
`PyTuple`
`__getnewargs__()`
`PyString`
`__hex__()`
Equivalent to the standard Python __hex__ method Should only be overridden by numeric objects that can be reasonably represented as a hexadecimal string.
`PyObject`
`__index__()`
Equivalent to the standard Python __index__ method.
`PyObject`
`__int__()`
Equivalent to the standard Python __int__ method.
`PyObject`
`__invert__()`
Equivalent to the standard Python __invert__ method.
`PyObject`
`__long__()`
Equivalent to the standard Python __long__ method.
`PyObject`
`__lshift__(PyObject right)`
Equivalent to the standard Python __lshift__ method
`PyObject`
`__mod__(PyObject right)`
Equivalent to the standard Python __mod__ method
`PyObject`
`__mul__(PyObject right)`
Equivalent to the standard Python __mul__ method.
`PyObject`
`__neg__()`
Equivalent to the standard Python __neg__ method.
`boolean`
`__nonzero__()`
Equivalent to the standard Python __nonzero__ method.
`PyString`
`__oct__()`
Equivalent to the standard Python __oct__ method.
`PyObject`
`__or__(PyObject right)`
Equivalent to the standard Python __or__ method
`PyObject`
`__pos__()`
Equivalent to the standard Python __pos__ method.
`PyObject`
`__pow__(PyObject right, PyObject modulo)`
Implements the three argument power function.
`PyObject`
`__radd__(PyObject left)`
Equivalent to the standard Python __radd__ method.
`PyObject`
`__rdiv__(PyObject left)`
Equivalent to the standard Python __rdiv__ method
`PyObject`
`__rfloordiv__(PyObject left)`
Equivalent to the standard Python __rfloordiv__ method
`PyObject`
`__rmod__(PyObject left)`
Equivalent to the standard Python __rmod__ method
`PyObject`
`__rmul__(PyObject left)`
Equivalent to the standard Python __rmul__ method.
`PyObject`
`__rpow__(PyObject left)`
Equivalent to the standard Python __rpow__ method
`PyObject`
`__rshift__(PyObject right)`
Equivalent to the standard Python __rshift__ method
`PyObject`
`__rsub__(PyObject left)`
Equivalent to the standard Python __rsub__ method
`PyObject`
`__rtruediv__(PyObject left)`
Equivalent to the standard Python __rtruediv__ method
`PyObject`
`__sub__(PyObject right)`
Equivalent to the standard Python __sub__ method
`Object`
`__tojava__(Class<?> c)`
Equivalent to the Jython __tojava__ method.
`PyObject`
`__truediv__(PyObject right)`
Equivalent to the standard Python __truediv__ method
`PyObject`
`__trunc__()`
Equivalent to the standard Python __trunc__ method.
`PyObject`
`__xor__(PyObject right)`
Equivalent to the standard Python __xor__ method
`int`
`asIndex(PyObject err)`
Convert this object into an index-sized integer.
`int`
`asInt()`
Convert this object into an int.
`int`
`asInt(int index)`
`long`
`asLong()`
Convert this object into a long.
`long`
`asLong(int index)`
`int`
`bit_length()`
Equivalent to the standard Python bit_length method.
`PyObject`
`conjugate()`
Equivalent to the standard Python conjugate method.
`PyObject`
`getDenominator()`
`PyObject`
`getImag()`
`PyObject`
`getNumerator()`
`PyObject`
`getReal()`
`int`
`getValue()`
`int`
`hashCode()`
`static PyObject`
`int_new(PyNewWrapper new_, boolean init, PyType subtype, PyObject[] args, String[] keywords)`
`boolean`
`isIndex()`
Determine if this object can act as an index (implements __index__).
`boolean`
`isMappingType()`
`boolean`
`isNumberType()`
`boolean`
`isSequenceType()`
`String`
`toString()`

### Methods inherited from class org.python.core.PyObject

`__call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __ensure_finalizer__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getslice__, __getslice__, __gt__, __hash__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __ior__, __ipow__, __irshift__, __isub__, __iter__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __lt__, __ne__, __not__, __pow__, __rand__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rlshift__, __ror__, __rrshift__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __unicode__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asDouble, asIndex, asIterable, asName, asName, asString, asString, asStringOrNull, asStringOrNull, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isInteger, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### TYPE

public static final PyType TYPE

### MIN_INT

public static final BigInteger MIN_INT
The minimum value of an int represented by a BigInteger

### MAX_INT

public static final BigInteger MAX_INT
The maximum value of an int represented by a BigInteger

### minInt

@Deprecated public static final BigInteger minInt
Deprecated.
Use MIN_INT instead.

### maxInt

@Deprecated public static final BigInteger maxInt
Deprecated.
Use MAX_INT instead.

## Constructor Details

### PyInteger

public PyInteger(PyType subType, int v)

### PyInteger

public PyInteger(int v)

## Method Details

### int_new

public static PyObject int_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()

### getValue

public int getValue()

### 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`

### __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

### __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.

### __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

### __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

### __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

### __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.

### __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.

### __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.

### __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.

### __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`

### 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