MetadataStore¶

class onnx_ir._metadata.MetadataStore(data=None, /)[source]¶

Class for storing metadata about the IR objects.

Metadata is stored as key-value pairs. The keys are strings and the values can be any Python object.

The metadata store also supports marking keys as invalid. This is useful when a pass wants to mark a key that needs to be recomputed.

Parameters:

data (Mapping[str, Any] | None)

invalidate(key)[source]¶
Parameters:

key (str)

Return type:

None

is_valid(key)[source]¶

Returns whether the value is valid.

Note that default values (None) are not necessarily invalid. For example, a shape that is unknown (None) may be still valid if shape inference has determined that the shape is unknown.

Whether a value is valid is solely determined by the user that sets the value.

Parameters:

key (str)

Return type:

bool

clear() None.  Remove all items from D.¶
copy()¶
classmethod fromkeys(iterable, value=None)¶
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¶
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¶
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¶