18 instantiations of ProjectItemInstance
Microsoft.Build (18)
BackEnd\Components\RequestBuilder\IntrinsicTasks\ItemGroupIntrinsicTask.cs (1)
468
items.Add(new
ProjectItemInstance
(
BackEnd\TaskExecutionHost\TaskExecutionHost.cs (4)
1497
newItem = new
ProjectItemInstance
(_projectInstance, outputTargetName, outputAsProjectItem.IncludeEscaped, parameterLocationEscaped);
1506
newItem = new
ProjectItemInstance
(_projectInstance, outputTargetName, outputAsITaskItem2.EvaluatedIncludeEscaped, parameterLocationEscaped);
1526
newItem = new
ProjectItemInstance
(_projectInstance, outputTargetName, EscapingUtilities.Escape(output.ItemSpec), parameterLocationEscaped);
1651
_batchBucket.Lookup.AddNewItem(new
ProjectItemInstance
(_projectInstance, outputTargetName, EscapingUtilities.Escape(output), EscapingUtilities.Escape(parameterLocation.File)));
Graph\GraphBuilder.cs (2)
168
new
ProjectItemInstance
(
244
var stubItem = new
ProjectItemInstance
(
Graph\ProjectInterpretation.cs (1)
293
yield return new
ProjectItemInstance
(
Instance\ProjectInstance.cs (4)
2061
ProjectItemInstance item = new
ProjectItemInstance
(this, itemType, evaluatedInclude, this.FullPath);
2084
ProjectItemInstance item = new
ProjectItemInstance
(this, itemType, evaluatedInclude, metadata, this.FullPath);
3475
var instance = new
ProjectItemInstance
(
3535
ProjectItemInstance instance = new
ProjectItemInstance
(
Instance\ProjectItemInstance.cs (6)
640
ProjectItemInstance newItem = new
ProjectItemInstance
(projectInstance);
689
return new
ProjectItemInstance
(this);
698
return new
ProjectItemInstance
(this, newProject);
2267
ProjectItemInstance item = new
ProjectItemInstance
(_project, ItemType, include, definingProject);
2300
return new
ProjectItemInstance
(_project, ItemType, evaluatedInclude, evaluatedIncludeBeforeWildcardExpansion, definingProject);
2353
return new
ProjectItemInstance
(_project, ItemType, includeEscaped, includeBeforeWildcardExpansionEscaped, source._taskItem.DirectMetadata, itemDefinitionsClone, definingProject, useItemDefinitionsWithoutModification: false);
402 references to ProjectItemInstance
dotnet (4)
Commands\Project\Convert\ProjectConvertCommand.cs (1)
339
foreach (
var
item in items)
Commands\Reference\List\ReferenceListCommand.cs (1)
39
foreach (
var
item in projectInstance.GetItems("ProjectReference"))
Commands\Run\VirtualProjectBuildingCommand.cs (2)
568
foreach (
var
item in projectInstance.GetItems(entry.ItemType))
629
foreach (
var
item in projectInstance.GetItems(itemName))
Microsoft.Build (377)
BackEnd\Components\Communications\LogMessagePacket.cs (1)
13
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Components\Logging\ILoggingService.cs (1)
13
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Components\Logging\LoggingServiceLogMethods.cs (1)
15
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Components\Logging\ProjectLoggingContext.cs (4)
12
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
128
IItemDictionary<
ProjectItemInstance
> projectItems,
164
IItemDictionary<
ProjectItemInstance
> projectItems,
195
IItemDictionary<
ProjectItemInstance
> projectItems,
BackEnd\Components\Logging\TargetLoggingContext.cs (1)
8
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Components\ProjectCache\CacheResult.cs (2)
131
private static
ProjectItemInstance
.TaskItem CreateTaskItem(ITaskItem2 taskItemInterface)
133
var taskItem = new
ProjectItemInstance
.TaskItem(taskItemInterface.EvaluatedIncludeEscaped, definingFileEscaped: null);
BackEnd\Components\ProjectCache\Experimental\CacheResult.cs (2)
133
private static
ProjectItemInstance
.TaskItem CreateTaskItem(ITaskItem2 taskItemInterface)
135
var taskItem = new
ProjectItemInstance
.TaskItem(taskItemInterface.EvaluatedIncludeEscaped, definingFileEscaped: null);
BackEnd\Components\ProjectCache\ProjectCacheService.cs (2)
180
ICollection<
ProjectItemInstance
> items = projectInstance.GetItems(ItemTypeNames.ProjectCachePlugin);
181
foreach (
ProjectItemInstance
item in items)
BackEnd\Components\RequestBuilder\BatchingEngine.cs (10)
151
Dictionary<string, ICollection<
ProjectItemInstance
>> itemListsToBeBatched = GetItemListsToBeBatched(consumedMetadataReferences, consumedItemReferences, lookup, elementLocation);
210
private static Dictionary<string, ICollection<
ProjectItemInstance
>> GetItemListsToBeBatched(
219
var itemListsToBeBatched = new Dictionary<string, ICollection<
ProjectItemInstance
>>(MSBuildNameIgnoreCaseComparer.Default);
261
ICollection<
ProjectItemInstance
> items = lookup.GetItems(consumedItemName);
266
foreach (
ProjectItemInstance
item in items)
306
Dictionary<string, ICollection<
ProjectItemInstance
>> itemListsToBeBatched,
318
foreach (KeyValuePair<string, ICollection<
ProjectItemInstance
>> entry in itemListsToBeBatched)
323
ICollection<
ProjectItemInstance
> items = entry.Value ?? lookup.GetItems(itemName);
329
foreach (
ProjectItemInstance
item in items)
402
ProjectItemInstance
item,
BackEnd\Components\RequestBuilder\IntrinsicTasks\ItemGroupIntrinsicTask.cs (27)
18
using ProjectItemInstanceFactory = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem.ProjectItemInstanceFactory;
170
List<
ProjectItemInstance
> itemsToAdd = ExpandItemIntoItems(child, bucket.Expander, keepMetadata, removeMetadata, loggingContext);
205
ProjectItemInstance
.SetMetadata(metadataTable.AddedMetadata, itemsToAdd); // Add in one operation for potential copy-on-write
254
ICollection<
ProjectItemInstance
> group = bucket.Lookup.GetItems(child.ItemType);
261
List<
ProjectItemInstance
> itemsToRemove;
301
ICollection<
ProjectItemInstance
> group = bucket.Lookup.GetItems(child.ItemType);
391
private List<
ProjectItemInstance
> ExpandItemIntoItems(
393
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander,
400
List<
ProjectItemInstance
> items = new List<
ProjectItemInstance
>();
438
IList<
ProjectItemInstance
> itemsFromSplit = expander.ExpandSingleItemVectorExpressionIntoItems(
495
foreach (
ProjectItemInstance
item in items)
522
foreach (
ProjectItemInstance
item in items)
586
private List<
ProjectItemInstance
> FindItemsMatchingSpecification(
587
ICollection<
ProjectItemInstance
> items,
590
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander)
636
List<
ProjectItemInstance
> itemsRemoved = new List<
ProjectItemInstance
>();
638
foreach (
ProjectItemInstance
item in items)
654
private List<
ProjectItemInstance
> FindItemsMatchingMetadataSpecification(
655
ICollection<
ProjectItemInstance
> group,
657
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander,
661
ItemSpec<ProjectPropertyInstance,
ProjectItemInstance
> itemSpec = new ItemSpec<ProjectPropertyInstance,
ProjectItemInstance
>(child.Remove, expander, child.RemoveLocation, Project.Directory, true);
663
itemSpec.Fragments.All(f => f is ItemSpec<ProjectPropertyInstance,
ProjectItemInstance
>.ItemExpressionFragment),
668
MetadataTrie<ProjectPropertyInstance,
ProjectItemInstance
> metadataSet = new MetadataTrie<ProjectPropertyInstance,
ProjectItemInstance
>(matchingOptions, matchOnMetadata, itemSpec);
BackEnd\Components\RequestBuilder\ItemBucket.cs (4)
31
private Expander<ProjectPropertyInstance,
ProjectItemInstance
> _expander;
106
_expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(_lookup, _lookup, new StringMetadataTable(_metadata), FileSystems.Default, loggingContext);
151
internal Expander<ProjectPropertyInstance,
ProjectItemInstance
> Expander
194
internal void AddItem(
ProjectItemInstance
item)
BackEnd\Components\RequestBuilder\Lookup.cs (75)
20
using ItemsMetadataUpdateDictionary = System.Collections.Generic.Dictionary<Microsoft.Build.Execution.
ProjectItemInstance
, Microsoft.Build.BackEnd.Lookup.MetadataModifications>;
21
using ItemTypeToItemsMetadataUpdateDictionary = System.Collections.Generic.Dictionary<string, System.Collections.Generic.Dictionary<Microsoft.Build.Execution.
ProjectItemInstance
, Microsoft.Build.BackEnd.Lookup.MetadataModifications>>;
58
internal class Lookup : IPropertyProvider<ProjectPropertyInstance>, IItemProvider<
ProjectItemInstance
>
69
private readonly IItemDictionary<
ProjectItemInstance
> _baseItems;
93
private Dictionary<
ProjectItemInstance
,
ProjectItemInstance
> _cloneTable;
102
internal Lookup(IItemDictionary<
ProjectItemInstance
> projectItems, PropertyDictionary<ProjectPropertyInstance> properties)
337
foreach (KeyValuePair<string, Dictionary<
ProjectItemInstance
, MetadataModifications>> entry in PrimaryModifyTable)
339
Dictionary<
ProjectItemInstance
, MetadataModifications> modifiesOfType;
343
foreach (KeyValuePair<
ProjectItemInstance
, MetadataModifications> modify in entry.Value)
380
foreach (KeyValuePair<string, List<
ProjectItemInstance
>> kvp in PrimaryAddTable)
388
foreach (KeyValuePair<string, List<
ProjectItemInstance
>> kvp in PrimaryRemoveTable)
396
foreach (KeyValuePair<string, Dictionary<
ProjectItemInstance
, MetadataModifications>> entry in PrimaryModifyTable)
463
public ICollection<
ProjectItemInstance
> GetItems(string itemType)
469
List<List<
ProjectItemInstance
>> allAdds = null;
470
List<List<
ProjectItemInstance
>> allRemoves = null;
471
Dictionary<
ProjectItemInstance
, MetadataModifications> allModifies = null;
472
ICollection<
ProjectItemInstance
> groupFound = null;
483
List<
ProjectItemInstance
> adds = scope.Adds[itemType];
494
List<
ProjectItemInstance
> removes = scope.Removes[itemType];
505
Dictionary<
ProjectItemInstance
, MetadataModifications> modifies;
510
allModifies ??= new Dictionary<
ProjectItemInstance
, MetadataModifications>(modifies.Count);
513
foreach (KeyValuePair<
ProjectItemInstance
, MetadataModifications> modify in modifies)
549
groupFound ??= Array.Empty<
ProjectItemInstance
>();
561
foreach (List<
ProjectItemInstance
> adds in allAdds)
570
foreach (List<
ProjectItemInstance
> removes in allRemoves)
585
List<
ProjectItemInstance
> result = new(itemsCount);
597
HashSet<
ProjectItemInstance
> removeSet = null;
601
removeSet = new HashSet<
ProjectItemInstance
>(totalRemoves);
602
foreach (List<
ProjectItemInstance
> removes in allRemoves)
604
foreach (
ProjectItemInstance
remove in removes)
620
foreach (
ProjectItemInstance
item in groupFound)
635
foreach (List<
ProjectItemInstance
> adds in allAdds)
644
foreach (
ProjectItemInstance
item in adds)
670
internal void PopulateWithItems(string itemType, ICollection<
ProjectItemInstance
> group)
681
ICollection<
ProjectItemInstance
> existing = PrimaryTable[itemType];
692
internal void PopulateWithItem(
ProjectItemInstance
item)
733
internal void AddNewItemsOfItemType(string itemType, ICollection<
ProjectItemInstance
> group, bool doNotAddDuplicates = false, Action<IList> logFunction = null)
739
foreach (
ProjectItemInstance
item in group)
752
IEnumerable<
ProjectItemInstance
> itemsToAdd = group;
757
var existingItemsHashSet = existingItems.ToHashSet(
ProjectItemInstance
.EqualityComparer);
759
var deduplicatedItemsToAdd = new List<
ProjectItemInstance
>();
760
foreach (
var
item in itemsToAdd)
775
logFunction.Invoke(itemsToAdd as List<
ProjectItemInstance
>);
779
var groupAsList = group as List<
ProjectItemInstance
>;
790
internal void AddNewItem(
ProjectItemInstance
item)
809
internal void RemoveItems(string itemType, ICollection<
ProjectItemInstance
> items)
822
IEnumerable<
ProjectItemInstance
> itemsToRemove = items.Select(RetrieveOriginalFromCloneTable);
834
internal void ModifyItems(string itemType, ICollection<
ProjectItemInstance
> group, MetadataModifications metadataChanges)
846
foreach (
ProjectItemInstance
item in group)
848
ProjectItemInstance
actualItem = RetrieveOriginalFromCloneTable(item);
866
Dictionary<
ProjectItemInstance
, MetadataModifications> modifiesOfType;
869
modifiesOfType = new Dictionary<
ProjectItemInstance
, MetadataModifications>();
873
foreach (
ProjectItemInstance
item in group)
881
ProjectItemInstance
actualItem = RetrieveOriginalFromCloneTable(item);
882
var modify = new KeyValuePair<
ProjectItemInstance
, MetadataModifications>(actualItem, metadataChangeCopy);
895
private void ApplyModifies(List<
ProjectItemInstance
> result, Dictionary<
ProjectItemInstance
, MetadataModifications> allModifies)
902
_cloneTable ??= new Dictionary<
ProjectItemInstance
,
ProjectItemInstance
>();
907
ProjectItemInstance
originalItem = result[i];
911
ProjectItemInstance
cloneItem = originalItem.DeepClone();
927
private static void ApplyMetadataModificationsToItem(MetadataModifications modificationsToApply,
ProjectItemInstance
itemToModify)
966
private
ProjectItemInstance
RetrieveOriginalFromCloneTable(
ProjectItemInstance
item)
968
ProjectItemInstance
original;
984
private void ApplyModificationsToTable(IItemDictionary<
ProjectItemInstance
> table, string itemType, ItemsMetadataUpdateDictionary modify)
986
ICollection<
ProjectItemInstance
> existing = table[itemType];
989
foreach (
ProjectItemInstance
item in existing)
1004
private void MergeModificationsIntoModificationTable(Dictionary<
ProjectItemInstance
, MetadataModifications> modifiesOfType,
1005
KeyValuePair<
ProjectItemInstance
, MetadataModifications> modify,
1042
private void MustNotBeInTable(ItemDictionarySlim table,
ProjectItemInstance
item)
1046
List<
ProjectItemInstance
> tableOfItemsOfSameType = table[item.ItemType];
1057
private void MustNotBeInTable(ItemTypeToItemsMetadataUpdateDictionary table,
ProjectItemInstance
item)
1072
private void MustNotBeInAnyTables(
ProjectItemInstance
item)
BackEnd\Components\RequestBuilder\RequestBuilder.cs (1)
1168
_requestEntry.RequestConfiguration.Project is IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance> project)
BackEnd\Components\RequestBuilder\TargetBuilder.cs (1)
18
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Components\RequestBuilder\TargetEntry.cs (5)
22
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
119
private Expander<ProjectPropertyInstance,
ProjectItemInstance
> _expander;
184
_expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(baseLookup, baseLookup, FileSystems.Default, loggingContext);
470
ItemDictionary<
ProjectItemInstance
> changedTargetInputs;
471
ItemDictionary<
ProjectItemInstance
> upToDateTargetInputs;
BackEnd\Components\RequestBuilder\TargetUpToDateChecker.cs (24)
17
using ProjectItemInstanceFactory = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem.ProjectItemInstanceFactory;
24
using ItemVectorPartition = System.Collections.Generic.Dictionary<string, System.Collections.Generic.IList<Microsoft.Build.Execution.
ProjectItemInstance
>>;
32
using ItemVectorPartitionCollection = System.Collections.Generic.Dictionary<string, System.Collections.Generic.Dictionary<string, System.Collections.Generic.IList<Microsoft.Build.Execution.
ProjectItemInstance
>>>;
135
out ItemDictionary<
ProjectItemInstance
> changedTargetInputs,
136
out ItemDictionary<
ProjectItemInstance
> upToDateTargetInputs)
593
out ItemDictionary<
ProjectItemInstance
> changedTargetInputs,
594
out ItemDictionary<
ProjectItemInstance
> upToDateTargetInputs)
598
changedTargetInputs = new ItemDictionary<
ProjectItemInstance
>();
599
upToDateTargetInputs = new ItemDictionary<
ProjectItemInstance
>();
615
foreach (IList<
ProjectItemInstance
> inputItems in inputItemVectors.Values)
622
List<
ProjectItemInstance
> upToDateInputItems = new List<
ProjectItemInstance
>(inputItems);
627
foreach (KeyValuePair<string, IList<
ProjectItemInstance
>> outputEntry in outputItemVectors)
629
IList<
ProjectItemInstance
> outputItems = outputEntry.Value;
687
foreach (
ProjectItemInstance
item in upToDateInputItems)
701
changedTargetInputs.ImportItemsOfType(inputItems[0].ItemType, Array.Empty<
ProjectItemInstance
>());
708
upToDateTargetInputs.ImportItemsOfType(inputItems[0].ItemType, Array.Empty<
ProjectItemInstance
>());
818
IList<
ProjectItemInstance
> itemVectorContents = bucket.Expander.ExpandSingleItemVectorExpressionIntoItems(item, itemFactory, ExpanderOptions.ExpandItems, true /* include null entries from transforms */, out bool isTransformExpression, elementLocation);
905
foreach (IList<
ProjectItemInstance
> items in itemVectorPartition.Values)
907
foreach (
ProjectItemInstance
item in items)
966
ErrorUtilities.VerifyThrow(inputs[0] is string || inputs[0] is
ProjectItemInstance
, "Must be either string or ProjectItemInstance");
971
ErrorUtilities.VerifyThrow(outputs[0] is string || outputs[0] is
ProjectItemInstance
, "Must be either string or ProjectItemInstance");
1086
ErrorUtilities.VerifyThrow(inputs[0] is string || inputs[0] is
ProjectItemInstance
, "Must be either string or ProjectItemInstance");
1091
ErrorUtilities.VerifyThrow(outputs[0] is string || outputs[0] is
ProjectItemInstance
, "Must be either string or ProjectItemInstance");
BackEnd\Components\RequestBuilder\TaskBuilder.cs (4)
27
using ProjectItemInstanceFactory = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem.ProjectItemInstanceFactory;
555
private TaskHostParameters GatherTaskIdentityParameters(Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander)
1073
foreach (
var
projectReferenceItem in projectReferenceItems)
1236
ICollection<
ProjectItemInstance
> items = bucket.Expander.ExpandIntoItemsLeaveEscaped(outputItemSpec, itemFactory, ExpanderOptions.ExpandItems, taskItemInstance.TaskParameterLocation);
BackEnd\Components\RequestBuilder\TaskHost.cs (1)
22
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\Shared\TargetResult.cs (1)
13
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
BackEnd\TaskExecutionHost\TaskExecutionHost.cs (2)
25
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
1488
ProjectItemInstance
newItem;
Collections\ItemDictionarySlim.cs (17)
14
internal sealed class ItemDictionarySlim : IEnumerable<KeyValuePair<string, List<
ProjectItemInstance
>>>
16
private readonly Dictionary<string, List<
ProjectItemInstance
>> _itemLists;
19
_itemLists = new Dictionary<string, List<
ProjectItemInstance
>>(MSBuildNameIgnoreCaseComparer.Default);
24
public List<
ProjectItemInstance
>? this[string itemType] =>
25
_itemLists.TryGetValue(itemType, out List<
ProjectItemInstance
>? itemsOfType) ? itemsOfType : null;
35
public void Add(
ProjectItemInstance
projectItem)
37
if (!_itemLists.TryGetValue(projectItem.ItemType, out List<
ProjectItemInstance
>? list))
55
foreach (KeyValuePair<string, List<
ProjectItemInstance
>> kvp in other._itemLists)
58
List<
ProjectItemInstance
> itemsToAdd = kvp.Value;
60
if (_itemLists.TryGetValue(itemType, out List<
ProjectItemInstance
>? list))
76
public void ImportItemsOfType(string itemType, IEnumerable<
ProjectItemInstance
> items)
78
if (!_itemLists.TryGetValue(itemType, out List<
ProjectItemInstance
>? list))
95
if (!_itemLists.TryGetValue(itemType, out List<
ProjectItemInstance
>? list))
97
list = new List<
ProjectItemInstance
>(capacity);
107
public Dictionary<string, List<
ProjectItemInstance
>>.Enumerator GetEnumerator() => _itemLists.GetEnumerator();
109
IEnumerator<KeyValuePair<string, List<
ProjectItemInstance
>>> IEnumerable<KeyValuePair<string, List<
ProjectItemInstance
>>>.GetEnumerator() => GetEnumerator();
Construction\Solution\SolutionProjectGenerator.cs (1)
1117
ProjectItemInstance
item;
Definition\Toolset.cs (3)
134
private Expander<ProjectPropertyInstance,
ProjectItemInstance
> _expander;
862
_expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(propertyBag, FileSystems.Default, loggingContext);
943
TaskRegistry.InitializeTaskRegistryFromUsingTaskElements<ProjectPropertyInstance,
ProjectItemInstance
>(
Definition\ToolsetReader.cs (5)
446
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(initialProperties, FileSystems.Default);
515
private void EvaluateAndSetProperty(ToolsetPropertyDefinition property, PropertyDictionary<ProjectPropertyInstance> properties, PropertyDictionary<ProjectPropertyInstance> globalProperties, PropertyDictionary<ProjectPropertyInstance> initialProperties, bool accumulateProperties, ref string toolsPath, ref string binPath, ref Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander)
564
expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(initialProperties, FileSystems.Default);
572
private string ExpandPropertyUnescaped(ToolsetPropertyDefinition property, Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander)
Evaluation\Conditionals\FunctionCallExpressionNode.cs (1)
10
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
Evaluation\ConditionEvaluator.cs (1)
14
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
Evaluation\Expander.cs (2)
32
using TaskItem = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem;
33
using TaskItemFactory = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem.TaskItemFactory;
Graph\GraphBuilder.cs (11)
244
var
stubItem = new ProjectItemInstance(
694
private ConcurrentDictionary<(ProjectGraphNode, ProjectGraphNode),
ProjectItemInstance
> ReferenceItems =
695
new ConcurrentDictionary<(ProjectGraphNode, ProjectGraphNode),
ProjectItemInstance
>();
699
public
ProjectItemInstance
this[(ProjectGraphNode node, ProjectGraphNode reference) key]
703
ErrorUtilities.VerifyThrow(ReferenceItems.TryGetValue(key, out
ProjectItemInstance
referenceItem), "All requested keys should exist");
708
public void AddOrUpdateEdge((ProjectGraphNode node, ProjectGraphNode reference) key,
ProjectItemInstance
edge)
713
addValueFactory: static ((ProjectGraphNode node, ProjectGraphNode reference) key,
ProjectItemInstance
referenceItem) => referenceItem,
714
updateValueFactory: static ((ProjectGraphNode node, ProjectGraphNode reference) key,
ProjectItemInstance
existingItem,
ProjectItemInstance
newItem) =>
729
ProjectItemInstance
mergedItem = existingItem.DeepClone();
753
internal IReadOnlyDictionary<(ConfigurationMetadata, ConfigurationMetadata),
ProjectItemInstance
> TestOnly_AsConfigurationMetadata()
Graph\ProjectGraph.cs (1)
800
private static ImmutableList<string> ExpandDefaultTargets(ImmutableList<string> targets, List<string> defaultTargets,
ProjectItemInstance
graphEdge)
Graph\ProjectGraphNode.cs (1)
57
internal void AddProjectReference(ProjectGraphNode reference,
ProjectItemInstance
projectReferenceItem, GraphBuilder.GraphEdges edges)
Graph\ProjectInterpretation.cs (10)
56
internal readonly record struct ReferenceInfo(ConfigurationMetadata ReferenceConfiguration,
ProjectItemInstance
ProjectReferenceItem);
79
IEnumerable<
ProjectItemInstance
> projectReferenceItems;
108
foreach (
ProjectItemInstance
projectReferenceItem in projectReferenceItems)
262
ProjectItemInstance
newInnerBuildEdge = graphBuilder.Edges[(outerBuildReferencingProject, outerBuild)];
283
private static IEnumerable<
ProjectItemInstance
> ConstructInnerBuildReferences(ProjectInstance outerBuild)
310
ProjectItemInstance
projectReference)
370
private delegate GlobalPropertyPartsForMSBuildTask GlobalPropertiesModifier(GlobalPropertyPartsForMSBuildTask defaultParts,
ProjectItemInstance
projectReference);
380
ProjectItemInstance
projectReference,
497
ICollection<
ProjectItemInstance
> projectReferenceTargets = project.GetItems(ItemTypeNames.ProjectReferenceTargets);
501
foreach (
ProjectItemInstance
projectReferenceTarget in projectReferenceTargets)
Instance\ProjectInstance.cs (112)
34
using ProjectItemInstanceFactory = Microsoft.Build.Execution.
ProjectItemInstance
.TaskItem.ProjectItemInstanceFactory;
79
public class ProjectInstance : IPropertyProvider<ProjectPropertyInstance>, IItemProvider<
ProjectItemInstance
>, IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>, ITranslatable
138
private IItemDictionary<
ProjectItemInstance
> _items;
143
private IMultiDictionary<string,
ProjectItemInstance
> _itemsByEvaluatedInclude;
453
_itemsByEvaluatedInclude = new ImmutableLinkedMultiDictionaryConverter<string, ProjectItem,
ProjectItemInstance
>(
571
_items = new ItemDictionary<
ProjectItemInstance
>(); // We don't want any of the items. That would include things like ProjectReferences, which would just pollute our own.
592
IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance> thisAsIEvaluatorData = this;
761
_items = new ItemDictionary<
ProjectItemInstance
>(that._items.Count);
763
foreach (
ProjectItemInstance
item in that.Items)
795
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance,
797
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance,
799
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance,
801
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance,
871
_items = new ItemDictionary<
ProjectItemInstance
>(that.Items.Count);
875
foreach (
var
actualItem in that.GetItems(itemFilter.Key))
877
var
filteredItem = actualItem.DeepClone(this);
979
private static ImmutableItemDictionary<ProjectItem,
ProjectItemInstance
> GetImmutableItemsDictionaryFromImmutableProject(
989
Func<ProjectItem,
ProjectItemInstance
> convertCachedItemToInstance =
992
var itemDictionary = new ImmutableItemDictionary<ProjectItem,
ProjectItemInstance
>(
1001
private static
ProjectItemInstance
ConvertCachedProjectItemToInstance(
1006
ProjectItemInstance
result = null;
1007
if (projectItem is IImmutableInstanceProvider<
ProjectItemInstance
> instanceProvider)
1012
var
newInstance = InstantiateProjectItemInstanceFromImmutableProjectSource(
1153
bool IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.CanEvaluateElementsWithFalseConditions => false;
1173
public ICollection<
ProjectItemInstance
> Items
1179
(ICollection<
ProjectItemInstance
>)ReadOnlyEmptyCollection<
ProjectItemInstance
>.Instance :
1180
new ReadOnlyCollection<
ProjectItemInstance
>(_items);
1320
TaskRegistry IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.TaskRegistry
1337
Toolset IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.Toolset
1348
string IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.SubToolsetVersion
1362
string IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.ExplicitToolsVersion
1372
PropertyDictionary<ProjectPropertyInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.GlobalPropertiesDictionary
1379
PropertyDictionary<ProjectPropertyInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.EnvironmentVariablePropertiesDictionary
1384
PropertyDictionary<ProjectPropertyInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.SdkResolvedEnvironmentVariablePropertiesDictionary
1429
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this)
1449
ISet<string> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.GlobalPropertiesToTreatAsLocal
1465
PropertyDictionary<ProjectPropertyInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.Properties
1475
IEnumerable<ProjectItemDefinitionInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.ItemDefinitionsEnumerable
1485
IItemDictionary<
ProjectItemInstance
> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.Items
1496
List<string> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.InitialTargets
1514
List<string> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.DefaultTargets
1532
IDictionary<string, List<TargetSpecification>> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.BeforeTargets
1542
IDictionary<string, List<TargetSpecification>> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AfterTargets
1555
Dictionary<string, List<string>> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.ConditionedProperties
1569
bool IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.ShouldEvaluateForDesignTime
1667
internal IItemDictionary<
ProjectItemInstance
> ItemsToBuildWith
1711
public static string GetEvaluatedItemIncludeEscaped(
ProjectItemInstance
item)
1742
public static string GetMetadataValueEscaped(
ProjectItemInstance
item, string name)
1777
ICollection<
ProjectItemInstance
> IItemProvider<
ProjectItemInstance
>.GetItems(string itemType)
1786
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.
1796
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.FinishEvaluation()
1806
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddItem(
ProjectItemInstance
item)
1817
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddItemIgnoringCondition(
ProjectItemInstance
item)
1826
IItemDefinition<ProjectMetadataInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddItemDefinition(string itemType)
1844
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddToAllEvaluatedPropertiesList(ProjectPropertyInstance property)
1858
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddToAllEvaluatedItemDefinitionMetadataList(ProjectMetadataInstance itemDefinitionMetadatum)
1872
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddToAllEvaluatedItemsList(
ProjectItemInstance
item)
1880
IItemDefinition<ProjectMetadataInstance> IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.GetItemDefinition(string itemType)
1895
ProjectPropertyInstance IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.SetProperty(string name, string evaluatedValueEscaped, bool isGlobalProperty, bool mayBeReserved, LoggingContext loggingContext, bool isEnvironmentVariable, bool isCommandLineProperty)
1908
ProjectPropertyInstance IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.SetProperty(ProjectPropertyElement propertyElement, string evaluatedValueEscaped, LoggingContext loggingContext)
1919
ProjectTargetInstance IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.GetTarget(string targetName)
1932
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.AddTarget(ProjectTargetInstance target)
1940
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.RecordImport(
1954
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this).RecordImportWithDuplicates(importElement, import, versionEvaluated);
1960
void IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.RecordImportWithDuplicates(ProjectImportElement importElement, ProjectRootElement import, int versionEvaluated)
2057
public
ProjectItemInstance
AddItem(string itemType, string evaluatedInclude)
2061
ProjectItemInstance
item = new ProjectItemInstance(this, itemType, evaluatedInclude, this.FullPath);
2080
public
ProjectItemInstance
AddItem(string itemType, string evaluatedInclude, IEnumerable<KeyValuePair<string, string>> metadata)
2084
ProjectItemInstance
item = new ProjectItemInstance(this, itemType, evaluatedInclude, metadata, this.FullPath);
2095
public ICollection<
ProjectItemInstance
> GetItems(string itemType)
2098
return ((IItemProvider<
ProjectItemInstance
>)this).GetItems(itemType);
2104
public IEnumerable<
ProjectItemInstance
> GetItemsByItemTypeAndEvaluatedInclude(string itemType, string evaluatedInclude)
2109
foreach (
var
item in GetItems(itemType))
2119
foreach (
var
item in GetItemsByEvaluatedInclude(evaluatedInclude))
2133
public bool RemoveItem(
ProjectItemInstance
item)
2346
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(this, this, FileSystems.Default, _loggingContext);
2364
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(this, this, FileSystems.Default, _loggingContext);
2402
foreach (
ProjectItemInstance
item in _items.GetItems(itemType))
2445
_items = new ItemDictionary<
ProjectItemInstance
>(projectState._items);
2601
_items = new ItemDictionary<
ProjectItemInstance
>(typeCount);
2608
ProjectItemInstance
item = null;
2609
translator.Translate(ref item, delegate { return
ProjectItemInstance
.FactoryForDeserialization(translator, this); });
2621
ICollection<
ProjectItemInstance
> itemList = _items[itemType];
2624
foreach (
ProjectItemInstance
item in itemList)
2626
ProjectItemInstance
temp = item;
2627
translator.Translate(ref temp, delegate { return
ProjectItemInstance
.FactoryForDeserialization(translator, this); });
2863
if (((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this).BeforeTargets.TryGetValue(target, out beforeTargetsForTarget))
2880
if (((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this).AfterTargets.TryGetValue(target, out afterTargetsForTarget))
3211
_items = new ItemDictionary<
ProjectItemInstance
>();
3291
Evaluator<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>.Evaluate(
3316
private IEnumerable<
ProjectItemInstance
> GetItemsByEvaluatedInclude(string evaluatedInclude)
3345
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this).BeforeTargets = CreateCloneDictionary(beforeTargets, StringComparer.OrdinalIgnoreCase);
3346
((IEvaluatorData<ProjectPropertyInstance,
ProjectItemInstance
, ProjectMetadataInstance, ProjectItemDefinitionInstance>)this).AfterTargets = CreateCloneDictionary(afterTargets, StringComparer.OrdinalIgnoreCase);
3410
private void CreateEvaluatedIncludeSnapshotIfRequested(bool keepEvaluationCache, ICollection<ProjectItem> items, Dictionary<ProjectItem,
ProjectItemInstance
> projectItemToInstanceMap)
3417
var multiDictionary = new MultiDictionary<string,
ProjectItemInstance
>(items.Count, StringComparer.OrdinalIgnoreCase);
3429
private Dictionary<ProjectItem,
ProjectItemInstance
> CreateItemsSnapshot(ICollection<ProjectItem> items, int itemTypeCount, bool keepEvaluationCache)
3431
_items = new ItemDictionary<
ProjectItemInstance
>(itemTypeCount);
3433
var projectItemToInstanceMap = keepEvaluationCache ? new Dictionary<ProjectItem,
ProjectItemInstance
>(items.Count) : null;
3437
ProjectItemInstance
instance = InstantiateProjectItemInstance(item);
3445
private
ProjectItemInstance
InstantiateProjectItemInstance(ProjectItem item)
3475
var
instance = new ProjectItemInstance(
3500
private static
ProjectItemInstance
InstantiateProjectItemInstanceFromImmutableProjectSource(
3535
ProjectItemInstance
instance = new ProjectItemInstance(
Instance\ProjectItemInstance.cs (34)
140
private ProjectItemInstance(
ProjectItemInstance
that)
148
private ProjectItemInstance(
ProjectItemInstance
that, ProjectInstance newProject)
353
internal static IEqualityComparer<
ProjectItemInstance
> EqualityComparer
620
internal static void SetMetadata(Dictionary<string, string> metadataList, List<
ProjectItemInstance
> items)
628
foreach (
ProjectItemInstance
item in items)
638
internal static
ProjectItemInstance
FactoryForDeserialization(ITranslator translator, ProjectInstance projectInstance)
640
ProjectItemInstance
newItem = new ProjectItemInstance(projectInstance);
687
internal
ProjectItemInstance
DeepClone()
696
internal
ProjectItemInstance
DeepClone(ProjectInstance newProject)
879
/// Creates a task item by copying the information from a <see cref="
ProjectItemInstance
"/>.
882
internal TaskItem(
ProjectItemInstance
item)
1445
Expander<ProjectPropertyInstance,
ProjectItemInstance
> expander = new Expander<ProjectPropertyInstance,
ProjectItemInstance
>(null, null, new BuiltInMetadataTable(null, this), FileSystems.Default);
2212
internal class ProjectItemInstanceFactory : IItemFactory<
ProjectItemInstance
,
ProjectItemInstance
>
2263
public
ProjectItemInstance
CreateItem(string include, string definingProject)
2267
ProjectItemInstance
item = new ProjectItemInstance(_project, ItemType, include, definingProject);
2277
public
ProjectItemInstance
CreateItem(
ProjectItemInstance
source, string definingProject)
2287
public
ProjectItemInstance
CreateItem(string includeEscaped,
ProjectItemInstance
source, string definingProject)
2296
public
ProjectItemInstance
CreateItem(string evaluatedInclude, string evaluatedIncludeBeforeWildcardExpansion, string definingProject)
2306
public void SetMetadata(IEnumerable<KeyValuePair<ProjectMetadataElement, string>> metadataList, IEnumerable<
ProjectItemInstance
> destinationItems)
2315
foreach (
ProjectItemInstance
item in destinationItems)
2325
private
ProjectItemInstance
CreateItem(string includeEscaped, string includeBeforeWildcardExpansionEscaped,
ProjectItemInstance
source, string definingProject)
2360
internal class TaskItemFactory : IItemFactory<ProjectItem, TaskItem>, IItemFactory<
ProjectItemInstance
, TaskItem>
2439
public TaskItem CreateItem(
ProjectItemInstance
source, string definingProject)
2449
public TaskItem CreateItem(string includeEscaped,
ProjectItemInstance
baseItem, string definingProject)
2553
internal class ProjectItemInstanceEqualityComparer : IEqualityComparer<
ProjectItemInstance
>
2570
public static IEqualityComparer<
ProjectItemInstance
> Default
2581
public bool Equals(
ProjectItemInstance
x,
ProjectItemInstance
y)
2591
public int GetHashCode(
ProjectItemInstance
obj)
Logging\BinaryLogger\BuildEventArgsWriter.cs (1)
968
if (items is ItemDictionary<
ProjectItemInstance
> itemInstanceDictionary)
ObjectModelRemoting\LinkedObjectFactory.cs (5)
241
private class LinkedProjectItem : ProjectItem, ILinkableObject, IImmutableInstanceProvider<
ProjectItemInstance
>
243
private
ProjectItemInstance
_immutableInstance;
251
public
ProjectItemInstance
ImmutableInstance => _immutableInstance;
253
public
ProjectItemInstance
GetOrSetImmutableInstance(
ProjectItemInstance
instance)
Utilities\Utilities.cs (3)
766
if (items is ItemDictionary<
ProjectItemInstance
> projectItemInstanceDictionary)
797
if (items is ItemDictionary<
ProjectItemInstance
> projectItemInstanceDictionary)
826
if (items is ItemDictionary<
ProjectItemInstance
> projectItemInstanceDictionary)
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (3)
MSBuild\ProjectFile\Extensions.cs (3)
29
foreach (
var
item in project.GetItems(ItemNames.ReferencePath))
55
foreach (
var
item in packageReferenceItems)
69
private static ProjectFileReference CreateProjectFileReference(MSB.Execution.
ProjectItemInstance
reference)
Microsoft.DotNet.HotReload.Watch (3)
Build\EvaluationResult.cs (2)
201
foreach (
var
item in projectInstance.GetItems(ItemNames.ScopedCssInput))
212
foreach (
var
item in items)
Build\ProjectGraphUtilities.cs (1)
91
public static bool GetBooleanMetadataValue(this
ProjectItemInstance
item, string metadataName, bool defaultValue = false)
Microsoft.DotNet.ProjectTools (1)
VirtualProjectBuilder.cs (1)
353
foreach (
var
compileItem in compileItems)
MSBuild (2)
JsonOutputFormatter.cs (2)
59
foreach (
ProjectItemInstance
item in project.GetItems(itemName))
187
private static string TryGetMetadataValue(
ProjectItemInstance
item, string metadataName)
NuGet.Build.Tasks.Console (12)
ItemAdapter.cs (2)
13
private
ProjectItemInstance
_item;
15
public ItemAdapter(
ProjectItemInstance
item)
MSBuildProjectItemInstance.cs (5)
10
/// Represents an <see cref="MSBuildItemBase" /> implementation which wraps a <see cref="
ProjectItemInstance
" /> object.
15
/// Gets the <see cref="
ProjectItemInstance
" /> being wrapped.
17
private readonly
ProjectItemInstance
_projectItemInstance;
22
/// <param name="projectItemInstance">The <see cref="
ProjectItemInstance
" /> to wrap.</param>
23
public MSBuildProjectItemInstance(
ProjectItemInstance
projectItemInstance)
ProjectItemInstanceEvaluatedIncludeComparer.cs (4)
33
/// Determines whether or not the two <see cref="
ProjectItemInstance
" /> objects are considered equal.
35
/// <param name="x">The first <see cref="
ProjectItemInstance
" /> to compare, or <code>null</code>.</param>
36
/// <param name="y">The second <see cref="
ProjectItemInstance
" /> to compare, or <code>null</code>.</param>
37
/// <returns><code>true</code> if the specified <see cref="
ProjectItemInstance
" /> objects have the same Include value, otherwise <code>false</code>.</returns>
TargetFrameworkAdapter.cs (1)
23
foreach (
var
item in items)