code: def traverse(self):
          
          builder = self.child_builder
          for child in self._children:
              with pushd(str(child)):
                  yield child, builder(child)
docs: Enumerate children and build associated objects