def _structure(msg, fp=None, level=0, include_default=False):
    if fp is None:
        fp = sys.stdout
    tab = ' ' * (level * 4)
    print >> fp, tab + msg.get_content_type(),
    if include_default:
        print >> fp, '[%s]' % msg.get_default_type()
    else:
        print >> fp
    if msg.is_multipart():
        for subpart in msg.get_payload():
            _structure(subpart, fp, level+1, include_default)
Update the object's trait to the value of the extension point.
dataset/ETHPy150Open LarsMichelsen/pmatic/ccu_pkg/python/lib/python2.7/email/iterators.py/_structure--crossover with--dataset/ETHPy150Open enthought/envisage/envisage/extension_point_binding.py/ExtensionPointBinding._update_trait