code: def _PrintWarningsDetails(self, storage):
      
      if not storage.HasWarnings():
        self._output_writer.Write('No warnings stored.\n\n')
        return
  
      for index, warning in enumerate(storage.GetWarnings()):
        title = 'Warning: {0:d}'.format(index)
        table_view = views.ViewsFactory.GetTableView(
            self._views_format_type, title=title)
  
        table_view.AddRow(['Message', warning.message])
        table_view.AddRow(['Parser chain', warning.parser_chain])
  
        path_specification = warning.path_spec.comparable
        for path_index, line in enumerate(path_specification.split('\n')):
          if not line:
            continue
  
          if path_index == 0:
            table_view.AddRow(['Path specification', line])
          else:
            table_view.AddRow(['', line])
  
        table_view.Write(self._output_writer)
docs: Prints the details of the warnings.
  
      Args:
        storage (BaseStore): storage.