Microsoft.Build.Globbing Namespace

Classes

CompositeGlob

A composite glob that returns a match for an input if any of its inner globs match the input (disjunction).

MSBuildGlob

Represents a parsed MSBuild glob. An MSBuild glob is composed of three parts:

  • fixed directory part: "a/b/" in "a/b//test//*.cs"
  • wildcard directory part: "/test//" in "a/b//test//*.cs"
  • file name part: ".cs" in "a/b//test//.cs"
MSBuildGlobWithGaps
A glob with gaps. The gaps are represented as other globs.
For example, to express a glob that matches all .cs files except the ones containing "foo" and the ones under bin directories, one can use:
new MSBuildGlobWithGaps(
   MSBuildGlob.Parse("**/*.cs"),            // matches all .cs files
   new CompositeGlob(                       // a composite glob to combine all the gaps
      MSBuildGlob.Parse("**/*foo*.cs"),     // matches .cs files containing "foo"
      MSBuildGlob.Parse("**/bin/**/*.cs")   // matches .cs files under bin directories
   )
)

Structs

MSBuildGlob.MatchInfoResult

Return type of MatchInfo(String)

Interfaces

IMSBuildGlob

Exposes the globbing semantics of the MSBuild engine.