Top Fields Constructors Methods
org.python.core

public Class PyProperty

extends PyObject
implements Traverseproc
Class Inheritance
All Implemented Interfaces
org.python.core.Traverseproc
Known Direct Subclasses
org.python.core.PyPropertyDerived
Annotations
@ExposedType
name:property
doc:property(fget=None, fset=None, fdel=None, doc=None) -> property attribute fget is a function to be used for getting an attribute value, and likewise fset is a function for setting, and fdel a function for del\'ing, an attribute. Typical use is to define a managed attribute x: class C(object): def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I\'m the \'x\' property.") Decorators make defining new properties or modifying existing ones easy: class C(object): @property def x(self): return self._x @x.setter def x(self, value): self._x = value @x.deleter def x(self): del self._x
Imports
org.python.expose.ExposedGet, .ExposedMethod, .ExposedNew, .ExposedType

Field Summary

Modifier and TypeField and Description
protected PyObject
protected boolean
docFromGetter

Whether this property's __doc__ was copied from its getter.

protected PyObject
protected PyObject
protected PyObject
public static final PyType
Inherited from org.python.core.PyObject:
attributesgcMonitorGlobalobjtype

Constructor Summary

AccessConstructor and Description
public
public
PyProperty(PyType subType)

Method Summary

Modifier and TypeMethod and Description
public PyObject
__call__(PyObject
the first argument to the function.
arg1
,
PyObject[]
the last arguments to the function (including keyword arguments).
args
,
String[]
the keywords used for all keyword arguments.
keywords
)

Overrides org.python.core.PyObject.__call__.

A variant of the __call__ method with one extra initial argument.

public void
public PyObject
__get__(PyObject
- the instance accessing this descriptor. Can be null if this is being accessed by a type.
obj
,
PyObject
- the type accessing this descriptor. Will be null if obj exists as obj is of the type accessing the descriptor.
type
)

Overrides org.python.core.PyObject.__get__.

Get descriptor for this PyObject.

public void
public PyObject
deleter(PyObject deleter)

public PyObject
getter(PyObject getter)

pack-priv final void
pack-priv final PyObject
public void
property___init__(PyObject[] args, String[] keywords)

pack-priv final void
pack-priv final PyObject
pack-priv final PyObject
pack-priv final PyObject
private PyObject
propertyCopy(PyObject get, PyObject set, PyObject del)

Return a copy of this property with the optional addition of a get/set/del.

public boolean
public PyObject
setter(PyObject setter)

public int
traverse(Visitproc visit, Object arg)

Implements org.python.core.Traverseproc.traverse.

Traverses all directly contained PyObjects.

Inherited from 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____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____rawdir____rdiv____rdivmod____reduce____reduce_ex____reduce_ex____repr____rfloordiv____rlshift____rmod____rmul____ror____rpow____rrshift____rshift____rsub____rtruediv____rxor____setattr____setattr____setitem____setitem____setitem____setslice____setslice____str____sub____tojava____truediv____trunc____unicode____xor___add_and_basic_add_basic_and_basic_div_basic_divmod_basic_floordiv_basic_iadd_basic_iand_basic_idiv_basic_idivmod_basic_ifloordiv_basic_ilshift_basic_imod_basic_imul_basic_ior_basic_ipow_basic_irshift_basic_isub_basic_itruediv_basic_ixor_basic_lshift_basic_mod_basic_mul_basic_or_basic_pow_basic_rshift_basic_sub_basic_truediv_basic_xor_callextra_cmp_coerce_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_unsupportedop_xoradaptToCoerceTupleasDoubleasIndexasIndexasIntasIntasIterableasLongasLongasNameasNameasStringasStringasStringOrNullasStringOrNullbit_lengthconjugatedelDictdelTypedispatch__init__equalsfastGetClassfastGetDictfinalizegetDictgetJavaProxygetTypehashCodeimpAttrimplementsDescrDeleteimplementsDescrGetimplementsDescrSetinvokeinvokeinvokeinvokeinvokeinvokeisCallableisDataDescrisIndexisIntegerisMappingTypeisNumberTypeisSequenceTypejdontdelmergeClassDictmergeDictAttrmergeListAttrnoAttributeErrorobject___contains__object___delattr__object___delattr__object___findattr__object___format__object___getattribute__object___hash__object___init__object___new__object___reduce__object___reduce_ex__object___setattr__object___setattr__object___subclasshook__object_toStringproxyInitreadonlyAttributeErrorrunsupportedopMessagesetDictsetTypetoStringunsupportedopMessage

Field Detail

docback to summary
protected PyObject doc
Annotations
@ExposedGet
name:__doc__
docFromGetterback to summary
protected boolean docFromGetter

Whether this property's __doc__ was copied from its getter.

fdelback to summary
protected PyObject fdel
Annotations
@ExposedGet
doc:
fgetback to summary
protected PyObject fget
Annotations
@ExposedGet
doc:
fsetback to summary
protected PyObject fset
Annotations
@ExposedGet
doc:
TYPEback to summary
public static final PyType TYPE

Hides org.python.core.PyObject.TYPE.

Constructor Detail

PyPropertyback to summary
public PyProperty()
PyPropertyback to summary
public PyProperty(PyType subType)

Method Detail

__call__back to summary
public PyObject __call__(PyObject arg1, PyObject[] args, String[] keywords)

Overrides org.python.core.PyObject.__call__.

Doc from org.python.core.PyObject.__call__.

A variant of the __call__ method with one extra initial argument. This variant is used to allow method invocations to be performed efficiently. 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.

Parameters
arg1:PyObject

the first argument to the function.

args:PyObject[]

the last arguments to the function (including keyword arguments).

keywords:String[]

the keywords used for all keyword arguments.

Annotations
@Override
__delete__back to summary
public void __delete__(PyObject obj)

Overrides org.python.core.PyObject.__delete__.

Annotations
@Override
__get__back to summary
public PyObject __get__(PyObject obj, PyObject type)

Overrides org.python.core.PyObject.__get__.

Doc from org.python.core.PyObject.__get__.

Get descriptor for this PyObject.

Parameters
obj:PyObject

- the instance accessing this descriptor. Can be null if this is being accessed by a type.

type:PyObject

- the type accessing this descriptor. Will be null if obj exists as obj is of the type accessing the descriptor.

Returns:PyObject

- the object defined for this descriptor for the given obj and type.

Annotations
@Override

__set__back to summary
public void __set__(PyObject obj, PyObject value)

Overrides org.python.core.PyObject.__set__.

Annotations
@Override
deleterback to summary
public PyObject deleter(PyObject deleter)
getterback to summary
public PyObject getter(PyObject getter)
property___delete__back to summary
pack-priv final void property___delete__(PyObject obj)
Annotations
@ExposedMethod
doc:descr.__delete__(obj)
property___get__back to summary
pack-priv final PyObject property___get__(PyObject obj, PyObject type)
Annotations
@ExposedMethod
defaults:null
doc:descr.__get__(obj[, type]) -> value
property___init__back to summary
public void property___init__(PyObject[] args, String[] keywords)
Annotations
@ExposedNew
@ExposedMethod
doc:x.__init__(...) initializes x; see help(type(x)) for signature
property___set__back to summary
pack-priv final void property___set__(PyObject obj, PyObject value)
Annotations
@ExposedMethod
doc:descr.__set__(obj, value)
property_deleterback to summary
pack-priv final PyObject property_deleter(PyObject deleter)
Annotations
@ExposedMethod
doc:Descriptor to change the deleter on a property.
property_getterback to summary
pack-priv final PyObject property_getter(PyObject getter)
Annotations
@ExposedMethod
doc:Descriptor to change the getter on a property.
property_setterback to summary
pack-priv final PyObject property_setter(PyObject setter)
Annotations
@ExposedMethod
doc:Descriptor to change the setter on a property.
propertyCopyback to summary
private PyObject propertyCopy(PyObject get, PyObject set, PyObject del)

Return a copy of this property with the optional addition of a get/set/del. Helper method for the getter/setter/deleter methods.

refersDirectlyToback to summary
public boolean refersDirectlyTo(PyObject ob)

Implements org.python.core.Traverseproc.refersDirectlyTo.

Doc from org.python.core.Traverseproc.refersDirectlyTo.

Optional operation. Should only be implemented if it is more efficient than calling traverse(Visitproc, Object) with a visitproc that just watches out for ob. Must return false if ob is null.

Annotations
@Override
setterback to summary
public PyObject setter(PyObject setter)
traverseback to summary
public int traverse(Visitproc visit, Object arg)

Implements org.python.core.Traverseproc.traverse.

Doc from org.python.core.Traverseproc.traverse.

Traverses all directly contained PyObjects. Like in CPython, arg must be passed unmodified to visit as its second parameter. If Visitproc#visit(PyObject, Object) returns nonzero, this return value must be returned immediately by traverse. Visitproc#visit(PyObject, Object) must not be called with a null PyObject-argument.

Annotations
@Override