UnionDict – a dict with set like operations and keys as attributes

This object combines the key-element storage of a dict with the union operation of a set() object. It is used in the cogent3.draw module, primarily for the figure and layout attributes.

Accessing elements of a UnionDict

Keys in a UnionDict can be accessed like attributes

Updating a UnionDict

If you use the | bitwise operator to compare two dicts and the left one is a UnionDict, a union operation is performed.

This can also be done using the union method.

Accessing a non-existent UnionDict key

But if accessing as an attribute, you get an attribute error.