org.python.core
Class PyBuiltinFunctionSet

java.lang.Object
  extended byorg.python.core.PyObject
      extended byorg.python.core.PyBuiltinFunction
          extended byorg.python.core.PyBuiltinFunctionSet
All Implemented Interfaces:
PyType.Newstyle, java.io.Serializable
Direct Known Subclasses:
PyBuiltinMethodSet

public class PyBuiltinFunctionSet
extends PyBuiltinFunction

A helper class for faster implementations of commonly called methods.

Subclasses of PyBuiltinFunctionSet will implement some or all of the __call__ method with a switch on the index number.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.python.core.PyBuiltinFunction
PyBuiltinFunction.DefaultInfo, PyBuiltinFunction.Info
 
Nested classes inherited from class org.python.core.PyObject
PyObject.ConversionException
 
Field Summary
static java.lang.Class exposed_as
           
 
Fields inherited from class org.python.core.PyBuiltinFunction
exposed_name
 
Constructor Summary
PyBuiltinFunctionSet(java.lang.String name, int index)
          Creates a PyBuiltinFunctionSet that expects 1 argument.
PyBuiltinFunctionSet(java.lang.String name, int index, int numargs)
           
PyBuiltinFunctionSet(java.lang.String name, int index, int minargs, int maxargs)
           
PyBuiltinFunctionSet(java.lang.String name, int index, int minargs, int maxargs, java.lang.String doc)
           
 
Method Summary
 PyObject __call__()
          A variant of the __call__ method with no arguments.
 PyObject __call__(PyObject arg1)
          A variant of the __call__ method with one argument.
 PyObject __call__(PyObject[] args)
          A variant of the __call__ method when no keywords are passed.
 PyObject __call__(PyObject[] args, java.lang.String[] kws)
          The basic method to override when implementing a callable object.
 PyObject __call__(PyObject arg1, PyObject arg2)
          A variant of the __call__ method with two arguments.
 PyObject __call__(PyObject arg1, PyObject arg2, PyObject arg3)
          A variant of the __call__ method with three arguments.
 PyObject __call__(PyObject arg1, PyObject arg2, PyObject arg3, PyObject arg4)
          A variant of the __call__ method with four arguments.
 PyObject fancyCall(PyObject[] args)
           
 PyObject fastGetDoc()
           
 boolean isMappingType()
           
 boolean isNumberType()
           
 boolean isSequenceType()
           
 java.lang.String toString()
           
 
Methods inherited from class org.python.core.PyBuiltinFunction
fastGetName, getSelf, makeCall, setInfo, typeSetup
 
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __findattr__, __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__, __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__, __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, _in, _is, _isnot, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asInt, asLong, asName, asString, asStringOrNull, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getDoc, getType, hashCode, implementsDescrDelete, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, noAttributeError, readonlyAttributeError, safeRepr, setDict, setType
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

exposed_as

public static final java.lang.Class exposed_as
Constructor Detail

PyBuiltinFunctionSet

public PyBuiltinFunctionSet(java.lang.String name,
                            int index)
Creates a PyBuiltinFunctionSet that expects 1 argument.


PyBuiltinFunctionSet

public PyBuiltinFunctionSet(java.lang.String name,
                            int index,
                            int numargs)

PyBuiltinFunctionSet

public PyBuiltinFunctionSet(java.lang.String name,
                            int index,
                            int minargs,
                            int maxargs)

PyBuiltinFunctionSet

public PyBuiltinFunctionSet(java.lang.String name,
                            int index,
                            int minargs,
                            int maxargs,
                            java.lang.String doc)
Method Detail

fastGetDoc

public PyObject fastGetDoc()
Overrides:
fastGetDoc in class PyBuiltinFunction

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

fancyCall

public PyObject fancyCall(PyObject[] args)

__call__

public PyObject __call__(PyObject[] args)
Description copied from class: PyObject
A variant of the __call__ method when no keywords are passed. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject
Parameters:
args - all arguments to the function.

__call__

public PyObject __call__(PyObject[] args,
                         java.lang.String[] kws)
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.

Overrides:
__call__ in class PyObject
Parameters:
args - all arguments to the function (including keyword arguments).
kws - the keywords used for all keyword arguments.

__call__

public PyObject __call__()
Description copied from class: PyObject
A variant of the __call__ method with no arguments. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject

__call__

public PyObject __call__(PyObject arg1)
Description copied from class: PyObject
A variant of the __call__ method with one argument. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject
Parameters:
arg1 - the single argument to the function.

__call__

public PyObject __call__(PyObject arg1,
                         PyObject arg2)
Description copied from class: PyObject
A variant of the __call__ method with two arguments. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject
Parameters:
arg1 - the first argument to the function.
arg2 - the second argument to the function.

__call__

public PyObject __call__(PyObject arg1,
                         PyObject arg2,
                         PyObject arg3)
Description copied from class: PyObject
A variant of the __call__ method with three arguments. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject
Parameters:
arg1 - the first argument to the function.
arg2 - the second argument to the function.
arg3 - the third argument to the function.

__call__

public PyObject __call__(PyObject arg1,
                         PyObject arg2,
                         PyObject arg3,
                         PyObject arg4)
Description copied from class: PyObject
A variant of the __call__ method with four arguments. The default behavior is to invoke __call__(args, keywords) with the appropriate arguments. The only reason to override this function would be for improved performance.

Overrides:
__call__ in class PyObject
Parameters:
arg1 - the first argument to the function.
arg2 - the second argument to the function.
arg3 - the third argument to the function.
arg4 - the fourth argument to the function.

toString

public java.lang.String toString()
Overrides:
toString in class PyBuiltinFunction


Jython homepage