287 references to ItemSpecModifiers
Microsoft.Build (81)
BackEnd\BuildManager\BuildManager.cs (1)
1108
ItemSpecModifiers
.ClearDefiningProjectCache();
BackEnd\Components\RequestBuilder\IntrinsicTasks\MSBuild.cs (1)
714
outputItemFromTarget.SetMetadata(ItemMetadataNames.msbuildSourceProjectFile, projects[i].GetMetadata(
ItemSpecModifiers
.FullPath));
Construction\ProjectMetadataElement.cs (1)
107
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(name), "ItemSpecModifierCannotBeCustomMetadata", name);
Definition\BuiltInMetadata.cs (7)
22
internal static int MetadataCount =>
ItemSpecModifiers
.All.Length;
27
internal static ImmutableArray<string> MetadataNames =>
ItemSpecModifiers
.All;
49
ref
ItemSpecModifiers
.Cache cache)
62
ref
ItemSpecModifiers
.Cache cache)
64
if (
ItemSpecModifiers
.TryGetModifierKind(name, out ItemSpecModifierKind modifierKind))
83
ref
ItemSpecModifiers
.Cache cache)
86
:
ItemSpecModifiers
.GetItemSpecModifier(evaluatedIncludeEscaped, modifierKind, currentDirectory, definingProjectEscaped, ref cache);
Definition\ProjectItem.cs (6)
105
private
ItemSpecModifiers
.Cache _cachedModifiers;
302
public int MetadataCount => Metadata.Count +
ItemSpecModifiers
.All.Length;
456
if (
ItemSpecModifiers
.IsItemSpecModifier(name))
581
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(name), "ItemSpecModifierCannotBeCustomMetadata", name);
639
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(name), "ItemSpecModifierCannotBeCustomMetadata", name);
852
=>
ItemSpecModifiers
.TryGetModifierKind(name, out ItemSpecModifierKind modifierKind)
Definition\ProjectItemDefinition.cs (1)
154
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(name), "ItemSpecModifierCannotBeCustomMetadata", name);
Evaluation\Conditionals\Scanner.cs (1)
478
bool isItemSpecModifier =
ItemSpecModifiers
.IsItemSpecModifier(expression);
Evaluation\Expander.cs (38)
29
using ItemSpecModifiers = Microsoft.Build.Framework.
ItemSpecModifiers
;
1167
bool isBuiltInMetadata =
ItemSpecModifiers
.IsItemSpecModifier(metadataName);
1962
if (
ItemSpecModifiers
.IsDerivableItemSpecModifier(functionName))
2463
[$"%({
ItemSpecModifiers
.FullPath})"] =
ItemSpecModifiers
.FullPath,
2464
[$"%({
ItemSpecModifiers
.RootDir})"] =
ItemSpecModifiers
.RootDir,
2465
[$"%({
ItemSpecModifiers
.Filename})"] =
ItemSpecModifiers
.Filename,
2466
[$"%({
ItemSpecModifiers
.Extension})"] =
ItemSpecModifiers
.Extension,
2467
[$"%({
ItemSpecModifiers
.RelativeDir})"] =
ItemSpecModifiers
.RelativeDir,
2468
[$"%({
ItemSpecModifiers
.Directory})"] =
ItemSpecModifiers
.Directory,
2469
[$"%({
ItemSpecModifiers
.RecursiveDir})"] =
ItemSpecModifiers
.RecursiveDir,
2470
[$"%({
ItemSpecModifiers
.Identity})"] =
ItemSpecModifiers
.Identity,
2471
[$"%({
ItemSpecModifiers
.ModifiedTime})"] =
ItemSpecModifiers
.ModifiedTime,
2472
[$"%({
ItemSpecModifiers
.CreatedTime})"] =
ItemSpecModifiers
.CreatedTime,
2473
[$"%({
ItemSpecModifiers
.AccessedTime})"] =
ItemSpecModifiers
.AccessedTime,
2474
[$"%({
ItemSpecModifiers
.DefiningProjectFullPath})"] =
ItemSpecModifiers
.DefiningProjectFullPath,
2475
[$"%({
ItemSpecModifiers
.DefiningProjectDirectory})"] =
ItemSpecModifiers
.DefiningProjectDirectory,
2476
[$"%({
ItemSpecModifiers
.DefiningProjectName})"] =
ItemSpecModifiers
.DefiningProjectName,
2477
[$"%({
ItemSpecModifiers
.DefiningProjectExtension})"] =
ItemSpecModifiers
.DefiningProjectExtension,
2561
string definingProjectEscaped = item.Value.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
2563
result =
ItemSpecModifiers
.GetItemSpecModifier(item.Key, functionName, directoryToUse, definingProjectEscaped);
3321
if (
ItemSpecModifiers
.IsDerivableItemSpecModifier(match.Name))
3329
string definingProjectEscaped = sourceOfMetadata.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
3331
value =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, match.Name, directoryToUse, definingProjectEscaped);
Evaluation\ProjectParser.cs (2)
379
if (
ItemSpecModifiers
.IsItemSpecModifier(name) || XMakeElements.ReservedItemNames.Contains(name))
400
ProjectErrorUtilities.VerifyThrowInvalidProject(!
ItemSpecModifiers
.IsItemSpecModifier(element.Name), element.Location, "ItemSpecModifierCannotBeCustomMetadata", element.Name);
Instance\ProjectItemInstance.cs (9)
822
private
ItemSpecModifiers
.Cache _cachedModifiers;
977
List<string> names = new List<string>(capacity: metadataCollection.Count +
ItemSpecModifiers
.All.Length);
984
foreach (string name in
ItemSpecModifiers
.All)
1823
ItemSpecModifiers
.IsItemSpecModifier(name) ||
2018
if (!
ItemSpecModifiers
.IsDerivableItemSpecModifier(name))
2031
.Where(item => !
ItemSpecModifiers
.IsDerivableItemSpecModifier(item.Key));
2087
=>
ItemSpecModifiers
.TryGetModifierKind(name, out ItemSpecModifierKind modifierKind)
2184
if (_itemSpecModifiersIndex <
ItemSpecModifiers
.All.Length)
2186
Current =
ItemSpecModifiers
.All[_itemSpecModifiersIndex];
Instance\ProjectMetadataInstance.cs (1)
245
if (
ItemSpecModifiers
.IsItemSpecModifier(name))
TaskParameter.cs (13)
565
private
ItemSpecModifiers
.Cache _cachedModifiers;
575
_escapedDefiningProject = copyFromAsITaskItem2.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
596
_escapedDefiningProject = EscapingUtilities.EscapeWithCaching(copyFrom.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath));
618
string recursiveDirEscaped = copyFromForRecursiveDir.GetMetadataValueEscaped(
ItemSpecModifiers
.RecursiveDir);
622
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = recursiveDirEscaped;
627
string recursiveDir = copyFrom.GetMetadata(
ItemSpecModifiers
.RecursiveDir);
631
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = EscapingUtilities.Escape(recursiveDir);
673
foreach (string name in
ItemSpecModifiers
.All)
692
return count +
ItemSpecModifiers
.All.Length;
738
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
752
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
859
if (
ItemSpecModifiers
.TryGetDerivableModifierKind(metadataName, out ItemSpecModifierKind modifierKind))
863
return
ItemSpecModifiers
.GetItemSpecModifier(_escapedItemSpec, modifierKind, null, _escapedDefiningProject, ref _cachedModifiers);
Microsoft.Build.Engine.UnitTests (6)
Instance\TaskItem_Tests.cs (2)
63
Assert.Equal(item.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath), deserializedItem.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath));
TestComparers\TaskItemComparer.cs (4)
53
if (!
ItemSpecModifiers
.IsItemSpecModifier(metadataName) ||
54
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName))
65
if (!
ItemSpecModifiers
.IsItemSpecModifier(metadataName) ||
66
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName))
Microsoft.Build.Framework.UnitTests (71)
FileUtilities_Tests.cs (71)
35
ItemSpecModifiers
.Cache cache = default;
36
string modifier =
ItemSpecModifiers
.GetItemSpecModifier("foo", ItemSpecModifierKind.RecursiveDir, currentDirectory, String.Empty, ref cache);
40
modifier =
ItemSpecModifiers
.GetItemSpecModifier("foo", ItemSpecModifierKind.ModifiedTime, currentDirectory, String.Empty, ref cache);
44
modifier =
ItemSpecModifiers
.GetItemSpecModifier(@"foo\goo", ItemSpecModifierKind.RelativeDir, currentDirectory, String.Empty, ref cache);
48
modifier =
ItemSpecModifiers
.GetItemSpecModifier(@"foo\goo", ItemSpecModifierKind.RelativeDir, currentDirectory, String.Empty, ref cache);
54
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.FullPath, currentDirectory, String.Empty, ref cache);
58
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.RootDir, currentDirectory, String.Empty, ref cache);
61
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.Filename, currentDirectory, String.Empty, ref cache);
64
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.Extension, currentDirectory, String.Empty, ref cache);
67
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.Directory, currentDirectory, String.Empty, ref cache);
70
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.Identity, currentDirectory, String.Empty, ref cache);
75
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.DefiningProjectDirectory, currentDirectory, projectPath, ref cache);
78
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.DefiningProjectExtension, currentDirectory, projectPath, ref cache);
81
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.DefiningProjectFullPath, currentDirectory, projectPath, ref cache);
84
modifier =
ItemSpecModifiers
.GetItemSpecModifier(itemSpec, ItemSpecModifierKind.DefiningProjectName, currentDirectory, projectPath, ref cache);
178
ItemSpecModifiers
.GetItemSpecModifier(@"http://www.microsoft.com",
ItemSpecModifiers
.RootDir, currentDirectory, String.Empty);
342
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("FullPath")); // "test 1"
343
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("RootDir")); // "test 2"
344
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("Filename")); // "test 3"
345
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("Extension")); // "test 4"
346
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("RelativeDir")); // "test 5"
347
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("Directory")); // "test 6"
348
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("RecursiveDir")); // "test 7"
349
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("Identity")); // "test 8"
350
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("ModifiedTime")); // "test 9"
351
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("CreatedTime")); // "test 10"
352
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("AccessedTime")); // "test 11"
355
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("fullPath")); // "test 21"
356
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("rootDir")); // "test 22"
357
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("filename")); // "test 23"
358
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("extension")); // "test 24"
359
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("relativeDir")); // "test 25"
360
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("directory")); // "test 26"
361
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("recursiveDir")); // "test 27"
362
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("identity")); // "test 28"
363
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("modifiedTime")); // "test 29"
364
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("createdTime")); // "test 30"
365
Assert.True(
ItemSpecModifiers
.IsItemSpecModifier("accessedTime")); // "test 31"
369
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("rootxxx")); // "test 41"
370
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Rootxxx")); // "test 42"
371
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxx")); // "test 43"
373
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("filexxxx")); // "test 44"
374
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Filexxxx")); // "test 45"
375
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("idenxxxx")); // "test 46"
376
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Idenxxxx")); // "test 47"
377
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxxx")); // "test 48"
379
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("extenxxxx")); // "test 49"
380
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Extenxxxx")); // "test 50"
381
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("direcxxxx")); // "test 51"
382
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Direcxxxx")); // "test 52"
383
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxxxx")); // "test 53"
385
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxxxxx")); // "test 54"
387
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("relativexxx")); // "test 55"
388
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Relativexxx")); // "test 56"
389
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("createdxxxx")); // "test 57"
390
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Createdxxxx")); // "test 58"
391
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxxxxxx")); // "test 59"
393
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("recursivexxx")); // "test 60"
394
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Recursivexxx")); // "test 61"
395
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("accessedxxxx")); // "test 62"
396
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Accessedxxxx")); // "test 63"
397
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("modifiedxxxx")); // "test 64"
398
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("Modifiedxxxx")); // "test 65"
399
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier("xxxxxxxxxxxx")); // "test 66"
401
Assert.False(
ItemSpecModifiers
.IsItemSpecModifier(null)); // "test 67"
407
Assert.True(
ItemSpecModifiers
.IsDerivableItemSpecModifier("Filename"));
408
Assert.False(
ItemSpecModifiers
.IsDerivableItemSpecModifier("RecursiveDir"));
409
Assert.False(
ItemSpecModifiers
.IsDerivableItemSpecModifier("recursivedir"));
442
ItemSpecModifiers
.Cache cache = new() { FullPath = fullPath };
444
Assert.Equal(@"c:\",
ItemSpecModifiers
.GetItemSpecModifier(fullPath, ItemSpecModifierKind.RootDir, currentDirectory, String.Empty, ref cache));
Microsoft.Build.Tasks.Core (20)
AssemblyDependency\ReferenceTable.cs (1)
873
name = item.GetMetadata(
ItemSpecModifiers
.Filename);
AssignLinkMetadata.cs (3)
47
string definingProject = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath);
48
string definingProjectDirectory = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectDirectory);
49
string fullPath = item.GetMetadata(
ItemSpecModifiers
.FullPath);
CreateItem.cs (2)
120
if (
ItemSpecModifiers
.IsItemSpecModifier(nameAndValue.Key))
197
newItem.SetMetadata(
ItemSpecModifiers
.RecursiveDir, match.wildcardDirectoryPart);
MSBuild.cs (1)
657
outputItemFromTarget.SetMetadata(ItemMetadataNames.msbuildSourceProjectFile, projects[i].GetMetadata(
ItemSpecModifiers
.FullPath));
TaskParameter.cs (13)
565
private
ItemSpecModifiers
.Cache _cachedModifiers;
575
_escapedDefiningProject = copyFromAsITaskItem2.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
596
_escapedDefiningProject = EscapingUtilities.EscapeWithCaching(copyFrom.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath));
618
string recursiveDirEscaped = copyFromForRecursiveDir.GetMetadataValueEscaped(
ItemSpecModifiers
.RecursiveDir);
622
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = recursiveDirEscaped;
627
string recursiveDir = copyFrom.GetMetadata(
ItemSpecModifiers
.RecursiveDir);
631
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = EscapingUtilities.Escape(recursiveDir);
673
foreach (string name in
ItemSpecModifiers
.All)
692
return count +
ItemSpecModifiers
.All.Length;
738
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
752
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
859
if (
ItemSpecModifiers
.TryGetDerivableModifierKind(metadataName, out ItemSpecModifierKind modifierKind))
863
return
ItemSpecModifiers
.GetItemSpecModifier(_escapedItemSpec, modifierKind, null, _escapedDefiningProject, ref _cachedModifiers);
Microsoft.Build.Utilities.Core (11)
TaskItem.cs (11)
55
private
ItemSpecModifiers
.Cache _cachedModifiers;
133
if (!
ItemSpecModifiers
.IsDerivableItemSpecModifier(key))
156
_definingProject = EscapingUtilities.EscapeWithCaching(sourceItem.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath));
161
_definingProject = sourceItemAsITaskItem2.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
220
int count = (_metadata?.Count ?? 0) +
ItemSpecModifiers
.All.Length;
229
foreach (string name in
ItemSpecModifiers
.All)
242
public int MetadataCount => (_metadata?.Count ?? 0) +
ItemSpecModifiers
.All.Length;
277
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(metadataName),
313
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName),
508
if (
ItemSpecModifiers
.TryGetDerivableModifierKind(metadataName, out ItemSpecModifierKind modifierKind))
512
return
ItemSpecModifiers
.GetItemSpecModifier(_itemSpec, modifierKind, null, _definingProject, ref _cachedModifiers);
Microsoft.Build.Utilities.UnitTests (31)
TaskItem_Tests.cs (31)
44
to.GetMetadata(
ItemSpecModifiers
.Filename).ShouldBe("Monkey");
45
to.GetMetadata(
ItemSpecModifiers
.Extension).ShouldBe(".txt");
46
to.GetMetadata(
ItemSpecModifiers
.RelativeDir).ShouldBe(string.Empty);
91
taskItem.MetadataNames.Cast<string>().ShouldBeSetEquivalentTo(
ItemSpecModifiers
.All);
92
taskItem.MetadataCount.ShouldBe(
ItemSpecModifiers
.All.Length);
97
taskItem.MetadataNames.Cast<string>().ShouldBeSetEquivalentTo(
ItemSpecModifiers
.All.Concat(new[] { "m" }));
98
taskItem.MetadataCount.ShouldBe(
ItemSpecModifiers
.All.Length + 1);
116
h[
ItemSpecModifiers
.Filename] = "foo";
117
h[
ItemSpecModifiers
.Extension] = "bar";
123
t.GetMetadata(
ItemSpecModifiers
.Filename).ShouldBe("bamboo");
124
t.GetMetadata(
ItemSpecModifiers
.Extension).ShouldBe(".baz");
137
t.SetMetadata(
ItemSpecModifiers
.FullPath, "bazbaz");
157
t.RemoveMetadata(
ItemSpecModifiers
.RootDir);
172
t.MetadataCount.ShouldBe(
ItemSpecModifiers
.All.Length);
176
t.MetadataCount.ShouldBe(
ItemSpecModifiers
.All.Length + 1);
184
from.GetMetadata(
ItemSpecModifiers
.FullPath).ShouldBe(
195
from.GetMetadata(
ItemSpecModifiers
.RootDir).ShouldBe(Path.GetPathRoot(from.GetMetadata(
ItemSpecModifiers
.FullPath)));
203
from.GetMetadata(
ItemSpecModifiers
.Filename).ShouldBe("Monkey");
211
from.GetMetadata(
ItemSpecModifiers
.Extension).ShouldBe(".txt");
219
from.GetMetadata(
ItemSpecModifiers
.RelativeDir).Length.ShouldBe(0);
227
from.GetMetadata(
ItemSpecModifiers
.Directory).ShouldBe(NativeMethodsShared.IsWindows ? @"subdir\" : "subdir/");
235
from.GetMetadata(
ItemSpecModifiers
.Directory).ShouldBe(@"subdir\");
244
from.GetMetadata(
ItemSpecModifiers
.RecursiveDir).Length.ShouldBe(0);
252
from.GetMetadata(
ItemSpecModifiers
.Identity).ShouldBe("Monkey.txt");
261
from.GetMetadata(
ItemSpecModifiers
.ModifiedTime).Length.ShouldBeGreaterThan(0);
263
from.GetMetadata(
ItemSpecModifiers
.CreatedTime).Length.ShouldBeGreaterThan(0);
265
from.GetMetadata(
ItemSpecModifiers
.AccessedTime).Length.ShouldBeGreaterThan(0);
269
from.GetMetadata(
ItemSpecModifiers
.ModifiedTime).Length.ShouldBe(0);
271
from.GetMetadata(
ItemSpecModifiers
.CreatedTime).Length.ShouldBe(0);
273
from.GetMetadata(
ItemSpecModifiers
.AccessedTime).Length.ShouldBe(0);
MSBuild (14)
JsonOutputFormatter.cs (1)
104
foreach (string metadatumName in
ItemSpecModifiers
.All)
TaskParameter.cs (13)
565
private
ItemSpecModifiers
.Cache _cachedModifiers;
575
_escapedDefiningProject = copyFromAsITaskItem2.GetMetadataValueEscaped(
ItemSpecModifiers
.DefiningProjectFullPath);
596
_escapedDefiningProject = EscapingUtilities.EscapeWithCaching(copyFrom.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath));
618
string recursiveDirEscaped = copyFromForRecursiveDir.GetMetadataValueEscaped(
ItemSpecModifiers
.RecursiveDir);
622
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = recursiveDirEscaped;
627
string recursiveDir = copyFrom.GetMetadata(
ItemSpecModifiers
.RecursiveDir);
631
_customEscapedMetadata[
ItemSpecModifiers
.RecursiveDir] = EscapingUtilities.Escape(recursiveDir);
673
foreach (string name in
ItemSpecModifiers
.All)
692
return count +
ItemSpecModifiers
.All.Length;
738
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsDerivableItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
752
ErrorUtilities.VerifyThrowArgument(!
ItemSpecModifiers
.IsItemSpecModifier(metadataName), "Shared.CannotChangeItemSpecModifiers", metadataName);
859
if (
ItemSpecModifiers
.TryGetDerivableModifierKind(metadataName, out ItemSpecModifierKind modifierKind))
863
return
ItemSpecModifiers
.GetItemSpecModifier(_escapedItemSpec, modifierKind, null, _escapedDefiningProject, ref _cachedModifiers);
MSBuild.Benchmarks (53)
DefiningProjectModifiersBenchmark.cs (16)
122
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectFullPath);
123
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectDirectory);
124
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectName);
125
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectExtension);
145
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectDirectory);
165
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectName);
166
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectExtension);
186
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectFullPath);
208
last = item.GetMetadataValue(
ItemSpecModifiers
.DefiningProjectDirectory);
227
last = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectFullPath);
228
last = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectDirectory);
229
last = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectName);
230
last = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectExtension);
247
last = _taskItemsWithDefiningProject[i].GetMetadata(
ItemSpecModifiers
.DefiningProjectName);
248
last = _taskItemsWithDefiningProject[i].GetMetadata(
ItemSpecModifiers
.DefiningProjectExtension);
266
last = item.GetMetadata(
ItemSpecModifiers
.DefiningProjectDirectory);
ItemSpecModifiersBenchmark.cs (13)
31
_recursiveDirModifier =
ItemSpecModifiers
.RecursiveDir;
52
foreach (string modifier in
ItemSpecModifiers
.All)
54
if (
ItemSpecModifiers
.IsItemSpecModifier(modifier))
61
if (
ItemSpecModifiers
.IsItemSpecModifier("SomeCustomMetadata"))
76
=>
ItemSpecModifiers
.IsDerivableItemSpecModifier(_recursiveDirModifier);
85
=>
ItemSpecModifiers
.GetItemSpecModifier(_itemSpec,
ItemSpecModifiers
.FullPath, _currentDirectory, _definingProjectEscaped);
94
=>
ItemSpecModifiers
.GetItemSpecModifier(_itemSpec,
ItemSpecModifiers
.Directory, _currentDirectory, _definingProjectEscaped);
104
=>
ItemSpecModifiers
.GetItemSpecModifier(_itemSpec,
ItemSpecModifiers
.ModifiedTime, _currentDirectory, _definingProjectEscaped);
114
=>
ItemSpecModifiers
.GetItemSpecModifier(_itemSpec,
ItemSpecModifiers
.DefiningProjectDirectory, _currentDirectory, _definingProjectEscaped);
ItemSpecModifiersCachingBenchmark.cs (24)
81
last = item.GetMetadata(
ItemSpecModifiers
.FullPath);
82
last = item.GetMetadata(
ItemSpecModifiers
.RootDir);
83
last = item.GetMetadata(
ItemSpecModifiers
.Filename);
84
last = item.GetMetadata(
ItemSpecModifiers
.Extension);
85
last = item.GetMetadata(
ItemSpecModifiers
.RelativeDir);
86
last = item.GetMetadata(
ItemSpecModifiers
.Directory);
87
last = item.GetMetadata(
ItemSpecModifiers
.Identity);
106
last = item.GetMetadata(
ItemSpecModifiers
.Filename);
107
last = item.GetMetadata(
ItemSpecModifiers
.Extension);
127
last = _taskItems[i].GetMetadata(
ItemSpecModifiers
.Filename);
147
last = item.GetMetadata(
ItemSpecModifiers
.FullPath);
148
last = item.GetMetadata(
ItemSpecModifiers
.RootDir);
149
last = item.GetMetadata(
ItemSpecModifiers
.Directory);
167
last = item.GetMetadataValue(
ItemSpecModifiers
.FullPath);
168
last = item.GetMetadataValue(
ItemSpecModifiers
.RootDir);
169
last = item.GetMetadataValue(
ItemSpecModifiers
.Filename);
170
last = item.GetMetadataValue(
ItemSpecModifiers
.Extension);
171
last = item.GetMetadataValue(
ItemSpecModifiers
.RelativeDir);
172
last = item.GetMetadataValue(
ItemSpecModifiers
.Directory);
173
last = item.GetMetadataValue(
ItemSpecModifiers
.Identity);
191
last = item.GetMetadataValue(
ItemSpecModifiers
.Filename);
192
last = item.GetMetadataValue(
ItemSpecModifiers
.Extension);
213
last = item.GetMetadataValue(
ItemSpecModifiers
.Filename);
214
last = item.GetMetadataValue(
ItemSpecModifiers
.Extension);