anchor.diff:      if (file == null) {
         File resource = _resourceProvider.getFile(path);
         Source fileSource = resource.createSource();
  -      Uri? uri = _sourceFactory.restoreUri(fileSource);
  -      // Create a new file.
  -      // TODO(scheglov) this is duplicate
  -      FileSource uriSource = FileSource(resource, uri!);
  -      WorkspacePackage? workspacePackage = _workspace?.findPackageFor(path);
  -      FeatureSet featureSet = contextFeatureSet(path, uri, workspacePackage);
  -      Version packageLanguageVersion =
  -          contextLanguageVersion(path, uri, workspacePackage);
  -      file = FileState._(this, path, uri, uriSource, workspacePackage,
  -          featureSet, packageLanguageVersion);
  -      _pathToFile[path] = file;
  -      _uriToFile[uri] = file;
  -      _addFileWithPath(path, file);
  -      file.refresh();
  +      Uri uri = _sourceFactory.restoreUri(fileSource)!;
  +      file = _newFile(resource, path, uri);
       }
       return file;
     }
  
positive.code:     _partToLibraries.clear();
      _subtypedNameToFiles.clear();
    }
  }
  
  @visibleForTesting
  
negative.code:     _clearFiles();
    }
  
    /// Clear all [FileState] data - all maps from path or URI, etc.
    void _clearFiles() {
      _uriToFile.clear();
  