code: def name(self):
      
      if self._name is None:
        # If pytsk3.FS_Info.open() was used file.info has an attribute name
        # (pytsk3.TSK_FS_FILE) that contains the name string. Otherwise the
        # name from the path specification is used.
        if getattr(self._tsk_file.info, 'name', None) is not None:
          name = getattr(self._tsk_file.info.name, 'name', None)
  
          try:
            # pytsk3 returns an UTF-8 encoded byte string.
            self._name = name.decode('utf8')
          except UnicodeError:
            raise errors.BackEndError(
                'pytsk3 returned a non UTF-8 formatted name.')
  
        else:
          location = getattr(self.path_spec, 'location', None)
          if location:
            self._name = self._file_system.BasenamePath(location)
  
      return self._name
docs: str: name of the file entry, which does not include the full path.
  
      Raises:
        BackEndError: if pytsk3 returns a non UTF-8 formatted name.