Class PyOverridableNew

  extended by org.python.core.PyObject
      extended by org.python.core.PyBuiltinCallable
          extended by org.python.core.PyBuiltinMethod
              extended by org.python.core.PyNewWrapper
                  extended by org.python.core.PyOverridableNew
All Implemented Interfaces:
Serializable, Cloneable, org.python.expose.ExposeAsSuperclass

public abstract class PyOverridableNew
extends PyNewWrapper

A __new__ function that tells its subclasses to just init if __new__ is being called on the type the function was defined on. Otherwise, it just leaves initting up to the subtype otherwise.

See Also:
Serialized Form

Nested Class Summary
Nested classes/interfaces inherited from class org.python.core.PyBuiltinCallable
PyBuiltinCallable.DefaultInfo, PyBuiltinCallable.Info
Nested classes/interfaces inherited from class org.python.core.PyObject
Field Summary
Fields inherited from class org.python.core.PyNewWrapper
Fields inherited from class org.python.core.PyObject
Constructor Summary
Method Summary
abstract  PyObject createOfSubtype(PyType subtype)
          Called when new is invoked on a subtype of for_type.
abstract  PyObject createOfType(boolean init, PyObject[] args, String[] keywords)
          Called when new is invoked on the type the new was defined on.
 PyObject new_impl(boolean init, PyType subtype, PyObject[] args, String[] keywords)
Methods inherited from class org.python.core.PyNewWrapper
__call__, __call__, bind, getWrappedType, setWrappedType
Methods inherited from class org.python.core.PyBuiltinMethod
__cmp__, getSelf, hashCode, makeDescriptor
Methods inherited from class org.python.core.PyBuiltinCallable
fastGetName, getDoc, getModule, makeCall, setInfo, toString
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iter__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __sub__, __tojava__, __truediv__, __unicode__, __xor__, _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, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isMappingType, isNumberType, isSequenceType, noAttributeError, readonlyAttributeError, setDict, setType
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait

Constructor Detail


public PyOverridableNew()
Method Detail


public PyObject new_impl(boolean init,
                         PyType subtype,
                         PyObject[] args,
                         String[] keywords)
Specified by:
new_impl in class PyNewWrapper


public abstract PyObject createOfType(boolean init,
                                      PyObject[] args,
                                      String[] keywords)
Called when new is invoked on the type the new was defined on.

init - - if the new object should be initted.
args - - args passed to call
keywords - - keywords passed to call
- the new object.


public abstract PyObject createOfSubtype(PyType subtype)
Called when new is invoked on a subtype of for_type.

Jython homepage