Generator of values in a csv line

def _get_csv_cells_gen(self, line):
        """Generator of values in a csv line"""

        digest_types = self.digest_types

        for j, value in enumerate(line):
            if self.first_line:
                digest_key = None
                digest = lambda x: x.decode(self.encoding)
            else:
                try:
                    digest_key = digest_types[j]
                except IndexError:
                    digest_key = digest_types[0]

                digest = Digest(acceptable_types=[digest_key],
                                encoding=self.encoding)

            try:
                digest_res = digest(value)

                if digest_res == "\b":
                    digest_res = None

                elif digest_key is not types.CodeType:
                    digest_res = repr(digest_res)

            except Exception:
                digest_res = ""

            yield digest_res