def walk(self, action, user_data=None):
action(self.index_file, self.__root, <NUM_LIT:0>, user_data)<EOL>self.__do_walk(self.__root, <NUM_LIT:1>, action, user_data)<EOL>
Walk the hierarchy, applying action to each filename.

Args:
    action: callable, the callable to invoke for each filename,
        will be invoked with the filename, the subfiles, and
        the level in the sitemap.