code: def _read_file(self, file):  # type: (str) -> Optional[str]
          
          if not self.setup_file_name:
              return None
          source = None
          if os.path.isfile(file):
              with self.file_opener.open_this(file, "r") as setup_py:
                  source = setup_py.read()
          return source
docs: Read any file, deal with encoding.
          :param file:
          :return: