Class PyDictionary

    • Constructor Detail

      • PyDictionary

        public PyDictionary()
        Create an empty dictionary.
      • PyDictionary

        public PyDictionary​(PyType subtype)
        For derived types
        Parameters:
        subtype -
      • PyDictionary

        public PyDictionary​(java.util.Hashtable t)
        Create an new dictionary which is based on the hashtable.
        Parameters:
        t - the hashtable used. The supplied hashtable is used as is and must only contain PyObject key:value pairs.
      • PyDictionary

        public PyDictionary​(PyObject[] elements)
        Create a new dictionary with the element as content.
        Parameters:
        elements - The initial elements that is inserted in the dictionary. Even numbered elements are keys, odd numbered elements are values.
    • Method Detail

      • __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
      • __nonzero__

        public boolean __nonzero__()
        Description copied from class: PyObject
        Equivalent to the standard Python __nonzero__ method. Returns whether of not a given PyObject is considered true.
        Overrides:
        __nonzero__ in class PyObject
      • __finditem__

        public PyObject __finditem__​(int index)
        Description copied from class: PyObject
        A variant of the __finditem__ method which accepts a primitive int as the key. By default, this method will call __finditem__(PyObject key) with the appropriate args. The only reason to override this method is for performance.
        Overrides:
        __finditem__ in class PyObject
        Parameters:
        index - the key to lookup in this sequence.
        Returns:
        the value corresponding to key or null if key is not found.
        See Also:
        PyObject.__finditem__(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
      • __setitem__

        public void __setitem__​(PyObject key,
                                PyObject value)
        Description copied from class: PyObject
        Equivalent to the standard Python __setitem__ method.
        Overrides:
        __setitem__ in class PyObject
        Parameters:
        key - the key whose value will be set
        value - the value to set this key to
      • __delitem__

        public void __delitem__​(PyObject key)
        Description copied from class: PyObject
        Equivalent to the standard Python __delitem__ method.
        Overrides:
        __delitem__ in class PyObject
        Parameters:
        key - the key to be removed from the container
      • __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:
            PyObject iter = seq.__iter__();
            for (PyObject item; (item = iter.__iternext__()) != null;)  {
                // Do somting with item
            }
         
        Overrides:
        __iter__ in class PyObject
      • toString

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

        public PyObject __eq__​(PyObject ob_other)
        Description copied from class: PyObject
        Equivalent to the standard Python __eq__ method.
        Overrides:
        __eq__ in class PyObject
        Parameters:
        ob_other - the object to compare this with.
        Returns:
        the result of the comparison.
      • __ne__

        public PyObject __ne__​(PyObject ob_other)
        Description copied from class: PyObject
        Equivalent to the standard Python __ne__ method.
        Overrides:
        __ne__ in class PyObject
        Parameters:
        ob_other - the object to compare this with.
        Returns:
        the result of the comparison.
      • __cmp__

        public int __cmp__​(PyObject ob_other)
        Description copied from class: PyObject
        Equivalent to the standard Python __cmp__ method.
        Overrides:
        __cmp__ in class PyObject
        Parameters:
        ob_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
      • has_key

        public boolean has_key​(PyObject key)
        Return true if the key exist in the dictionary.
      • __contains__

        public boolean __contains__​(PyObject o)
        Description copied from class: PyObject
        Equivalent to the standard Python __contains__ method.
        Overrides:
        __contains__ in class PyObject
        Parameters:
        o - the element to search for in this container.
        Returns:
        the result of the search.
      • get

        public PyObject get​(PyObject key,
                            PyObject default_object)
        Return this[key] if the key exists in the mapping, default_object is returned otherwise.
        Parameters:
        key - the key to lookup in the dictionary.
        default_object - the value to return if the key does not exists in the mapping.
      • get

        public PyObject get​(PyObject key)
        Return this[key] if the key exists in the mapping, None is returned otherwise.
        Parameters:
        key - the key to lookup in the dictionary.
      • copy

        public PyDictionary copy()
        Return a shallow copy of the dictionary.
      • clear

        public void clear()
        Remove all items from the dictionary.
      • update

        public void update​(PyObject d)
        Insert all the key:value pairs from d into this dictionary.
      • setdefault

        public PyObject setdefault​(PyObject key)
        Return this[key] if the key exist, otherwise insert key with a None value and return None.
        Parameters:
        key - the key to lookup in the dictionary.
      • setdefault

        public PyObject setdefault​(PyObject key,
                                   PyObject failobj)
        Return this[key] if the key exist, otherwise insert key with the value of failobj and return failobj
        Parameters:
        key - the key to lookup in the dictionary.
        failobj - the default value to insert in the dictionary if key does not already exist.
      • pop

        public PyObject pop​(PyObject key)
        Return a value based on key from the dictionary.
      • pop

        public PyObject pop​(PyObject key,
                            PyObject defaultValue)
        Return a value based on key from the dictionary or default if that key is not found.
      • popitem

        public PyObject popitem()
        Return a random (key, value) tuple pair and remove the pair from the dictionary.
      • items

        public PyList items()
        Return a copy of the dictionarys list of (key, value) tuple pairs.
      • keys

        public PyList keys()
        Return a copy of the dictionarys list of keys.
      • values

        public PyList values()
        Return a copy of the dictionarys list of values.
      • iteritems

        public PyObject iteritems()
        Return an interator over (key, value) pairs.
      • iterkeys

        public PyObject iterkeys()
        Return an interator over (key, value) pairs.
      • itervalues

        public PyObject itervalues()
        Return an interator over (key, value) pairs.