<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _collect_feature_info(self, candidate_feature_diffs):
 """Collect feature info Args: candidate_feature_diffs (List[git.diff.Diff]):
 list of Diffs corresponding to admissible file changes compared to comparison ref Returns: List[Tuple]: list of tuple of importer, module name, and module path. The "importer" is a callable that returns a module """

        project_root = self.project.path
        for diff in candidate_feature_diffs:
            path = diff.b_path
            modname = relpath_to_modname(path)
            modpath = project_root.joinpath(path)
            importer = partial(import_module_at_path, modname, modpath)
            yield importer, modname, modpath