Package org.python.core
Class PyMethodDescr
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.PyDescriptor
-
- org.python.core.PyMethodDescr
-
- All Implemented Interfaces:
java.io.Serializable
,PyBuiltinCallable.Info
,Traverseproc
- Direct Known Subclasses:
PyClassMethodDescr
public class PyMethodDescr extends PyDescriptor implements PyBuiltinCallable.Info, Traverseproc
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
-
Field Summary
-
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal, TYPE
-
-
Constructor Summary
Constructors Constructor Description PyMethodDescr(PyType t, PyBuiltinCallable func)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PyObject
__call__(PyObject[] args, java.lang.String[] kwargs)
The basic method to override when implementing a callable object.PyObject
__get__(PyObject obj, PyObject type)
Get descriptor for this PyObject.java.lang.String
getDoc()
int
getMaxargs()
int
getMinargs()
java.lang.String
getName()
Return the name this descriptor is exposed as.PyObject
getObjClass()
Return the owner class of this descriptor.boolean
refersDirectlyTo(PyObject ob)
Optional operation.java.lang.String
toString()
int
traverse(Visitproc visit, java.lang.Object arg)
Traverses all directly containedPyObject
s.PyException
unexpectedCall(int nargs, boolean keywords)
-
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__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __format__, __ge__, __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__, __trunc__, __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, bit_length, conjugate, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, hashCode, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, isMappingType, isNumberType, isSequenceType, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType
-
-
-
-
Constructor Detail
-
PyMethodDescr
public PyMethodDescr(PyType t, PyBuiltinCallable func)
-
-
Method Detail
-
getDoc
public java.lang.String getDoc()
-
getMaxargs
public int getMaxargs()
- Specified by:
getMaxargs
in interfacePyBuiltinCallable.Info
-
getMinargs
public int getMinargs()
- Specified by:
getMinargs
in interfacePyBuiltinCallable.Info
-
__call__
public PyObject __call__(PyObject[] args, java.lang.String[] kwargs)
Description copied from class:PyObject
The basic method to override when implementing a callable object. The first len(args)-len(keywords) members of args[] are plain arguments. The last len(keywords) arguments are the values of the keyword arguments.
-
unexpectedCall
public PyException unexpectedCall(int nargs, boolean keywords)
- Specified by:
unexpectedCall
in interfacePyBuiltinCallable.Info
-
__get__
public PyObject __get__(PyObject obj, PyObject type)
Description copied from class:PyObject
Get descriptor for this PyObject.- Overrides:
__get__
in classPyObject
- Parameters:
obj
- - the instance accessing this descriptor. Can be null if this is being accessed by a type.type
- - the type accessing this descriptor. Will be null if obj exists as obj is of the type accessing the descriptor.- Returns:
- - the object defined for this descriptor for the given obj and type.
-
getName
public java.lang.String getName()
Return the name this descriptor is exposed as.- Specified by:
getName
in interfacePyBuiltinCallable.Info
- Returns:
- a name String
-
getObjClass
public PyObject getObjClass()
Return the owner class of this descriptor.- Returns:
- this descriptor's owner
-
traverse
public int traverse(Visitproc visit, java.lang.Object arg)
Description copied from interface:Traverseproc
Traverses all directly containedPyObject
s. Like in CPython,arg
must be passed unmodified tovisit
as its second parameter. IfVisitproc.visit(PyObject, Object)
returns nonzero, this return value must be returned immediately by traverse.Visitproc.visit(PyObject, Object)
must not be called with anull
PyObject-argument.- Specified by:
traverse
in interfaceTraverseproc
- Overrides:
traverse
in classPyDescriptor
-
refersDirectlyTo
public boolean refersDirectlyTo(PyObject ob)
Description copied from interface:Traverseproc
Optional operation. Should only be implemented if it is more efficient than callingTraverseproc.traverse(Visitproc, Object)
with a visitproc that just watches out forob
. Must returnfalse
ifob
isnull
.- Specified by:
refersDirectlyTo
in interfaceTraverseproc
- Overrides:
refersDirectlyTo
in classPyDescriptor
-
-