org.python.core
Class PyLong

java.lang.Object
  extended byorg.python.core.PyObject
      extended byorg.python.core.PyLong
All Implemented Interfaces:
java.io.Serializable

public class PyLong
extends PyObject

A builtin python long. This is implemented as a java.math.BigInteger.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.python.core.PyObject
PyObject.ConversionException
 
Field Summary
static java.lang.String exposed_name
           
static java.math.BigInteger maxLong
           
static java.math.BigInteger maxULong
           
static java.math.BigInteger minLong
           
 
Constructor Summary
PyLong(java.math.BigInteger v)
           
PyLong(double v)
           
PyLong(long v)
           
PyLong(java.lang.String s)
           
 
Method Summary
 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.
 java.lang.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
 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 __int__()
          Equivalent to the standard Python __int__ method.
 PyObject __invert__()
          Equivalent to the standard Python __invert__ method.
 PyLong __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 __rand__(PyObject left)
          Equivalent to the standard Python __rand__ method
 PyObject __rdiv__(PyObject left)
          Equivalent to the standard Python __rdiv__ method
 PyObject __rdivmod__(PyObject left)
          Equivalent to the standard Python __rdivmod__ 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 __ror__(PyObject left)
          Equivalent to the standard Python __ror__ 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 __rxor__(PyObject left)
          Equivalent to the standard Python __rxor__ method
 PyString __str__()
          Equivalent to the standard Python __str__ method.
 PyObject __sub__(PyObject right)
          Equivalent to the standard Python __sub__ method
 java.lang.Object __tojava__(java.lang.Class c)
          Equivalent to the Jython __tojava__ method.
 PyObject __truediv__(PyObject right)
          Equivalent to the standard Python __truediv__ method
 PyObject __xor__(PyObject right)
          Equivalent to the standard Python __xor__ method
static PyObject _pow(java.math.BigInteger value, java.math.BigInteger y, PyObject modulo, PyObject left, PyObject right)
           
 long asLong(int index)
           
 double doubleValue()
           
 int hashCode()
           
 boolean isMappingType()
           
 boolean isSequenceType()
           
static PyObject long_new(PyObject new_, boolean init, PyType subtype, PyObject[] args, java.lang.String[] keywords)
           
 double scaledDoubleValue(int[] exp)
           
 java.lang.String toString()
           
static void typeSetup(PyObject dict, PyType.Newstyle marker)
           
 
Methods inherited from class org.python.core.PyObject
__call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __eq__, __findattr__, __findattr__, __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__, __repr__, __rlshift__, __rrshift__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _in, _is, _isnot, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asInt, asName, asString, asStringOrNull, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getDoc, getType, implementsDescrDelete, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isNumberType, noAttributeError, readonlyAttributeError, safeRepr
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

minLong

public static final java.math.BigInteger minLong

maxLong

public static final java.math.BigInteger maxLong

maxULong

public static final java.math.BigInteger maxULong

exposed_name

public static final java.lang.String exposed_name
See Also:
Constant Field Values
Constructor Detail

PyLong

public PyLong(java.math.BigInteger v)

PyLong

public PyLong(double v)

PyLong

public PyLong(long v)

PyLong

public PyLong(java.lang.String s)
Method Detail

typeSetup

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

long_new

public static PyObject long_new(PyObject new_,
                                boolean init,
                                PyType subtype,
                                PyObject[] args,
                                java.lang.String[] keywords)

toString

public java.lang.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

doubleValue

public double doubleValue()

scaledDoubleValue

public double scaledDoubleValue(int[] exp)

asLong

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

__tojava__

public java.lang.Object __tojava__(java.lang.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 < 0; 0 if this == o; +1 if this > o; -2 if no comparison is implemented

__coerce_ex__

public java.lang.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(java.math.BigInteger value,
                            java.math.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 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.

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

__str__

public PyString __str__()
Description copied from class: PyObject
Equivalent to the standard Python __str__ method. This method should not typically need to be overridden. The easiest way to configure the string representation of a PyObject is to override the standard Java toString method.

Overrides:
__str__ in class PyObject

isMappingType

public boolean isMappingType()
Overrides:
isMappingType in class PyObject

isSequenceType

public boolean isSequenceType()
Overrides:
isSequenceType in class PyObject


Jython homepage