code: def read_file(filename):
      '''
      Reads files
  
      :param filename:
          The full path of the file to read
      :returns:
          The content of the file as string (if `filename` exists)
  
  
      .. note:: If `filename`'s content is empty, ``None`` will also returned.
  
          To check if a file really exists
          use :func:`util.locations.search_location`
      '''
  
      if filename and _path.exists(filename):
          with open(filename, 'r') as f:
              return f.read(f read_file(filename):
      '''
      Reads files
  
      :param filename:
          The full path of the file to read
      :returns:
          The content of the file as string (if `filename` exists)
  
  
      .. note:: If `filename`'s content is empty, ``None`` will also returned.
  
          To check if a file really exists
          use :func:`util.locations.search_location`
      '''
  
      if filename and _path.exists(filename):
          with open(filename, 'r') as f:
              return f.read()
docs: Reads files
  
      :param filename:
          The full path of the file to read
      :returns:
          The content of the file as string (if `filename` exists)
  
  
      .. note:: If `filename`'s content is empty, ``None`` will also returned.
  
          To check if a file really exists
          use :func:`util.locations.search_location`