org.python.core
Class PyClass

java.lang.Object
  extended byorg.python.core.PyObject
      extended byorg.python.core.PyClass
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
PyJavaClass

public class PyClass
extends PyObject

A python class.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.python.core.PyObject
PyObject.ConversionException
 
Field Summary
 PyTuple __bases__
          The base classes of this class
static PyClass __class__
           
 PyObject __dict__
          Holds the namespace for this class
 java.lang.String __name__
          The name of this class
 
Fields inherited from class org.python.core.PyObject
exposed_name
 
Constructor Summary
PyClass(java.lang.String name, PyTuple bases, PyObject dict)
          Create a python class.
PyClass(java.lang.String name, PyTuple bases, PyObject dict, java.lang.Class proxyClass)
          Create a python class which inherit from a java class and where we already have generated a proxyclass.
 
Method Summary
 PyObject __call__(PyObject[] args, java.lang.String[] keywords)
          The basic method to override when implementing a callable object.
 int __cmp__(PyObject other)
          Equivalent to the standard Python __cmp__ method.
 void __delattr__(java.lang.String name)
          A variant of the __delattr__ method which accepts a String as the key.
 PyObject __findattr__(java.lang.String name)
          A variant of the __findattr__ method which accepts a Java String as the name.
 void __rawdir__(PyDictionary accum)
           
 void __setattr__(java.lang.String name, PyObject value)
          A variant of the __setattr__ method which accepts a String as the key.
 PyString __str__()
          Equivalent to the standard Python __str__ method.
 java.lang.Object __tojava__(java.lang.Class c)
          Equivalent to the Jython __tojava__ method.
 boolean isSubClass(PyClass superclass)
           
 java.lang.String safeRepr()
           
 java.lang.String toString()
           
 
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __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__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __sub__, __truediv__, __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, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getDoc, getType, hashCode, implementsDescrDelete, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isMappingType, isNumberType, isSequenceType, noAttributeError, readonlyAttributeError, typeSetup
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

__dict__

public PyObject __dict__
Holds the namespace for this class


__bases__

public PyTuple __bases__
The base classes of this class


__name__

public java.lang.String __name__
The name of this class


__class__

public static PyClass __class__
Constructor Detail

PyClass

public PyClass(java.lang.String name,
               PyTuple bases,
               PyObject dict)
Create a python class.

Parameters:
name - name of the class.
bases - A list of base classes.
dict - The class dict. Normally this dict is returned by the class code object.
See Also:
Py.makeClass(String, PyObject[], PyCode, PyObject)

PyClass

public PyClass(java.lang.String name,
               PyTuple bases,
               PyObject dict,
               java.lang.Class proxyClass)
Create a python class which inherit from a java class and where we already have generated a proxyclass. If we do not have a pre-generated proxyclass, the class initialization method will create such a proxyclass if bases contain a java class.

Parameters:
name - name of the class.
bases - A list of base classes.
dict - The class dict. Normally this dict is returned by the class code object.
See Also:
Py.makeClass(String, PyObject[], PyCode, PyObject, Class)
Method Detail

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

__findattr__

public PyObject __findattr__(java.lang.String name)
Description copied from class: PyObject
A variant of the __findattr__ method which accepts a Java String as the name. By default, this method will call __findattr__(PyString name) with the appropriate args. The only reason to override this method is for performance. Warning: name must be an interned string!!!!!!!!

Overrides:
__findattr__ in class PyObject
Parameters:
name - the name to lookup in this namespace must be an interned string .
Returns:
the value corresponding to name or null if name is not found
See Also:
PyObject.__findattr__(PyString)

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

__rawdir__

public void __rawdir__(PyDictionary accum)

__call__

public PyObject __call__(PyObject[] args,
                         java.lang.String[] keywords)
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).
keywords - the keywords used for all keyword arguments.

__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

__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

toString

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

isSubClass

public boolean isSubClass(PyClass superclass)

safeRepr

public java.lang.String safeRepr()
                          throws PyIgnoreMethodTag
Overrides:
safeRepr in class PyObject
Throws:
PyIgnoreMethodTag
See Also:
PyObject.safeRepr()


Jython homepage