DatasetMapping

class glotaran.utils.io.DatasetMapping(init_map: Mapping[str, xr.Dataset] = None)[source]

Bases: collections.abc.MutableMapping

Wrapper class for a mapping of datasets which can be used for a file_loadable_field.

Initialize an instance of DatasetMapping.

Parameters

init_dict (dict[str, xr.Dataset], optional) – Mapping to initially populate the instance., by default None

Attributes Summary

source_path

Map the source_path attribute of each dataset to a standalone mapping.

Methods Summary

clear

get

items

keys

loader

Loader function utilized by file_loadable_field.

pop

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem

as a 2-tuple; but raise KeyError if D is empty.

setdefault

update

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

Methods Documentation

clear() None.  Remove all items from D.
get(k[, d]) D[k] if k in D, else d.  d defaults to None.
items() a set-like object providing a view on D's items
keys() a set-like object providing a view on D's keys
classmethod loader(dataset_mappable: DatasetMappable) DatasetMapping[source]

Loader function utilized by file_loadable_field.

Parameters

dataset_mappable (DatasetMappable) – Mapping of datasets to initialize DatasetMapping.

Returns

Populated instance of DatasetMapping.

Return type

DatasetMapping

pop(k[, d]) v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem() (k, v), remove and return some (key, value) pair

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[, d]) D.get(k,d), also set D[k]=d if k not in D
property source_path

Map the source_path attribute of each dataset to a standalone mapping.

Note

When the source_path attribute of the dataset gets updated (e.g. by calling save_dataset with the default update_source_path=True) this value will be updated as well.

Returns

Mapping of the dataset source paths.

Return type

Mapping[str, str]

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