4 implementations of IMSBuildGlob
Microsoft.Build (4)
Globbing\CompositeGlob.cs (2)
18
public class CompositeGlob :
IMSBuildGlob
143
private sealed class NeverMatchingGlob :
IMSBuildGlob
Globbing\MSBuildGlob.cs (1)
23
public class MSBuildGlob :
IMSBuildGlob
Globbing\MSBuildGlobWithGaps.cs (1)
25
public class MSBuildGlobWithGaps :
IMSBuildGlob
59 references to IMSBuildGlob
Microsoft.Build (51)
BackEnd\Shared\BuildRequestConfiguration.cs (1)
839
var
glob = CompositeGlob.Create(
Definition\Project.cs (16)
904
/// <see cref="GlobResult.MsBuildGlob"/> is a <see cref="
IMSBuildGlob
"/> that combines all globs in the include element and ignores
2534
private ImmutableList<
IMSBuildGlob
>.Builder _globs;
2537
public IEnumerable<
IMSBuildGlob
> Globs => _globs.ToImmutable();
2544
_globs = ImmutableList.CreateBuilder<
IMSBuildGlob
>(),
2552
var
removeGlob = removeSpec.ToMSBuildGlob();
2628
var
includeGlob = CompositeGlob.Create(includeGlobFragments.Select(f => f.ToMSBuildGlob()));
2631
IMSBuildGlob
excludeGlob = null;
2642
IMSBuildGlob
removeGlob = null;
2650
var
includeGlobWithGaps = CreateIncludeGlobWithGaps(includeGlob, excludeGlob, removeGlob);
2655
private static
IMSBuildGlob
CreateIncludeGlobWithGaps(
IMSBuildGlob
includeGlob,
IMSBuildGlob
excludeGlob,
IMSBuildGlob
removeGlob)
4653
/// A <see cref="
IMSBuildGlob
"/> representing the include globs. It also takes the excludes and relevant removes into consideration.
4655
public
IMSBuildGlob
MsBuildGlob { get; set; }
4670
public GlobResult(ProjectItemElement itemElement, IEnumerable<string> includeGlobStrings,
IMSBuildGlob
globWithGaps, IEnumerable<string> excludeFragmentStrings, IEnumerable<string> removeFragmentStrings)
Evaluation\ItemSpec.cs (9)
41
private
IMSBuildGlob
_msbuildGlob;
55
protected override
IMSBuildGlob
MsBuildGlob
96
public override
IMSBuildGlob
ToMSBuildGlob()
101
protected override
IMSBuildGlob
CreateMsBuildGlob()
378
public
IMSBuildGlob
ToMSBuildGlob()
428
private
IMSBuildGlob
_msbuildGlob;
456
protected virtual
IMSBuildGlob
MsBuildGlob => _msbuildGlob ??= CreateMsBuildGlob();
490
public virtual
IMSBuildGlob
ToMSBuildGlob()
495
protected virtual
IMSBuildGlob
CreateMsBuildGlob()
Globbing\CompositeGlob.cs (13)
20
private readonly ImmutableArray<
IMSBuildGlob
> _globs;
25
public IEnumerable<
IMSBuildGlob
> Globs => _globs;
31
public CompositeGlob(IEnumerable<
IMSBuildGlob
> globs)
39
public CompositeGlob(params
IMSBuildGlob
[] globs)
48
internal CompositeGlob(
IMSBuildGlob
glob1,
IMSBuildGlob
glob2)
56
private CompositeGlob(ImmutableArray<
IMSBuildGlob
> globs)
71
/// Creates an <see cref="
IMSBuildGlob
"/> that aggregates multiple other globs
86
public static
IMSBuildGlob
Create(IEnumerable<
IMSBuildGlob
> globs)
90
if (globs is ImmutableArray<
IMSBuildGlob
> immutableGlobs)
114
var
first = enumerator.Current;
127
var builder = ImmutableArray.CreateBuilder<
IMSBuildGlob
>();
Globbing\Extensions\MSBuildGlobExtensions.cs (2)
12
/// Extensions for <see cref="
IMSBuildGlob
"/>
21
public static IEnumerable<MSBuildGlob> GetParsedGlobs(this
IMSBuildGlob
glob)
Globbing\MSBuildGlobWithGaps.cs (8)
30
public
IMSBuildGlob
MainGlob { get; }
35
public
IMSBuildGlob
Gaps { get; }
42
internal MSBuildGlobWithGaps(
IMSBuildGlob
mainGlob,
IMSBuildGlob
gaps)
56
public MSBuildGlobWithGaps(
IMSBuildGlob
mainGlob, IEnumerable<
IMSBuildGlob
> gaps)
70
public MSBuildGlobWithGaps(
IMSBuildGlob
mainGlob, params
IMSBuildGlob
[] gaps) : this(mainGlob, gaps.AsEnumerable())
Globbing\Visitor\GlobVisitor.cs (2)
10
public void Visit(
IMSBuildGlob
glob)
21
foreach (
var
globPart in compositeGlob.Globs)
Microsoft.Build.Engine.OM.UnitTests (1)
Definition\Project_Tests.cs (1)
3739
var
uberGlob = CompositeGlob.Create(getAllGlobsResult.Select(r => r.MsBuildGlob));
Microsoft.Build.Engine.UnitTests (7)
Evaluation\ItemSpec_Tests.cs (2)
32
var
itemSpecGlob = itemSpec.ToMSBuildGlob();
72
var
itemSpecGlob = itemSpec.ToMSBuildGlob();
Globbing\CompositeGlob_Tests.cs (4)
144
IMSBuildGlob
composite = CompositeGlob.Create(Enumerable.Empty<
IMSBuildGlob
>());
154
IMSBuildGlob
composite = CompositeGlob.Create(new[] { glob });
165
IMSBuildGlob
result = CompositeGlob.Create(new[] { glob1, glob2 });
Globbing\MSBuildGlobWithGaps_Tests.cs (1)
18
var glob = new MSBuildGlobWithGaps(MSBuildGlob.Parse("a*"), Enumerable.Empty<
IMSBuildGlob
>());