9 writes to _metadata
Microsoft.Build.Utilities.Core (9)
TaskItem.cs (9)
140_metadata = builder.ToImmutable(); 317set => _metadata = value.Dictionary; 334_metadata = _metadata?.Remove(metadataName); 348_metadata = _metadata.RemoveRange(metadataNames); 370_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 372_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 614_metadata = immutableMetadata; 618_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 619_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty)));
28 references to _metadata
Microsoft.Build.Utilities.Core (28)
TaskItem.cs (28)
274int count = (_metadata?.Count ?? 0) + ItemSpecModifiers.All.Length; 278if (_metadata is not null) 280metadataNames.AddRange(_metadata.Keys); 296public int MetadataCount => (_metadata?.Count ?? 0) + ItemSpecModifiers.All.Length; 306bool IMetadataContainer.HasCustomMetadata => _metadata?.Count > 0; 316get => new(_metadata); 334_metadata = _metadata?.Remove(metadataName); 343if (_metadata == null || _metadata.IsEmpty) 348_metadata = _metadata.RemoveRange(metadataNames); 372_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 405if (_metadata != null) 415copiedMetadata = _metadata; 417else if (destinationMetadata.Count < _metadata.Count) 419copiedMetadata = _metadata.SetItems(destinationMetadata.Where(entry => !String.IsNullOrEmpty(entry.Value))); 423copiedMetadata = destinationMetadata.SetItems(_metadata.Where(entry => !destinationMetadata.TryGetValue(entry.Key, out string val) || String.IsNullOrEmpty(val))); 434IEnumerable<KeyValuePair<string, string>> metadataToImport = _metadata; 455foreach (KeyValuePair<string, string> entry in _metadata) 510if (_metadata != null) 512foreach (KeyValuePair<string, string> entry in _metadata) 570_metadata?.TryGetValue(metadataName, out metadataValue); 588IDictionary ITaskItem2.CloneCustomMetadataEscaped() => _metadata == null 590: new CopyOnWriteDictionary<string>(_metadata); 612if ((_metadata == null || _metadata.IsEmpty) && metadata is ImmutableDictionary<string, string> immutableMetadata) 619_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty))); 645if (_metadata == null) 650foreach (var kvp in _metadata)