8.25.2 CDict class: A cascading Dict: properties not in Dict are searched in all Dicts.

This is equivalent to the Dict class, except that if a key is not found and the CDict has items with values that are themselves instances of Dict or CDict, the key will be looked up in those Dicts as well.

As you expect, this will make the lookup cascade into all lower levels of CDict's. The cascade will stop if you use a Dict. There is no way to guarantee in which order the (Cascading)Dict's are visited, so if multiple Dicts on the same level hold the same key, you should know yourself what you are doing.

The CDict class has this constructor:

class CDict( data=,default=returnNone)

CDict objects have the following methods:

__repr__( )
Format the CDict as a string.

We use the format Dict(), so that the string is a valid Python representation of the Dict.

__str__( )
Format a CDict into a string.

__getitem__( key)
Allows items to be addressed as self[key].

This is equivalent to the dict lookup, except that we cascade through lower level dict's.