BunchBunch — essentially the same as calling bunchify() in the constructor, creating recursive bunches out of sub-dictionaries ... but as a feature of a subclass.
OrderedBunch — ensures keys have stable iteration order.
DefaultBunch — requests for missing keys return a given value / consult a function.
ProxyBunch — multiple bunches form a "cascade" of lookups where the first hit is returned.
BorgBunch — many Bunch, one dict. I rarely find a use for this, but it's always a a cool and easy addition.
In addition, each supports multiple inheritance when reasonable.
I've been a bad maintainer, bc I have code for...
BunchBunch
— essentially the same as callingbunchify()
in the constructor, creating recursivebunch
es out of sub-dictionaries ... but as a feature of a subclass.OrderedBunch
— ensures keys have stable iteration order.DefaultBunch
— requests for missing keys return a given value / consult a function.ProxyBunch
— multiple bunches form a "cascade" of lookups where the first hit is returned.BorgBunch
— manyBunch
, one dict. I rarely find a use for this, but it's always a a cool and easy addition.In addition, each supports multiple inheritance when reasonable.