9 writes to _metadata
Microsoft.Build.Utilities.Core (9)
TaskItem.cs (9)
139_metadata = builder.ToImmutable(); 260set => _metadata = value.Dictionary; 277_metadata = _metadata?.Remove(metadataName); 291_metadata = _metadata.RemoveRange(metadataNames); 313_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 315_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 560_metadata = immutableMetadata; 564_metadata ??= ImmutableDictionaryExtensions.EmptyMetadata; 565_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty)));
31 references to _metadata
Microsoft.Build.Utilities.Core (31)
TaskItem.cs (31)
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); 286if (_metadata == null || _metadata.IsEmpty) 291_metadata = _metadata.RemoveRange(metadataNames); 315_metadata = _metadata.SetItem(metadataName, metadataValue ?? string.Empty); 348if (_metadata != null) 358copiedMetadata = _metadata; 360else if (destinationMetadata.Count < _metadata.Count) 362copiedMetadata = _metadata.SetItems(destinationMetadata.Where(entry => !String.IsNullOrEmpty(entry.Value))); 366copiedMetadata = destinationMetadata.SetItems(_metadata.Where(entry => !destinationMetadata.TryGetValue(entry.Key, out string val) || String.IsNullOrEmpty(val))); 377IEnumerable<KeyValuePair<string, string>> metadataToImport = _metadata; 398foreach (KeyValuePair<string, string> entry in _metadata) 453if (_metadata != null) 455foreach (KeyValuePair<string, string> entry in _metadata) 515_metadata?.TryGetValue(metadataName, out metadataValue); 534IDictionary ITaskItem2.CloneCustomMetadataEscaped() => _metadata == null 536: new CopyOnWriteDictionary<string>(_metadata); 558if ((_metadata == null || _metadata.IsEmpty) && metadata is ImmutableDictionary<string, string> immutableMetadata) 565_metadata = _metadata.SetItems(metadata.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value ?? string.Empty))); 571if (_metadata == null) 576int count = _metadata.Count; 579foreach (var kvp in _metadata) 591if (_metadata == null) 596foreach (var kvp in _metadata)