ProxyType (Jython API documentation)
Date: 2022-09-10

org.python.modules._weakref

## Class ProxyType

- java.lang.Object
- - org.python.core.PyObject
  - - org.python.modules._weakref.AbstractReference
    - - org.python.modules._weakref.ProxyType

- All Implemented Interfaces:
    java.io.Serializable, Traverseproc
  Direct Known Subclasses:
    CallableProxyType

      public class ProxyType
      extends AbstractReference

  A weak reference proxy object.
  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 and Description
    --- | ---
    `static PyType` | `TYPE`

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

      `gcMonitorGlobal`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProxyType(PyType subType, ReferenceBackend ref, PyObject callback)`
    `ProxyType(ReferenceBackend ref, PyObject callback)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `PyObject` | `__abs__()` Equivalent to the standard Python __abs__ method.
    `PyObject` | `__add__(PyObject o)` Equivalent to the standard Python __add__ method.
    `PyObject` | `__and__(PyObject o)` Equivalent to the standard Python __and__ method
    `PyComplex` | `__complex__()` Equivalent to the standard Python __complex__ method.
    `boolean` | `__contains__(PyObject o)` Equivalent to the standard Python __contains__ method.
    `void` | `__delattr__(java.lang.String name)` A variant of the __delattr__ method which accepts a String as the key.
    `void` | `__delitem__(PyObject key)` Equivalent to the standard Python __delitem__ method.
    `void` | `__delslice__(PyObject start, PyObject stop, PyObject step)`
    `PyObject` | `__div__(PyObject o)` Equivalent to the standard Python __div__ method
    `PyObject` | `__divmod__(PyObject o)` Equivalent to the standard Python __divmod__ method
    `PyObject` | `__findattr_ex__(java.lang.String name)` Attribute lookup hook.
    `PyObject` | `__finditem__(PyObject key)` Very similar to the standard Python __getitem__ method.
    `PyFloat` | `__float__()` Equivalent to the standard Python __float__ method.
    `PyObject` | `__floordiv__(PyObject o)` Equivalent to the standard Python __floordiv__ method
    `PyObject` | `__getslice__(PyObject start, PyObject stop, PyObject step)`
    `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` | `__iadd__(PyObject o)` Equivalent to the standard Python __iadd__ method.
    `PyObject` | `__iand__(PyObject o)` Equivalent to the standard Python __iand__ method
    `PyObject` | `__idiv__(PyObject o)` Equivalent to the standard Python __idiv__ method
    `PyObject` | `__ifloordiv__(PyObject o)` Equivalent to the standard Python __ifloordiv__ method
    `PyObject` | `__ilshift__(PyObject o)` Equivalent to the standard Python __ilshift__ method
    `PyObject` | `__imod__(PyObject o)` Equivalent to the standard Python __imod__ method
    `PyObject` | `__imul__(PyObject o)` Equivalent to the standard Python __imul__ method.
    `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` | `__ior__(PyObject o)` Equivalent to the standard Python __ior__ method
    `PyObject` | `__ipow__(PyObject o)` Equivalent to the standard Python __ipow__ method
    `PyObject` | `__irshift__(PyObject o)` Equivalent to the standard Python __irshift__ method
    `PyObject` | `__isub__(PyObject o)` Equivalent to the standard Python __isub__ method
    `PyObject` | `__iter__()` Return an iterator that is used to iterate the element of this sequence.
    `PyObject` | `__ixor__(PyObject o)` Equivalent to the standard Python __ixor__ method
    `int` | `__len__()` Equivalent to the standard Python __len__ method.
    `PyObject` | `__long__()` Equivalent to the standard Python __long__ method.
    `PyObject` | `__lshift__(PyObject o)` Equivalent to the standard Python __lshift__ method
    `PyObject` | `__mod__(PyObject o)` Equivalent to the standard Python __mod__ method
    `PyObject` | `__mul__(PyObject o)` 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 o)` Equivalent to the standard Python __or__ method
    `PyObject` | `__pos__()` Equivalent to the standard Python __pos__ method.
    `PyObject` | `__pow__(PyObject o)` Equivalent to the standard Python __pow__ method
    `PyObject` | `__radd__(PyObject o)` Equivalent to the standard Python __radd__ method.
    `PyObject` | `__rand__(PyObject o)` Equivalent to the standard Python __rand__ method
    `PyObject` | `__rdiv__(PyObject o)` Equivalent to the standard Python __rdiv__ method
    `PyObject` | `__rdivmod__(PyObject o)` Equivalent to the standard Python __rdivmod__ method
    `PyObject` | `__rlshift__(PyObject o)` Equivalent to the standard Python __rlshift__ method
    `PyObject` | `__rmod__(PyObject o)` Equivalent to the standard Python __rmod__ method
    `PyObject` | `__rmul__(PyObject o)` Equivalent to the standard Python __rmul__ method.
    `PyObject` | `__ror__(PyObject o)` Equivalent to the standard Python __ror__ method
    `PyObject` | `__rpow__(PyObject o)` Equivalent to the standard Python __rpow__ method
    `PyObject` | `__rrshift__(PyObject o)` Equivalent to the standard Python __rrshift__ method
    `PyObject` | `__rshift__(PyObject o)` Equivalent to the standard Python __rshift__ method
    `PyObject` | `__rsub__(PyObject o)` Equivalent to the standard Python __rsub__ method
    `PyObject` | `__rxor__(PyObject o)` Equivalent to the standard Python __rxor__ method
    `void` | `__setattr__(java.lang.String name, PyObject value)` A variant of the __setattr__ method which accepts a String as the key.
    `void` | `__setitem__(PyObject key, PyObject value)` Equivalent to the standard Python __setitem__ method.
    `void` | `__setslice__(PyObject start, PyObject stop, PyObject step, PyObject value)`
    `PyString` | `__str__()` Equivalent to the standard Python __str__ method.
    `PyObject` | `__sub__(PyObject o)` Equivalent to the standard Python __sub__ method
    `PyUnicode` | `__unicode__()`
    `PyObject` | `__xor__(PyObject o)` Equivalent to the standard Python __xor__ method

    - ### Methods inherited from class org.python.modules._weakref.AbstractReference

      `__eq__, __ne__, equals, hasCallback, hashCode, refersDirectlyTo, traverse`

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

      `__call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __delattr__, __delete__, __delitem__, __delslice__, __dir__, __ensure_finalizer__, __findattr__, __findattr__, __finditem__, __finditem__, __format__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __gt__, __hash__, __idivmod__, __iternext__, __itruediv__, __le__, __lt__, __not__, __pow__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rtruediv__, __set__, __setattr__, __setitem__, __setitem__, __setslice__, __tojava__, __truediv__, __trunc__, _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, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, bit_length, conjugate, delDict, delType, dispatch__init__, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, isMappingType, isNumberType, isSequenceType, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType, toString`

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

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

- - ### Field Detail

    - #### TYPE

          public static final PyType TYPE

  - ### Constructor Detail

    - #### ProxyType

          public ProxyType(PyType subType,
                           ReferenceBackend ref,
                           PyObject callback)

    - #### ProxyType

          public ProxyType(ReferenceBackend ref,
                           PyObject callback)

  - ### Method Detail

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

    - #### __len__

          public int __len__()

      Description copied from class: `PyObject`
      Equivalent to the standard Python __len__ method. Part of the mapping discipline.
      Overrides:
        `__len__` in class `PyObject`
      Returns:
        the length of the object

    - #### __finditem__

          public PyObject __finditem__(PyObject key)

      Description copied from class: `PyObject`
      Very similar to the standard Python __getitem__ method. Instead of throwing a KeyError if the item isn't found, this just returns null. Classes that wish to implement __getitem__ should override this method instead (with the appropriate semantics.
      Overrides:
        `__finditem__` in class `PyObject`
      Parameters:
        `key` - the key to lookup in this container
      Returns:
        the value corresponding to key or null if key is not found

    - #### __setitem__

          public void __setitem__(PyObject key,
                                  PyObject value)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __setitem__ method.
      Overrides:
        `__setitem__` in class `PyObject`
      Parameters:
        `key` - the key whose value will be set
        `value` - the value to set this key to

    - #### __delitem__

          public void __delitem__(PyObject key)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __delitem__ method.
      Overrides:
        `__delitem__` in class `PyObject`
      Parameters:
        `key` - the key to be removed from the container

    - #### __getslice__

          public PyObject __getslice__(PyObject start,
                                       PyObject stop,
                                       PyObject step)

      Overrides:
        `__getslice__` in class `PyObject`

    - #### __setslice__

          public void __setslice__(PyObject start,
                                   PyObject stop,
                                   PyObject step,
                                   PyObject value)

      Overrides:
        `__setslice__` in class `PyObject`

    - #### __delslice__

          public void __delslice__(PyObject start,
                                   PyObject stop,
                                   PyObject step)

      Overrides:
        `__delslice__` in class `PyObject`

    - #### __findattr_ex__

          public PyObject __findattr_ex__(java.lang.String name)

      Description copied from class: `PyObject`
      Attribute lookup hook. If the attribute is not found, null may be returned or a Py.AttributeError can be thrown, whatever is more correct, efficient and/or convenient for the implementing class. Client code should use `PyObject.__getattr__(String)` or `PyObject.__findattr__(String)`. Both methods have a clear policy for failed lookups.
      Overrides:
        `__findattr_ex__` in class `PyObject`
      Returns:
        The looked up value. May return null if the attribute is not found

    - #### __setattr__

          public void __setattr__(java.lang.String name,
                                  PyObject value)

      Description copied from class: `PyObject`
      A variant of the __setattr__ method which accepts a String as the key. This String must be interned.
      Overrides:
        `__setattr__` in class `PyObject`
      Parameters:
        `name` - the name whose value will be set - must be an interned string .
        `value` - the value to set this name to
      See Also:
        `PyObject.__setattr__(PyString, PyObject)`

    - #### __delattr__

          public void __delattr__(java.lang.String name)

      Description copied from class: `PyObject`
      A variant of the __delattr__ method which accepts a String as the key. This String must be interned. By default, this will call `__delattr__(PyString name)` with the appropriate args. The only reason to override this method is for performance.
      Overrides:
        `__delattr__` in class `PyObject`
      Parameters:
        `name` - the name which will be removed - must be an interned string .
      See Also:
        `PyObject.__delattr__(PyString)`

    - #### __iter__

          public PyObject __iter__()

      Description copied from class: `PyObject`
      Return an iterator that is used to iterate the element of this sequence. From version 2.2, this method is the primary protocol for looping over sequences.

      If a PyObject subclass should support iteration based in the __finditem__() method, it must supply an implementation of __iter__() like this:

           public PyObject __iter__() {
               return new PySequenceIter(this);
           }

      When iterating over a python sequence from java code, it should be done with code like this:

           for (PyObject item : seq.asIterable()) {
               // Do something with item
           }

      Overrides:
        `__iter__` in class `PyObject`

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

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

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

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

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

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

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

    - #### __pos__

          public PyObject __pos__()

      Description copied from class: `PyObject`
      Equivalent to the standard Python __pos__ method.
      Overrides:
        `__pos__` in class `PyObject`
      Returns:
        +this.

    - #### __neg__

          public PyObject __neg__()

      Description copied from class: `PyObject`
      Equivalent to the standard Python __neg__ method.
      Overrides:
        `__neg__` 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.

    - #### __contains__

          public boolean __contains__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __contains__ method.
      Overrides:
        `__contains__` in class `PyObject`
      Parameters:
        `o` - the element to search for in this container.
      Returns:
        the result of the search.

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

    - #### __add__

          public PyObject __add__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __add__ method.
      Overrides:
        `__add__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __radd__ method.
      Overrides:
        `__radd__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __iadd__

          public PyObject __iadd__(PyObject o)

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

    - #### __sub__

          public PyObject __sub__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __sub__ method
      Overrides:
        `__sub__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rsub__ method
      Overrides:
        `__rsub__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __isub__

          public PyObject __isub__(PyObject o)

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

    - #### __mul__

          public PyObject __mul__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __mul__ method.
      Overrides:
        `__mul__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rmul__ method.
      Overrides:
        `__rmul__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __imul__

          public PyObject __imul__(PyObject o)

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

    - #### __div__

          public PyObject __div__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __div__ method
      Overrides:
        `__div__` in class `PyObject`
      Parameters:
        `o` - 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

    - #### __floordiv__

          public PyObject __floordiv__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __floordiv__ method
      Overrides:
        `__floordiv__` in class `PyObject`
      Parameters:
        `o` - 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

    - #### __rdiv__

          public PyObject __rdiv__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rdiv__ method
      Overrides:
        `__rdiv__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __idiv__

          public PyObject __idiv__(PyObject o)

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

    - #### __ifloordiv__

          public PyObject __ifloordiv__(PyObject o)

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

    - #### __mod__

          public PyObject __mod__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __mod__ method
      Overrides:
        `__mod__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rmod__ method
      Overrides:
        `__rmod__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __imod__

          public PyObject __imod__(PyObject o)

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

    - #### __divmod__

          public PyObject __divmod__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __divmod__ method
      Overrides:
        `__divmod__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rdivmod__ method
      Overrides:
        `__rdivmod__` in class `PyObject`
      Parameters:
        `o` - 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 o)

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

    - #### __rpow__

          public PyObject __rpow__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rpow__ method
      Overrides:
        `__rpow__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __ipow__

          public PyObject __ipow__(PyObject o)

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

    - #### __lshift__

          public PyObject __lshift__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __lshift__ method
      Overrides:
        `__lshift__` in class `PyObject`
      Parameters:
        `o` - 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

    - #### __rlshift__

          public PyObject __rlshift__(PyObject o)

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

    - #### __ilshift__

          public PyObject __ilshift__(PyObject o)

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

    - #### __rshift__

          public PyObject __rshift__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rshift__ method
      Overrides:
        `__rshift__` in class `PyObject`
      Parameters:
        `o` - 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

    - #### __rrshift__

          public PyObject __rrshift__(PyObject o)

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

    - #### __irshift__

          public PyObject __irshift__(PyObject o)

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

    - #### __and__

          public PyObject __and__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __and__ method
      Overrides:
        `__and__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rand__ method
      Overrides:
        `__rand__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __iand__

          public PyObject __iand__(PyObject o)

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

    - #### __or__

          public PyObject __or__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __or__ method
      Overrides:
        `__or__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __ror__ method
      Overrides:
        `__ror__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __ior__

          public PyObject __ior__(PyObject o)

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

    - #### __xor__

          public PyObject __xor__(PyObject o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __xor__ method
      Overrides:
        `__xor__` in class `PyObject`
      Parameters:
        `o` - 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 o)

      Description copied from class: `PyObject`
      Equivalent to the standard Python __rxor__ method
      Overrides:
        `__rxor__` in class `PyObject`
      Parameters:
        `o` - 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.

    - #### __ixor__

          public PyObject __ixor__(PyObject o)

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

Jython homepage