Class PyDictProxy

java.lang.Object
org.python.core.PyObject
org.python.core.PyDictProxy
All Implemented Interfaces:
Serializable, Traverseproc

public class PyDictProxy extends PyObject implements Traverseproc
Readonly proxy for dictionaries (actually any mapping).
See Also:
  • Constructor Details

    • PyDictProxy

      public PyDictProxy(PyObject dict)
  • Method Details

    • __iter__

      public PyObject __iter__()
      Description copied from class: PyObject
      Return an iterator that is used to iterate the element of this sequence. From version 2.2, this method is the primary protocol for looping over sequences.

      If a PyObject subclass should support iteration based in the __finditem__() method, it must supply an implementation of __iter__() like this:

       public PyObject __iter__() {
           return new PySequenceIter(this);
       }
       
      When iterating over a python sequence from java code, it should be done with code like this:
       for (PyObject item : seq.asIterable()) {
           // Do something with item
       }
       
      Overrides:
      __iter__ in class PyObject
    • __finditem__

      public PyObject __finditem__(PyObject key)
      Description copied from class: PyObject
      Very 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 class PyObject
      Parameters:
      key - the key to lookup in this container
      Returns:
      the value corresponding to key or null if key is not found
    • __len__

      public int __len__()
      Description copied from class: PyObject
      Equivalent to the standard Python __len__ method. Part of the mapping discipline.
      Overrides:
      __len__ in class PyObject
      Returns:
      the length of the object
    • dictproxy___getitem__

      public PyObject dictproxy___getitem__(PyObject key)
    • dictproxy___contains__

      public boolean dictproxy___contains__(PyObject value)
    • dictproxy_has_key

      public boolean dictproxy_has_key(PyObject key)
    • dictproxy_get

      public PyObject dictproxy_get(PyObject key, PyObject default_object)
    • dictproxy_keys

      public PyObject dictproxy_keys()
    • dictproxy_values

      public PyObject dictproxy_values()
    • dictproxy_items

      public PyObject dictproxy_items()
    • dictproxy_iterkeys

      public PyObject dictproxy_iterkeys()
    • dictproxy_itervalues

      public PyObject dictproxy_itervalues()
    • dictproxy_iteritems

      public PyObject dictproxy_iteritems()
    • dictproxy_copy

      public PyObject dictproxy_copy()
    • __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<o; 0 if this==o; +1 if this>o; -2 if no comparison is implemented
    • dictproxy___cmp__

      public int dictproxy___cmp__(PyObject other)
    • dictproxy___lt__

      public PyObject dictproxy___lt__(PyObject other)
    • dictproxy___le__

      public PyObject dictproxy___le__(PyObject other)
    • dictproxy___eq__

      public PyObject dictproxy___eq__(PyObject other)
    • dictproxy___ne__

      public PyObject dictproxy___ne__(PyObject other)
    • dictproxy___gt__

      public PyObject dictproxy___gt__(PyObject other)
    • dictproxy___ge__

      public PyObject dictproxy___ge__(PyObject other)
    • __str__

      public PyString __str__()
      Description copied from class: PyObject
      Equivalent to the standard Python __str__ method. The default implementation (in PyObject) calls PyObject.__repr__(), making it unnecessary to override __str__ in sub-classes of PyObject where both forms are the same. A common choice is to provide the same implementation to __str__ and toString, for consistency in the printed form of objects between Python and Java.
      Overrides:
      __str__ in class PyObject
    • isMappingType

      public boolean isMappingType()
      Overrides:
      isMappingType in class PyObject
    • isSequenceType

      public boolean isSequenceType()
      Overrides:
      isSequenceType in class PyObject
    • traverse

      public int traverse(Visitproc visit, Object arg)
      Description copied from interface: Traverseproc
      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.
      Specified by:
      traverse in interface Traverseproc
    • refersDirectlyTo

      public boolean refersDirectlyTo(PyObject ob)
      Description copied from interface: Traverseproc
      Optional operation. Should only be implemented if it is more efficient than calling Traverseproc.traverse(Visitproc, Object) with a visitproc that just watches out for ob. Must return false if ob is null.
      Specified by:
      refersDirectlyTo in interface Traverseproc