8 writes to _metadata
Microsoft.Build.Utilities.Core (8)
TaskItem.cs (8)
139_metadata = builder.ToImmutable(); 260set => _metadata = value.Dictionary; 277_metadata = _metadata?.Remove(metadataName); 299_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 301_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 546_metadata = immutableMetadata; 550_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 551_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty)));
25 references to _metadata
Microsoft.Build.Utilities.Core (25)
TaskItem.cs (25)
220int count = (_metadata?.Count ?? 0) + FileUtilities.ItemSpecModifiers.All.Length; 224if (_metadata is not null) 226metadataNames.AddRange(_metadata.Keys); 239public int MetadataCount => (_metadata?.Count ?? 0) + FileUtilities.ItemSpecModifiers.All.Length; 249bool IMetadataContainer.HasCustomMetadata => _metadata?.Count > 0; 259get => new(_metadata); 277_metadata = _metadata?.Remove(metadataName); 301_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 334if (_metadata != null) 344copiedMetadata = _metadata; 346else if (destinationMetadata.Count < _metadata.Count) 348copiedMetadata = _metadata.SetItems(destinationMetadata.Where(entry => !String.IsNullOrEmpty(entry.Value))); 352copiedMetadata = destinationMetadata.SetItems(_metadata.Where(entry => !destinationMetadata.TryGetValue(entry.Key, out string val) || String.IsNullOrEmpty(val))); 363IEnumerable<KeyValuePair<string, string>> metadataToImport = _metadata; 384foreach (KeyValuePair<string, string> entry in _metadata) 439if (_metadata != null) 441foreach (KeyValuePair<string, string> entry in _metadata) 501_metadata?.TryGetValue(metadataName, out metadataValue); 520IDictionary ITaskItem2.CloneCustomMetadataEscaped() => _metadata == null 522: new CopyOnWriteDictionary<string>(_metadata); 544if ((_metadata == null || _metadata.IsEmpty) && metadata is ImmutableDictionary<string, string> immutableMetadata) 551_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty))); 577if (_metadata == null) 582foreach (var kvp in _metadata)