Package org.python.modules._collections
Class PyDefaultDict
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.AbstractDict
-
- org.python.core.PyDictionary
-
- org.python.modules._collections.PyDefaultDict
-
- All Implemented Interfaces:
java.io.Serializable,java.util.concurrent.ConcurrentMap,java.util.Map,Traverseproc
- Direct Known Subclasses:
PyDefaultDictDerived
public class PyDefaultDict extends PyDictionary implements Traverseproc
PyDefaultDict - This is a subclass of the builtin dict(PyDictionary) class. It supports one additional method __missing__ and adds one writable instance variable defaultFactory. The remaining functionality is the same as for the dict class. collections.defaultdict([defaultFactory[, ...]]) - returns a new dictionary-like object. The first argument provides the initial value for the defaultFactory attribute; it defaults to None. All remaining arguments are treated the same as if they were passed to the dict constructor, including keyword arguments.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
-
Field Summary
Fields Modifier and Type Field Description static PyTypeTYPE-
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal
-
-
Constructor Summary
Constructors Constructor Description PyDefaultDict()PyDefaultDict(PyType subtype)PyDefaultDict(PyType subtype, java.util.Map<PyObject,PyObject> map)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PyObject__finditem__(PyObject key)Very similar to the standard Python __getitem__ method.PyObject__missing__(PyObject key)PyObject__reduce__()Used for pickling.PyDictionarycopy()Return a shallow copy of the dictionary.voiddelDefaultFactory()PyObjectget(PyObject key, PyObject defaultObj)Return this[key] if the key exists in the mapping, defaultObj is returned otherwise.PyObjectgetDefaultFactory()java.util.concurrent.ConcurrentMap<PyObject,PyObject>getMap()booleanrefersDirectlyTo(PyObject ob)Optional operation.voidsetDefaultFactory(PyObject value)java.lang.StringtoString()inttraverse(Visitproc visit, java.lang.Object arg)Traverses all directly containedPyObjects.-
Methods inherited from class org.python.core.PyDictionary
__cmp__, __contains__, __delitem__, __eq__, __finditem__, __iter__, __len__, __ne__, __nonzero__, __setitem__, clear, containsKey, containsValue, entrySet, equals, fromkeys, fromkeys, get, get, has_key, hashCode, isEmpty, isMappingType, isSequenceType, items, iteritems, iterkeys, itervalues, keys, keySet, merge, mergeFromKeys, mergeFromSeq, pop, pop, popitem, put, putAll, putIfAbsent, pyKeySet, remove, remove, replace, replace, setdefault, setdefault, size, update, updateCommon, values, viewitems, viewkeys, viewvalues
-
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__, __call__, __coerce__, __coerce_ex__, __complex__, __delattr__, __delattr__, __delete__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __float__, __floordiv__, __format__, __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__, __iternext__, __itruediv__, __ixor__, __le__, __long__, __lshift__, __lt__, __mod__, __mul__, __neg__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __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__, fastGetClass, fastGetDict, getDict, getType, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, isNumberType, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType
-
-
-
-
Field Detail
-
TYPE
public static final PyType TYPE
-
-
Method Detail
-
getMap
public java.util.concurrent.ConcurrentMap<PyObject,PyObject> getMap()
- Overrides:
getMapin classPyDictionary
-
__reduce__
public PyObject __reduce__()
Description copied from class:PyObjectUsed for pickling. Default implementation calls object___reduce__.- Overrides:
__reduce__in classPyObject- Returns:
- a tuple of (class, tuple)
-
copy
public PyDictionary copy()
Description copied from class:PyDictionaryReturn a shallow copy of the dictionary.- Overrides:
copyin classPyDictionary
-
toString
public java.lang.String toString()
- Overrides:
toStringin classPyDictionary
-
getDefaultFactory
public PyObject getDefaultFactory()
-
setDefaultFactory
public void setDefaultFactory(PyObject value)
-
delDefaultFactory
public void delDefaultFactory()
-
__finditem__
public PyObject __finditem__(PyObject key)
Description copied from class:PyObjectVery similar to the standard Python __getitem__ method. Instead of throwing a KeyError if the item isn't found, this just returns null. Classes that wish to implement __getitem__ should override this method instead (with the appropriate semantics.- Overrides:
__finditem__in classPyDictionary- Parameters:
key- the key to lookup in this container- Returns:
- the value corresponding to key or null if key is not found
-
get
public PyObject get(PyObject key, PyObject defaultObj)
Description copied from class:PyDictionaryReturn this[key] if the key exists in the mapping, defaultObj is returned otherwise.- Overrides:
getin classPyDictionary- Parameters:
key- the key to lookup in the dictionary.defaultObj- the value to return if the key does not exists in the mapping.
-
traverse
public int traverse(Visitproc visit, java.lang.Object arg)
Description copied from interface:TraverseprocTraverses all directly containedPyObjects. Like in CPython,argmust be passed unmodified tovisitas 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 anullPyObject-argument.- Specified by:
traversein interfaceTraverseproc- Overrides:
traversein classPyDictionary
-
refersDirectlyTo
public boolean refersDirectlyTo(PyObject ob)
Description copied from interface:TraverseprocOptional operation. Should only be implemented if it is more efficient than callingTraverseproc.traverse(Visitproc, Object)with a visitproc that just watches out forob. Must returnfalseifobisnull.- Specified by:
refersDirectlyToin interfaceTraverseproc- Overrides:
refersDirectlyToin classPyDictionary
-
-