MutableGenericMap¶
-
class
lsst.afw.typehandling.
MutableGenericMap
¶ Bases:
lsst.afw.typehandling.GenericMap
An abstract
MutableMapping
for use when sharing a map between C++ and Python.For compatibility with C++,
MutableGenericMap
has the following restrictions:- all keys must be of the same type
- values must be built-in types or subclasses of
lsst.afw.typehandling.Storable
. Almost any user-defined class in C++ or Python can haveStorable
as a mixin.
As a safety precaution,
Storable
objects that are added from C++ may be copied when you retrieve them from Python, making it impossible to modify them in-place. This issue does not affect objects that are added from Python, or objects that are always passed byshared_ptr
in C++.Notes
Key-type specializations of
MutableGenericMap
are available as, e.g.,MutableGenericMap[str]
.Attributes Summary
TEMPLATE_DEFAULTS
TEMPLATE_PARAMS
Methods Summary
items
()keys
()pop
(key[, default])setdefault
(k[,d])update
([E, ]**F)If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v values
()Attributes Documentation
-
TEMPLATE_DEFAULTS
= (None,)¶
-
TEMPLATE_PARAMS
= ('dtype',)¶
Methods Documentation
-
items
() → a set-like object providing a view on D's items¶
-
keys
() → a set-like object providing a view on D's keys¶
-
pop
(key, default=None)¶
-
setdefault
(k[, d]) → D.get(k,d), also set D[k]=d if k not in D¶
-
update
([E, ]**F) → None. Update D from mapping/iterable E and F.¶ If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
-
values
() → an object providing a view on D's values¶