X-Git-Url: https://git.distorted.org.uk/~mdw/mLib-python/blobdiff_plain/5b1830f325c55c70d65fd020f08dd958493e528d..HEAD:/mapping.pyx diff --git a/mapping.pyx b/mapping.pyx index f99de34..b044ed6 100644 --- a/mapping.pyx +++ b/mapping.pyx @@ -55,6 +55,7 @@ cdef class Mapping: ## Bulk update def update(me, stuff = None, **kw): + """D.update([MAP], **KW): insert mappings from MAP and KW""" cdef unsigned f if stuff is None: pass @@ -89,12 +90,16 @@ cdef class Mapping: raise KeyError, key me._del(e) def get(me, key, default = None): + """D.get(KEY, [default = None]) -> VALUE: value at KEY, or DEFAULT""" cdef void *e e = me._find(key, NULL) if not e: return default return me._value(e) def setdefault(me, key, default = None): + """ + D.setdefault(KEY, [default = None]) -> VALUE: + return value at key, or store DEFAULT at key and return that""" cdef void *e cdef unsigned f e = me._find(key, &f) @@ -104,6 +109,9 @@ cdef class Mapping: me._setval(e, default) return default def pop(me, key, default = None): + """ + D.pop(KEY, [default = None]) -> VALUE: + return value at key or DEFAULT, and remove KEY""" cdef void *e e = me._find(key, NULL) if not e: @@ -112,6 +120,7 @@ cdef class Mapping: me._del(e) return rc def popitem(me): + """D.popitem() -> KEY, VALUE: return and remove an association pair""" cdef _MapIterator i cdef void *e i = me._iter() @@ -134,13 +143,17 @@ cdef class Mapping: return l def keys(me): + """D.keys() -> LIST: return a list of known keys""" return me._list(_map_key) def values(me): + """D.values() -> LIST: return a list of known values""" return me._list(_map_value) def items(me): + """D.values() -> LIST: return a list of known (KEY, VALUE) pairs""" return me._list(_map_item) def clear(me): + """D.clear(): remove all mappings""" cdef _MapIterator i cdef void *e i = me._iter() @@ -155,10 +168,13 @@ cdef class Mapping: def __iter__(me): return MapKeyIter(me) def iterkeys(me): + """D.iterkeys() -> ITER: return iterator over keys""" return MapKeyIter(me) def itervalues(me): + """D.itervalues() -> ITER: return iterator over values""" return MapValueIter(me) def iteritems(me): + """D.iteritems() -> ITER: return iterator over (KEY, VALUE) pairs""" return MapItemIter(me) cdef class MapIterBase: