[Tizen] Add BuildTools 2.1.0-rc1-02804-05
[platform/upstream/coreclr.git] / Tools / dotnetcli / sdk / NuGetFallbackFolder / microsoft.build / 15.3.409 / lib / net46 / Microsoft.Build.xml
1 <?xml version="1.0"?>
2 <doc>
3     <assembly>
4         <name>Microsoft.Build</name>
5     </assembly>
6     <members>
7         <member name="T:Microsoft.Build.Shared.EncodingUtilities">
8             <summary>
9             This class contains utility methods for dealing with encoding.
10             </summary>
11         </member>
12         <member name="P:Microsoft.Build.Shared.EncodingUtilities.CurrentSystemOemEncoding">
13             <summary>
14             Get the current system locale code page, OEM version. OEM code pages are used for console-based input/output
15             for historical reasons.
16             </summary>
17         </member>
18         <member name="M:Microsoft.Build.Shared.EncodingUtilities.SimilarToEncoding(System.Text.Encoding,System.Text.Encoding)">
19             <summary>
20             Checks two encoding types to determine if they are similar to each other (equal or if
21             the Encoding Name is the same).
22             </summary>
23             <param name="encoding1"></param>
24             <param name="encoding2"></param>
25             <returns>True if the two Encoding objects are equal or similar.</returns>
26         </member>
27         <member name="M:Microsoft.Build.Shared.EncodingUtilities.IsUtf8Encoding(System.Text.Encoding)">
28             <summary>
29             Check if an encoding type is UTF8 (with or without BOM).
30             </summary>
31             <param name="encoding"></param>
32             <returns>True if the encoding is UTF8.</returns>
33         </member>
34         <member name="M:Microsoft.Build.Shared.EncodingUtilities.StartsWithPreamble(System.IO.Stream)">
35             <summary>
36             Check the first 3 bytes of a stream to determine if it matches the UTF8 preamble.
37             </summary>
38             <param name="stream">Steam to check.</param>
39             <returns>True when the first 3 bytes of the Stream are equal to the UTF8 preamble (BOM).</returns>
40         </member>
41         <member name="M:Microsoft.Build.Shared.EncodingUtilities.StartsWithPreamble(System.IO.Stream,System.Byte[])">
42             <summary>
43             Check the first 3 bytes of a stream to determine if it matches the given preamble.
44             </summary>
45             <param name="stream">Steam to check.</param>
46             <param name="preamble">Preamble to look for.</param>
47             <returns>True when the first 3 bytes of the Stream are equal to the preamble.</returns>
48         </member>
49         <member name="M:Microsoft.Build.Shared.EncodingUtilities.FileStartsWithPreamble(System.String)">
50             <summary>
51             Check the first 3 bytes of a file to determine if it matches the 3-byte UTF8 preamble (BOM).
52             </summary>
53             <param name="file">Path to file to check.</param>
54             <returns>True when the first 3 bytes of the file are equal to the UTF8 BOM.</returns>
55         </member>
56         <member name="F:Microsoft.Build.Shared.BuildEnvironmentHelper.s_visualStudioProcess">
57             <summary>
58             Name of the Visual Studio (and Blend) process.
59             </summary>
60         </member>
61         <member name="F:Microsoft.Build.Shared.BuildEnvironmentHelper.s_msBuildProcess">
62             <summary>
63             Name of the MSBuild process(es)
64             </summary>
65         </member>
66         <member name="F:Microsoft.Build.Shared.BuildEnvironmentHelper.s_msBuildExeNames">
67             <summary>
68             Name of MSBuild executable files.
69             </summary>
70         </member>
71         <member name="P:Microsoft.Build.Shared.BuildEnvironmentHelper.Instance">
72             <summary>
73             Gets the cached Build Environment instance.
74             </summary>
75         </member>
76         <member name="M:Microsoft.Build.Shared.BuildEnvironmentHelper.Initialize">
77             <summary>
78             Find the location of MSBuild.exe based on the current environment.
79             </summary>
80             <remarks>
81             This defines the order and precedence for various methods of discovering MSBuild and associated toolsets.
82             At a high level, an install under Visual Studio is preferred as the user may have SDKs installed to a
83             specific instance of Visual Studio and build will only succeed if we can discover those. See
84             https://github.com/Microsoft/msbuild/issues/1461 for details.
85             </remarks>
86             <returns>Build environment.</returns>
87         </member>
88         <member name="M:Microsoft.Build.Shared.BuildEnvironmentHelper.IsProcessInList(System.String,System.String[])">
89             <summary>
90             Returns true if processName appears in the processList
91             </summary>
92             <param name="processName">Name of the process</param>
93             <param name="processList">List of processes to check</param>
94             <returns></returns>
95         </member>
96         <member name="M:Microsoft.Build.Shared.BuildEnvironmentHelper.ResetInstance_ForUnitTestsOnly(System.Func{System.String},System.Func{System.String},System.Func{System.String},System.Func{System.Collections.Generic.IEnumerable{Microsoft.Build.Shared.VisualStudioInstance}},System.Func{System.String,System.String})">
97             <summary>
98             Resets the current singleton instance (for testing).
99             </summary>
100         </member>
101         <member name="T:Microsoft.Build.Shared.BuildEnvironmentMode">
102             <summary>
103             Enum which defines which environment / mode MSBuild is currently running.
104             </summary>
105         </member>
106         <member name="F:Microsoft.Build.Shared.BuildEnvironmentMode.VisualStudio">
107             <summary>
108             Running from Visual Studio directly or from MSBuild installed under an instance of Visual Studio.
109             Toolsets and extensions will be loaded from the Visual Studio instance.
110             </summary>
111         </member>
112         <member name="F:Microsoft.Build.Shared.BuildEnvironmentMode.Standalone">
113             <summary>
114             Running in a standalone toolset mode. All toolsets and extensions paths are relative to the app 
115             running and not dependent on Visual Studio. (e.g. dotnet CLI, open source clone of our repo)
116             </summary>
117         </member>
118         <member name="F:Microsoft.Build.Shared.BuildEnvironmentMode.None">
119             <summary>
120             Running without any defined toolsets. Most functionality limited. Likely will not be able to
121             build or evaluate a project. (e.g. reference to Microsoft.*.dll without a toolset definition
122             or Visual Studio instance installed).
123             </summary>
124         </member>
125         <member name="T:Microsoft.Build.Shared.BuildEnvironment">
126             <summary>
127             Defines the current environment for build tools.
128             </summary>
129         </member>
130         <member name="P:Microsoft.Build.Shared.BuildEnvironment.RunningTests">
131             <summary>
132             Gets the flag that indicates if we are running in a test harness.
133             </summary>
134         </member>
135         <member name="P:Microsoft.Build.Shared.BuildEnvironment.RunningInVisualStudio">
136             <summary>
137             Returns true when the entry point application is Visual Studio.
138             </summary>
139         </member>
140         <member name="P:Microsoft.Build.Shared.BuildEnvironment.MSBuildToolsDirectory32">
141             <summary>
142             Path to the MSBuild 32-bit tools directory.
143             </summary>
144         </member>
145         <member name="P:Microsoft.Build.Shared.BuildEnvironment.MSBuildToolsDirectory64">
146             <summary>
147             Path to the MSBuild 64-bit (AMD64) tools directory.
148             </summary>
149         </member>
150         <member name="P:Microsoft.Build.Shared.BuildEnvironment.MSBuildSDKsPath">
151             <summary>
152             Path to the Sdks folder for this MSBuild instance.
153             </summary>
154         </member>
155         <member name="P:Microsoft.Build.Shared.BuildEnvironment.CurrentMSBuildConfigurationFile">
156             <summary>
157             Full path to the current MSBuild configuration file.
158             </summary>
159         </member>
160         <member name="P:Microsoft.Build.Shared.BuildEnvironment.CurrentMSBuildExePath">
161             <summary>
162             Full path to current MSBuild.exe.
163             <remarks>
164             This path is likely not the current running process. We may be inside
165             Visual Studio or a test harness. In that case this will point to the
166             version of MSBuild found to be associated with the current environment.
167             </remarks>
168             </summary>
169         </member>
170         <member name="P:Microsoft.Build.Shared.BuildEnvironment.CurrentMSBuildToolsDirectory">
171             <summary>
172             Full path to the current MSBuild tools directory. This will be 32-bit unless
173             we're executing from the 'AMD64' folder.
174             </summary>
175         </member>
176         <member name="P:Microsoft.Build.Shared.BuildEnvironment.VisualStudioInstallRootDirectory">
177             <summary>
178             Path to the root Visual Studio install directory
179             (e.g. 'c:\Program Files (x86)\Microsoft Visual Studio 15.0')
180             </summary>
181         </member>
182         <member name="P:Microsoft.Build.Shared.BuildEnvironment.MSBuildExtensionsPath">
183             <summary>
184             MSBuild extensions path. On Standalone this defaults to the MSBuild folder. In
185             VisualStudio mode this folder will be %VSINSTALLDIR%\MSBuild.
186             </summary>
187         </member>
188         <member name="T:Microsoft.Build.Shared.EncodingStringWriter">
189             <summary>
190             StringWriter class that allows Encoding to be specified. In the standard StringWriter
191             class only UTF16 is allowed.
192             </summary>
193         </member>
194         <member name="M:Microsoft.Build.Shared.EncodingStringWriter.#ctor">
195             <summary>
196             Default ctor (Encoding = UTF8)
197             </summary>
198         </member>
199         <member name="P:Microsoft.Build.Shared.EncodingStringWriter.Encoding">
200             <summary>
201             Overload to specify encoding.
202             </summary>
203         </member>
204         <member name="T:Microsoft.Build.Shared.AssemblyNameComparer">
205             <summary>
206             IKeyComparer implementation that compares AssemblyNames for using in Hashtables.
207             </summary>
208         </member>
209         <member name="F:Microsoft.Build.Shared.AssemblyNameComparer.Comparer">
210             <summary>
211             Comparer for two assembly name extensions
212             </summary>
213         </member>
214         <member name="F:Microsoft.Build.Shared.AssemblyNameComparer.ComparerConsiderRetargetable">
215             <summary>
216             Comparer for two assembly name extensions
217             </summary>
218         </member>
219         <member name="F:Microsoft.Build.Shared.AssemblyNameComparer.GenericComparer">
220             <summary>
221             Comparer for two assembly name extensions
222             </summary>
223         </member>
224         <member name="F:Microsoft.Build.Shared.AssemblyNameComparer.GenericComparerConsiderRetargetable">
225             <summary>
226             Comparer for two assembly name extensions
227             </summary>
228         </member>
229         <member name="F:Microsoft.Build.Shared.AssemblyNameComparer.considerRetargetableFlag">
230             <summary>
231             Should the comparer consider the retargetable flag when doing comparisons
232             </summary>
233         </member>
234         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.#ctor(System.Boolean)">
235             <summary>
236             Private construct so there's only one instance.
237             </summary>
238         </member>
239         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.Compare(System.Object,System.Object)">
240             <summary>
241             Compare o1 and o2 as AssemblyNames.
242             </summary>
243         </member>
244         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.Equals(System.Object,System.Object)">
245             <summary>
246             Treat o1 and o2 as AssemblyNames. Are they equal?
247             </summary>
248         </member>
249         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.GetHashCode(System.Object)">
250             <summary>
251             Get a hashcode for AssemblyName.
252             </summary>
253         </member>
254         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.Equals(Microsoft.Build.Shared.AssemblyNameExtension,Microsoft.Build.Shared.AssemblyNameExtension)">
255             <summary>
256             Determine if the assembly name extensions are equal
257             </summary>
258         </member>
259         <member name="M:Microsoft.Build.Shared.AssemblyNameComparer.GetHashCode(Microsoft.Build.Shared.AssemblyNameExtension)">
260             <summary>
261             Get a hashcode for AssemblyName.
262             </summary>
263         </member>
264         <member name="T:Microsoft.Build.Shared.AwaitExtensions">
265             <summary>
266             Class defining extension methods for awaitable objects.
267             </summary>
268         </member>
269         <member name="F:Microsoft.Build.Shared.AwaitExtensions.s_staSchedulerSync">
270             <summary>
271             Synchronizes access to the staScheduler field.
272             </summary>
273         </member>
274         <member name="F:Microsoft.Build.Shared.AwaitExtensions.s_staScheduler">
275             <summary>
276             The singleton STA scheduler object.
277             </summary>
278         </member>
279         <member name="P:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskSchedulerInstance">
280             <summary>
281             Gets the STA scheduler.
282             </summary>
283         </member>
284         <member name="M:Microsoft.Build.Shared.AwaitExtensions.GetAwaiter(System.Threading.WaitHandle)">
285             <summary>
286             Provides await functionality for ordinary <see cref="T:System.Threading.WaitHandle"/>s.
287             </summary>
288             <param name="handle">The handle to wait on.</param>
289             <returns>The awaiter.</returns>
290         </member>
291         <member name="M:Microsoft.Build.Shared.AwaitExtensions.GetAwaiter(System.Threading.WaitHandle[])">
292             <summary>
293             Provides await functionality for an array of ordinary <see cref="T:System.Threading.WaitHandle"/>s.
294             </summary>
295             <param name="handles">The handles to wait on.</param>
296             <returns>The awaiter.</returns>
297         </member>
298         <member name="M:Microsoft.Build.Shared.AwaitExtensions.ToTask(System.Threading.WaitHandle,System.Int32)">
299             <summary>
300             Creates a TPL Task that is marked as completed when a <see cref="T:System.Threading.WaitHandle"/> is signaled.
301             </summary>
302             <param name="handle">The handle whose signal triggers the task to be completed.  Do not use a <see cref="T:System.Threading.Mutex"/> here.</param>
303             <param name="timeout">The timeout (in milliseconds) after which the task will fault with a <see cref="T:System.TimeoutException"/> if the handle is not signaled by that time.</param>
304             <returns>A Task that is completed after the handle is signaled.</returns>
305             <remarks>
306             There is a (brief) time delay between when the handle is signaled and when the task is marked as completed.
307             </remarks>
308         </member>
309         <member name="M:Microsoft.Build.Shared.AwaitExtensions.ToTask(System.Threading.WaitHandle[],System.Int32)">
310             <summary>
311             Creates a TPL Task that is marked as completed when any <see cref="T:System.Threading.WaitHandle"/> in the array is signaled.
312             </summary>
313             <param name="handles">The handles whose signals triggers the task to be completed.  Do not use a <see cref="T:System.Threading.Mutex"/> here.</param>
314             <param name="timeout">The timeout (in milliseconds) after which the task will return a value of WaitTimeout.</param>
315             <returns>A Task that is completed after any handle is signaled.</returns>
316             <remarks>
317             There is a (brief) time delay between when the handles are signaled and when the task is marked as completed.
318             </remarks>
319         </member>
320         <member name="T:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskScheduler">
321             <summary>
322             A class which acts as a task scheduler and ensures each scheduled task gets its 
323             own STA thread.
324             </summary>
325         </member>
326         <member name="F:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskScheduler._queuedTasks">
327             <summary>
328             The current queue of tasks.
329             </summary>
330         </member>
331         <member name="M:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskScheduler.GetScheduledTasks">
332             <summary>
333             Returns the list of queued tasks.
334             </summary>
335         </member>
336         <member name="M:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskScheduler.QueueTask(System.Threading.Tasks.Task)">
337             <summary>
338             Queues a task to the scheduler.
339             </summary>
340         </member>
341         <member name="M:Microsoft.Build.Shared.AwaitExtensions.OneSTAThreadPerTaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)">
342             <summary>
343             Tries to execute the task immediately.  This method will always return false for the STA scheduler.
344             </summary>
345         </member>
346         <member name="T:Microsoft.Build.Shared.AssemblyNameReverseVersionComparer">
347             <summary>
348             Compare the version numbers only for an AssemblyNameExtension and make sure they are in reverse order. This assumes the names are the same.
349             </summary>
350         </member>
351         <member name="F:Microsoft.Build.Shared.AssemblyNameReverseVersionComparer.GenericComparer">
352             <summary>
353             A static instance of the comparer for use in a sort method
354             </summary>
355         </member>
356         <member name="M:Microsoft.Build.Shared.AssemblyNameReverseVersionComparer.Compare(Microsoft.Build.Shared.AssemblyNameExtension,Microsoft.Build.Shared.AssemblyNameExtension)">
357             <summary>
358             Compare x and y by version only.
359             
360             Change the return value to sort the values in reverse order.
361             
362             If x is greater than y  return -1 indicating x is less than y. 
363             If x is less than y  return 1 indicating x is greater than  y.
364             If x and y are equal return 0.
365             </summary>
366         </member>
367         <member name="T:Microsoft.Build.Shared.CanonicalError">
368              <summary>
369              Functions for dealing with the specially formatted errors returned by
370              build tools.
371              </summary>
372              <remarks>
373              Various tools produce and consume CanonicalErrors in various formats.
374             
375              DEVENV Format When Clicking on Items in the Output Window
376              (taken from env\msenv\core\findutil.cpp ParseLocation function)
377             
378                   v:\dir\file.ext (loc) : msg
379                   \\server\share\dir\file.ext(loc):msg
380                   url
381             
382                   loc:
383                   (line)
384                   (line-line)
385                   (line,col)
386                   (line,col-col)
387                   (line,col,len)
388                   (line,col,line,col)
389             
390              DevDiv Build Process
391              (taken from tools\devdiv2.def)
392             
393                   To echo warnings and errors to the build console, the
394                   "description block" must be recognized by build. To do this,
395                   add a $(ECHO_COMPILING_COMMAND) or $(ECHO_PROCESSING_COMMAND)
396                   to the first line of the description block, e.g.
397             
398                       $(ECHO_COMPILING_CMD) Resgen_$&lt;
399             
400                   Errors must have the format:
401             
402                       &lt;text&gt; : error [num]: &lt;msg&gt;
403             
404                   Warnings must have the format:
405             
406                       &lt;text&gt; : warning [num]: &lt;msg&gt;
407              </remarks>
408         </member>
409         <member name="T:Microsoft.Build.Shared.CanonicalError.Parts">
410             <summary>
411             Represents the parts of a decomposed canonical message.
412             </summary>
413         </member>
414         <member name="T:Microsoft.Build.Shared.CanonicalError.Parts.Category">
415             <summary>
416             Defines the error category\severity level.
417             </summary>
418         </member>
419         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.numberNotSpecified">
420             <summary>
421             Value used for unspecified line and column numbers, which are 1-relative.
422             </summary>
423         </member>
424         <member name="M:Microsoft.Build.Shared.CanonicalError.Parts.#ctor">
425             <summary>
426             Initializes a new instance of the <see cref="T:Microsoft.Build.Shared.CanonicalError.Parts"/> class.
427             </summary>
428         </member>
429         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.origin">
430             <summary>
431             Name of the file or tool (not localized)
432             </summary>
433         </member>
434         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.line">
435             <summary>
436             The line number.
437             </summary>
438         </member>
439         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.column">
440             <summary>
441             The column number.
442             </summary>
443         </member>
444         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.endLine">
445             <summary>
446             The ending line number.
447             </summary>
448         </member>
449         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.endColumn">
450             <summary>
451             The ending column number.
452             </summary>
453         </member>
454         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.category">
455             <summary>
456             The category/severity level
457             </summary>
458         </member>
459         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.subcategory">
460             <summary>
461             The sub category (localized)
462             </summary>
463         </member>
464         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.code">
465             <summary>
466             The error code (not localized)
467             </summary>
468         </member>
469         <member name="F:Microsoft.Build.Shared.CanonicalError.Parts.text">
470             <summary>
471             The error message text (localized)
472             </summary>
473         </member>
474         <member name="M:Microsoft.Build.Shared.CanonicalError.ConvertToIntWithDefault(System.String)">
475             <summary>
476             A small custom int conversion method that treats invalid entries as missing (0). This is done to work around tools
477             that don't fully conform to the canonical message format - we still want to salvage what we can from the message.
478             </summary>
479             <param name="value"></param>
480             <returns>'value' converted to int or 0 if it can't be parsed or is negative</returns>
481         </member>
482         <member name="M:Microsoft.Build.Shared.CanonicalError.Parse(System.String)">
483             <summary>
484             Decompose an error or warning message into constituent parts. If the message isn't in the canonical form, return null.
485             </summary>
486             <remarks>This method is thread-safe, because the Regex class is thread-safe (per MSDN).</remarks>
487             <param name="message"></param>
488             <returns>Decomposed canonical message, or null.</returns>
489         </member>
490         <member name="T:Microsoft.Build.Shared.MSBuildConstants">
491             <summary>
492             Constants that we want to be shareable across all our assemblies. 
493             </summary>
494         </member>
495         <member name="F:Microsoft.Build.Shared.MSBuildConstants.ToolsPath">
496             <summary>
497             The name of the property that indicates the tools path 
498             </summary>
499         </member>
500         <member name="F:Microsoft.Build.Shared.MSBuildConstants.ToolsPath64">
501             <summary>
502             Name of the property that indicates the X64 tools path
503             </summary>
504         </member>
505         <member name="F:Microsoft.Build.Shared.MSBuildConstants.SdksPath">
506             <summary>
507             Name of the property that indicates the root of the SDKs folder
508             </summary>
509         </member>
510         <member name="F:Microsoft.Build.Shared.MSBuildConstants.TreatWarningsAsErrors">
511             <summary>
512             Name of the property that indicates that all warnings should be treated as errors.
513             </summary>
514         </member>
515         <member name="F:Microsoft.Build.Shared.MSBuildConstants.WarningsAsErrors">
516             <summary>
517             Name of the property that indicates a list of warnings to treat as errors.
518             </summary>
519         </member>
520         <member name="F:Microsoft.Build.Shared.MSBuildConstants.WarningsAsMessages">
521             <summary>
522             Name of the property that indicates the list of warnings to treat as messages.
523             </summary>
524         </member>
525         <member name="F:Microsoft.Build.Shared.MSBuildConstants.CurrentVisualStudioVersion">
526             <summary>
527             The most current Visual Studio Version known to this version of MSBuild. 
528             </summary>
529         </member>
530         <member name="F:Microsoft.Build.Shared.MSBuildConstants.CurrentToolsVersion">
531             <summary>
532             The most current ToolsVersion known to this version of MSBuild. 
533             </summary>
534         </member>
535         <member name="F:Microsoft.Build.Shared.MSBuildConstants.CurrentToolsVersionAsVersion">
536             <summary>
537             The most current ToolsVersion known to this version of MSBuild as a Version object. 
538             </summary>
539         </member>
540         <member name="F:Microsoft.Build.Shared.MSBuildConstants.CurrentAssemblyVersion">
541             <summary>
542             The most current VSGeneralAssemblyVersion known to this version of MSBuild. 
543             </summary>
544         </member>
545         <member name="P:Microsoft.Build.Shared.MSBuildConstants.CurrentProductVersion">
546             <summary>
547             Current version of this MSBuild Engine assembly in the form, e.g, "12.0"
548             </summary>
549         </member>
550         <member name="T:Microsoft.Build.Shared.ItemMetadataNames">
551             <summary>
552             Constants naming well-known item metadata.
553             </summary>
554         </member>
555         <member name="T:Microsoft.Build.Shared.NGen`1">
556             <summary>
557             To avoid CA908 warnings (types that in ngen images that will JIT)
558             wrap each problematic value type in the collection in 
559             one of these objects.
560             </summary>
561             <comment>
562             This trick is based on advice from 
563             http://sharepoint/sites/codeanalysis/Wiki%20Pages/Rule%20-%20Avoid%20Types%20That%20Require%20JIT%20Compilation%20In%20Precompiled%20Assemblies.aspx.
564             It works because although this is a value type, it is not defined in mscorlib.
565             </comment>
566             <typeparam name="T">Wrapped type</typeparam>
567         </member>
568         <member name="F:Microsoft.Build.Shared.NGen`1._value">
569             <summary>
570             Wrapped value
571             </summary>
572         </member>
573         <member name="M:Microsoft.Build.Shared.NGen`1.#ctor(`0)">
574             <summary>
575             Constructor
576             </summary>
577         </member>
578         <member name="M:Microsoft.Build.Shared.NGen`1.op_Implicit(Microsoft.Build.Shared.NGen{`0})~`0">
579             <summary>
580             Exposes the value
581             </summary>
582         </member>
583         <member name="M:Microsoft.Build.Shared.NGen`1.op_Implicit(`0)~Microsoft.Build.Shared.NGen{`0}">
584             <summary>
585             Consumes the value
586             </summary>
587         </member>
588         <member name="T:Microsoft.Build.Shared.Pair`2">
589             <summary>
590             This struct is functionally identical to KeyValuePair, but avoids
591             CA908 warnings (types that in ngen images that will JIT).
592             Instead of generic collections of KeyValuePair, use Pair.
593             </summary>
594             <comment>
595             This trick is based on advice from 
596             http://sharepoint/sites/codeanalysis/Wiki%20Pages/Rule%20-%20Avoid%20Types%20That%20Require%20JIT%20Compilation%20In%20Precompiled%20Assemblies.aspx.
597             It works because although this is a value type, it is not defined in mscorlib.
598             </comment>
599             <typeparam name="TKey">Key</typeparam>
600             <typeparam name="TValue">Value</typeparam>
601         </member>
602         <member name="F:Microsoft.Build.Shared.Pair`2._key">
603             <summary>
604             Key
605             </summary>
606         </member>
607         <member name="F:Microsoft.Build.Shared.Pair`2._value">
608             <summary>
609             Value
610             </summary>
611         </member>
612         <member name="M:Microsoft.Build.Shared.Pair`2.#ctor(`0,`1)">
613             <summary>
614             Constructor
615             </summary>
616         </member>
617         <member name="P:Microsoft.Build.Shared.Pair`2.Key">
618             <summary>
619             Key
620             </summary>
621         </member>
622         <member name="P:Microsoft.Build.Shared.Pair`2.Value">
623             <summary>
624             Value
625             </summary>
626         </member>
627         <member name="T:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult">
628             <summary>
629             A result of executing a target or task.
630             </summary>
631         </member>
632         <member name="M:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.#ctor(Microsoft.Build.BackEnd.TaskCompleteType)">
633             <summary>
634             Constructor 
635             </summary>
636         </member>
637         <member name="M:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.#ctor(Microsoft.Build.BackEnd.TaskCompleteType,System.Collections.Generic.IDictionary{System.String,System.Object})">
638             <summary>
639             Constructor
640             </summary>
641         </member>
642         <member name="M:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.#ctor(Microsoft.Build.BackEnd.TaskCompleteType,System.Exception)">
643             <summary>
644             Constructor
645             </summary>
646         </member>
647         <member name="M:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.#ctor(Microsoft.Build.BackEnd.TaskCompleteType,System.Exception,System.String,System.String[])">
648             <summary>
649             Constructor
650             </summary>
651         </member>
652         <member name="M:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.#ctor(Microsoft.Build.BackEnd.TaskCompleteType,System.Collections.Generic.IDictionary{System.String,System.Object},System.Exception,System.String,System.String[])">
653             <summary>
654             Constructor
655             </summary>
656         </member>
657         <member name="P:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.Result">
658             <summary>
659             The overall result of the task execution. 
660             </summary>
661         </member>
662         <member name="P:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.FinalParameterValues">
663             <summary>
664             Dictionary of the final values of the task parameters
665             </summary>
666         </member>
667         <member name="P:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.TaskException">
668             <summary>
669             The exception thrown by the task during initialization or execution, 
670             if any. 
671             </summary>
672         </member>
673         <member name="P:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.ExceptionMessage">
674             <summary>
675             The name of the resource representing the message to be logged along with the 
676             above exception. 
677             </summary>
678         </member>
679         <member name="P:Microsoft.Build.Shared.OutOfProcTaskHostTaskResult.ExceptionMessageArgs">
680             <summary>
681             The arguments to be used when formatting ExceptionMessage
682             </summary>
683         </member>
684         <member name="T:Microsoft.Build.Shared.TaskLoader">
685             <summary>
686             Class for loading tasks
687             </summary>
688         </member>
689         <member name="F:Microsoft.Build.Shared.TaskLoader.s_resolverLoadedType">
690             <summary>
691             For saving the assembly that was loaded by the TypeLoader
692             We only use this when the assembly failed to load properly into the appdomain
693             </summary>
694         </member>
695         <member name="T:Microsoft.Build.Shared.TaskLoader.LogError">
696             <summary>
697             Delegate for logging task loading errors. 
698             </summary>
699         </member>
700         <member name="M:Microsoft.Build.Shared.TaskLoader.IsTaskClass(System.Type,System.Object)">
701             <summary>
702             Checks if the given type is a task factory.
703             </summary>
704             <remarks>This method is used as a type filter delegate.</remarks>
705             <returns>true, if specified type is a task</returns>
706         </member>
707         <member name="M:Microsoft.Build.Shared.TaskLoader.CreateTask(Microsoft.Build.Shared.LoadedType,System.String,System.String,System.Int32,System.Int32,Microsoft.Build.Shared.TaskLoader.LogError,System.AppDomainSetup,System.Boolean,System.AppDomain@)">
708             <summary>
709             Creates an ITask instance and returns it.  
710             </summary>
711         </member>
712         <member name="M:Microsoft.Build.Shared.TaskLoader.AssemblyResolver(System.Object,System.ResolveEventArgs)">
713             <summary>
714             This is a resolver to help created AppDomains when they are unable to load an assembly into their domain we will help
715             them succeed by providing the already loaded one in the currentdomain so that they can derive AssemblyName info from it
716             </summary>
717         </member>
718         <member name="M:Microsoft.Build.Shared.TaskLoader.RemoveAssemblyResolver">
719             <summary>
720             Check if we added a resolver and remove it
721             </summary>
722         </member>
723         <member name="T:Microsoft.Build.Shared.LoggingEventType">
724             <summary>
725             An enumeration of all the types of BuildEventArgs that can be
726             packaged by this logMessagePacket
727             </summary>
728         </member>
729         <member name="F:Microsoft.Build.Shared.LoggingEventType.Invalid">
730             <summary>
731             An invalid eventId, used during initialization of a LoggingEventType
732             </summary>
733         </member>
734         <member name="F:Microsoft.Build.Shared.LoggingEventType.CustomEvent">
735             <summary>
736             Event is a CustomEventArgs
737             </summary>
738         </member>
739         <member name="F:Microsoft.Build.Shared.LoggingEventType.BuildErrorEvent">
740             <summary>
741             Event is a BuildErrorEventArgs
742             </summary>
743         </member>
744         <member name="F:Microsoft.Build.Shared.LoggingEventType.BuildFinishedEvent">
745             <summary>
746             Event is a BuildFinishedEventArgs
747             </summary>
748         </member>
749         <member name="F:Microsoft.Build.Shared.LoggingEventType.BuildMessageEvent">
750             <summary>
751             Event is a BuildMessageEventArgs
752             </summary>
753         </member>
754         <member name="F:Microsoft.Build.Shared.LoggingEventType.BuildStartedEvent">
755             <summary>
756             Event is a BuildStartedEventArgs
757             </summary>
758         </member>
759         <member name="F:Microsoft.Build.Shared.LoggingEventType.BuildWarningEvent">
760             <summary>
761             Event is a BuildWarningEventArgs
762             </summary>
763         </member>
764         <member name="F:Microsoft.Build.Shared.LoggingEventType.ProjectFinishedEvent">
765             <summary>
766             Event is a ProjectFinishedEventArgs
767             </summary>
768         </member>
769         <member name="F:Microsoft.Build.Shared.LoggingEventType.ProjectStartedEvent">
770             <summary>
771             Event is a ProjectStartedEventArgs
772             </summary>
773         </member>
774         <member name="F:Microsoft.Build.Shared.LoggingEventType.TargetStartedEvent">
775             <summary>
776             Event is a TargetStartedEventArgs
777             </summary>
778         </member>
779         <member name="F:Microsoft.Build.Shared.LoggingEventType.TargetFinishedEvent">
780             <summary>
781             Event is a TargetFinishedEventArgs
782             </summary>
783         </member>
784         <member name="F:Microsoft.Build.Shared.LoggingEventType.TaskStartedEvent">
785             <summary>
786             Event is a TaskStartedEventArgs
787             </summary>
788         </member>
789         <member name="F:Microsoft.Build.Shared.LoggingEventType.TaskFinishedEvent">
790             <summary>
791             Event is a TaskFinishedEventArgs
792             </summary>
793         </member>
794         <member name="F:Microsoft.Build.Shared.LoggingEventType.TaskCommandLineEvent">
795             <summary>
796             Event is a TaskCommandLineEventArgs
797             </summary>
798         </member>
799         <member name="T:Microsoft.Build.Shared.LogMessagePacketBase">
800             <summary>
801             A packet to encapsulate a BuildEventArg logging message.
802             Contents:
803             Build Event Type
804             Build Event Args
805             </summary>
806         </member>
807         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_defaultPacketVersion">
808             <summary>
809             The packet version, which is based on the CLR version. Cached because querying Environment.Version each time becomes an allocation bottleneck.
810             </summary>
811         </member>
812         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_readMethodCache">
813             <summary>
814             Dictionary of methods used to read BuildEventArgs.
815             </summary>
816         </member>
817         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_writeMethodCache">
818             <summary>
819             Dictionary of methods used to write BuildEventArgs.
820             </summary>
821         </member>
822         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_customEventsLoaded">
823             <summary>
824             Dictionary of assemblies we've added to the resolver.
825             </summary>
826         </member>
827         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_resolver">
828             <summary>
829             The resolver used to load custom event types.
830             </summary>
831         </member>
832         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase.s_lockObject">
833             <summary>
834             The object used to synchronize access to shared data.
835             </summary>
836         </member>
837         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase._targetFinishedTranslator">
838             <summary>
839             Delegate for translating targetfinished events. 
840             </summary>
841         </member>
842         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase._eventType">
843             <summary>
844             The event type of the buildEventArg based on the 
845             LoggingEventType enumeration
846             </summary>
847         </member>
848         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase._buildEvent">
849             <summary>
850             The buildEventArg which is encapsulated by the packet
851             </summary>
852         </member>
853         <member name="F:Microsoft.Build.Shared.LogMessagePacketBase._sinkId">
854             <summary>
855             The sink id
856             </summary>
857         </member>
858         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.#ctor(System.Nullable{System.Collections.Generic.KeyValuePair{System.Int32,Microsoft.Build.Framework.BuildEventArgs}},Microsoft.Build.Shared.LogMessagePacketBase.TargetFinishedTranslator)">
859             <summary>
860             Encapsulates the buildEventArg in this packet.
861             </summary>
862         </member>
863         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
864             <summary>
865             Constructor for deserialization
866             </summary>
867         </member>
868         <member name="T:Microsoft.Build.Shared.LogMessagePacketBase.TargetFinishedTranslator">
869             <summary>
870             Delegate for translating TargetFinishedEventArgs
871             </summary>
872         </member>
873         <member name="T:Microsoft.Build.Shared.LogMessagePacketBase.ArgsWriterDelegate">
874             <summary>
875             Delegate representing a method on the BuildEventArgs classes used to write to a stream.
876             </summary>
877         </member>
878         <member name="T:Microsoft.Build.Shared.LogMessagePacketBase.ArgsReaderDelegate">
879             <summary>
880             Delegate representing a method on the BuildEventArgs classes used to read from a stream.
881             </summary>
882         </member>
883         <member name="P:Microsoft.Build.Shared.LogMessagePacketBase.Type">
884             <summary>
885             The nodePacket Type, in this case the packet is a Logging Message
886             </summary>
887         </member>
888         <member name="P:Microsoft.Build.Shared.LogMessagePacketBase.NodeBuildEvent">
889             <summary>
890             The buildEventArg wrapped by this packet
891             </summary>
892         </member>
893         <member name="P:Microsoft.Build.Shared.LogMessagePacketBase.EventType">
894             <summary>
895             The event type of the wrapped buildEventArg 
896             based on the LoggingEventType enumeration 
897             </summary>
898         </member>
899         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
900             <summary>
901             Reads/writes this packet
902             </summary>
903         </member>
904         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteToStream(Microsoft.Build.BackEnd.INodePacketTranslator)">
905             <summary>
906             Writes the logging packet to the translator.
907             </summary>
908         </member>
909         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadFromStream(Microsoft.Build.BackEnd.INodePacketTranslator)">
910             <summary>
911             Reads the logging packet from the translator.
912             </summary>
913         </member>
914         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.CreateDelegateRobust(System.Type,System.Object,System.Reflection.MethodInfo)">
915             <summary>
916             Wrapper for Delegate.CreateDelegate with retries.
917             </summary>
918             <comment>
919             TODO:  Investigate if it would be possible to use one of the overrides of CreateDelegate 
920             that doesn't force the delegate to be closed over its first argument, so that we can 
921             only create the delegate once per event type and cache it.  
922             </comment>
923         </member>
924         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.GetBuildEventArgFromId">
925             <summary>
926             Takes in a id (LoggingEventType as an int) and creates the correct specific logging class
927             </summary>
928         </member>
929         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.GetLoggingEventId(Microsoft.Build.Framework.BuildEventArgs)">
930             <summary>
931             Based on the type of the BuildEventArg to be wrapped
932             generate an Id which identifies which concrete type the
933             BuildEventArg is.
934             </summary>
935             <param name="eventArg">Argument to get the type Id for</param>
936             <returns>An enumeration entry which represents the type</returns>
937         </member>
938         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteEventToStream(Microsoft.Build.Framework.BuildEventArgs,Microsoft.Build.Shared.LoggingEventType,Microsoft.Build.BackEnd.INodePacketTranslator)">
939             <summary>
940             Given a build event that is presumed to be 2.0 (due to its lack of a "WriteToStream" method) and its 
941             LoggingEventType, serialize that event to the stream. 
942             </summary>
943         </member>
944         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteExternalProjectFinishedEventToStream(Microsoft.Build.Framework.ExternalProjectFinishedEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
945             <summary>
946             Serialize ExternalProjectFinished Event Argument to the stream
947             </summary>
948         </member>
949         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteExternalProjectStartedEventToStream(Microsoft.Build.Framework.ExternalProjectStartedEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
950             <summary>
951             ExternalProjectStartedEvent
952             </summary>
953         </member>
954         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteBuildWarningEventToStream(Microsoft.Build.Framework.BuildWarningEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
955             <summary>
956             Write Build Warning Log message into the translator
957             </summary>
958         </member>
959         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteBuildErrorEventToStream(Microsoft.Build.Framework.BuildErrorEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
960             <summary>
961             Write a Build Error message into the translator
962             </summary>
963         </member>
964         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteTaskCommandLineEventToStream(Microsoft.Build.Framework.TaskCommandLineEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
965             <summary>
966             Write Task Command Line log message into the translator
967             </summary>
968         </member>
969         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.WriteBuildMessageEventToStream(Microsoft.Build.Framework.BuildMessageEventArgs,Microsoft.Build.BackEnd.INodePacketTranslator)">
970             <summary>
971             Write a "standard" Message Log the translator 
972             </summary>
973         </member>
974         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadEventFromStream(Microsoft.Build.Shared.LoggingEventType,Microsoft.Build.BackEnd.INodePacketTranslator)">
975             <summary>
976             Given a build event that is presumed to be 2.0 (due to its lack of a "ReadFromStream" method) and its 
977             LoggingEventType, read that event from the stream. 
978             </summary>
979         </member>
980         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadExternalProjectFinishedEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
981             <summary>
982             Read and reconstruct a ProjectFinishedEventArgs from the stream
983             </summary>
984         </member>
985         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadExternalProjectStartedEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
986             <summary>
987             Read and reconstruct a ProjectStartedEventArgs from the stream
988             </summary>
989         </member>
990         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadBuildWarningEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
991             <summary>
992             Read and reconstruct a BuildWarningEventArgs from the stream
993             </summary>
994         </member>
995         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadTaskBuildErrorEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
996             <summary>
997             Read and reconstruct a BuildErrorEventArgs from the stream
998             </summary>
999         </member>
1000         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadTaskCommandLineEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
1001             <summary>
1002             Read and reconstruct a TaskCommandLineEventArgs from the stream
1003             </summary>
1004         </member>
1005         <member name="M:Microsoft.Build.Shared.LogMessagePacketBase.ReadBuildMessageEventFromStream(Microsoft.Build.BackEnd.INodePacketTranslator,System.String,System.String,System.String)">
1006             <summary>
1007             Read and reconstruct a BuildMessageEventArgs from the stream 
1008             </summary>
1009         </member>
1010         <member name="T:Microsoft.Build.Shared.ReuseableStringBuilder">
1011             <summary>
1012             A StringBuilder lookalike that reuses its internal storage.
1013             </summary>
1014             <remarks>
1015             You can add any properties or methods on the real StringBuilder that are needed.
1016             </remarks>
1017         </member>
1018         <member name="F:Microsoft.Build.Shared.ReuseableStringBuilder._borrowedBuilder">
1019             <summary>
1020             Captured string builder.
1021             </summary>
1022         </member>
1023         <member name="F:Microsoft.Build.Shared.ReuseableStringBuilder._capacity">
1024             <summary>
1025             Capacity to initialize the builder with.
1026             </summary>
1027         </member>
1028         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.#ctor(System.Int32)">
1029             <summary>
1030             Create a new builder, under the covers wrapping a reused one.
1031             </summary>
1032         </member>
1033         <member name="P:Microsoft.Build.Shared.ReuseableStringBuilder.Length">
1034             <summary>
1035             The length of the target.
1036             </summary>
1037         </member>
1038         <member name="P:Microsoft.Build.Shared.ReuseableStringBuilder.Microsoft#Build#OpportunisticIntern#IInternable#Item(System.Int32)">
1039             <summary>
1040             Indexer into the target. Presumed to be fast.
1041             </summary>
1042         </member>
1043         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Microsoft#Build#OpportunisticIntern#IInternable#ExpensiveConvertToString">
1044             <summary>
1045             Convert target to string. Presumed to be slow (and will be called just once).
1046             </summary>
1047         </member>
1048         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Microsoft#Build#OpportunisticIntern#IInternable#IsOrdinalEqualToStringOfSameLength(System.String)">
1049             <summary>
1050             Compare target to string. 
1051             </summary>
1052         </member>
1053         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Microsoft#Build#OpportunisticIntern#IInternable#ReferenceEquals(System.String)">
1054             <summary>
1055             Never reference equals to string.
1056             </summary>
1057         </member>
1058         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.ToString">
1059             <summary>
1060             Convert to a string.
1061             </summary>
1062         </member>
1063         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.System#IDisposable#Dispose">
1064             <summary>
1065             Dispose, indicating you are done with this builder.
1066             </summary>
1067         </member>
1068         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Append(System.Char)">
1069             <summary>
1070             Append a character.
1071             </summary>
1072         </member>
1073         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Append(System.String)">
1074             <summary>
1075             Append a string.
1076             </summary>
1077         </member>
1078         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Append(System.String,System.Int32,System.Int32)">
1079             <summary>
1080             Append a substring.
1081             </summary>
1082         </member>
1083         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.Remove(System.Int32,System.Int32)">
1084             <summary>
1085             Remove a substring.
1086             </summary>
1087         </member>
1088         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.LazyPrepare">
1089             <summary>
1090             Grab a backing builder if necessary.
1091             </summary>
1092         </member>
1093         <member name="T:Microsoft.Build.Shared.ReuseableStringBuilder.ReuseableStringBuilderFactory">
1094             <summary>
1095             A utility class that mediates access to a shared string builder.
1096             </summary>
1097             <remarks>
1098             If this shared builder is highly contended, this class could add
1099             a second one and try both in turn.
1100             </remarks>
1101         </member>
1102         <member name="F:Microsoft.Build.Shared.ReuseableStringBuilder.ReuseableStringBuilderFactory.MaxBuilderSize">
1103             <summary>
1104             Made up limit beyond which we won't share the builder
1105             because we could otherwise hold a huge builder indefinitely.
1106             This size seems reasonable for MSBuild uses (mostly expression expansion)
1107             </summary>
1108         </member>
1109         <member name="F:Microsoft.Build.Shared.ReuseableStringBuilder.ReuseableStringBuilderFactory.s_sharedBuilder">
1110             <summary>
1111             The shared builder.
1112             </summary>
1113         </member>
1114         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.ReuseableStringBuilderFactory.Get(System.Int32)">
1115             <summary>
1116             Obtains a string builder which may or may not already
1117             have been used. 
1118             Never returns null.
1119             </summary>
1120         </member>
1121         <member name="M:Microsoft.Build.Shared.ReuseableStringBuilder.ReuseableStringBuilderFactory.Release(System.Text.StringBuilder)">
1122             <summary>
1123             Returns the shared builder for the next caller to use.
1124             ** CALLERS, DO NOT USE THE BUILDER AFTER RELEASING IT HERE! **
1125             </summary>
1126         </member>
1127         <member name="T:Microsoft.Build.Shared.ThreadPoolExtensions">
1128             <summary>
1129             Class to wrap the saving and restoring of the culture of a threadpool thread
1130             </summary>
1131         </member>
1132         <member name="M:Microsoft.Build.Shared.ThreadPoolExtensions.QueueThreadPoolWorkItemWithCulture(System.Threading.WaitCallback,System.Globalization.CultureInfo,System.Globalization.CultureInfo)">
1133             <summary>
1134             Queue a threadpool thread and set it to a certain culture.
1135             </summary>
1136         </member>
1137         <member name="T:Microsoft.Build.Shared.VisualStudioLocationHelper">
1138             <summary>
1139             Helper class to wrap the Microsoft.VisualStudio.Setup.Configuration.Interop API to query
1140             Visual Studio setup for instances installed on the machine.
1141             Code derived from sample: https://code.msdn.microsoft.com/Visual-Studio-Setup-0cedd331
1142             </summary>
1143         </member>
1144         <member name="M:Microsoft.Build.Shared.VisualStudioLocationHelper.GetInstances">
1145             <summary>
1146             Query the Visual Studio setup API to get instances of Visual Studio installed
1147             on the machine. Will not include anything before Visual Studio "15".
1148             </summary>
1149             <returns>Enumerable list of Visual Studio instances</returns>
1150         </member>
1151         <member name="T:Microsoft.Build.Shared.VisualStudioInstance">
1152             <summary>
1153             Wrapper class to represent an installed instance of Visual Studio.
1154             </summary>
1155         </member>
1156         <member name="P:Microsoft.Build.Shared.VisualStudioInstance.Version">
1157             <summary>
1158             Version of the Visual Studio Instance
1159             </summary>
1160         </member>
1161         <member name="P:Microsoft.Build.Shared.VisualStudioInstance.Path">
1162             <summary>
1163             Path to the Visual Studio installation
1164             </summary>
1165         </member>
1166         <member name="P:Microsoft.Build.Shared.VisualStudioInstance.Name">
1167             <summary>
1168             Full name of the Visual Studio instance with SKU name
1169             </summary>
1170         </member>
1171         <member name="T:Microsoft.Build.Shared.CollectionHelpers">
1172             <summary>
1173             Utilities for collections
1174             </summary>
1175         </member>
1176         <member name="M:Microsoft.Build.Shared.CollectionHelpers.RemoveNulls``1(System.Collections.Generic.List{``0})">
1177             <summary>
1178             Returns a new list containing the input list
1179             contents, except for nulls
1180             </summary>
1181             <typeparam name="T">Type of list elements</typeparam>
1182         </member>
1183         <member name="M:Microsoft.Build.Shared.CollectionHelpers.ContainsValueAndIsEqual(System.Collections.Generic.Dictionary{System.String,System.String},System.String,System.String,System.StringComparison)">
1184             <summary>
1185             Extension method -- combines a TryGet with a check to see that the value is equal. 
1186             </summary>
1187         </member>
1188         <member name="T:Microsoft.Build.Shared.AssemblyResources">
1189             <summary>
1190             This class provides access to the assembly's resources.
1191             </summary>
1192         </member>
1193         <member name="F:Microsoft.Build.Shared.AssemblyResources.s_msbuildExeResourceManager">
1194             <summary>
1195             A slot for msbuild.exe to add a resource manager over its own resources, that can also be consulted.
1196             </summary>
1197         </member>
1198         <member name="M:Microsoft.Build.Shared.AssemblyResources.RegisterMSBuildExeResources(System.Resources.ResourceManager)">
1199             <summary>
1200             The internals of the Engine are exposed to MSBuild.exe, so they must share the same AssemblyResources class and 
1201             ResourceUtilities class that uses it. To make this possible, MSBuild.exe registers its resources here and they are
1202             normally consulted last. This assumes that there are no duplicated resource ID's between the Engine and MSBuild.exe.
1203             (Actually there are currently two: LoggerCreationError and LoggerNotFoundError.
1204             We can't change the resource ID's this late in the cycle and we sometimes want to load the MSBuild.exe ones,
1205             because they're a little different. So for that purpose we call GetStringLookingInMSBuildExeResourcesFirst() )
1206             </summary>
1207         </member>
1208         <member name="M:Microsoft.Build.Shared.AssemblyResources.GetString(System.String)">
1209             <summary>
1210             Loads the specified resource string, either from the assembly's primary resources, or its shared resources.
1211             </summary>
1212             <remarks>This method is thread-safe.</remarks>
1213             <param name="name"></param>
1214             <returns>The resource string, or null if not found.</returns>
1215         </member>
1216         <member name="M:Microsoft.Build.Shared.AssemblyResources.GetStringLookingInMSBuildExeResourcesFirst(System.String)">
1217             <summary>
1218             Loads the specified resource string.
1219             </summary>
1220             <returns>The resource string, or null if not found.</returns>
1221         </member>
1222         <member name="M:Microsoft.Build.Shared.AssemblyResources.GetStringFromEngineResources(System.String)">
1223             <summary>
1224             Loads the specified resource string, from the Engine or else Shared resources.
1225             </summary>
1226             <returns>The resource string, or null if not found.</returns>
1227         </member>
1228         <member name="M:Microsoft.Build.Shared.AssemblyResources.GetStringFromMSBuildExeResources(System.String)">
1229             <summary>
1230             Loads the specified resource string, from the MSBuild.exe resources.
1231             </summary>
1232             <returns>The resource string, or null if not found.</returns>
1233         </member>
1234         <member name="T:Microsoft.Build.Shared.AssemblyLoadInfo">
1235             <summary>
1236             This class packages information about how to load a given assembly -- an assembly can be loaded by either its assembly
1237             name (strong or weak), or its filename/path.
1238             </summary>
1239             <remarks>
1240             Uses factory to instantiate correct private class to save space: only one field is ever used of the two.
1241             </remarks>
1242         </member>
1243         <member name="M:Microsoft.Build.Shared.AssemblyLoadInfo.Create(System.String,System.String)">
1244             <summary>
1245             This constructor initializes the assembly information.
1246             </summary>
1247         </member>
1248         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyName">
1249             <summary>
1250             Gets the assembly's identity denoted by its strong/weak name.
1251             </summary>
1252         </member>
1253         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyFile">
1254             <summary>
1255             Gets the path to the assembly file.
1256             </summary>
1257         </member>
1258         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLocation">
1259             <summary>
1260             Get the assembly location
1261             </summary>
1262         </member>
1263         <member name="M:Microsoft.Build.Shared.AssemblyLoadInfo.GetHashCode">
1264             <summary>
1265             Computes a hashcode for this assembly info, so this object can be used as a key into
1266             a hash table.
1267             </summary>
1268         </member>
1269         <member name="M:Microsoft.Build.Shared.AssemblyLoadInfo.Equals(System.Object)">
1270             <summary>
1271             Determines if two AssemblyLoadInfos are effectively the same.
1272             </summary>
1273         </member>
1274         <member name="T:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName">
1275             <summary>
1276             Assembly represented by name
1277             </summary>
1278         </member>
1279         <member name="F:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName._assemblyName">
1280             <summary>
1281             Assembly name
1282             </summary>
1283         </member>
1284         <member name="M:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName.#ctor(System.String)">
1285             <summary>
1286             Constructor
1287             </summary>
1288         </member>
1289         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName.AssemblyName">
1290             <summary>
1291             Gets the assembly's identity denoted by its strong/weak name.
1292             </summary>
1293         </member>
1294         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName.AssemblyFile">
1295             <summary>
1296             Gets the path to the assembly file.
1297             </summary>
1298         </member>
1299         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithName.AssemblyLocation">
1300             <summary>
1301             Get the assembly location
1302             </summary>
1303         </member>
1304         <member name="T:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile">
1305             <summary>
1306             Assembly info that uses a file path
1307             </summary>
1308         </member>
1309         <member name="F:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile._assemblyFile">
1310             <summary>
1311             Path to assembly
1312             </summary>
1313         </member>
1314         <member name="M:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile.#ctor(System.String)">
1315             <summary>
1316             Constructor
1317             </summary>
1318         </member>
1319         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile.AssemblyName">
1320             <summary>
1321             Gets the assembly's identity denoted by its strong/weak name.
1322             </summary>
1323         </member>
1324         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile.AssemblyFile">
1325             <summary>
1326             Gets the path to the assembly file.
1327             </summary>
1328         </member>
1329         <member name="P:Microsoft.Build.Shared.AssemblyLoadInfo.AssemblyLoadInfoWithFile.AssemblyLocation">
1330             <summary>
1331             Get the assembly location
1332             </summary>
1333         </member>
1334         <member name="T:Microsoft.Build.Shared.PartialComparisonFlags">
1335             <summary>
1336             Specifies the parts of the assembly name to partially match
1337             </summary>
1338         </member>
1339         <member name="F:Microsoft.Build.Shared.PartialComparisonFlags.SimpleName">
1340             <summary>
1341             Compare SimpleName  A.PartialCompare(B,SimpleName)  match the simple name on A and B if the simple name on A is not null.
1342             </summary>
1343         </member>
1344         <member name="F:Microsoft.Build.Shared.PartialComparisonFlags.Version">
1345             <summary>
1346             Compare Version A.PartialCompare(B, Version)  match the Version on A and B if the Version on A is not null.
1347             </summary>
1348         </member>
1349         <member name="F:Microsoft.Build.Shared.PartialComparisonFlags.Culture">
1350             <summary>
1351             Compare Culture A.PartialCompare(B, Culture)  match the Culture on A and B if the Culture on A is not null.
1352             </summary>
1353         </member>
1354         <member name="F:Microsoft.Build.Shared.PartialComparisonFlags.PublicKeyToken">
1355             <summary>
1356             Compare PublicKeyToken A.PartialCompare(B, PublicKeyToken)  match the PublicKeyToken on A and B if the PublicKeyToken on A is not null.
1357             </summary>
1358         </member>
1359         <member name="F:Microsoft.Build.Shared.PartialComparisonFlags.Default">
1360             <summary>
1361             When doing a comparison   A.PartialCompare(B, Default) compare all fields of A which are not null with B.
1362             </summary>
1363         </member>
1364         <member name="T:Microsoft.Build.Shared.AssemblyNameExtension">
1365             <summary>
1366             A replacement for AssemblyName that optimizes calls to FullName which is expensive.
1367             The assembly name is represented internally by an AssemblyName and a string, conversion
1368             between the two is done lazily on demand.
1369             </summary>
1370         </member>
1371         <member name="F:Microsoft.Build.Shared.AssemblyNameExtension.remappedFrom">
1372             <summary>
1373             Set of assemblyNameExtensions that THIS assemblyname was remapped from.
1374             </summary>
1375         </member>
1376         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.#ctor">
1377             <summary>
1378             Construct an unnamed assembly.
1379             Private because we want only one of these.
1380             </summary>
1381         </member>
1382         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.#ctor(System.Reflection.AssemblyName)">
1383             <summary>
1384             Construct with AssemblyName.
1385             </summary>
1386             <param name="assemblyName"></param>
1387         </member>
1388         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.#ctor(System.String)">
1389             <summary>
1390             Construct with string.
1391             </summary>
1392             <param name="assemblyName"></param>
1393         </member>
1394         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.#ctor(System.String,System.Boolean)">
1395             <summary>
1396             Construct from a string, but immediately construct a real AssemblyName.
1397             This will cause an exception to be thrown up front if the assembly name 
1398             isn't well formed.
1399             </summary>
1400             <param name="assemblyName">
1401             The string version of the assembly name.
1402             </param>
1403             <param name="validate">
1404             Used when the assembly name comes from a user-controlled source like a project file or config file.
1405             Does extra checking on the assembly name and will throw exceptions if something is invalid.
1406             </param>
1407         </member>
1408         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.GetAssemblyNameEx(System.String)">
1409             <summary>
1410             To be used as a delegate. Gets the AssemblyName of the given file.
1411             </summary>
1412             <param name="path"></param>
1413             <returns></returns>
1414         </member>
1415         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.SetRemappedFromDefaultAfterSerialization(System.Runtime.Serialization.StreamingContext)">
1416             <summary>
1417             Run after the object has been deserialized
1418             </summary>
1419         </member>
1420         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.InitializeRemappedFrom">
1421             <summary>
1422             Initialize the remapped from structure.
1423             </summary>
1424         </member>
1425         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CreateAssemblyName">
1426             <summary>
1427             Assume there is a string version, create the AssemblyName version.
1428             </summary>
1429         </member>
1430         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CreateFullName">
1431             <summary>
1432             Assume there is a string version, create the AssemblyName version.
1433             </summary>
1434         </member>
1435         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.Name">
1436             <summary>
1437             The base name of the assembly.
1438             </summary>
1439             <value></value>
1440         </member>
1441         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.ProcessorArchitecture">
1442             <summary>
1443             Gets the backing AssemblyName, this can be None.
1444             </summary>
1445         </member>
1446         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.Version">
1447             <summary>
1448             The assembly's version number.
1449             </summary>
1450             <value></value>
1451         </member>
1452         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.IsSimpleName">
1453             <summary>
1454             Is the assembly a complex name or a simple name. A simple name is where only the name is set 
1455             a complex name is where the version, culture or publickeytoken is also set
1456             </summary>
1457         </member>
1458         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.HasProcessorArchitectureInFusionName">
1459             <summary>
1460             Does the fullName have the processor architecture defined
1461             </summary>
1462         </member>
1463         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.ReplaceVersion(System.Version)">
1464             <summary>
1465             Replace the current version with a new version.
1466             </summary>
1467             <param name="version"></param>
1468         </member>
1469         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.CultureInfo">
1470             <summary>
1471             The assembly's Culture
1472             </summary>
1473             <value></value>
1474         </member>
1475         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.Retargetable">
1476             <summary>
1477             The assembly's retargetable bit
1478             </summary>
1479             <value></value>
1480         </member>
1481         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.RemappedFromEnumerator">
1482             <summary>
1483             The full name of the original extension we were before being remapped.
1484             </summary>
1485         </member>
1486         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.AddRemappedAssemblyName(Microsoft.Build.Shared.AssemblyNameExtension)">
1487             <summary>
1488             Add an assemblyNameExtension which represents an assembly name which was mapped to THIS assemblyName.
1489             </summary>
1490         </member>
1491         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.AssemblyName">
1492             <summary>
1493             As an AssemblyName
1494             </summary>
1495             <value></value>
1496         </member>
1497         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.FullName">
1498             <summary>
1499             The assembly's full name.
1500             </summary>
1501             <value></value>
1502         </member>
1503         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.GetPublicKeyToken">
1504             <summary>
1505             Get the assembly's public key token.
1506             </summary>
1507             <returns></returns>
1508         </member>
1509         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.UnnamedAssembly">
1510             <summary>
1511             A special "unnamed" instance of AssemblyNameExtension.
1512             </summary>
1513             <value></value>
1514         </member>
1515         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareTo(Microsoft.Build.Shared.AssemblyNameExtension)">
1516             <summary>
1517             Compare one assembly name to another.
1518             </summary>
1519             <param name="that"></param>
1520             <returns></returns>
1521         </member>
1522         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareTo(Microsoft.Build.Shared.AssemblyNameExtension,System.Boolean)">
1523             <summary>
1524             Compare one assembly name to another.
1525             </summary>
1526         </member>
1527         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.GetHashCode">
1528             <summary>
1529             Get a hash code for this assembly name.
1530             </summary>
1531             <returns></returns>
1532         </member>
1533         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareBaseNameTo(Microsoft.Build.Shared.AssemblyNameExtension)">
1534             <summary>
1535             Compare two base names as quickly as possible.
1536             </summary>
1537             <param name="that"></param>
1538             <returns></returns>
1539         </member>
1540         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareBaseNameToImpl(Microsoft.Build.Shared.AssemblyNameExtension)">
1541             <summary>
1542             An implementation of compare that compares two base 
1543             names as quickly as possible.
1544             </summary>
1545             <param name="that"></param>
1546             <returns></returns>
1547         </member>
1548         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareBaseNamesStringWise(System.String,System.String)">
1549             <summary>
1550             Compare two basenames.
1551             </summary>
1552             <param name="asString1"></param>
1553             <param name="asString2"></param>
1554             <returns></returns>
1555         </member>
1556         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.Clone">
1557             <summary>
1558             Clone this assemblyNameExtension
1559             </summary>
1560         </member>
1561         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CloneImmutable">
1562             <summary>
1563             Clone the object but mark and mark the cloned object as immutable
1564             </summary>
1565             <returns></returns>
1566         </member>
1567         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.Immutable">
1568             <summary>
1569             Is this object immutable
1570             </summary>
1571         </member>
1572         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.MarkImmutable">
1573             <summary>
1574             Mark this object as immutable
1575             </summary>
1576         </member>
1577         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.Equals(Microsoft.Build.Shared.AssemblyNameExtension)">
1578             <summary>
1579             Compare two assembly names for equality.
1580             </summary>
1581             <param name="that"></param>
1582             <returns></returns>
1583         </member>
1584         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.EqualsIgnoreVersion(Microsoft.Build.Shared.AssemblyNameExtension)">
1585             <summary>
1586             Compare two assembly names for equality ignoring version.
1587             </summary>
1588             <param name="that"></param>
1589             <returns></returns>
1590         </member>
1591         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.Equals(Microsoft.Build.Shared.AssemblyNameExtension,System.Boolean)">
1592             <summary>
1593             Compare two assembly names and consider the retargetable flag during the comparison
1594             </summary>
1595         </member>
1596         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.EqualsImpl(Microsoft.Build.Shared.AssemblyNameExtension,System.Boolean,System.Boolean)">
1597             <summary>
1598             Compare two assembly names for equality.
1599             </summary>
1600         </member>
1601         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.CompareCulture(Microsoft.Build.Shared.AssemblyNameExtension)">
1602             <summary>
1603             Allows the comparison of the culture.
1604             </summary>
1605         </member>
1606         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.ComparePublicKeyToken(Microsoft.Build.Shared.AssemblyNameExtension)">
1607             <summary>
1608              Allows the comparison of just the PublicKeyToken
1609             </summary>
1610         </member>
1611         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.ComparePublicKeyTokens(System.Byte[],System.Byte[])">
1612             <summary>
1613             Compare two public key tokens.
1614             </summary>
1615         </member>
1616         <member name="P:Microsoft.Build.Shared.AssemblyNameExtension.IsUnnamedAssembly">
1617             <summary>
1618             Only the unnamed assembly has both null assemblyname and null string.
1619             </summary>
1620             <returns></returns>
1621         </member>
1622         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.GetAssemblyNameFromDisplayName(System.String)">
1623             <summary>
1624             Given a display name, construct an assembly name.
1625             </summary>
1626             <param name="displayName">The display name.</param>
1627             <returns>The assembly name.</returns>
1628         </member>
1629         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.EscapeDisplayNameCharacters(System.String)">
1630             <summary>
1631             Return a string that has AssemblyName special characters escaped. 
1632             Those characters are Equals(=), Comma(,), Quote("), Apostrophe('), Backslash(\).
1633             </summary>
1634             <remarks>
1635             WARNING! This method is not meant as a general purpose escaping method for assembly names.
1636             Use only if you really know that this does what you need.
1637             </remarks>
1638             <param name="displayName"></param>
1639             <returns></returns>
1640         </member>
1641         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.ToString">
1642             <summary>
1643             Convert to a string for display.
1644             </summary>
1645             <returns></returns>
1646         </member>
1647         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.PartialNameCompare(Microsoft.Build.Shared.AssemblyNameExtension)">
1648             <summary>
1649             Compare the fields of this with that if they are not null.
1650             </summary>
1651         </member>
1652         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.PartialNameCompare(Microsoft.Build.Shared.AssemblyNameExtension,System.Boolean)">
1653             <summary>
1654             Compare the fields of this with that if they are not null.
1655             </summary>
1656         </member>
1657         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.PartialNameCompare(Microsoft.Build.Shared.AssemblyNameExtension,Microsoft.Build.Shared.PartialComparisonFlags)">
1658             <summary>
1659             Do a partial comparison between two assembly name extensions.
1660             Compare the fields of A and B on the following conditions:
1661             1) A.Field has a non null value 
1662             2) The field has been selected in the comparison flags or the default comparison flags are passed in.
1663             
1664             If A.Field is null then we will not compare A.Field and B.Field even when the comparison flag is set for that field unless skipNullFields is false.
1665             </summary>
1666         </member>
1667         <member name="M:Microsoft.Build.Shared.AssemblyNameExtension.PartialNameCompare(Microsoft.Build.Shared.AssemblyNameExtension,Microsoft.Build.Shared.PartialComparisonFlags,System.Boolean)">
1668             <summary>
1669             Do a partial comparison between two assembly name extensions.
1670             Compare the fields of A and B on the following conditions:
1671             1) A.Field has a non null value 
1672             2) The field has been selected in the comparison flags or the default comparison flags are passed in.
1673             
1674             If A.Field is null then we will not compare A.Field and B.Field even when the comparison flag is set for that field unless skipNullFields is false.
1675             </summary>
1676         </member>
1677         <member name="T:Microsoft.Build.Shared.BuildEventFileInfo">
1678             <summary>
1679             This class encapsulates information about a file that is associated with a build event.
1680             </summary>
1681         </member>
1682         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor">
1683             <summary>
1684             Private default constructor disallows parameterless instantiation.
1685             </summary>
1686         </member>
1687         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(System.String)">
1688             <summary>
1689             Creates an instance of this class using the given filename/path.
1690             Filename may be an empty string, if there is truly no file associated.
1691             This overload may also be used if there is a file but truly no line/column,
1692             for example when failing to load a project file.
1693             
1694             IF AN IELEMENTLOCATION IS AVAILABLE, USE THE OVERLOAD ACCEPTING THAT INSTEAD.
1695             </summary>
1696             <param name="file"></param>
1697         </member>
1698         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(Microsoft.Build.Shared.IElementLocation)">
1699             <summary>
1700             Creates an instance of this class using the given location.
1701             This does not provide end-line or end-column information.
1702             This is the preferred overload.
1703             </summary>
1704         </member>
1705         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(System.String,System.Int32,System.Int32)">
1706             <summary>
1707             Creates an instance of this class using the given filename/path and a line/column of interest in the file.
1708             
1709             IF AN IELEMENTLOCATION IS AVAILABLE, USE THE OVERLOAD ACCEPTING THAT INSTEAD.
1710             </summary>
1711             <param name="file"></param>
1712             <param name="line">Set to zero if not available.</param>
1713             <param name="column">Set to zero if not available.</param>
1714         </member>
1715         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(System.String,System.Int32,System.Int32,System.Int32,System.Int32)">
1716             <summary>
1717             Creates an instance of this class using the given filename/path and a range of lines/columns of interest in the file.
1718             
1719             IF AN IELEMENTLOCATION IS AVAILABLE, USE THE OVERLOAD ACCEPTING THAT INSTEAD.
1720             </summary>
1721             <param name="file"></param>
1722             <param name="line">Set to zero if not available.</param>
1723             <param name="column">Set to zero if not available.</param>
1724             <param name="endLine">Set to zero if not available.</param>
1725             <param name="endColumn">Set to zero if not available.</param>
1726         </member>
1727         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(System.Xml.XmlException)">
1728             <summary>
1729             Creates an instance of this class using the information in the given XmlException.
1730             </summary>
1731             <param name="e"></param>
1732         </member>
1733         <member name="M:Microsoft.Build.Shared.BuildEventFileInfo.#ctor(System.String,System.Xml.XmlException)">
1734             <summary>
1735             Creates an instance of this class using the information in the given XmlException and file location.
1736             </summary>
1737         </member>
1738         <member name="P:Microsoft.Build.Shared.BuildEventFileInfo.File">
1739             <summary>
1740             Gets the filename/path to be associated with some build event.
1741             </summary>
1742             <value>The filename/path string.</value>
1743         </member>
1744         <member name="P:Microsoft.Build.Shared.BuildEventFileInfo.Line">
1745             <summary>
1746             Gets the line number of interest in the file.
1747             </summary>
1748             <value>Line number, or zero if not available.</value>
1749         </member>
1750         <member name="P:Microsoft.Build.Shared.BuildEventFileInfo.Column">
1751             <summary>
1752             Gets the column number of interest in the file.
1753             </summary>
1754             <value>Column number, or zero if not available.</value>
1755         </member>
1756         <member name="P:Microsoft.Build.Shared.BuildEventFileInfo.EndLine">
1757             <summary>
1758             Gets the last line number of a range of interesting lines in the file.
1759             </summary>
1760             <value>Last line number, or zero if not available.</value>
1761         </member>
1762         <member name="P:Microsoft.Build.Shared.BuildEventFileInfo.EndColumn">
1763             <summary>
1764             Gets the last column number of a range of interesting columns in the file.
1765             </summary>
1766             <value>Last column number, or zero if not available.</value>
1767         </member>
1768         <member name="T:Microsoft.Build.Shared.ConversionUtilities">
1769             <summary>
1770             This class contains only static methods, which are useful throughout many
1771             of the MSBuild classes and don't really belong in any specific class.   
1772             </summary>
1773         </member>
1774         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ConvertStringToBool(System.String)">
1775             <summary>
1776             Converts a string to a bool.  We consider "true/false", "on/off", and 
1777             "yes/no" to be valid boolean representations in the XML.
1778             </summary>
1779             <param name="parameterValue">The string to convert.</param>
1780             <returns>Boolean true or false, corresponding to the string.</returns>
1781         </member>
1782         <member name="M:Microsoft.Build.Shared.ConversionUtilities.CanConvertStringToBool(System.String)">
1783             <summary>
1784             Returns true if the string can be successfully converted to a bool,
1785             such as "on" or "yes"
1786             </summary>
1787         </member>
1788         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ValidBooleanTrue(System.String)">
1789             <summary>
1790             Returns true if the string represents a valid MSBuild boolean true value,
1791             such as "on", "!false", "yes"
1792             </summary>
1793         </member>
1794         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ValidBooleanFalse(System.String)">
1795             <summary>
1796             Returns true if the string represents a valid MSBuild boolean false value,
1797             such as "!on" "off" "no" "!true"
1798             </summary>
1799         </member>
1800         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ConvertDecimalToDouble(System.String)">
1801             <summary>
1802             Converts a string like "123.456" into a double. Leading sign is allowed.
1803             </summary>
1804         </member>
1805         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ConvertHexToDouble(System.String)">
1806             <summary>
1807             Converts a hex string like "0xABC" into a double.
1808             </summary>
1809         </member>
1810         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ConvertDecimalOrHexToDouble(System.String)">
1811             <summary>
1812             Converts a string like "123.456" or "0xABC" into a double.
1813             Tries decimal conversion first.
1814             </summary>
1815         </member>
1816         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ValidHexNumber(System.String)">
1817             <summary>
1818             Returns true if the string is a valid hex number, like "0xABC"
1819             </summary>
1820         </member>
1821         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ValidDecimalNumber(System.String)">
1822             <summary>
1823             Returns true if the string is a valid decimal number, like "-123.456"
1824             </summary>
1825         </member>
1826         <member name="M:Microsoft.Build.Shared.ConversionUtilities.ValidDecimalOrHexNumber(System.String)">
1827             <summary>
1828             Returns true if the string is a valid decimal or hex number
1829             </summary>
1830         </member>
1831         <member name="T:Microsoft.Build.Shared.DirectoryGetFiles">
1832             <summary>
1833             delegate for System.IO.Directory.GetFiles, used for testing
1834             </summary>
1835             <param name="path">Directory path to start search for files in</param>
1836             <param name="searchPattern">pattern of files to match</param>
1837             <returns>string array of files which match search pattern</returns>
1838         </member>
1839         <member name="T:Microsoft.Build.Shared.GetDirectories">
1840             <summary>
1841             delegate for Directory.GetDirectories.
1842             </summary>
1843             <param name="path">The path to get directories for.</param>
1844             <param name="pattern">The pattern to search for.</param>
1845             <returns>An array of directories.</returns>
1846         </member>
1847         <member name="T:Microsoft.Build.Shared.DirectoryExists">
1848             <summary>
1849             Delegate for System.IO.Directory.Exists
1850             </summary>
1851             <param name="path">Directory path to check if it exists</param>
1852             <returns>true if directory exists</returns>
1853         </member>
1854         <member name="T:Microsoft.Build.Shared.FileExists">
1855             <summary>
1856             File exists delegate
1857             </summary>
1858             <param name="path">The path to check for existence.</param>
1859             <returns>'true' if the file exists.</returns>
1860         </member>
1861         <member name="T:Microsoft.Build.Shared.FileCopy">
1862             <summary>
1863             File.Copy delegate
1864             </summary>
1865             <param name="source"></param>
1866             <param name="destination"></param>
1867         </member>
1868         <member name="T:Microsoft.Build.Shared.FileDelete">
1869             <summary>
1870             File.Delete delegate
1871             </summary>
1872             <param name="path"></param>
1873         </member>
1874         <member name="T:Microsoft.Build.Shared.FileCreate">
1875             <summary>
1876             File create delegate
1877             </summary>
1878             <param name="path">The path to create.</param>
1879         </member>
1880         <member name="T:Microsoft.Build.Shared.ErrorUtilities">
1881             <summary>
1882             This class contains methods that are useful for error checking and validation.
1883             </summary>
1884         </member>
1885         <member name="F:Microsoft.Build.Shared.ErrorUtilities.s_throwExceptions">
1886             <summary>
1887             Emergency escape hatch. If a customer hits a bug in the shipped product causing an internal exception,
1888             and fortuitously it happens that ignoring the VerifyThrow allows execution to continue in a reasonable way,
1889             then we can give them this undocumented environment variable as an immediate workaround.
1890             </summary>
1891         </member>
1892         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowInternalError(System.String,System.Object[])">
1893             <summary>
1894             Throws InternalErrorException. 
1895             This is only for situations that would mean that there is a bug in MSBuild itself.
1896             </summary>
1897         </member>
1898         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowInternalError(System.String,System.Exception,System.Object[])">
1899             <summary>
1900             Throws InternalErrorException. 
1901             This is only for situations that would mean that there is a bug in MSBuild itself.
1902             </summary>
1903         </member>
1904         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowInternalErrorUnreachable">
1905             <summary>
1906             Throws InternalErrorException. 
1907             Indicates the code path followed should not have been possible.
1908             This is only for situations that would mean that there is a bug in MSBuild itself.
1909             </summary>
1910         </member>
1911         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowIfTypeDoesNotImplementToString(System.Object)">
1912             <summary>
1913             Throws InternalErrorException. 
1914             Indicates the code path followed should not have been possible.
1915             This is only for situations that would mean that there is a bug in MSBuild itself.
1916             </summary>
1917         </member>
1918         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInternalNull(System.Object,System.String)">
1919             <summary>
1920             Helper to throw an InternalErrorException when the specified parameter is null.
1921             This should be used ONLY if this would indicate a bug in MSBuild rather than
1922             anything caused by user action.
1923             </summary>
1924             <param name="parameter">The value of the argument.</param>
1925             <param name="parameterName">Parameter that should not be null</param>
1926         </member>
1927         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInternalLockHeld(System.Object)">
1928             <summary>
1929             Helper to throw an InternalErrorException when a lock on the specified object is not already held.
1930             This should be used ONLY if this would indicate a bug in MSBuild rather than
1931             anything caused by user action.
1932             </summary>
1933             <param name="locker">The object that should already have been used as a lock.</param>
1934         </member>
1935         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInternalLength(System.String,System.String)">
1936             <summary>
1937             Helper to throw an InternalErrorException when the specified parameter is null or zero length.
1938             This should be used ONLY if this would indicate a bug in MSBuild rather than
1939             anything caused by user action.
1940             </summary>
1941             <param name="parameterValue">The value of the argument.</param>
1942             <param name="parameterName">Parameter that should not be null or zero length</param>
1943         </member>
1944         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInternalRooted(System.String)">
1945             <summary>
1946             Helper to throw an InternalErrorException when the specified parameter is not a rooted path.
1947             This should be used ONLY if this would indicate a bug in MSBuild rather than
1948             anything caused by user action.
1949             </summary>
1950             <param name="value">Parameter that should be a rooted path</param>
1951         </member>
1952         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrow(System.Boolean,System.String)">
1953             <summary>
1954             This method should be used in places where one would normally put
1955             an "assert". It should be used to validate that our assumptions are
1956             true, where false would indicate that there must be a bug in our
1957             code somewhere. This should not be used to throw errors based on bad
1958             user input or anything that the user did wrong.
1959             </summary>
1960             <param name="condition"></param>
1961             <param name="unformattedMessage"></param>
1962         </member>
1963         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrow(System.Boolean,System.String,System.Object)">
1964             <summary>
1965             Overload for one string format argument.
1966             </summary>
1967             <param name="condition"></param>
1968             <param name="unformattedMessage"></param>
1969             <param name="arg0"></param>
1970         </member>
1971         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrow(System.Boolean,System.String,System.Object,System.Object)">
1972             <summary>
1973             Overload for two string format arguments.
1974             </summary>
1975             <param name="condition"></param>
1976             <param name="unformattedMessage"></param>
1977             <param name="arg0"></param>
1978             <param name="arg1"></param>
1979         </member>
1980         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrow(System.Boolean,System.String,System.Object,System.Object,System.Object)">
1981             <summary>
1982             Overload for three string format arguments.
1983             </summary>
1984             <param name="condition"></param>
1985             <param name="unformattedMessage"></param>
1986             <param name="arg0"></param>
1987             <param name="arg1"></param>
1988             <param name="arg2"></param>
1989         </member>
1990         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrow(System.Boolean,System.String,System.Object,System.Object,System.Object,System.Object)">
1991             <summary>
1992             Overload for four string format arguments.
1993             </summary>
1994             <param name="condition"></param>
1995             <param name="unformattedMessage"></param>
1996             <param name="arg0"></param>
1997             <param name="arg1"></param>
1998             <param name="arg2"></param>
1999             <param name="arg3"></param>
2000         </member>
2001         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(System.String,System.Object[])">
2002             <summary>
2003             Throws an InvalidOperationException with the specified resource string
2004             </summary>
2005             <param name="resourceName">Resource to use in the exception</param>
2006             <param name="args">Formatting args.</param>
2007         </member>
2008         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(System.Boolean,System.String)">
2009             <summary>
2010             Throws an InvalidOperationException if the given condition is false.
2011             </summary>
2012             <param name="condition"></param>
2013             <param name="resourceName"></param>
2014         </member>
2015         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(System.Boolean,System.String,System.Object)">
2016             <summary>
2017             Overload for one string format argument.
2018             </summary>
2019             <param name="condition"></param>
2020             <param name="resourceName"></param>
2021             <param name="arg0"></param>
2022         </member>
2023         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(System.Boolean,System.String,System.Object,System.Object)">
2024             <summary>
2025             Overload for two string format arguments.
2026             </summary>
2027             <param name="condition"></param>
2028             <param name="resourceName"></param>
2029             <param name="arg0"></param>
2030             <param name="arg1"></param>
2031         </member>
2032         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(System.Boolean,System.String,System.Object,System.Object,System.Object)">
2033             <summary>
2034             Overload for three string format arguments.
2035             </summary>
2036             <param name="condition"></param>
2037             <param name="resourceName"></param>
2038             <param name="arg0"></param>
2039             <param name="arg1"></param>
2040             <param name="arg2"></param>
2041         </member>
2042         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowInvalidOperation(System.Boolean,System.String,System.Object,System.Object,System.Object,System.Object)">
2043             <summary>
2044             Overload for four string format arguments.
2045             </summary>
2046             <param name="condition"></param>
2047             <param name="resourceName"></param>
2048             <param name="arg0"></param>
2049             <param name="arg1"></param>
2050             <param name="arg2"></param>
2051             <param name="arg3"></param>
2052         </member>
2053         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowArgument(System.String,System.Object[])">
2054             <summary>
2055             Throws an ArgumentException that can include an inner exception.
2056             
2057             PERF WARNING: calling a method that takes a variable number of arguments
2058             is expensive, because memory is allocated for the array of arguments -- do
2059             not call this method repeatedly in performance-critical scenarios
2060             </summary>
2061         </member>
2062         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowArgument(System.Exception,System.String,System.Object[])">
2063             <summary>
2064             Throws an ArgumentException that can include an inner exception.
2065             
2066             PERF WARNING: calling a method that takes a variable number of arguments
2067             is expensive, because memory is allocated for the array of arguments -- do
2068             not call this method repeatedly in performance-critical scenarios
2069             </summary>
2070             <remarks>
2071             This method is thread-safe.
2072             </remarks>
2073             <param name="innerException">Can be null.</param>
2074             <param name="resourceName"></param>
2075             <param name="args"></param>
2076         </member>
2077         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.String)">
2078             <summary>
2079             Throws an ArgumentException if the given condition is false.
2080             </summary>
2081             <remarks>This method is thread-safe.</remarks>
2082             <param name="condition"></param>
2083             <param name="resourceName"></param>
2084         </member>
2085         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.String,System.Object)">
2086             <summary>
2087             Overload for one string format argument.
2088             </summary>
2089             <remarks>This method is thread-safe.</remarks>
2090             <param name="condition"></param>
2091             <param name="resourceName"></param>
2092             <param name="arg0"></param>
2093         </member>
2094         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.String,System.Object,System.Object)">
2095             <summary>
2096             Overload for two string format arguments.
2097             </summary>
2098             <remarks>This method is thread-safe.</remarks>
2099             <param name="condition"></param>
2100             <param name="resourceName"></param>
2101             <param name="arg0"></param>
2102             <param name="arg1"></param>
2103         </member>
2104         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.String,System.Object,System.Object,System.Object)">
2105             <summary>
2106             Overload for three string format arguments.
2107             </summary>
2108             <remarks>This method is thread-safe.</remarks>
2109         </member>
2110         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.String,System.Object,System.Object,System.Object,System.Object)">
2111             <summary>
2112             Overload for four string format arguments.
2113             </summary>
2114             <remarks>This method is thread-safe.</remarks>
2115         </member>
2116         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.Exception,System.String)">
2117             <summary>
2118             Throws an ArgumentException that includes an inner exception, if
2119             the given condition is false.
2120             </summary>
2121             <remarks>This method is thread-safe.</remarks>
2122             <param name="condition"></param>
2123             <param name="innerException">Can be null.</param>
2124             <param name="resourceName"></param>
2125         </member>
2126         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.Exception,System.String,System.Object)">
2127             <summary>
2128             Overload for one string format argument.
2129             </summary>
2130             <remarks>This method is thread-safe.</remarks>
2131             <param name="condition"></param>
2132             <param name="innerException"></param>
2133             <param name="resourceName"></param>
2134             <param name="arg0"></param>
2135         </member>
2136         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.Exception,System.String,System.Object,System.Object)">
2137             <summary>
2138             Overload for two string format arguments.
2139             </summary>
2140             <remarks>This method is thread-safe.</remarks>
2141             <param name="condition"></param>
2142             <param name="innerException"></param>
2143             <param name="resourceName"></param>
2144             <param name="arg0"></param>
2145             <param name="arg1"></param>
2146         </member>
2147         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.Exception,System.String,System.Object,System.Object,System.Object)">
2148             <summary>
2149             Overload for three string format arguments.
2150             </summary>
2151             <remarks>This method is thread-safe.</remarks>
2152         </member>
2153         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgument(System.Boolean,System.Exception,System.String,System.Object,System.Object,System.Object,System.Object)">
2154             <summary>
2155             Overload for four string format arguments.
2156             </summary>
2157             <remarks>This method is thread-safe.</remarks>
2158         </member>
2159         <member name="M:Microsoft.Build.Shared.ErrorUtilities.ThrowArgumentOutOfRange(System.String)">
2160             <summary>
2161             Throws an argument out of range exception.
2162             </summary>
2163         </member>
2164         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentOutOfRange(System.Boolean,System.String)">
2165             <summary>
2166             Throws an ArgumentOutOfRangeException using the given parameter name
2167             if the condition is false.
2168             </summary>
2169         </member>
2170         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentLength(System.String,System.String)">
2171             <summary>
2172             Throws an ArgumentNullException if the given string parameter is null
2173             and ArgumentException if it has zero length.
2174             </summary>
2175             <param name="parameter"></param>
2176             <param name="parameterName"></param>
2177         </member>
2178         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentInvalidPath(System.String,System.String)">
2179             <summary>
2180             Throws an ArgumentNullException if the given string parameter is null
2181             and ArgumentException if it has zero length.
2182             </summary>
2183             <param name="parameter"></param>
2184             <param name="parameterName"></param>
2185         </member>
2186         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentLengthIfNotNull(System.String,System.String)">
2187             <summary>
2188             Throws an ArgumentException if the string has zero length, unless it is 
2189             null, in which case no exception is thrown.
2190             </summary>
2191         </member>
2192         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentNull(System.Object,System.String)">
2193             <summary>
2194             Throws an ArgumentNullException if the given parameter is null.
2195             </summary>
2196             <remarks>This method is thread-safe.</remarks>
2197             <param name="parameter"></param>
2198             <param name="parameterName"></param>
2199         </member>
2200         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentNull(System.Object,System.String,System.String)">
2201             <summary>
2202             Throws an ArgumentNullException if the given parameter is null.
2203             </summary>
2204             <remarks>This method is thread-safe.</remarks>
2205         </member>
2206         <member name="M:Microsoft.Build.Shared.ErrorUtilities.VerifyThrowArgumentArraysSameLength(System.Array,System.Array,System.String,System.String)">
2207             <summary>
2208             Verifies the given arrays are not null and have the same length
2209             </summary>
2210             <param name="parameter1"></param>
2211             <param name="parameter2"></param>
2212             <param name="parameter1Name"></param>
2213             <param name="parameter2Name"></param>
2214         </member>
2215         <member name="T:Microsoft.Build.Shared.EscapingUtilities">
2216             <summary>
2217             This class implements static methods to assist with unescaping of %XX codes
2218             in the MSBuild file format.
2219             </summary>
2220             <remarks>
2221             PERF: since we escape and unescape relatively frequently, it may be worth caching
2222             the last N strings that were (un)escaped
2223             </remarks>
2224         </member>
2225         <member name="F:Microsoft.Build.Shared.EscapingUtilities.s_unescapedToEscapedStrings">
2226             <summary>
2227             Optional cache of escaped strings for use when needing to escape in performance-critical scenarios with significant
2228             expected string reuse.
2229             </summary>
2230         </member>
2231         <member name="M:Microsoft.Build.Shared.EscapingUtilities.UnescapeAll(System.String)">
2232             <summary>
2233             Replaces all instances of %XX in the input string with the character represented
2234             by the hexadecimal number XX.
2235             </summary>
2236             <param name="escapedString">The string to unescape.</param>
2237             <returns>unescaped string</returns>
2238         </member>
2239         <member name="M:Microsoft.Build.Shared.EscapingUtilities.UnescapeAll(System.String,System.Boolean@)">
2240             <summary>
2241             Replaces all instances of %XX in the input string with the character represented
2242             by the hexadecimal number XX.
2243             </summary>
2244             <param name="escapedString">The string to unescape.</param>
2245             <param name="escapingWasNecessary">Whether any replacements were made.</param>
2246             <returns>unescaped string</returns>
2247         </member>
2248         <member name="M:Microsoft.Build.Shared.EscapingUtilities.EscapeWithCaching(System.String)">
2249             <summary>
2250             Adds instances of %XX in the input string where the char to be escaped appears
2251             XX is the hex value of the ASCII code for the char.  Interns and caches the result.
2252             </summary>
2253             <comment>
2254             NOTE:  Only recommended for use in scenarios where there's expected to be significant
2255             repetition of the escaped string.  Cache currently grows unbounded.
2256             </comment>
2257         </member>
2258         <member name="M:Microsoft.Build.Shared.EscapingUtilities.Escape(System.String)">
2259             <summary>
2260             Adds instances of %XX in the input string where the char to be escaped appears
2261             XX is the hex value of the ASCII code for the char.
2262             </summary>
2263             <param name="unescapedString">The string to escape.</param>
2264             <returns>escaped string</returns>
2265         </member>
2266         <member name="M:Microsoft.Build.Shared.EscapingUtilities.EscapeWithOptionalCaching(System.String,System.Boolean)">
2267             <summary>
2268             Adds instances of %XX in the input string where the char to be escaped appears
2269             XX is the hex value of the ASCII code for the char.  Caches if requested.
2270             </summary>
2271             <param name="unescapedString">The string to escape.</param>
2272             <param name="cache">
2273             True if the cache should be checked, and if the resultant string
2274             should be cached.
2275             </param>
2276         </member>
2277         <member name="M:Microsoft.Build.Shared.EscapingUtilities.ContainsReservedCharacters(System.String)">
2278             <summary>
2279             Before trying to actually escape the string, it can be useful to call this method to determine
2280             if escaping is necessary at all.  This can save lots of calls to copy around item metadata
2281             that is really the same whether escaped or not.
2282             </summary>
2283             <param name="unescapedString"></param>
2284             <returns></returns>
2285         </member>
2286         <member name="M:Microsoft.Build.Shared.EscapingUtilities.ContainsEscapedWildcards(System.String)">
2287             <summary>
2288             Determines whether the string contains the escaped form of '*' or '?'.
2289             </summary>
2290             <param name="escapedString"></param>
2291             <returns></returns>
2292         </member>
2293         <member name="M:Microsoft.Build.Shared.EscapingUtilities.HexDigitChar(System.Int32)">
2294             <summary>
2295             Convert the given integer into its hexadecimal representation.
2296             </summary>
2297             <param name="x">The number to convert, which must be non-negative and less than 16</param>
2298             <returns>The character which is the hexadecimal representation of <paramref name="x"/>.</returns>
2299         </member>
2300         <member name="M:Microsoft.Build.Shared.EscapingUtilities.AppendEscapedChar(System.Text.StringBuilder,System.Char)">
2301             <summary>
2302             Append the escaped version of the given character to a <see cref="T:System.Text.StringBuilder"/>.
2303             </summary>
2304             <param name="sb">The <see cref="T:System.Text.StringBuilder"/> to which to append.</param>
2305             <param name="ch">The character to escape.</param>
2306         </member>
2307         <member name="M:Microsoft.Build.Shared.EscapingUtilities.AppendEscapedString(System.Text.StringBuilder,System.String)">
2308             <summary>
2309             Append the escaped version of the given string to a <see cref="T:System.Text.StringBuilder"/>.
2310             </summary>
2311             <param name="sb">The <see cref="T:System.Text.StringBuilder"/> to which to append.</param>
2312             <param name="unescapedString">The unescaped string.</param>
2313         </member>
2314         <member name="F:Microsoft.Build.Shared.EscapingUtilities.s_charsToEscape">
2315             <summary>
2316             Special characters that need escaping.
2317             It's VERY important that the percent character is the FIRST on the list - since it's both a character
2318             we escape and use in escape sequences, we can unintentionally escape other escape sequences if we
2319             don't process it first. Of course we'll have a similar problem if we ever decide to escape hex digits
2320             (that would require rewriting the algorithm) but since it seems unlikely that we ever do, this should
2321             be good enough to avoid complicating the algorithm at this point.
2322             </summary>
2323         </member>
2324         <member name="T:Microsoft.Build.Shared.VersionUtilities">
2325             <summary>
2326             Set of methods to deal with versions in the tasks
2327             </summary>
2328         </member>
2329         <member name="M:Microsoft.Build.Shared.VersionUtilities.ConvertToVersion(System.String)">
2330             <summary>
2331             Convert a version number like 0.0.0.0 to a Version instance.
2332             The method will return null if the string is not a valid value
2333             </summary>
2334             <param name="version">Version string to convert to a version object</param>
2335         </member>
2336         <member name="M:Microsoft.Build.Shared.VersionUtilities.GatherVersionStrings(System.Version,System.Collections.IEnumerable)">
2337             <summary>
2338             Go though an enumeration and create a sorted list of strings which can be parsed as versions. Keep around the original 
2339             string because it may contain a v and this would be required to create the correct path on disk if the string was part of a path.
2340             </summary>
2341         </member>
2342         <member name="M:Microsoft.Build.Shared.VersionUtilities.ConvertToVersion(System.String,System.Boolean)">
2343             <summary>
2344              Convert a version number like 0.0.0.0 to a Version instance.
2345             </summary>
2346             <param name="version"></param>
2347             <param name="throwException">Should we use Parse to TryParse (parse means we throw an exception, tryparse means we will not).</param>
2348         </member>
2349         <member name="F:Microsoft.Build.Shared.ReverseStringGenericComparer.Comparer">
2350             <summary>
2351             Static accessor for a ReverseVersionGenericComparer
2352             </summary>
2353         </member>
2354         <member name="M:Microsoft.Build.Shared.ReverseStringGenericComparer.System#Collections#Generic#IComparer{System#String}#Compare(System.String,System.String)">
2355             <summary>
2356             The Compare implements a reverse comparison
2357             </summary>
2358         </member>
2359         <member name="F:Microsoft.Build.Shared.ReverseVersionGenericComparer.Comparer">
2360             <summary>
2361             Static accessor for a ReverseVersionGenericComparer
2362             </summary>
2363         </member>
2364         <member name="M:Microsoft.Build.Shared.ReverseVersionGenericComparer.System#Collections#Generic#IComparer{System#Version}#Compare(System.Version,System.Version)">
2365             <summary>
2366             The Compare implements a reverse comparison
2367             </summary>
2368         </member>
2369         <member name="T:Microsoft.Build.Shared.EventArgsFormatting">
2370             <summary>
2371             Offers a default string format for Error and Warning events
2372             </summary>
2373         </member>
2374         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.EscapeCarriageReturn(System.String)">
2375             <summary>
2376             Escape the carriage Return from a string
2377             </summary>
2378             <param name="stringWithCarriageReturn"></param>
2379             <returns>String with carriage returns escaped as \\r </returns>
2380         </member>
2381         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildErrorEventArgs)">
2382             <summary>
2383             Format the error event message and all the other event data into
2384             a single string.
2385             </summary>
2386             <param name="e">Error to format</param>
2387             <returns>The formatted message string.</returns>
2388         </member>
2389         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildErrorEventArgs,System.Boolean)">
2390             <summary>
2391             Format the error event message and all the other event data into
2392             a single string.
2393             </summary>
2394             <param name="e">Error to format</param>
2395             <param name="removeCarriageReturn"><code>true</code> to remove any carriage returns, otherwise <code>false</code>.</param>
2396             <returns>The formatted message string.</returns>
2397         </member>
2398         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildErrorEventArgs,System.Boolean,System.Boolean)">
2399             <summary>
2400             Format the error event message and all the other event data into
2401             a single string.
2402             </summary>
2403             <param name="e">Error to format</param>
2404             <param name="removeCarriageReturn"><code>true</code> to remove any carriage returns, otherwise <code>false</code>.</param>
2405             <param name="showProjectFile"><code>true</code> to show the project file which issued the event, otherwise <code>false</code>.</param>
2406             <returns>The formatted message string.</returns>
2407         </member>
2408         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildWarningEventArgs)">
2409             <summary>
2410             Format the warning message and all the other event data into a
2411             single string.
2412             </summary>
2413             <param name="e">Warning to format</param>
2414             <returns>The formatted message string.</returns>
2415         </member>
2416         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildWarningEventArgs,System.Boolean)">
2417             <summary>
2418             Format the warning message and all the other event data into a
2419             single string.
2420             </summary>
2421             <param name="e">Warning to format</param>
2422             <param name="removeCarriageReturn"><code>true</code> to remove any carriage returns, otherwise <code>false</code>.</param>
2423             <returns>The formatted message string.</returns>
2424         </member>
2425         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildWarningEventArgs,System.Boolean,System.Boolean)">
2426             <summary>
2427             Format the warning message and all the other event data into a
2428             single string.
2429             </summary>
2430             <param name="e">Warning to format</param>
2431             <param name="removeCarriageReturn"><code>true</code> to remove any carriage returns, otherwise <code>false</code>.</param>
2432             <param name="showProjectFile"><code>true</code> to show the project file which issued the event, otherwise <code>false</code>.</param>
2433             <returns>The formatted message string.</returns>
2434         </member>
2435         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildMessageEventArgs)">
2436             <summary>
2437             Format the message and all the other event data into a
2438             single string.
2439             </summary>
2440             <param name="e">Message to format</param>
2441             <returns>The formatted message string.</returns>
2442         </member>
2443         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildMessageEventArgs,System.Boolean)">
2444             <summary>
2445             Format the message and all the other event data into a
2446             single string.
2447             </summary>
2448             <param name="e">Message to format</param>
2449             <param name="removeCarriageReturn">Escape CR or leave as is</param>
2450             <returns>The formatted message string.</returns>
2451         </member>
2452         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(Microsoft.Build.Framework.BuildMessageEventArgs,System.Boolean,System.Boolean)">
2453             <summary>
2454             Format the message and all the other event data into a
2455             single string.
2456             </summary>
2457             <param name="e">Message to format</param>
2458             <param name="removeCarriageReturn">Escape CR or leave as is</param>
2459             <param name="showProjectFile">Show project file or not</param>
2460             <returns>The formatted message string.</returns>
2461         </member>
2462         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
2463             <summary>
2464             Format the event message and all the other event data into a
2465             single string.
2466             </summary>
2467             <param name="category">category ("error" or "warning")</param>
2468             <param name="subcategory">subcategory</param>
2469             <param name="message">event message</param>
2470             <param name="code">error or warning code number</param>
2471             <param name="file">file name</param>
2472             <param name="lineNumber">line number (0 if n/a)</param>
2473             <param name="endLineNumber">end line number (0 if n/a)</param>
2474             <param name="columnNumber">column number (0 if n/a)</param>
2475             <param name="endColumnNumber">end column number (0 if n/a)</param>
2476             <param name="threadId">thread id</param>
2477             <returns>The formatted message string.</returns>
2478         </member>
2479         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.FormatEventMessage(System.String,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
2480             <summary>
2481             Format the event message and all the other event data into a
2482             single string.
2483             </summary>
2484             <param name="category">category ("error" or "warning")</param>
2485             <param name="subcategory">subcategory</param>
2486             <param name="message">event message</param>
2487             <param name="code">error or warning code number</param>
2488             <param name="file">file name</param>
2489             <param name="projectFile">the project file name</param>
2490             <param name="lineNumber">line number (0 if n/a)</param>
2491             <param name="endLineNumber">end line number (0 if n/a)</param>
2492             <param name="columnNumber">column number (0 if n/a)</param>
2493             <param name="endColumnNumber">end column number (0 if n/a)</param>
2494             <param name="threadId">thread id</param>
2495             <returns>The formatted message string.</returns>
2496         </member>
2497         <member name="M:Microsoft.Build.Shared.EventArgsFormatting.SplitStringOnNewLines(System.String)">
2498             <summary>
2499             Splits strings on 'newLines' with tolerance for Everett and Dogfood builds.
2500             </summary>
2501             <param name="s">String to split.</param>
2502         </member>
2503         <member name="F:Microsoft.Build.Shared.EventArgsFormatting.s_newLines">
2504             <summary>
2505             The kinds of newline breaks we expect.
2506             </summary>
2507             <remarks>Currently we're not supporting "\r".</remarks>
2508         </member>
2509         <member name="T:Microsoft.Build.Shared.ExceptionHandling">
2510             <summary>
2511             Utility methods for classifying and handling exceptions.
2512             </summary>
2513         </member>
2514         <member name="F:Microsoft.Build.Shared.ExceptionHandling.s_dumpFileName">
2515             <summary>
2516             The filename that exceptions will be dumped to
2517             </summary>
2518         </member>
2519         <member name="M:Microsoft.Build.Shared.ExceptionHandling.IsCriticalException(System.Exception)">
2520             <summary>
2521             If the given exception is "ignorable under some circumstances" return false.
2522             Otherwise it's "really bad", and return true.
2523             This makes it possible to catch(Exception ex) without catching disasters.
2524             </summary>
2525             <param name="e"> The exception to check. </param>
2526             <returns> True if exception is critical. </returns>
2527         </member>
2528         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedException(System.Exception)">
2529             <summary>
2530             If the given exception is file IO related or expected return false.
2531             Otherwise, return true.
2532             </summary>
2533             <param name="e">The exception to check.</param>
2534             <returns>True if exception is not IO related or expected otherwise false.</returns>
2535         </member>
2536         <member name="M:Microsoft.Build.Shared.ExceptionHandling.IsIoRelatedException(System.Exception)">
2537             <summary>
2538             Determine whether the exception is file-IO related.
2539             </summary>
2540             <param name="e">The exception to check.</param>
2541             <returns>True if exception is IO related.</returns>
2542         </member>
2543         <member name="M:Microsoft.Build.Shared.ExceptionHandling.IsXmlException(System.Exception)">
2544             <summary> Checks if the exception is an XML one. </summary>
2545             <param name="e"> Exception to check. </param>
2546             <returns> True if exception is related to XML parsing. </returns>
2547         </member>
2548         <member name="M:Microsoft.Build.Shared.ExceptionHandling.GetXmlLineAndColumn(System.Exception)">
2549             <summary> Extracts line and column numbers from the exception if it is XML-related one. </summary>
2550             <param name="e"> XML-related exception. </param>
2551             <returns> Line and column numbers if available, (0,0) if not. </returns>
2552             <remarks> This function works around the fact that XmlException and XmlSchemaException are not directly related. </remarks>
2553         </member>
2554         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedIoOrXmlException(System.Exception)">
2555             <summary>
2556             If the given exception is file IO related or Xml related return false.
2557             Otherwise, return true.
2558             </summary>
2559             <param name="e">The exception to check.</param>
2560         </member>
2561         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedReflectionException(System.Exception)">
2562             <summary>
2563             If the given exception is reflection-related return false.
2564             Otherwise, return true.
2565             </summary>
2566             <param name="e">The exception to check.</param>
2567         </member>
2568         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedSerializationException(System.Exception)">
2569             <summary>
2570             Serialization has been observed to throw TypeLoadException as
2571             well as SerializationException and IO exceptions. (Obviously
2572             it has to do reflection but it ought to be wrapping the exceptions.)
2573             </summary>
2574         </member>
2575         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedRegistryException(System.Exception)">
2576             <summary>
2577             Returns false if this is a known exception thrown by the registry API.
2578             </summary>
2579         </member>
2580         <member name="M:Microsoft.Build.Shared.ExceptionHandling.NotExpectedFunctionException(System.Exception)">
2581             <summary>
2582             Returns false if this is a known exception thrown by function evaluation
2583             </summary>
2584         </member>
2585         <member name="M:Microsoft.Build.Shared.ExceptionHandling.UnhandledExceptionHandler(System.Object,System.UnhandledExceptionEventArgs)">
2586             <summary>
2587             Dump any unhandled exceptions to a file so they can be diagnosed
2588             </summary>
2589         </member>
2590         <member name="M:Microsoft.Build.Shared.ExceptionHandling.DumpExceptionToFile(System.Exception)">
2591             <summary>
2592             Dump the exception information to a file
2593             </summary>
2594         </member>
2595         <member name="T:Microsoft.Build.Shared.ExceptionHandling.LineAndColumn">
2596             <summary> Line and column pair. </summary>
2597         </member>
2598         <member name="P:Microsoft.Build.Shared.ExceptionHandling.LineAndColumn.Line">
2599             <summary> Gets or sets line number. </summary>
2600         </member>
2601         <member name="P:Microsoft.Build.Shared.ExceptionHandling.LineAndColumn.Column">
2602             <summary> Gets or sets column position. </summary>
2603         </member>
2604         <member name="T:Microsoft.Build.Shared.FileMatcher">
2605             <summary>
2606             Functions for matching file names with patterns. 
2607             </summary>
2608         </member>
2609         <member name="F:Microsoft.Build.Shared.FileMatcher.s_invalidPathChars">
2610             <summary>
2611             Cache of the list of invalid path characters, because this method returns a clone (for security reasons)
2612             which can cause significant transient allocations
2613             </summary>
2614         </member>
2615         <member name="T:Microsoft.Build.Shared.FileMatcher.FileSystemEntity">
2616             <summary>
2617             The type of entity that GetFileSystemEntries should return.
2618             </summary>
2619         </member>
2620         <member name="T:Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries">
2621             <summary>
2622             Delegate defines the GetFileSystemEntries signature that GetLongPathName uses
2623             to enumerate directories on the file system.
2624             </summary>
2625             <param name="entityType">Files, Directories, or Files and Directories</param>
2626             <param name="path">The path to search.</param>
2627             <param name="pattern">The file pattern.</param>
2628             <param name="projectDirectory"></param>
2629             <param name="stripProjectDirectory"></param>
2630             <returns>The array of filesystem entries.</returns>
2631         </member>
2632         <member name="M:Microsoft.Build.Shared.FileMatcher.HasWildcards(System.String)">
2633             <summary>
2634             Determines whether the given path has any wild card characters.
2635             </summary>
2636             <param name="filespec"></param>
2637             <returns></returns>
2638         </member>
2639         <member name="M:Microsoft.Build.Shared.FileMatcher.HasWildcardsSemicolonItemOrPropertyReferences(System.String)">
2640             <summary>
2641             Determines whether the given path has any wild card characters or any semicolons.
2642             </summary>
2643         </member>
2644         <member name="M:Microsoft.Build.Shared.FileMatcher.GetAccessibleFileSystemEntries(Microsoft.Build.Shared.FileMatcher.FileSystemEntity,System.String,System.String,System.String,System.Boolean)">
2645             <summary>
2646             Get the files and\or folders specified by the given path and pattern.
2647             </summary>
2648             <param name="entityType">Whether Files, Directories or both.</param>
2649             <param name="path">The path to search.</param>
2650             <param name="pattern">The pattern to search.</param>
2651             <param name="projectDirectory">The directory for the project within which the call is made</param>
2652             <param name="stripProjectDirectory">If true the project directory should be stripped</param>
2653             <returns></returns>
2654         </member>
2655         <member name="M:Microsoft.Build.Shared.FileMatcher.GetAccessibleFilesAndDirectories(System.String,System.String)">
2656             <summary>
2657             Returns an array of file system entries matching the specified search criteria. Inaccessible or non-existent file
2658             system entries are skipped.
2659             </summary>
2660             <param name="path"></param>
2661             <param name="pattern"></param>
2662             <returns>Array of matching file system entries (can be empty).</returns>
2663         </member>
2664         <member name="M:Microsoft.Build.Shared.FileMatcher.GetAccessibleFiles(System.String,System.String,System.String,System.Boolean)">
2665             <summary>
2666             Same as Directory.GetFiles(...) except that files that
2667             aren't accessible are skipped instead of throwing an exception.
2668             
2669             Other exceptions are passed through.
2670             </summary>
2671             <param name="path">The path.</param>
2672             <param name="filespec">The pattern.</param>
2673             <param name="projectDirectory">The project directory</param>
2674             <param name="stripProjectDirectory"></param>
2675             <returns>Files that can be accessed.</returns>
2676         </member>
2677         <member name="M:Microsoft.Build.Shared.FileMatcher.GetAccessibleDirectories(System.String,System.String)">
2678             <summary>
2679             Same as Directory.GetDirectories(...) except that files that
2680             aren't accessible are skipped instead of throwing an exception.
2681             
2682             Other exceptions are passed through.
2683             </summary>
2684             <param name="path">The path.</param>
2685             <param name="pattern">Pattern to match</param>
2686             <returns>Accessible directories.</returns>
2687         </member>
2688         <member name="M:Microsoft.Build.Shared.FileMatcher.GetLongPathName(System.String)">
2689             <summary>
2690             Given a path name, get its long version.
2691             </summary>
2692             <param name="path">The short path.</param>
2693             <returns>The long path.</returns>
2694         </member>
2695         <member name="M:Microsoft.Build.Shared.FileMatcher.GetLongPathName(System.String,Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries)">
2696             <summary>
2697             Given a path name, get its long version.
2698             </summary>
2699             <param name="path">The short path.</param>
2700             <param name="getFileSystemEntries">Delegate.</param>
2701             <returns>The long path.</returns>
2702         </member>
2703         <member name="M:Microsoft.Build.Shared.FileMatcher.SplitFileSpec(System.String,System.String@,System.String@,System.String@,Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries)">
2704             <summary>
2705             Given a filespec, split it into left-most 'fixed' dir part, middle 'wildcard' dir part, and filename part.
2706             The filename part may have wildcard characters in it.
2707             </summary>
2708             <param name="filespec">The filespec to be decomposed.</param>
2709             <param name="fixedDirectoryPart">Receives the fixed directory part.</param>
2710             <param name="wildcardDirectoryPart">The wildcard directory part.</param>
2711             <param name="filenamePart">The filename part.</param>
2712             <param name="getFileSystemEntries">Delegate.</param>
2713         </member>
2714         <member name="M:Microsoft.Build.Shared.FileMatcher.PreprocessFileSpecForSplitting(System.String,System.String@,System.String@,System.String@)">
2715             <summary>
2716             Do most of the grunt work of splitting the filespec into parts.
2717             Does not handle post-processing common to the different matching
2718             paths.
2719             </summary>
2720             <param name="filespec">The filespec to be decomposed.</param>
2721             <param name="fixedDirectoryPart">Receives the fixed directory part.</param>
2722             <param name="wildcardDirectoryPart">The wildcard directory part.</param>
2723             <param name="filenamePart">The filename part.</param>
2724         </member>
2725         <member name="M:Microsoft.Build.Shared.FileMatcher.RemoveInitialDotSlash(System.String[])">
2726             <summary>
2727             Removes the leading ".\" from all of the paths in the array. 
2728             </summary>
2729             <param name="paths">Paths to remove .\ from.</param>
2730         </member>
2731         <member name="M:Microsoft.Build.Shared.FileMatcher.IsDirectorySeparator(System.Char)">
2732             <summary>
2733             Checks if the char is a DirectorySeparatorChar or a AltDirectorySeparatorChar
2734             </summary>
2735             <param name="c"></param>
2736             <returns></returns>
2737         </member>
2738         <member name="M:Microsoft.Build.Shared.FileMatcher.RemoveProjectDirectory(System.String[],System.String)">
2739             <summary>
2740             Removes the current directory converting the file back to relative path 
2741             </summary>
2742             <param name="paths">Paths to remove current directory from.</param>
2743             <param name="projectDirectory"></param>
2744         </member>
2745         <member name="P:Microsoft.Build.Shared.FileMatcher.FilesSearchData.Filespec">
2746             <summary>
2747             The filespec.
2748             </summary>
2749         </member>
2750         <member name="P:Microsoft.Build.Shared.FileMatcher.FilesSearchData.RegexFileMatch">
2751             <summary>
2752             Wild-card matching.
2753             </summary>
2754         </member>
2755         <member name="P:Microsoft.Build.Shared.FileMatcher.FilesSearchData.NeedsRecursion">
2756             <summary>
2757             If true, then recursion is required.
2758             </summary>
2759         </member>
2760         <member name="F:Microsoft.Build.Shared.FileMatcher.RecursionState.BaseDirectory">
2761             <summary>
2762             The directory to search in
2763             </summary>
2764         </member>
2765         <member name="F:Microsoft.Build.Shared.FileMatcher.RecursionState.RemainingWildcardDirectory">
2766             <summary>
2767             The remaining, wildcard part of the directory.
2768             </summary>
2769         </member>
2770         <member name="F:Microsoft.Build.Shared.FileMatcher.RecursionState.SearchData">
2771             <summary>
2772             Data about a search that does not change as the search recursively traverses directories
2773             </summary>
2774         </member>
2775         <member name="M:Microsoft.Build.Shared.FileMatcher.GetFilesRecursive(System.Collections.Generic.IList{System.String},Microsoft.Build.Shared.FileMatcher.RecursionState,System.String,System.Boolean,Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries,System.Collections.Generic.IList{Microsoft.Build.Shared.FileMatcher.RecursionState},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.List{Microsoft.Build.Shared.FileMatcher.RecursionState}})">
2776             <summary>
2777             Get all files that match either the file-spec or the regular expression. 
2778             </summary>
2779             <param name="listOfFiles">List of files that gets populated.</param>
2780             <param name="recursionState">Information about the search</param>
2781             <param name="projectDirectory"></param>
2782             <param name="stripProjectDirectory"></param>
2783             <param name="getFileSystemEntries">Delegate.</param>
2784             <param name="searchesToExclude">Patterns to exclude from the results</param>
2785             <param name="searchesToExcludeInSubdirs">exclude patterns that might activate farther down the directory tree. Keys assume paths are normalized with forward slashes and no trailing slashes</param>
2786         </member>
2787         <member name="M:Microsoft.Build.Shared.FileMatcher.RegularExpressionFromFileSpec(System.String,System.String,System.String,System.Boolean@)">
2788             <summary>
2789             Given a file spec, create a regular expression that will match that
2790             file spec.
2791             
2792             PERF WARNING: this method is called in performance-critical
2793             scenarios, so keep it fast and cheap
2794             </summary>
2795             <param name="fixedDirectoryPart">The fixed directory part.</param>
2796             <param name="wildcardDirectoryPart">The wildcard directory part.</param>
2797             <param name="filenamePart">The filename part.</param>
2798             <param name="isLegalFileSpec">Receives whether this pattern is legal or not.</param>
2799             <returns>The regular expression string.</returns>
2800         </member>
2801         <member name="M:Microsoft.Build.Shared.FileMatcher.GetFileSpecInfoWithRegexObject(System.String,System.Text.RegularExpressions.Regex@,System.Boolean@,System.Boolean@,Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries)">
2802             <summary>
2803             Given a filespec, get the information needed for file matching. 
2804             </summary>
2805             <param name="filespec">The filespec.</param>
2806             <param name="regexFileMatch">Receives the regular expression.</param>
2807             <param name="needsRecursion">Receives the flag that is true if recursion is required.</param>
2808             <param name="isLegalFileSpec">Receives the flag that is true if the filespec is legal.</param>
2809             <param name="getFileSystemEntries">Delegate.</param>
2810         </member>
2811         <member name="M:Microsoft.Build.Shared.FileMatcher.GetFileSpecInfo(System.String,System.String@,System.String@,System.String@,System.String@,System.Boolean@,System.Boolean@,Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries,Microsoft.Build.Shared.FileMatcher.FixupParts)">
2812             <summary>
2813             Given a filespec, parse it and construct the regular expression string.
2814             </summary>
2815             <param name="filespec">The filespec.</param>
2816             <param name="fixedDirectoryPart">Receives the fixed directory part.</param>
2817             <param name="wildcardDirectoryPart">Receives the wildcard directory part.</param>
2818             <param name="filenamePart">Receives the filename part.</param>
2819             <param name="matchFileExpression">Receives the regular expression.</param>
2820             <param name="needsRecursion">Receives the flag that is true if recursion is required.</param>
2821             <param name="isLegalFileSpec">Receives the flag that is true if the filespec is legal.</param>
2822             <param name="getFileSystemEntries">Delegate.</param>
2823             <param name="fixupParts">hook method to further change the parts</param>
2824         </member>
2825         <member name="T:Microsoft.Build.Shared.FileMatcher.Result">
2826             <summary>
2827             The results of a match between a filespec and a file name.
2828             </summary>
2829         </member>
2830         <member name="M:Microsoft.Build.Shared.FileMatcher.Result.#ctor">
2831             <summary>
2832             Default constructor.
2833             </summary>
2834         </member>
2835         <member name="M:Microsoft.Build.Shared.FileMatcher.FileMatch(System.String,System.String)">
2836             <summary>
2837             Given a pattern (filespec) and a candidate filename (fileToMatch)
2838             return matching information.
2839             </summary>
2840             <param name="filespec">The filespec.</param>
2841             <param name="fileToMatch">The candidate to match against.</param>
2842             <returns>The result class.</returns>
2843         </member>
2844         <member name="M:Microsoft.Build.Shared.FileMatcher.GetFiles(System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
2845             <summary>
2846             Given a filespec, find the files that match. 
2847             Will never throw IO exceptions: if there is no match, returns the input verbatim.
2848             </summary>
2849             <param name="projectDirectoryUnescaped">The project directory.</param>
2850             <param name="filespecUnescaped">Get files that match the given file spec.</param>
2851             <param name="excludeSpecsUnescaped">Exclude files that match this file spec.</param>
2852             <returns>The array of files.</returns>
2853         </member>
2854         <member name="M:Microsoft.Build.Shared.FileMatcher.GetFiles(System.String,System.String,System.Collections.Generic.IEnumerable{System.String},Microsoft.Build.Shared.FileMatcher.GetFileSystemEntries,Microsoft.Build.Shared.DirectoryExists)">
2855             <summary>
2856             Given a filespec, find the files that match. 
2857             Will never throw IO exceptions: if there is no match, returns the input verbatim.
2858             </summary>
2859             <param name="projectDirectoryUnescaped">The project directory.</param>
2860             <param name="filespecUnescaped">Get files that match the given file spec.</param>
2861             <param name="excludeSpecsUnescaped">Exclude files that match this file spec.</param>
2862             <param name="getFileSystemEntries">Get files that match the given file spec.</param>
2863             <param name="directoryExists">Determine whether a directory exists.</param>
2864             <returns>The array of files.</returns>
2865         </member>
2866         <member name="T:Microsoft.Build.Shared.FileUtilities">
2867             <summary>
2868             This class contains utility methods for file IO.
2869             PERF\COVERAGE NOTE: Try to keep classes in 'shared' as granular as possible. All the methods in
2870             each class get pulled into the resulting assembly.
2871             </summary>
2872             <summary>
2873             This class contains utility methods for file IO.
2874             It is in a separate file so that it can be selectively included into an assembly.
2875             </summary>
2876             <summary>
2877             This class contains utility methods for file IO.
2878             </summary>
2879             <comment>
2880             Partial class in order to reduce the amount of sharing into different assemblies
2881             </comment>
2882         </member>
2883         <member name="F:Microsoft.Build.Shared.FileUtilities.cacheDirectory">
2884             <summary>
2885             The directory where MSBuild stores cache information used during the build.
2886             </summary>
2887         </member>
2888         <member name="M:Microsoft.Build.Shared.FileUtilities.ClearCacheDirectoryPath">
2889             <summary>
2890             FOR UNIT TESTS ONLY
2891             Clear out the static variable used for the cache directory so that tests that
2892             modify it can validate their modifications.
2893             </summary>
2894         </member>
2895         <member name="P:Microsoft.Build.Shared.FileUtilities.InvalidPathChars">
2896             <summary>
2897             Copied from https://github.com/dotnet/corefx/blob/056715ff70e14712419d82d51c8c50c54b9ea795/src/Common/src/System/IO/PathInternal.Windows.cs#L61
2898             MSBuild should support the union of invalid path chars across the supported OSes, so builds can have the same behaviour crossplatform: https://github.com/Microsoft/msbuild/issues/781#issuecomment-243942514
2899             </summary>
2900         </member>
2901         <member name="P:Microsoft.Build.Shared.FileUtilities.InvalidFileNameChars">
2902             <summary>
2903             Copied from https://github.com/dotnet/corefx/blob/387cf98c410bdca8fd195b28cbe53af578698f94/src/System.Runtime.Extensions/src/System/IO/Path.Windows.cs#L18
2904             MSBuild should support the union of invalid path chars across the supported OSes, so builds can have the same behaviour crossplatform: https://github.com/Microsoft/msbuild/issues/781#issuecomment-243942514
2905             </summary>
2906         </member>
2907         <member name="M:Microsoft.Build.Shared.FileUtilities.GetCacheDirectory">
2908             <summary>
2909             Retrieves the MSBuild runtime cache directory
2910             </summary>
2911         </member>
2912         <member name="M:Microsoft.Build.Shared.FileUtilities.GetHexHash(System.String)">
2913             <summary>
2914             Get the hex hash string for the string
2915             </summary>
2916         </member>
2917         <member name="M:Microsoft.Build.Shared.FileUtilities.GetPathsHash(System.Collections.Generic.IEnumerable{System.String})">
2918             <summary>
2919             Get the hash for the assemblyPaths
2920             </summary>
2921         </member>
2922         <member name="M:Microsoft.Build.Shared.FileUtilities.ClearCacheDirectory">
2923             <summary>
2924             Clears the MSBuild runtime cache
2925             </summary>
2926         </member>
2927         <member name="M:Microsoft.Build.Shared.FileUtilities.EnsureTrailingSlash(System.String)">
2928             <summary>
2929             If the given path doesn't have a trailing slash then add one.
2930             If the path is an empty string, does not modify it.
2931             </summary>
2932             <param name="fileSpec">The path to check.</param>
2933             <returns>A path with a slash.</returns>
2934         </member>
2935         <member name="M:Microsoft.Build.Shared.FileUtilities.EnsureNoLeadingSlash(System.String)">
2936             <summary>
2937             Ensures the path does not have a leading slash.
2938             </summary>
2939         </member>
2940         <member name="M:Microsoft.Build.Shared.FileUtilities.EnsureNoTrailingSlash(System.String)">
2941             <summary>
2942             Ensures the path does not have a trailing slash.
2943             </summary>
2944         </member>
2945         <member name="M:Microsoft.Build.Shared.FileUtilities.EndsWithSlash(System.String)">
2946             <summary>
2947             Indicates if the given file-spec ends with a slash.
2948             </summary>
2949             <param name="fileSpec">The file spec.</param>
2950             <returns>true, if file-spec has trailing slash</returns>
2951         </member>
2952         <member name="M:Microsoft.Build.Shared.FileUtilities.IsSlash(System.Char)">
2953             <summary>
2954             Indicates if the given character is a slash.
2955             </summary>
2956             <param name="c"></param>
2957             <returns>true, if slash</returns>
2958         </member>
2959         <member name="M:Microsoft.Build.Shared.FileUtilities.TrimAndStripAnyQuotes(System.String)">
2960             <summary>
2961             Trims the string and removes any double quotes around it.
2962             </summary>
2963         </member>
2964         <member name="M:Microsoft.Build.Shared.FileUtilities.GetDirectoryNameOfFullPath(System.String)">
2965             <summary>
2966             Get the directory name of a rooted full path
2967             </summary>
2968             <param name="fullPath"></param>
2969             <returns></returns>
2970         </member>
2971         <member name="M:Microsoft.Build.Shared.FileUtilities.AreStringsEqual(System.Char*,System.Int32,System.String)">
2972             <summary>
2973             Compare an unsafe char buffer with a <see cref="T:System.String"/> to see if their contents are identical.
2974             </summary>
2975             <param name="buffer">The beginning of the char buffer.</param>
2976             <param name="len">The length of the buffer.</param>
2977             <param name="s">The string.</param>
2978             <returns>True only if the contents of <paramref name="s"/> and the first <paramref name="len"/> characters in <paramref name="buffer"/> are identical.</returns>
2979         </member>
2980         <member name="M:Microsoft.Build.Shared.FileUtilities.NormalizePath(System.String)">
2981             <summary>
2982             Gets the canonicalized full path of the provided path.
2983             Path.GetFullPath The pre .Net 4.6.2 implementation of Path.GetFullPath is slow and creates strings in its work.
2984             Therefore MSBuild has its own implementation on full framework.
2985             Guidance for use: call this on all paths accepted through public entry
2986             points that need normalization. After that point, only verify the path
2987             is rooted, using ErrorUtilities.VerifyThrowPathRooted.
2988             ASSUMES INPUT IS ALREADY UNESCAPED.
2989             </summary>
2990         </member>
2991         <member name="M:Microsoft.Build.Shared.FileUtilities.MaybeAdjustFilePath(System.String,System.String)">
2992              <summary>
2993              If on Unix, convert backslashes to slashes for strings that resemble paths.
2994              The heuristic is if something resembles paths (contains slashes) check if the
2995              first segment exists and is a directory.
2996              Use a native shared method to massage file path. If the file is adjusted,
2997              that qualifies is as a path.
2998             
2999              @baseDirectory is just passed to LooksLikeUnixFilePath, to help with the check
3000              </summary>
3001         </member>
3002         <member name="M:Microsoft.Build.Shared.FileUtilities.LooksLikeUnixFilePath(System.String,System.String)">
3003              <summary>
3004              If on Unix, check if the string looks like a file path.
3005              The heuristic is if something resembles paths (contains slashes) check if the
3006              first segment exists and is a directory.
3007             
3008              If @baseDirectory is not null, then look for the first segment exists under
3009              that
3010              </summary>
3011         </member>
3012         <member name="M:Microsoft.Build.Shared.FileUtilities.GetDirectory(System.String)">
3013             <summary>
3014             Extracts the directory from the given file-spec.
3015             </summary>
3016             <param name="fileSpec">The filespec.</param>
3017             <returns>directory path</returns>
3018         </member>
3019         <member name="M:Microsoft.Build.Shared.FileUtilities.HasExtension(System.String,System.String[])">
3020             <summary>
3021             Determines whether the given assembly file name has one of the listed extensions.
3022             </summary>
3023             <param name="fileName">The name of the file</param>
3024             <param name="allowedExtensions">Array of extensions to consider.</param>
3025             <returns></returns>
3026         </member>
3027         <member name="P:Microsoft.Build.Shared.FileUtilities.ExecutingAssemblyPath">
3028             <summary>
3029             Get the currently executing assembly path
3030             </summary>
3031         </member>
3032         <member name="M:Microsoft.Build.Shared.FileUtilities.GetFullPath(System.String,System.String)">
3033             <summary>
3034             Determines the full path for the given file-spec.
3035             ASSUMES INPUT IS STILL ESCAPED
3036             </summary>
3037             <param name="fileSpec">The file spec to get the full path of.</param>
3038             <param name="currentDirectory"></param>
3039             <returns>full path</returns>
3040         </member>
3041         <member name="M:Microsoft.Build.Shared.FileUtilities.GetFullPathNoThrow(System.String)">
3042             <summary>
3043             A variation of Path.GetFullPath that will return the input value
3044             instead of throwing any IO exception.
3045             Useful to get a better path for an error message, without the risk of throwing
3046             if the error message was itself caused by the path being invalid!
3047             </summary>
3048         </member>
3049         <member name="M:Microsoft.Build.Shared.FileUtilities.ComparePathsNoThrow(System.String,System.String,System.String)">
3050             <summary>
3051             Compare if two paths, relative to the given currentDirectory are equal.
3052             Does not throw IO exceptions. See <see cref="M:Microsoft.Build.Shared.FileUtilities.GetFullPathNoThrow(System.String)"/>
3053             </summary>
3054             <param name="first"></param>
3055             <param name="second"></param>
3056             <param name="currentDirectory"></param>
3057             <returns></returns>
3058         </member>
3059         <member name="M:Microsoft.Build.Shared.FileUtilities.NormalizePathForComparisonNoThrow(System.String,System.String)">
3060              <summary>
3061              Normalizes a path for path comparison
3062              Does not throw IO exceptions. See <see cref="M:Microsoft.Build.Shared.FileUtilities.GetFullPathNoThrow(System.String)"/>
3063             
3064              </summary>
3065         </member>
3066         <member name="M:Microsoft.Build.Shared.FileUtilities.DeleteNoThrow(System.String)">
3067             <summary>
3068             A variation on File.Delete that will throw ExceptionHandling.NotExpectedException exceptions
3069             </summary>
3070         </member>
3071         <member name="M:Microsoft.Build.Shared.FileUtilities.DeleteDirectoryNoThrow(System.String,System.Boolean)">
3072             <summary>
3073             A variation on Directory.Delete that will throw ExceptionHandling.NotExpectedException exceptions
3074             </summary>
3075         </member>
3076         <member name="M:Microsoft.Build.Shared.FileUtilities.DeleteWithoutTrailingBackslash(System.String,System.Boolean)">
3077             <summary>
3078             Deletes a directory, ensuring that Directory.Delete does not get a path ending in a slash.
3079             </summary>
3080             <remarks>
3081             This is a workaround for https://github.com/dotnet/corefx/issues/3780, which clashed with a common
3082             pattern in our tests.
3083             </remarks>
3084         </member>
3085         <member name="M:Microsoft.Build.Shared.FileUtilities.IsRootedNoThrow(System.String)">
3086             <summary>
3087             A variation of Path.IsRooted that not throw any IO exception.
3088             </summary>
3089         </member>
3090         <member name="M:Microsoft.Build.Shared.FileUtilities.GetFileInfoNoThrow(System.String)">
3091             <summary>
3092             Gets a file info object for the specified file path. If the file path
3093             is invalid, or is a directory, or cannot be accessed, or does not exist,
3094             it returns null rather than throwing or returning a FileInfo around a non-existent file.
3095             This allows it to be called where File.Exists() (which never throws, and returns false
3096             for directories) was called - but with the advantage that a FileInfo object is returned
3097             that can be queried (e.g., for LastWriteTime) without hitting the disk again.
3098             </summary>
3099             <param name="filePath"></param>
3100             <returns>FileInfo around path if it is an existing /file/, else null</returns>
3101         </member>
3102         <member name="M:Microsoft.Build.Shared.FileUtilities.DirectoryExistsNoThrow(System.String)">
3103             <summary>
3104             Returns if the directory exists
3105             </summary>
3106             <param name="fullPath">Full path to the directory in the filesystem</param>
3107             <returns></returns>
3108         </member>
3109         <member name="M:Microsoft.Build.Shared.FileUtilities.FileExistsNoThrow(System.String)">
3110             <summary>
3111             Returns if the directory exists
3112             </summary>
3113             <param name="fullPath">Full path to the file in the filesystem</param>
3114             <returns></returns>
3115         </member>
3116         <member name="M:Microsoft.Build.Shared.FileUtilities.FileOrDirectoryExistsNoThrow(System.String)">
3117             <summary>
3118             If there is a directory or file at the specified path, returns true.
3119             Otherwise, returns false.
3120             Does not throw IO exceptions, to match Directory.Exists and File.Exists.
3121             Unlike calling each of those in turn it only accesses the disk once, which is faster.
3122             </summary>
3123         </member>
3124         <member name="M:Microsoft.Build.Shared.FileUtilities.IsSolutionFilename(System.String)">
3125             <summary>
3126             This method returns true if the specified filename is a solution file (.sln), otherwise
3127             it returns false.
3128             </summary>
3129         </member>
3130         <member name="M:Microsoft.Build.Shared.FileUtilities.IsVCProjFilename(System.String)">
3131             <summary>
3132             Returns true if the specified filename is a VC++ project file, otherwise returns false
3133             </summary>
3134         </member>
3135         <member name="M:Microsoft.Build.Shared.FileUtilities.IsMetaprojectFilename(System.String)">
3136             <summary>
3137             Returns true if the specified filename is a metaproject file (.metaproj), otherwise false.
3138             </summary>
3139         </member>
3140         <member name="M:Microsoft.Build.Shared.FileUtilities.MakeRelative(System.String,System.String)">
3141             <summary>
3142             Given the absolute location of a file, and a disc location, returns relative file path to that disk location.
3143             Throws UriFormatException.
3144             </summary>
3145             <param name="basePath">
3146             The base path we want to be relative to. Must be absolute.
3147             Should <i>not</i> include a filename as the last segment will be interpreted as a directory.
3148             </param>
3149             <param name="path">
3150             The path we need to make relative to basePath.  The path can be either absolute path or a relative path in which case it is relative to the base path.
3151             If the path cannot be made relative to the base path (for example, it is on another drive), it is returned verbatim.
3152             If the basePath is an empty string, returns the path.
3153             </param>
3154             <returns>relative path (can be the full path)</returns>
3155         </member>
3156         <member name="M:Microsoft.Build.Shared.FileUtilities.CreateUriFromPath(System.String)">
3157             <summary>
3158             Helper function to create an Uri object from path.
3159             </summary>
3160             <param name="path">path string</param>
3161             <returns>uri object</returns>
3162         </member>
3163         <member name="M:Microsoft.Build.Shared.FileUtilities.AttemptToShortenPath(System.String)">
3164             <summary>
3165             Normalizes the path if and only if it is longer than max path,
3166             or would be if rooted by the current directory.
3167             This may make it shorter by removing ".."'s.
3168             </summary>
3169         </member>
3170         <member name="M:Microsoft.Build.Shared.FileUtilities.GetFolderAbove(System.String,System.Int32)">
3171             <summary>
3172             Get the folder N levels above the given. Will stop and return current path when rooted.
3173             </summary>
3174             <param name="path">Path to get the folder above.</param>
3175             <param name="count">Number of levels up to walk.</param>
3176             <returns>Full path to the folder N levels above the path.</returns>
3177         </member>
3178         <member name="M:Microsoft.Build.Shared.FileUtilities.CombinePaths(System.String,System.String[])">
3179             <summary>
3180             Combine multiple paths. Should only be used when compiling against .NET 2.0.
3181             <remarks>
3182             Only use in .NET 2.0. Otherwise, use System.IO.Path.Combine(...)
3183             </remarks>
3184             </summary>
3185             <param name="root">Root path.</param>
3186             <param name="paths">Paths to concatenate.</param>
3187             <returns>Combined path.</returns>
3188         </member>
3189         <member name="M:Microsoft.Build.Shared.FileUtilities.ToSlash(System.String)">
3190             <summary>
3191             Replace all backward slashes to forward slashes
3192             </summary>
3193         </member>
3194         <member name="M:Microsoft.Build.Shared.FileUtilities.GetTemporaryDirectory">
3195             <summary>
3196             Generates a unique directory name in the temporary folder.  
3197             Caller must delete when finished. 
3198             </summary>
3199         </member>
3200         <member name="M:Microsoft.Build.Shared.FileUtilities.GetTemporaryFileName(System.String)">
3201             <summary>
3202             Generates a unique temporary file name with a given extension in the temporary folder.
3203             File is guaranteed to be unique.
3204             Extension may have an initial period.
3205             File will NOT be created.
3206             May throw IOException.
3207             </summary>
3208         </member>
3209         <member name="M:Microsoft.Build.Shared.FileUtilities.GetTemporaryFile">
3210             <summary>
3211             Generates a unique temporary file name with a given extension in the temporary folder.
3212             If no extension is provided, uses ".tmp".
3213             File is guaranteed to be unique.
3214             Caller must delete it when finished.
3215             </summary>
3216         </member>
3217         <member name="M:Microsoft.Build.Shared.FileUtilities.GetTemporaryFile(System.String)">
3218             <summary>
3219             Generates a unique temporary file name with a given extension in the temporary folder.
3220             File is guaranteed to be unique.
3221             Extension may have an initial period.
3222             Caller must delete it when finished.
3223             May throw IOException.
3224             </summary>
3225         </member>
3226         <member name="M:Microsoft.Build.Shared.FileUtilities.GetTemporaryFile(System.String,System.String,System.Boolean)">
3227             <summary>
3228             Creates a file with unique temporary file name with a given extension in the specified folder.
3229             File is guaranteed to be unique.
3230             Extension may have an initial period.
3231             If folder is null, the temporary folder will be used.
3232             Caller must delete it when finished.
3233             May throw IOException.
3234             </summary>
3235         </member>
3236         <member name="T:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers">
3237             <summary>
3238             Encapsulates the definitions of the item-spec modifiers a.k.a. reserved item metadata.
3239             </summary>
3240         </member>
3241         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.IsItemSpecModifier(System.String)">
3242             <summary>
3243             Indicates if the given name is reserved for an item-spec modifier.
3244             </summary>
3245         </member>
3246         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.IsDefiningProjectModifier(System.String)">
3247             <summary>
3248             Indicates if the given name is reserved for one of the specific subset of itemspec 
3249             modifiers to do with the defining project of the item. 
3250             </summary>
3251         </member>
3252         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.IsDerivableItemSpecModifier(System.String)">
3253             <summary>
3254             Indicates if the given name is reserved for a derivable item-spec modifier.
3255             Derivable means it can be computed given a file name.
3256             </summary>
3257             <param name="name">Name to check.</param>
3258             <returns>true, if name of a derivable modifier</returns>
3259         </member>
3260         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.GetItemSpecModifier(System.String,System.String,System.String,System.String)">
3261             <summary>
3262             Performs path manipulations on the given item-spec as directed.
3263             Does not cache the result.
3264             </summary>
3265         </member>
3266         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.GetItemSpecModifier(System.String,System.String,System.String,System.String,System.String@)">
3267             <summary>
3268             Performs path manipulations on the given item-spec as directed.
3269             
3270             Supported modifiers:
3271                 %(FullPath)         = full path of item
3272                 %(RootDir)          = root directory of item
3273                 %(Filename)         = item filename without extension
3274                 %(Extension)        = item filename extension
3275                 %(RelativeDir)      = item directory as given in item-spec
3276                 %(Directory)        = full path of item directory relative to root
3277                 %(RecursiveDir)     = portion of item path that matched a recursive wildcard
3278                 %(Identity)         = item-spec as given
3279                 %(ModifiedTime)     = last write time of item
3280                 %(CreatedTime)      = creation time of item
3281                 %(AccessedTime)     = last access time of item
3282             
3283             NOTES:
3284             1) This method always returns an empty string for the %(RecursiveDir) modifier because it does not have enough
3285                information to compute it -- only the BuildItem class can compute this modifier.
3286             2) All but the file time modifiers could be cached, but it's not worth the space. Only full path is cached, as the others are just string manipulations.
3287             </summary>
3288             <remarks>
3289             Methods of the Path class "normalize" slashes and periods. For example:
3290             1) successive slashes are combined into 1 slash
3291             2) trailing periods are discarded
3292             3) forward slashes are changed to back-slashes
3293             
3294             As a result, we cannot rely on any file-spec that has passed through a Path method to remain the same. We will
3295             therefore not bother preserving slashes and periods when file-specs are transformed.
3296             
3297             Never returns null.
3298             </remarks>
3299             <param name="currentDirectory">The root directory for relative item-specs. When called on the Engine thread, this is the project directory. When called as part of building a task, it is null, indicating that the current directory should be used.</param>
3300             <param name="itemSpec">The item-spec to modify.</param>
3301             <param name="definingProjectEscaped">The path to the project that defined this item (may be null).</param>
3302             <param name="modifier">The modifier to apply to the item-spec.</param>
3303             <param name="fullPath">Full path if any was previously computed, to cache.</param>
3304             <returns>The modified item-spec (can be empty string, but will never be null).</returns>
3305             <exception cref="T:System.InvalidOperationException">Thrown when the item-spec is not a path.</exception>
3306         </member>
3307         <member name="M:Microsoft.Build.Shared.FileUtilities.ItemSpecModifiers.ThrowForUrl(System.String,System.String,System.String)">
3308             <summary>
3309             Temporary check for something like http://foo which will end up like c:\foo\bar\http://foo
3310             We should either have no colon, or exactly one colon.
3311             UNDONE: This is a minimal safe change for Dev10. The correct fix should be to make GetFullPath/NormalizePath throw for this.
3312             </summary>
3313         </member>
3314         <member name="T:Microsoft.Build.Shared.FileUtilitiesRegex">
3315             <summary>
3316             This class contains utility methods for file IO.
3317             Separate from FileUtilities because some assemblies may only need the patterns.
3318             PERF\COVERAGE NOTE: Try to keep classes in 'shared' as granular as possible. All the methods in 
3319             each class get pulled into the resulting assembly.
3320             </summary>
3321         </member>
3322         <member name="T:Microsoft.Build.Shared.DotNetFrameworkArchitecture">
3323             <summary>
3324             Used to specify the targeted bitness of the .NET Framework for some methods of FrameworkLocationHelper
3325             </summary>
3326         </member>
3327         <member name="F:Microsoft.Build.Shared.DotNetFrameworkArchitecture.Current">
3328             <summary>
3329             Indicates the .NET Framework that is currently being run under.  
3330             </summary>
3331         </member>
3332         <member name="F:Microsoft.Build.Shared.DotNetFrameworkArchitecture.Bitness32">
3333             <summary>
3334             Indicates the 32-bit .NET Framework
3335             </summary>
3336         </member>
3337         <member name="F:Microsoft.Build.Shared.DotNetFrameworkArchitecture.Bitness64">
3338             <summary>
3339             Indicates the 64-bit .NET Framework
3340             </summary>
3341         </member>
3342         <member name="T:Microsoft.Build.Shared.FrameworkLocationHelper">
3343             <summary>
3344             FrameworkLocationHelper provides utility methods for locating .NET Framework and .NET Framework SDK directories and files
3345             </summary>
3346         </member>
3347         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.ToolsVersionsRegistryPath">
3348             <summary>
3349             Path to the ToolsVersion definitions in the registry
3350             </summary>
3351         </member>
3352         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.programFiles">
3353             <summary>
3354             By default when a root path is not specified we would like to use the program files directory \ reference assemblies\framework as the root location
3355             to generate the reference assembly paths from.
3356             </summary>
3357         </member>
3358         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.s_dotNetFrameworkSpecs">
3359             <summary>
3360             List the supported .net versions.
3361             </summary>
3362         </member>
3363         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.s_visualStudioSpecs">
3364             <summary>
3365             List the supported visual studio versions.
3366             </summary>
3367             <remarks>
3368             The items must be ordered by the version, because some methods depend on that fact to find the previous visual studio version.
3369             </remarks>
3370         </member>
3371         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.s_explicitFallbackRulesForPathToDotNetFrameworkSdkTools">
3372             <summary>
3373             Define explicit fallback rules for the request to get path of .net framework sdk tools folder.
3374             The default rule is fallback to previous VS. However, there are some special cases that need
3375             explicit rules, i.e. v4.5.1 on VS12 fallbacks to v4.5 on VS12.
3376             </summary>
3377             <remarks>
3378             The rules are maintained in a 2-dimensions array. Each row defines a rule. The first column
3379             defines the trigger condition. The second column defines the fallback .net and VS versions.
3380             </remarks>
3381         </member>
3382         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.FallbackDotNetFrameworkSdkInstallPath">
3383              <summary>
3384              Because there is no longer a strong 1:1 mapping between FX versions and SDK
3385              versions, if we're unable to locate the desired SDK version, we will try to 
3386              use whichever SDK version is installed by looking at the key pointing to the
3387              "latest" version.
3388             
3389              This isn't ideal, but it will allow our tasks to function on any of several 
3390              related SDKs even if they don't have exactly the same versions.
3391              
3392              NOTE:  This returns the path to the root of the fallback SDK
3393              </summary>
3394         </member>
3395         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.PathToV35ToolsInFallbackDotNetFrameworkSdk">
3396              <summary>
3397              Because there is no longer a strong 1:1 mapping between FX versions and SDK
3398              versions, if we're unable to locate the desired SDK version, we will try to 
3399              use whichever SDK version is installed by looking at the key pointing to the
3400              "latest" version.
3401             
3402              This isn't ideal, but it will allow our tasks to function on any of several 
3403              related SDKs even if they don't have exactly the same versions.
3404              
3405              NOTE:  This explicitly returns the path to the 3.5 tools (bin) under the fallback
3406              SDK, to match the data we're pulling from the registry now.  
3407              </summary>
3408         </member>
3409         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.PathToV4ToolsInFallbackDotNetFrameworkSdk">
3410              <summary>
3411              Because there is no longer a strong 1:1 mapping between FX versions and SDK
3412              versions, if we're unable to locate the desired SDK version, we will try to 
3413              use whichever SDK version is installed by looking at the key pointing to the
3414              "latest" version.
3415             
3416              This isn't ideal, but it will allow our tasks to function on any of several 
3417              related SDKs even if they don't have exactly the same versions.
3418              
3419              NOTE:  This explicitly returns the path to the 4.X tools (bin\NetFX 4.0 Tools) 
3420              under the fallback SDK, to match the data we're pulling from the registry now.  
3421              </summary>
3422         </member>
3423         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.CheckForFrameworkInstallation(System.String,System.String)">
3424             <summary>
3425             Check the registry key and value to see if the .net Framework is installed on the machine.
3426             </summary>
3427             <param name="registryEntryToCheckInstall">Registry path to look for the value</param>
3428             <param name="registryValueToCheckInstall">Key to retrieve the value from</param>
3429             <returns>True if the registry key is 1 false if it is not there. This method also return true if the complus enviornment variables are set.</returns>
3430         </member>
3431         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.FindDotNetFrameworkPath(System.String,System.String,Microsoft.Build.Shared.DirectoryExists,Microsoft.Build.Shared.GetDirectories,Microsoft.Build.Shared.DotNetFrameworkArchitecture)">
3432             <summary>
3433             Heuristic that first considers the current runtime path and then searches the base of that path for the given
3434             frameworks version.
3435             </summary>
3436             <param name="currentRuntimePath">The path to the runtime that is currently executing.</param>
3437             <param name="prefix">Should be something like 'v1.2' that indicates the runtime version we want.</param>
3438             <param name="directoryExists">Function that checks if directory exists.</param>
3439             <param name="getDirectories">Delegate to method that can return filesystem entries.</param>
3440             <param name="architecture">.NET framework architecture</param>
3441             <returns>Will return 'null' if there is no target frameworks on this machine.</returns>
3442         </member>
3443         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GenerateProgramFiles32">
3444             <summary>
3445             Determine the 32 bit program files directory, this is used for finding where the reference assemblies live.
3446             </summary>
3447         </member>
3448         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GenerateProgramFiles64">
3449             <summary>
3450             Determine the 64-bit program files directory, used as the basis for MSBuildExtensionsPath64.
3451             Returns null if we're not on a 64-bit machine
3452             </summary>
3453         </member>
3454         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GenerateProgramFilesReferenceAssemblyRoot">
3455             <summary>
3456             Generate the path to the program files reference assembly location by taking in the program files special folder and then 
3457             using that path to generate the path to the reference assemblies location.
3458             </summary>
3459         </member>
3460         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GeneratePathToBuildToolsForToolsVersion(System.String,Microsoft.Build.Shared.DotNetFrameworkArchitecture)">
3461             <summary>
3462             Given a ToolsVersion, find the path to the build tools folder for that ToolsVersion. 
3463             </summary>
3464             <param name="toolsVersion">The ToolsVersion to look up</param>
3465             <param name="architecture">Target build tools architecture.</param>
3466             <returns>The path to the build tools folder for that ToolsVersion, if it exists, or 
3467             null otherwise</returns>
3468         </member>
3469         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GenerateReferenceAssemblyPath(System.String,System.Runtime.Versioning.FrameworkName)">
3470             <summary>
3471             Take the parts of the Target framework moniker and formulate the reference assembly path based on the the following pattern:
3472             For a framework and version:
3473                 $(TargetFrameworkRootPath)\$(TargetFrameworkIdentifier)\$(TargetFrameworkVersion)
3474             For a subtype:
3475                 $(TargetFrameworkRootPath)\$(TargetFrameworkIdentifier)\$(TargetFrameworkVersion)\SubType\$(TargetFrameworkSubType)
3476             e.g.NET Framework v4.0 would locate its reference assemblies in:
3477                 \Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
3478             e.g.Silverlight v2.0 would locate its reference assemblies in:
3479                 \Program Files\Reference Assemblies\Microsoft\Framework\Silverlight\v2.0
3480             e.g.NET Compact Framework v3.5, subtype PocketPC would locate its reference assemblies in:
3481                 \Program Files\Reference Assemblies\Microsoft\Framework\.NETCompactFramework\v3.5\SubType\PocketPC
3482             </summary>
3483             <returns>The path to the reference assembly location</returns>
3484         </member>
3485         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.RemoveDirectories(System.String,System.Int32)">
3486             <summary>
3487             Given a path, subtracts the requested number of directories and returns the result.
3488             </summary>
3489             <comments>
3490             Internal only so that I can have the unit tests use it too, instead of duplicating the same code
3491             </comments>
3492         </member>
3493         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GetPathToBuildToolsFromEnvironment(Microsoft.Build.Shared.DotNetFrameworkArchitecture)">
3494             <summary>
3495             Look up the path to the build tools directory for the requested ToolsVersion in the .exe.config file of this executable 
3496             </summary>
3497         </member>
3498         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GetPathToBuildToolsFromRegistry(System.String,Microsoft.Build.Shared.DotNetFrameworkArchitecture)">
3499             <summary>
3500             Look up the path to the build tools directory in the registry for the requested ToolsVersion and requested architecture  
3501             </summary>
3502         </member>
3503         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.GenerateReferenceAssemblyDirectory(System.String)">
3504             <summary>
3505             Will return the path to the dot net framework reference assemblies if they exist under the program files\reference assembies\microsoft\framework directory
3506             or null if the directory does not exist.
3507             </summary>
3508         </member>
3509         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.FindRegistryValueUnderKey(System.String,System.String,Microsoft.Win32.RegistryView)">
3510             <summary>
3511             Look for the given registry value under the given key.
3512             </summary>
3513         </member>
3514         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.CreateDotNetFrameworkSpecForV4(System.Version,System.Version)">
3515             <summary>
3516             Helper method to create an instance of <see cref="T:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec"/> for .net v4.x,
3517             because most of attributes are the same for v4.x versions.
3518             </summary>
3519             <param name="version">.net framework version.</param>
3520             <param name="visualStudioVersion">Version of Visual Studio</param>
3521             <returns></returns>
3522         </member>
3523         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec._dotNetFrameworkSdkRegistryKey">
3524             <summary>
3525             The key in registry to indicate the corresponding .net framework in this visual studio.
3526             i.e. 'v8.0A' for VS11.
3527             </summary>
3528         </member>
3529         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec.Version">
3530             <summary>
3531             The version of this visual studio.
3532             </summary>
3533         </member>
3534         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec.SupportedDotNetFrameworkVersions">
3535             <summary>
3536             The list of supported .net framework versions in this visual studio.
3537             </summary>
3538         </member>
3539         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec.WindowsSdkRegistryKey">
3540             <summary>
3541             The key in registry to indicate the corresponding windows sdk, i.e. "v8.0" for VS11.
3542             </summary>
3543         </member>
3544         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec.WindowsSdkRegistryInstallationFolderName">
3545             <summary>
3546             The name in registry to indicate the sdk installation folder path, i.e. "InstallationFolder" for windows v8.0.
3547             </summary>
3548         </member>
3549         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec.GetDotNetFrameworkSdkRegistryKey(System.Version)">
3550             <summary>
3551             The key in the registry to indicate the corresponding .net framework in this visual studio.
3552             i.e. 'v8.0A' for VS11.
3553             </summary>
3554         </member>
3555         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._dotNetFrameworkRegistryKey">
3556             <summary>
3557             The registry key of this .net framework, i.e. "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" for .net v4.5.
3558             </summary>
3559         </member>
3560         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._dotNetFrameworkSetupRegistryInstalledName">
3561             <summary>
3562             The name in registry to indicate that this .net framework is installed, i.e. "Install" for .net v4.5.
3563             </summary>
3564         </member>
3565         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._dotNetFrameworkSdkRegistryToolsKey">
3566             <summary>
3567             The key in registry to indicate the sdk tools folder, i.e. "WinSDK-NetFx40Tools-x86" for .net v4.5.
3568             </summary>
3569         </member>
3570         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._visualStudioVersion">
3571             <summary>
3572             The version of visual studio that shipped with this .net framework.
3573             </summary>
3574         </member>
3575         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._hasMsBuild">
3576             <summary>
3577             Does this .net framework include MSBuild?
3578             </summary>
3579         </member>
3580         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._pathsToDotNetFramework">
3581             <summary>
3582             Cached paths of .net framework on different architecture.
3583             </summary>
3584         </member>
3585         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._pathsToDotNetFrameworkSdkTools">
3586             <summary>
3587             Cached paths of .net framework sdk tools folder path on different visual studio version.
3588             </summary>
3589         </member>
3590         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._pathToWindowsSdk">
3591             <summary>
3592             Cached path of the corresponding windows sdk.
3593             </summary>
3594         </member>
3595         <member name="F:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec._pathToDotNetFrameworkReferenceAssemblies">
3596             <summary>
3597             Cached path of .net framework reference assemblies.
3598             </summary>
3599         </member>
3600         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.Version">
3601             <summary>
3602             The version of this .net framework.
3603             </summary>
3604         </member>
3605         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.DotNetFrameworkSdkRegistryInstallationFolderName">
3606             <summary>
3607             The name in registry to indicate the sdk installation folder path, i.e. "InstallationFolder" for .net v4.5.
3608             </summary>
3609         </member>
3610         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.DotNetFrameworkFolderPrefix">
3611             <summary>
3612             Folder prefix, i.e. v4.0 for .net v4.5.
3613             </summary>
3614         </member>
3615         <member name="P:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.FrameworkName">
3616             <summary>
3617             Get the FrameworkName for this version of the .NET Framework.
3618             </summary>
3619         </member>
3620         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetDotNetFrameworkSdkRootRegistryKey(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3621             <summary>
3622             Gets the full registry key of this .net framework Sdk for the given visual studio version.
3623             i.e. "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx40Tools-x86" for .net v4.5 on VS11.
3624             </summary>
3625         </member>
3626         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetPathToDotNetFramework(Microsoft.Build.Shared.DotNetFrameworkArchitecture)">
3627             <summary>
3628             Gets the full path of .net framework for the given architecture.
3629             </summary>
3630         </member>
3631         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetPathToDotNetFrameworkSdkTools(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3632             <summary>
3633             Gets the full path of .net framework sdk tools for the given visual studio version.
3634             i.e. "C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\" for .net v4.5 on VS11.
3635             </summary>
3636         </member>
3637         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetPathToDotNetFrameworkSdk(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3638             <summary>
3639             Gets the full path of .net framework sdk.
3640             i.e. "C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\" for .net v4.5 on VS11.
3641             </summary>
3642         </member>
3643         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetPathToDotNetFrameworkReferenceAssemblies">
3644             <summary>
3645             Gets the full path of reference assemblies folder.
3646             i.e. "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\" for .net v4.5.
3647             </summary>
3648         </member>
3649         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpec.GetPathToWindowsSdk">
3650             <summary>
3651             Gets the full path of the corresponding windows sdk shipped with this .net framework.
3652             i.e. "C:\Program Files (x86)\Windows Kits\8.0\" for v8.0 (shipped with .net v4.5 and VS11).
3653             </summary>
3654         </member>
3655         <member name="T:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecLegacy">
3656             <summary>
3657             Specialized implementation for legacy .net framework v1.1 and v2.0.
3658             </summary>
3659         </member>
3660         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecLegacy.GetDotNetFrameworkSdkRootRegistryKey(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3661             <summary>
3662             Gets the full registry key of this .net framework Sdk for the given visual studio version.
3663             i.e. "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework" for v1.1 and v2.0.
3664             </summary>
3665         </member>
3666         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecLegacy.GetPathToDotNetFrameworkSdkTools(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3667             <summary>
3668             Gets the full path of .net framework sdk tools for the given visual studio version.
3669             </summary>
3670         </member>
3671         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecLegacy.GetPathToDotNetFrameworkSdk(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3672             <summary>
3673             Gets the full path of .net framework sdk, which is the full path of .net framework sdk tools for v1.1 and v2.0.
3674             </summary>
3675         </member>
3676         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecLegacy.GetPathToDotNetFrameworkReferenceAssemblies">
3677             <summary>
3678             Gets the full path of reference assemblies folder, which is the full path of .net framework for v1.1 and v2.0.
3679             </summary>
3680         </member>
3681         <member name="T:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecV3">
3682             <summary>
3683             Specialized implementation for legacy .net framework v3.0 and v3.5.
3684             </summary>
3685         </member>
3686         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecV3.GetPathToDotNetFrameworkSdk(Microsoft.Build.Shared.FrameworkLocationHelper.VisualStudioSpec)">
3687             <summary>
3688             Gets the full path of .net framework sdk.
3689             i.e. "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\" for .net v3.5 on VS11.
3690             </summary>
3691         </member>
3692         <member name="M:Microsoft.Build.Shared.FrameworkLocationHelper.DotNetFrameworkSpecV3.GetPathToDotNetFrameworkReferenceAssemblies">
3693             <summary>
3694             Gets the full path of reference assemblies folder.
3695             i.e. "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.5\" for v3.5.
3696             </summary>
3697         </member>
3698         <member name="T:Microsoft.Build.Shared.IElementLocation">
3699             <summary>
3700             Represents the location information for error reporting purposes.  This is normally used to
3701             associate a run-time error with the original XML.
3702             This is not used for arbitrary errors from tasks, which store location in a BuildXXXXEventArgs.
3703             All implementations should be IMMUTABLE.
3704             This is not public because the current implementation only provides correct data for unedited projects.
3705             DO NOT make it public without considering a solution to this problem.
3706             </summary>
3707         </member>
3708         <member name="P:Microsoft.Build.Shared.IElementLocation.File">
3709             <summary>
3710             The file from which this particular element originated.  It may
3711             differ from the ProjectFile if, for instance, it was part of
3712             an import or originated in a targets file.
3713             Should always have a value.
3714             If not known, returns empty string.
3715             </summary>
3716         </member>
3717         <member name="P:Microsoft.Build.Shared.IElementLocation.Line">
3718             <summary>
3719             The line number where this element exists in its file.
3720             The first line is numbered 1.
3721             Zero indicates "unknown location".
3722             </summary>
3723         </member>
3724         <member name="P:Microsoft.Build.Shared.IElementLocation.Column">
3725             <summary>
3726             The column number where this element exists in its file.
3727             The first column is numbered 1.
3728             Zero indicates "unknown location".
3729             </summary>
3730         </member>
3731         <member name="P:Microsoft.Build.Shared.IElementLocation.LocationString">
3732             <summary>
3733             The location in a form suitable for replacement
3734             into a message.
3735             </summary>
3736         </member>
3737         <member name="T:Microsoft.Build.Shared.InternalErrorException">
3738             <summary>
3739             This exception is to be thrown whenever an assumption we have made in the code turns out to be false. Thus, if this
3740             exception ever gets thrown, it is because of a bug in our own code, not because of something the user or project author
3741             did wrong.
3742             
3743             !~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~
3744             WARNING: When this file is shared into multiple assemblies each assembly will view this as a different type.
3745                      Don't throw this exception from one assembly and catch it in another.
3746             !~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~!~
3747                 
3748             </summary>
3749         </member>
3750         <member name="M:Microsoft.Build.Shared.InternalErrorException.#ctor">
3751             <summary>
3752             Default constructor.
3753             SHOULD ONLY BE CALLED BY DESERIALIZER. 
3754             SUPPLY A MESSAGE INSTEAD.
3755             </summary>
3756         </member>
3757         <member name="M:Microsoft.Build.Shared.InternalErrorException.#ctor(System.String)">
3758             <summary>
3759             Creates an instance of this exception using the given message.
3760             </summary>
3761         </member>
3762         <member name="M:Microsoft.Build.Shared.InternalErrorException.#ctor(System.String,System.Exception)">
3763             <summary>
3764             Creates an instance of this exception using the given message and inner exception.
3765             Adds the inner exception's details to the exception message because most bug reporters don't bother
3766             to provide the inner exception details which is typically what we care about.
3767             </summary>
3768         </member>
3769         <member name="M:Microsoft.Build.Shared.InternalErrorException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
3770             <summary>
3771             Private constructor used for (de)serialization. The constructor is private as this class is sealed
3772             If we ever add new members to this class, we'll need to update this.
3773             </summary>
3774         </member>
3775         <member name="M:Microsoft.Build.Shared.InternalErrorException.ConsiderDebuggerLaunch(System.String,System.Exception)">
3776             <summary>
3777             A fatal internal error due to a bug has occurred. Give the dev a chance to debug it, if possible.
3778             
3779             Will in all cases launch the debugger, if the environment variable "MSBUILDLAUNCHDEBUGGER" is set.
3780             
3781             In DEBUG build, will always launch the debugger, unless we are in razzle (_NTROOT is set) or in NUnit,
3782             or MSBUILDDONOTLAUNCHDEBUGGER is set (that could be useful in suite runs).
3783             We don't launch in retail or LKG so builds don't jam; they get a callstack, and continue or send a mail, etc.
3784             We don't launch in NUnit as tests often intentionally cause InternalErrorExceptions.
3785             
3786             Because we only call this method from this class, just before throwing an InternalErrorException, there is 
3787             no danger that this suppression will cause a bug to only manifest itself outside NUnit
3788             (which would be most unfortunate!). Do not make this non-private.
3789             
3790             Unfortunately NUnit can't handle unhandled exceptions like InternalErrorException on anything other than
3791             the main test thread. However, there's still a callstack displayed before it quits.
3792             
3793             If it is going to launch the debugger, it first does a Debug.Fail to give information about what needs to
3794             be debugged -- the exception hasn't been thrown yet. This automatically displays the current callstack.
3795             </summary>
3796         </member>
3797         <member name="T:Microsoft.Build.Shared.LoadedType">
3798             <summary>
3799             This class packages information about a type loaded from an assembly: for example,
3800             the GenerateResource task class type or the ConsoleLogger logger class type.
3801             </summary>
3802         </member>
3803         <member name="M:Microsoft.Build.Shared.LoadedType.#ctor(System.Type,Microsoft.Build.Shared.AssemblyLoadInfo)">
3804             <summary>
3805             Creates an instance of this class for the given type.
3806             </summary>
3807         </member>
3808         <member name="M:Microsoft.Build.Shared.LoadedType.#ctor(System.Type,Microsoft.Build.Shared.AssemblyLoadInfo,System.Reflection.Assembly)">
3809             <summary>
3810             Creates an instance of this class for the given type.
3811             </summary>
3812             <param name="type">The Type to be loaded</param>
3813             <param name="assemblyLoadInfo">Information used to load the assembly</param>
3814             <param name="loadedAssembly">The assembly which has been loaded, if any</param>
3815         </member>
3816         <member name="M:Microsoft.Build.Shared.LoadedType.HasLoadInSeparateAppDomainAttribute">
3817             <summary>
3818             Gets whether there's a LoadInSeparateAppDomain attribute on this type.
3819             Caches the result - since it can't change during the build.
3820             </summary>
3821             <returns></returns>
3822         </member>
3823         <member name="M:Microsoft.Build.Shared.LoadedType.HasSTAThreadAttribute">
3824             <summary>
3825             Gets whether there's a STAThread attribute on the Execute method of this type.
3826             Caches the result - since it can't change during the build.
3827             </summary>
3828             <returns></returns>
3829         </member>
3830         <member name="M:Microsoft.Build.Shared.LoadedType.CheckForHardcodedSTARequirement">
3831             <summary>
3832             Determines if the task has a hardcoded requirement for STA thread usage.
3833             </summary>
3834         </member>
3835         <member name="P:Microsoft.Build.Shared.LoadedType.Type">
3836             <summary>
3837             Gets the type that was loaded from an assembly.
3838             </summary>
3839             <value>The loaded type.</value>
3840         </member>
3841         <member name="P:Microsoft.Build.Shared.LoadedType.LoadedAssembly">
3842             <summary>
3843             If we loaded an assembly for this type.
3844             We use this information to help created AppDomains to resolve types that it could not load successfully
3845             </summary>
3846         </member>
3847         <member name="P:Microsoft.Build.Shared.LoadedType.Assembly">
3848             <summary>
3849             Gets the assembly the type was loaded from.
3850             </summary>
3851             <value>The assembly info for the loaded type.</value>
3852         </member>
3853         <member name="F:Microsoft.Build.Shared.LoadedType._loadedAssembly">
3854             <summary>
3855             Assembly, if any, that we loaded for this type.
3856             We use this information to help created AppDomains to resolve types that it could not load successfully
3857             </summary>
3858         </member>
3859         <member name="T:Microsoft.Build.Shared.NativeMethodsShared">
3860             <summary>
3861             Interop methods.
3862             </summary>
3863         </member>
3864         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.COWAIT_FLAGS">
3865             <summary>
3866             Flags for CoWaitForMultipleHandles
3867             </summary>
3868         </member>
3869         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.COWAIT_FLAGS.COWAIT_NONE">
3870             <summary>
3871             Exit when a handle is signaled.
3872             </summary>
3873         </member>
3874         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.COWAIT_FLAGS.COWAIT_WAITALL">
3875             <summary>
3876             Exit when all handles are signaled AND a message is received.
3877             </summary>
3878         </member>
3879         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.COWAIT_FLAGS.COWAIT_ALERTABLE">
3880             <summary>
3881             Exit when an RPC call is serviced.
3882             </summary>
3883         </member>
3884         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.ProcessorArchitectures">
3885             <summary>
3886             Processor architecture values
3887             </summary>
3888         </member>
3889         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.SYSTEM_INFO">
3890             <summary>
3891             Structure that contain information about the system on which we are running
3892             </summary>
3893         </member>
3894         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.SafeProcessHandle">
3895             <summary>
3896             Wrap the intptr returned by OpenProcess in a safe handle.
3897             </summary>
3898         </member>
3899         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus">
3900             <summary>
3901             Contains information about the current state of both physical and virtual memory, including extended memory
3902             </summary>
3903         </member>
3904         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.#ctor">
3905             <summary>
3906             Initializes a new instance of the <see cref="T:MemoryStatus"/> class.
3907             </summary>
3908         </member>
3909         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus._length">
3910             <summary>
3911             Size of the structure, in bytes. You must set this member before calling GlobalMemoryStatusEx.
3912             </summary>
3913         </member>
3914         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.MemoryLoad">
3915             <summary>
3916             Number between 0 and 100 that specifies the approximate percentage of physical
3917             memory that is in use (0 indicates no memory use and 100 indicates full memory use).
3918             </summary>
3919         </member>
3920         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.TotalPhysical">
3921             <summary>
3922             Total size of physical memory, in bytes.
3923             </summary>
3924         </member>
3925         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.AvailablePhysical">
3926             <summary>
3927             Size of physical memory available, in bytes.
3928             </summary>
3929         </member>
3930         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.TotalPageFile">
3931             <summary>
3932             Size of the committed memory limit, in bytes. This is physical memory plus the
3933             size of the page file, minus a small overhead.
3934             </summary>
3935         </member>
3936         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.AvailablePageFile">
3937             <summary>
3938             Size of available memory to commit, in bytes. The limit is ullTotalPageFile.
3939             </summary>
3940         </member>
3941         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.TotalVirtual">
3942             <summary>
3943             Total size of the user mode portion of the virtual address space of the calling process, in bytes.
3944             </summary>
3945         </member>
3946         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.AvailableVirtual">
3947             <summary>
3948             Size of unreserved and uncommitted memory in the user mode portion of the virtual
3949             address space of the calling process, in bytes.
3950             </summary>
3951         </member>
3952         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MemoryStatus.AvailableExtendedVirtual">
3953             <summary>
3954             Size of unreserved and uncommitted memory in the extended portion of the virtual
3955             address space of the calling process, in bytes.
3956             </summary>
3957         </member>
3958         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.WIN32_FILE_ATTRIBUTE_DATA">
3959             <summary>
3960             Contains information about a file or directory; used by GetFileAttributesEx.
3961             </summary>
3962         </member>
3963         <member name="T:Microsoft.Build.Shared.NativeMethodsShared.SecurityAttributes">
3964             <summary>
3965             Contains the security descriptor for an object and specifies whether
3966             the handle retrieved by specifying this structure is inheritable.
3967             </summary>
3968         </member>
3969         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.SystemInformationData.ProcessorArchitectureType">
3970             <summary>
3971             Architecture as far as the current process is concerned.
3972             It's x86 in wow64 (native architecture is x64 in that case).
3973             Otherwise it's the same as the native architecture.
3974             </summary>
3975         </member>
3976         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.SystemInformationData.ProcessorArchitectureTypeNative">
3977             <summary>
3978             Actual architecture of the system.
3979             </summary>
3980         </member>
3981         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.SystemInformationData.ConvertSystemArchitecture(System.UInt16)">
3982             <summary>
3983             Convert SYSTEM_INFO architecture values to the internal enum
3984             </summary>
3985             <param name="arch"></param>
3986             <returns></returns>
3987         </member>
3988         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.SystemInformationData.#ctor">
3989             <summary>
3990             Read system info values
3991             </summary>
3992         </member>
3993         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.MAX_PATH">
3994             <summary>
3995             Default buffer size to use when dealing with the Windows API.
3996             </summary>
3997             <remarks>
3998             This member is intentionally not a constant because we want to allow
3999             unit tests to change it.
4000             </remarks>
4001         </member>
4002         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.IsUnixLike">
4003             <summary>
4004             Gets a flag indicating if we are running under a Unix-like system (Mac, Linux, etc.)
4005             </summary>
4006         </member>
4007         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.IsLinux">
4008             <summary>
4009             Gets a flag indicating if we are running under Linux
4010             </summary>
4011         </member>
4012         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.IsMono">
4013             <summary>
4014             Gets a flag indicating if we are running under MONO
4015             </summary>
4016         </member>
4017         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.IsWindows">
4018             <summary>
4019             Gets a flag indicating if we are running under some version of Windows
4020             </summary>
4021         </member>
4022         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.IsOSX">
4023             <summary>
4024             Gets a flag indicating if we are running under Mac OSX
4025             </summary>
4026         </member>
4027         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.OSName">
4028             <summary>
4029             Gets a string for the current OS. This matches the OS env variable
4030             for Windows (Windows_NT).
4031             </summary>
4032         </member>
4033         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetOSNameForExtensionsPath">
4034             <summary>
4035             OS name that can be used for the msbuildExtensionsPathSearchPaths element
4036             for a toolset
4037             </summary>
4038         </member>
4039         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.s_frameworkBasePath">
4040             <summary>
4041             The base directory for all framework paths in Mono
4042             </summary>
4043         </member>
4044         <member name="F:Microsoft.Build.Shared.NativeMethodsShared.s_frameworkCurrentPath">
4045             <summary>
4046             The directory of the current framework
4047             </summary>
4048         </member>
4049         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.FrameworkCurrentPath">
4050             <summary>
4051             Gets the currently running framework path
4052             </summary>
4053         </member>
4054         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.FrameworkBasePath">
4055             <summary>
4056             Gets the base directory of all Mono frameworks
4057             </summary>
4058         </member>
4059         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.SystemInformation">
4060             <summary>
4061             System information, initialized when required.
4062             </summary>
4063             <remarks>
4064             Initially implemented as <see cref="T:System.Lazy`1"/>, but
4065             that's .NET 4+, and this is used in MSBuildTaskHost.
4066             </remarks>
4067         </member>
4068         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.ProcessorArchitecture">
4069             <summary>
4070             Architecture getter
4071             </summary>
4072         </member>
4073         <member name="P:Microsoft.Build.Shared.NativeMethodsShared.ProcessorArchitectureNative">
4074             <summary>
4075             Native architecture getter
4076             </summary>
4077         </member>
4078         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.WaitForMultipleObjects(System.UInt32,System.IntPtr[],System.Boolean,System.UInt32)">
4079             <summary>
4080             Really truly non pumping wait.
4081             Raw IntPtrs have to be used, because the marshaller does not support arrays of SafeHandle, only
4082             single SafeHandles.
4083             </summary>
4084         </member>
4085         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetLastWriteDirectoryUtcTime(System.String,System.DateTime@)">
4086             <summary>
4087             Get the last write time of the fullpath to a directory. If the pointed path is not a directory, or
4088             if the directory does not exist, then false is returned and fileModifiedTimeUtc is set DateTime.MinValue.
4089             </summary>
4090             <param name="fullPath">Full path to the file in the filesystem</param>
4091             <param name="fileModifiedTimeUtc">The UTC last write time for the directory</param>
4092         </member>
4093         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetShortFilePath(System.String)">
4094             <summary>
4095             Takes the path and returns the short path
4096             </summary>
4097         </member>
4098         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetLongFilePath(System.String)">
4099             <summary>
4100             Takes the path and returns a full path
4101             </summary>
4102             <param name="path"></param>
4103             <returns></returns>
4104         </member>
4105         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetMemoryStatus">
4106             <summary>
4107             Retrieves the current global memory status.
4108             </summary>
4109         </member>
4110         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetLastWriteFileUtcTime(System.String)">
4111             <summary>
4112             Get the last write time of the fullpath to the file.
4113             </summary>
4114             <param name="fullPath">Full path to the file in the filesystem</param>
4115             <returns>The last write time of the file, or DateTime.MinValue if the file does not exist.</returns>
4116             <remarks>
4117             This method should be accurate for regular files and symlinks, but can report incorrect data
4118             if the file's content was modified by writing to it through a different link, unless
4119             MSBUILDALWAYSCHECKCONTENTTIMESTAMP=1.
4120             </remarks>
4121         </member>
4122         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetContentLastWriteFileUtcTime(System.String)">
4123             <summary>
4124             Get the last write time of the content pointed to by a file path.
4125             </summary>
4126             <param name="fullPath">Full path to the file in the filesystem</param>
4127             <returns>The last write time of the file, or DateTime.MinValue if the file does not exist.</returns>
4128             <remarks>
4129             This is the most accurate timestamp-extraction mechanism, but it is too slow to use all the time.
4130             See https://github.com/Microsoft/msbuild/issues/2052.
4131             </remarks>
4132         </member>
4133         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.HResultSucceeded(System.Int32)">
4134             <summary>
4135             Did the HRESULT succeed
4136             </summary>
4137         </member>
4138         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.HResultFailed(System.Int32)">
4139             <summary>
4140             Did the HRESULT Fail
4141             </summary>
4142         </member>
4143         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.ThrowExceptionForErrorCode(System.Int32)">
4144             <summary>
4145             Given an error code, converts it to an HRESULT and throws the appropriate exception.
4146             </summary>
4147             <param name="errorCode"></param>
4148         </member>
4149         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.KillTree(System.Int32)">
4150             <summary>
4151             Kills the specified process by id and all of its children recursively.
4152             </summary>
4153         </member>
4154         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetParentProcessId(System.Int32)">
4155             <summary>
4156             Returns the parent process id for the specified process.
4157             Returns zero if it cannot be gotten for some reason.
4158             </summary>
4159         </member>
4160         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetChildProcessIds(System.Int32,System.DateTime)">
4161             <summary>
4162             Returns an array of all the immediate child processes by id.
4163             NOTE: The IntPtr in the tuple is the handle of the child process.  CloseHandle MUST be called on this.
4164             </summary>
4165         </member>
4166         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetCurrentDirectory">
4167             <summary>
4168             Internal, optimized GetCurrentDirectory implementation that simply delegates to the native method
4169             </summary>
4170             <returns></returns>
4171         </member>
4172         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetOEMCP">
4173             <summary>
4174             Gets the current OEM code page which is used by console apps
4175             (as opposed to the Windows/ANSI code page used by the normal people)
4176             Basically for each ANSI code page (set in Regional settings) there's a corresponding OEM code page
4177             that needs to be used for instance when writing to batch files
4178             </summary>
4179         </member>
4180         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.GetModuleFileName(System.Runtime.InteropServices.HandleRef,System.Text.StringBuilder,System.Int32)">
4181             <summary>
4182             Gets the fully qualified filename of the currently executing .exe
4183             </summary>
4184         </member>
4185         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.CoWaitForMultipleHandles(Microsoft.Build.Shared.NativeMethodsShared.COWAIT_FLAGS,System.Int32,System.Int32,System.IntPtr[],System.Int32@)">
4186             <summary>
4187             CoWaitForMultipleHandles allows us to wait in an STA apartment and still service RPC requests from other threads.
4188             VS needs this in order to allow the in-proc compilers to properly initialize, since they will make calls from the
4189             build thread which the main thread (blocked on BuildSubmission.Execute) must service.
4190             </summary>
4191         </member>
4192         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.MsgWaitOne(System.Threading.WaitHandle)">
4193             <summary>
4194             Waits while pumping APC messages.  This is important if the waiting thread is an STA thread which is potentially
4195             servicing COM calls from other threads.
4196             </summary>
4197         </member>
4198         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.MsgWaitOne(System.Threading.WaitHandle,System.TimeSpan)">
4199             <summary>
4200             Waits while pumping APC messages.  This is important if the waiting thread is an STA thread which is potentially
4201             servicing COM calls from other threads.
4202             </summary>
4203         </member>
4204         <member name="M:Microsoft.Build.Shared.NativeMethodsShared.MsgWaitOne(System.Threading.WaitHandle,System.Int32)">
4205             <summary>
4206             Waits while pumping APC messages.  This is important if the waiting thread is an STA thread which is potentially
4207             servicing COM calls from other threads.
4208             </summary>
4209         </member>
4210         <member name="T:Microsoft.Build.Shared.AssemblyUtilities">
4211             <summary>
4212             This class contains common reflection tasks
4213             </summary>
4214         </member>
4215         <member name="M:Microsoft.Build.Shared.AssemblyUtilities.Initialize">
4216             <summary>
4217             Initialize static fields. Doesn't need to be thread safe.
4218             </summary>
4219         </member>
4220         <member name="T:Microsoft.Build.Shared.InprocTrackingNativeMethods">
4221             <summary>
4222             Methods that are invoked on FileTracker.dll in order to handle inproc tracking
4223             </summary>
4224             <comments>
4225             We want to P/Invoke to the FileTracker methods, but FileTracker.dll is not guaranteed to be on PATH (since it's
4226             in the MSBuild directory), and there is no DefaultDllImportSearchPath that explicitly points to us. Thus, we
4227             are sneaking around P/Invoke by manually acquiring the method pointers and calling them ourselves. The vast
4228             majority of this code was lifted from ndp\fx\src\CLRCompression\ZLibNative.cs, which does the same thing for
4229             that assembly.
4230             </comments>
4231         </member>
4232         <member name="M:Microsoft.Build.Shared.InprocTrackingNativeMethods.FileTrackerDllStub.LoadFileTrackerDll">
4233             <summary>
4234             Loads FileTracker.dll into a handle that we can use subsequently to grab the exported methods we're interested in. 
4235             </summary>
4236         </member>
4237         <member name="M:Microsoft.Build.Shared.InprocTrackingNativeMethods.FileTrackerDllStub.CreateDelegate``1(System.String)">
4238             <summary>
4239             Generic code to grab the function pointer for a function exported by FileTracker.dll, given 
4240             that function's name, and transform that function pointer into a callable delegate. 
4241             </summary>
4242         </member>
4243         <member name="M:Microsoft.Build.Shared.InprocTrackingNativeMethods.FileTrackerDllStub.InitDelegates">
4244             <summary>
4245             Actually generate all of the delegates that will be called by our public (or rather, internal) surface area methods.  
4246             </summary>
4247         </member>
4248         <member name="M:Microsoft.Build.Shared.InprocTrackingNativeMethods.FileTrackerDllStub.#cctor">
4249             <summary>
4250             Static constructor -- generates the delegates for all of the export methods from
4251             FileTracker.dll that we care about. 
4252             </summary>
4253         </member>
4254         <member name="T:Microsoft.Build.Shared.ProjectErrorUtilities">
4255             <summary>
4256             This class contains methods that are useful for error checking and
4257             validation of project files.
4258             </summary>
4259             <remarks>
4260             FUTURE: This class could except an optional inner exception to put in the
4261             InvalidProjectFileException, which could make debugging a host easier in some circumstances.
4262             </remarks>
4263         </member>
4264         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,Microsoft.Build.Shared.IElementLocation,System.String)">
4265             <summary>
4266             This method is used to flag errors in the project file being processed.
4267             Do NOT use this method in place of ErrorUtilities.VerifyThrow(), because
4268             ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4269             </summary>
4270             <param name="condition">The condition to check.</param>
4271             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4272             <param name="resourceName">The resource string for the error message.</param>
4273         </member>
4274         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(Microsoft.Build.Shared.IElementLocation,System.String,System.Object)">
4275             <summary>
4276             Overload for one string format argument.
4277             </summary>
4278             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4279             <param name="resourceName">The resource string for the error message.</param>
4280             <param name="arg0"></param>
4281         </member>
4282         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,Microsoft.Build.Shared.IElementLocation,System.String,System.Object)">
4283             <summary>
4284             Overload for one string format argument.
4285             </summary>
4286             <param name="condition">The condition to check.</param>
4287             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4288             <param name="resourceName">The resource string for the error message.</param>
4289             <param name="arg0"></param>
4290         </member>
4291         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object)">
4292             <summary>
4293             Overload for two string format arguments.
4294             </summary>
4295             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4296             <param name="resourceName">The resource string for the error message.</param>
4297             <param name="arg0"></param>
4298             <param name="arg1"></param>
4299         </member>
4300         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object)">
4301             <summary>
4302             Overload for three string format arguments.
4303             </summary>
4304             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4305             <param name="resourceName">The resource string for the error message.</param>
4306             <param name="arg0"></param>
4307             <param name="arg1"></param>
4308             <param name="arg2"></param>
4309         </member>
4310         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object,System.Object)">
4311             <summary>
4312             Overload for four string format arguments.
4313             </summary>
4314             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4315             <param name="resourceName">The resource string for the error message.</param>
4316             <param name="arg0"></param>
4317             <param name="arg1"></param>
4318             <param name="arg2"></param>
4319             <param name="arg3"></param>
4320         </member>
4321         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(Microsoft.Build.Shared.IElementLocation,System.String,System.Object[])">
4322             <summary>
4323             Overload for if there are more than four string format arguments.
4324             </summary>
4325             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4326             <param name="resourceName">The resource string for the error message.</param>
4327             <param name="args"></param>
4328         </member>
4329         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object)">
4330             <summary>
4331             Overload for two string format arguments.
4332             </summary>
4333             <param name="condition">The condition to check.</param>
4334             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4335             <param name="resourceName">The resource string for the error message.</param>
4336             <param name="arg0"></param>
4337             <param name="arg1"></param>
4338         </member>
4339         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object)">
4340             <summary>
4341             Overload for three string format arguments.
4342             </summary>
4343             <param name="condition">The condition to check.</param>
4344             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4345             <param name="resourceName">The resource string for the error message.</param>
4346             <param name="arg0"></param>
4347             <param name="arg1"></param>
4348             <param name="arg2"></param>
4349         </member>
4350         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object,System.Object)">
4351             <summary>
4352             Overload for four string format arguments.
4353             </summary>
4354             <param name="condition">The condition to check.</param>
4355             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4356             <param name="resourceName">The resource string for the error message.</param>
4357             <param name="arg0"></param>
4358             <param name="arg1"></param>
4359             <param name="arg2"></param>
4360             <param name="arg3"></param>
4361         </member>
4362         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,System.String,Microsoft.Build.Shared.IElementLocation,System.String)">
4363             <summary>
4364             This method is used to flag errors in the project file being processed.
4365             Do NOT use this method in place of ErrorUtilities.VerifyThrow(), because
4366             ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4367             </summary>
4368             <param name="condition">The condition to check.</param>
4369             <param name="errorSubCategoryResourceName">The resource string for the
4370             error sub-category (can be null).</param>
4371             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4372             <param name="resourceName">The resource string for the error message.</param>
4373         </member>
4374         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,System.String,Microsoft.Build.Shared.IElementLocation,System.String,System.Object)">
4375             <summary>
4376             Overload for one string format argument.
4377             </summary>
4378             <param name="condition">The condition to check.</param>
4379             <param name="errorSubCategoryResourceName">The resource string for the
4380             error sub-category (can be null).</param>
4381             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4382             <param name="resourceName">The resource string for the error message.</param>
4383             <param name="arg0"></param>
4384         </member>
4385         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,System.String,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object)">
4386             <summary>
4387             Overload for two string format arguments.
4388             </summary>
4389             <param name="condition">The condition to check.</param>
4390             <param name="errorSubCategoryResourceName">The resource string for the
4391             error sub-category (can be null).</param>
4392             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4393             <param name="resourceName">The resource string for the error message.</param>
4394             <param name="arg0"></param>
4395             <param name="arg1"></param>
4396         </member>
4397         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,System.String,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object)">
4398             <summary>
4399             Overload for three string format arguments.
4400             </summary>
4401             <param name="condition">The condition to check.</param>
4402             <param name="errorSubCategoryResourceName">The resource string for the
4403             error sub-category (can be null).</param>
4404             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4405             <param name="resourceName">The resource string for the error message.</param>
4406             <param name="arg0"></param>
4407             <param name="arg1"></param>
4408             <param name="arg2"></param>
4409         </member>
4410         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.VerifyThrowInvalidProject(System.Boolean,System.String,Microsoft.Build.Shared.IElementLocation,System.String,System.Object,System.Object,System.Object,System.Object)">
4411             <summary>
4412             Overload for four string format arguments.
4413             </summary>
4414             <param name="condition">The condition to check.</param>
4415             <param name="errorSubCategoryResourceName">The resource string for the
4416             error sub-category (can be null).</param>
4417             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4418             <param name="resourceName">The resource string for the error message.</param>
4419             <param name="arg0"></param>
4420             <param name="arg1"></param>
4421             <param name="arg2"></param>
4422             <param name="arg3"></param>
4423         </member>
4424         <member name="M:Microsoft.Build.Shared.ProjectErrorUtilities.ThrowInvalidProject(System.String,Microsoft.Build.Shared.IElementLocation,System.String,System.Object[])">
4425             <summary>
4426             Throws an InvalidProjectFileException using the given data.
4427             
4428             PERF WARNING: calling a method that takes a variable number of arguments
4429             is expensive, because memory is allocated for the array of arguments -- do
4430             not call this method repeatedly in performance-critical scenarios
4431             
4432             </summary>
4433             <param name="errorSubCategoryResourceName">The resource string for the
4434             error sub-category (can be null).</param>
4435             <param name="elementLocation">The <see cref="T:Microsoft.Build.Shared.IElementLocation"/> of the element.</param>
4436             <param name="resourceName">The resource string for the error message.</param>
4437             <param name="args">Extra arguments for formatting the error message.</param>
4438         </member>
4439         <member name="T:Microsoft.Build.Shared.ProjectFileErrorUtilities">
4440             <summary>
4441             This class contains methods that are useful for error checking and validation of project files.
4442             </summary>
4443         </member>
4444         <member name="M:Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
4445             <summary>
4446             This method is used to flag errors in the project file being processed. Do NOT use this method in place of
4447             ErrorUtilities.VerifyThrow(), because ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4448             
4449             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4450             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4451             </summary>
4452             <param name="projectFile">The invalid project file.</param>
4453             <param name="resourceName">The resource string for the error message.</param>
4454             <param name="args">Extra arguments for formatting the error message.</param>
4455         </member>
4456         <member name="M:Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(Microsoft.Build.Shared.BuildEventFileInfo,System.Exception,System.String,System.Object[])">
4457             <summary>
4458             This method is used to flag errors in the project file being processed. Do NOT use this method in place of
4459             ErrorUtilities.VerifyThrow(), because ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4460             
4461             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4462             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4463             </summary>
4464             <param name="projectFile">The invalid project file.</param>
4465             <param name="innerException">Any inner exception. May be null.</param>
4466             <param name="resourceName">The resource string for the error message.</param>
4467             <param name="args">Extra arguments for formatting the error message.</param>
4468         </member>
4469         <member name="M:Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(System.Boolean,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
4470             <summary>
4471             This method is used to flag errors in the project file being processed. Do NOT use this method in place of
4472             ErrorUtilities.VerifyThrow(), because ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4473             
4474             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4475             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4476             </summary>
4477             <param name="condition">The condition to check.</param>
4478             <param name="projectFile">The invalid project file.</param>
4479             <param name="resourceName">The resource string for the error message.</param>
4480             <param name="args">Extra arguments for formatting the error message.</param>
4481         </member>
4482         <member name="M:Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(System.Boolean,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
4483             <summary>
4484             This method is used to flag errors in the project file being processed. Do NOT use this method in place of
4485             ErrorUtilities.VerifyThrow(), because ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4486             
4487             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4488             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4489             </summary>
4490             <param name="condition">The condition to check.</param>
4491             <param name="errorSubCategoryResourceName">The resource string for the error sub-category (can be null).</param>
4492             <param name="projectFile">The invalid project file.</param>
4493             <param name="resourceName">The resource string for the error message.</param>
4494             <param name="args">Extra arguments for formatting the error message.</param>
4495         </member>
4496         <member name="M:Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(System.Boolean,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.Exception,System.String,System.Object[])">
4497             <summary>
4498             This method is used to flag errors in the project file being processed. Do NOT use this method in place of
4499             ErrorUtilities.VerifyThrow(), because ErrorUtilities.VerifyThrow() is used to flag internal/programming errors.
4500             
4501             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4502             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4503             </summary>
4504             <param name="condition">The condition to check.</param>
4505             <param name="errorSubCategoryResourceName">The resource string for the error sub-category (can be null).</param>
4506             <param name="projectFile">The invalid project file.</param>
4507             <param name="innerException">The inner <see cref="T:System.Exception"/>.</param>
4508             <param name="resourceName">The resource string for the error message.</param>
4509             <param name="args">Extra arguments for formatting the error message.</param>
4510         </member>
4511         <member name="T:Microsoft.Build.Shared.ProjectWriter">
4512             <summary>
4513             This class is used to save MSBuild project files. It contains special handling for MSBuild notations that are not saved
4514             correctly by the XML DOM's default save mechanism.
4515             </summary>
4516         </member>
4517         <member name="M:Microsoft.Build.Shared.ProjectWriter.#ctor(System.IO.TextWriter)">
4518             <summary>
4519             Creates an instance of this class using the specified TextWriter.
4520             </summary>
4521             <param name="w"></param>
4522         </member>
4523         <member name="M:Microsoft.Build.Shared.ProjectWriter.#ctor(System.String,System.Text.Encoding)">
4524             <summary>
4525             Creates an instance of this class using the specified file.
4526             </summary>
4527             <param name="filename"></param>
4528             <param name="encoding">If null, defaults to UTF-8 and omits encoding attribute from processing instruction.</param>
4529         </member>
4530         <member name="M:Microsoft.Build.Shared.ProjectWriter.Initialize(System.Xml.XmlDocument)">
4531             <summary>
4532             Initializes settings for the project to be saved.
4533             </summary>
4534         </member>
4535         <member name="M:Microsoft.Build.Shared.ProjectWriter.Initialize(System.Xml.XmlDocument,System.Xml.XmlDeclaration)">
4536             <summary>
4537             Initializes settings for the project to be saved.
4538             </summary>
4539             <param name="project"></param>
4540             <param name="projectRootElementDeclaration">If null, XML declaration is not written.</param>
4541         </member>
4542         <member name="M:Microsoft.Build.Shared.ProjectWriter.WriteString(System.String)">
4543             <summary>
4544             Writes item vector transforms embedded in the given string without escaping '->' into "-&amp;gt;".
4545             </summary>
4546             <param name="text"></param>
4547         </member>
4548         <member name="M:Microsoft.Build.Shared.ProjectWriter.WriteStartDocument">
4549             <summary>
4550             Override method in order to omit the xml declaration tag in certain cases. The tag will be written if:
4551              - The tag was present in the file/stream loaded.
4552              - The Encoding is specified and not default (UTF8)
4553             </summary>
4554         </member>
4555         <member name="T:Microsoft.Build.Shared.ResourceUtilities">
4556             <summary>
4557             This class contains utility methods for dealing with resources.
4558             </summary>
4559         </member>
4560         <member name="M:Microsoft.Build.Shared.ResourceUtilities.ExtractMessageCode(System.Boolean,System.String,System.String@)">
4561             <summary>
4562             Extracts the message code (if any) prefixed to the given string. 
4563             <![CDATA[
4564             MSBuild codes match "^\s*(?<CODE>MSB\d\d\d\d):\s*(?<MESSAGE>.*)$"
4565             Arbitrary codes match "^\s*(?<CODE>[A-Za-z]+\d+):\s*(?<MESSAGE>.*)$"
4566             ]]>
4567             Thread safe.
4568             </summary>
4569             <param name="msbuildCodeOnly">Whether to match only MSBuild error codes, or any error code.</param>
4570             <param name="message">The string to parse.</param>
4571             <param name="code">[out] The message code, or null if there was no code.</param>
4572             <returns>The string without its message code prefix, if any.</returns>
4573         </member>
4574         <member name="M:Microsoft.Build.Shared.ResourceUtilities.GetHelpKeyword(System.String)">
4575             <summary>
4576             Retrieves the MSBuild F1-help keyword for the given resource string. Help keywords are used to index help topics in
4577             host IDEs.
4578             </summary>
4579             <param name="resourceName">Resource string to get the MSBuild F1-keyword for.</param>
4580             <returns>The MSBuild F1-help keyword string.</returns>
4581         </member>
4582         <member name="M:Microsoft.Build.Shared.ResourceUtilities.GetResourceString(System.String)">
4583             <summary>
4584             Retrieves the contents of the named resource string.
4585             </summary>
4586             <param name="resourceName">Resource string name.</param>
4587             <returns>Resource string contents.</returns>
4588         </member>
4589         <member name="M:Microsoft.Build.Shared.ResourceUtilities.FormatResourceString(System.String@,System.String@,System.String,System.Object[])">
4590             <summary>
4591             Loads the specified string resource and formats it with the arguments passed in. If the string resource has an MSBuild
4592             message code and help keyword associated with it, they too are returned.
4593             
4594             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4595             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4596             </summary>
4597             <remarks>This method is thread-safe.</remarks>
4598             <param name="code">[out] The MSBuild message code, or null.</param>
4599             <param name="helpKeyword">[out] The MSBuild F1-help keyword for the host IDE, or null.</param>
4600             <param name="resourceName">Resource string to load.</param>
4601             <param name="args">Optional arguments for formatting the resource string.</param>
4602             <returns>The formatted resource string.</returns>
4603         </member>
4604         <member name="M:Microsoft.Build.Shared.ResourceUtilities.FormatResourceString(System.String,System.Object[])">
4605             <summary>
4606             Looks up a string in the resources, and formats it with the arguments passed in. If the string resource has an MSBuild
4607             message code and help keyword associated with it, they are discarded.
4608             
4609             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4610             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4611             </summary>
4612             <remarks>This method is thread-safe.</remarks>
4613             <param name="resourceName">Resource string to load.</param>
4614             <param name="args">Optional arguments for formatting the resource string.</param>
4615             <returns>The formatted resource string.</returns>
4616         </member>
4617         <member name="M:Microsoft.Build.Shared.ResourceUtilities.FormatString(System.String,System.Object[])">
4618             <summary>
4619             Formats the given string using the variable arguments passed in.
4620             
4621             PERF WARNING: calling a method that takes a variable number of arguments is expensive, because memory is allocated for
4622             the array of arguments -- do not call this method repeatedly in performance-critical scenarios
4623             
4624             Thread safe.
4625             </summary>
4626             <param name="unformatted">The string to format.</param>
4627             <param name="args">Optional arguments for formatting the given string.</param>
4628             <returns>The formatted string.</returns>
4629         </member>
4630         <member name="M:Microsoft.Build.Shared.ResourceUtilities.VerifyResourceStringExists(System.String)">
4631             <summary>
4632             Verifies that a particular resource string actually exists in the string table. This will only be called in debug
4633             builds. It helps catch situations where a dev calls VerifyThrowXXX with a new resource string, but forgets to add the
4634             resource string to the string table, or misspells it!
4635             </summary>
4636             <remarks>This method is thread-safe.</remarks>
4637             <param name="resourceName">Resource string to check.</param>
4638         </member>
4639         <member name="T:Microsoft.Build.Shared.TypeLoader">
4640             <summary>
4641             This class is used to load types from their assemblies.
4642             </summary>
4643         </member>
4644         <member name="F:Microsoft.Build.Shared.TypeLoader.s_cacheOfLoadedTypesByFilterLock">
4645             <summary>
4646             Lock for initializing the dictionary
4647             </summary>
4648         </member>
4649         <member name="F:Microsoft.Build.Shared.TypeLoader.s_cacheOfReflectionOnlyLoadedTypesByFilterLock">
4650             <summary>
4651             Lock for initializing the dictionary
4652             </summary>
4653         </member>
4654         <member name="F:Microsoft.Build.Shared.TypeLoader.s_loadInfoToTypeLock">
4655             <summary>
4656             Lock for initializing the dictionary
4657             </summary>
4658         </member>
4659         <member name="F:Microsoft.Build.Shared.TypeLoader.s_reflectionOnlyloadInfoToTypeLock">
4660             <summary>
4661             Lock for initializing the dictionary
4662             </summary>
4663         </member>
4664         <member name="F:Microsoft.Build.Shared.TypeLoader.s_cacheOfLoadedTypesByFilter">
4665             <summary>
4666             Cache to keep track of the assemblyLoadInfos based on a given type filter.
4667             </summary>
4668         </member>
4669         <member name="F:Microsoft.Build.Shared.TypeLoader.s_cacheOfReflectionOnlyLoadedTypesByFilter">
4670             <summary>
4671             Cache to keep track of the assemblyLoadInfos based on a given type filter for assemblies which are to be loaded for reflectionOnlyLoads.
4672             </summary>
4673         </member>
4674         <member name="F:Microsoft.Build.Shared.TypeLoader._isDesiredType">
4675             <summary>
4676             Type filter for this typeloader
4677             </summary>
4678         </member>
4679         <member name="M:Microsoft.Build.Shared.TypeLoader.#ctor(System.Func{System.Type,System.Object,System.Boolean})">
4680             <summary>
4681             Constructor.
4682             </summary>
4683         </member>
4684         <member name="M:Microsoft.Build.Shared.TypeLoader.IsPartialTypeNameMatch(System.String,System.String)">
4685             <summary>
4686             Given two type names, looks for a partial match between them. A partial match is considered valid only if it occurs on
4687             the right side (tail end) of the name strings, and at the start of a class or namespace name.
4688             </summary>
4689             <remarks>
4690             1) Matches are case-insensitive.
4691             2) .NET conventions regarding namespaces and nested classes are respected, including escaping of reserved characters.
4692             </remarks>
4693             <example>
4694             "Csc" and "csc"                                                 ==> exact match
4695             "Microsoft.Build.Tasks.Csc" and "Microsoft.Build.Tasks.Csc"     ==> exact match
4696             "Microsoft.Build.Tasks.Csc" and "Csc"                           ==> partial match
4697             "Microsoft.Build.Tasks.Csc" and "Tasks.Csc"                     ==> partial match
4698             "MyTasks.ATask+NestedTask" and "NestedTask"                     ==> partial match
4699             "MyTasks.ATask\\+NestedTask" and "NestedTask"                   ==> partial match
4700             "MyTasks.CscTask" and "Csc"                                     ==> no match
4701             "MyTasks.MyCsc" and "Csc"                                       ==> no match
4702             "MyTasks.ATask\.Csc" and "Csc"                                  ==> no match
4703             "MyTasks.ATask\\\.Csc" and "Csc"                                ==> no match
4704             </example>
4705             <returns>true, if the type names match exactly or partially; false, if there is no match at all</returns>
4706         </member>
4707         <member name="M:Microsoft.Build.Shared.TypeLoader.LoadAssembly(Microsoft.Build.Shared.AssemblyLoadInfo)">
4708             <summary>
4709             Load an assembly given its AssemblyLoadInfo
4710             </summary>
4711             <param name="assemblyLoadInfo"></param>
4712             <returns></returns>
4713         </member>
4714         <member name="M:Microsoft.Build.Shared.TypeLoader.Load(System.String,Microsoft.Build.Shared.AssemblyLoadInfo)">
4715             <summary>
4716             Loads the specified type if it exists in the given assembly. If the type name is fully qualified, then a match (if
4717             any) is unambiguous; otherwise, if there are multiple types with the same name in different namespaces, the first type
4718             found will be returned.
4719             </summary>
4720         </member>
4721         <member name="M:Microsoft.Build.Shared.TypeLoader.ReflectionOnlyLoad(System.String,Microsoft.Build.Shared.AssemblyLoadInfo)">
4722             <summary>
4723             Loads the specified type if it exists in the given assembly. If the type name is fully qualified, then a match (if
4724             any) is unambiguous; otherwise, if there are multiple types with the same name in different namespaces, the first type
4725             found will be returned.
4726             </summary>
4727             <returns>The loaded type, or null if the type was not found.</returns>
4728         </member>
4729         <member name="M:Microsoft.Build.Shared.TypeLoader.GetLoadedType(System.Object,System.Object,System.Collections.Concurrent.ConcurrentDictionary{System.Func{System.Type,System.Object,System.Boolean},System.Collections.Concurrent.ConcurrentDictionary{Microsoft.Build.Shared.AssemblyLoadInfo,Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes}},System.String,Microsoft.Build.Shared.AssemblyLoadInfo)">
4730             <summary>
4731             Loads the specified type if it exists in the given assembly. If the type name is fully qualified, then a match (if
4732             any) is unambiguous; otherwise, if there are multiple types with the same name in different namespaces, the first type
4733             found will be returned.
4734             </summary>
4735         </member>
4736         <member name="T:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes">
4737             <summary>
4738             Given a type filter and an asssemblyInfo object keep track of what types in a given assembly which match the type filter.
4739             Also, use this information to determine if a given TypeName is in the assembly which is pointed to by the AssemblyLoadInfo object.
4740             
4741             This type represents a combination of a type filter and an assemblyInfo object.
4742             </summary>
4743         </member>
4744         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._lockObject">
4745             <summary>
4746             Lock to prevent two threads from using this object at the same time.
4747             Since we fill up internal structures with what is in the assembly 
4748             </summary>
4749         </member>
4750         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._isDesiredType">
4751             <summary>
4752             Type filter to pick the correct types out of an assembly
4753             </summary>
4754         </member>
4755         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._assemblyLoadInfo">
4756             <summary>
4757             Assembly load information so we can load an assembly
4758             </summary>
4759         </member>
4760         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._typeNameToType">
4761             <summary>
4762             What is the type for the given type name, this may be null if the typeName does not map to a type.
4763             </summary>
4764         </member>
4765         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._publicTypeNameToType">
4766             <summary>
4767             List of public types in the assembly which match the type filter and their corresponding types
4768             </summary>
4769         </member>
4770         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._haveScannedPublicTypes">
4771             <summary>
4772             Have we scanned the public types for this assembly yet.
4773             </summary>
4774         </member>
4775         <member name="F:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes._loadedAssembly">
4776             <summary>
4777             Assembly, if any, that we loaded for this type.
4778             We use this information to set the LoadedType.LoadedAssembly so that this object can be used
4779             to help created AppDomains to resolve those that it could not load successfully
4780             </summary>
4781         </member>
4782         <member name="M:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.#ctor(System.Func{System.Type,System.Object,System.Boolean},Microsoft.Build.Shared.AssemblyLoadInfo)">
4783             <summary>
4784             Given a type filter, and an assembly to load the type information from determine if a given type name is in the assembly or not.
4785             </summary>
4786         </member>
4787         <member name="M:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.GetLoadedTypeByTypeName(System.String)">
4788             <summary>
4789             Determine if a given type name is in the assembly or not. Return null if the type is not in the assembly
4790             </summary>
4791         </member>
4792         <member name="M:Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.ScanAssemblyForPublicTypes">
4793             <summary>
4794             Scan the assembly pointed to by the assemblyLoadInfo for public types. We will use these public types to do partial name matching on 
4795             to find tasks, loggers, and task factories.
4796             </summary>
4797         </member>
4798         <member name="T:Microsoft.Build.Shared.VisualStudioConstants">
4799             <summary>
4800             Shared Visual Studio related constants
4801             </summary>
4802         </member>
4803         <member name="F:Microsoft.Build.Shared.VisualStudioConstants.CurrentVisualStudioSolutionFileVersion">
4804             <summary>
4805             This is the version number of the most recent solution file format
4806             we will read. It will be the version number used in solution files
4807             by the latest version of Visual Studio.
4808             </summary>
4809         </member>
4810         <member name="F:Microsoft.Build.Shared.VisualStudioConstants.CurrentVisualStudioVersion">
4811             <summary>
4812             This is the version number of the latest version of Visual Studio.
4813             </summary>
4814             <remarks>
4815             We use it for the version of the VC PIA we try to load and to find
4816             Visual Studio registry hive that we use to find where vcbuild.exe might be.
4817             </remarks>
4818         </member>
4819         <member name="T:Microsoft.Build.Shared.XMakeAttributes">
4820             <summary>
4821             Contains the names of the known attributes in the XML project file.
4822             </summary>
4823         </member>
4824         <member name="M:Microsoft.Build.Shared.XMakeAttributes.IsSpecialTaskAttribute(System.String)">
4825             <summary>
4826             Returns true if and only if the specified attribute is one of the attributes that the engine specifically recognizes
4827             on a task and treats in a special way.
4828             </summary>
4829             <param name="attribute"></param>
4830             <returns>true, if given attribute is a reserved task attribute</returns>
4831         </member>
4832         <member name="M:Microsoft.Build.Shared.XMakeAttributes.IsBadlyCasedSpecialTaskAttribute(System.String)">
4833             <summary>
4834             Checks if the specified attribute is a reserved task attribute with incorrect casing.
4835             </summary>
4836             <param name="attribute"></param>
4837             <returns>true, if the given attribute is reserved and badly cased</returns>
4838         </member>
4839         <member name="M:Microsoft.Build.Shared.XMakeAttributes.IsNonBatchingTargetAttribute(System.String)">
4840             <summary>
4841             Indicates if the specified attribute cannot be used for batching targets.
4842             </summary>
4843             <param name="attribute"></param>
4844             <returns>true, if a target cannot batch on the given attribute</returns>
4845         </member>
4846         <member name="M:Microsoft.Build.Shared.XMakeAttributes.IsValidMSBuildRuntimeValue(System.String)">
4847             <summary>
4848             Returns true if the given string is a valid member of the MSBuildRuntimeValues set
4849             </summary>
4850         </member>
4851         <member name="M:Microsoft.Build.Shared.XMakeAttributes.IsValidMSBuildArchitectureValue(System.String)">
4852             <summary>
4853             Returns true if the given string is a valid member of the MSBuildArchitectureValues set
4854             </summary>
4855         </member>
4856         <member name="M:Microsoft.Build.Shared.XMakeAttributes.RuntimeValuesMatch(System.String,System.String)">
4857             <summary>
4858             Compares two members of MSBuildRuntimeValues, returning true if they count as a match, and false otherwise.  
4859             </summary>
4860         </member>
4861         <member name="M:Microsoft.Build.Shared.XMakeAttributes.TryMergeRuntimeValues(System.String,System.String,System.String@)">
4862             <summary>
4863             Given two MSBuildRuntime values, returns the concrete result of merging the two.  If the merge fails, the merged runtime 
4864             string is returned null, and the return value of the method is false.  Otherwise, if the merge succeeds, the method returns 
4865             true with the merged runtime value.  E.g.: 
4866             "CLR4" + "CLR2" = null (false)
4867             "CLR2" + "don't care" = "CLR2" (true)
4868             "current runtime" + "CLR4" = "CLR4" (true) 
4869             "current runtime" + "don't care" = "CLR4" (true)
4870             If both specify "don't care", then defaults to the current runtime -- CLR4. 
4871             A null or empty string is interpreted as "don't care".
4872             </summary>
4873         </member>
4874         <member name="M:Microsoft.Build.Shared.XMakeAttributes.ArchitectureValuesMatch(System.String,System.String)">
4875             <summary>
4876             Compares two members of MSBuildArchitectureValues, returning true if they count as a match, and false otherwise.  
4877             </summary>
4878         </member>
4879         <member name="M:Microsoft.Build.Shared.XMakeAttributes.GetExplicitMSBuildRuntime(System.String)">
4880             <summary>
4881             Given an MSBuildRuntime value that may be non-explicit -- e.g. "CurrentRuntime" or "Any" --
4882             return the specific MSBuildRuntime value that it would map to in this case. If it does not map 
4883             to any known runtime, just return it as is -- maybe someone else knows what to do with it; if 
4884             not, they'll certainly have more context on logging or throwing the error. 
4885             </summary>
4886         </member>
4887         <member name="M:Microsoft.Build.Shared.XMakeAttributes.TryMergeArchitectureValues(System.String,System.String,System.String@)">
4888             <summary>
4889             Given two MSBuildArchitecture values, returns the concrete result of merging the two.  If the merge fails, the merged architecture 
4890             string is returned null, and the return value of the method is false.  Otherwise, if the merge succeeds, the method returns 
4891             true with the merged architecture value.  E.g.: 
4892             "x86" + "x64" = null (false)
4893             "x86" + "don't care" = "x86" (true)
4894             "current architecture" + "x86" = "x86" (true) on a 32-bit process, and null (false) on a 64-bit process
4895             "current architecture" + "don't care" = "x86" (true) on a 32-bit process, and "x64" (true) on a 64-bit process
4896             A null or empty string is interpreted as "don't care".
4897             If both specify "don't care", then defaults to whatever the current process architecture is.  
4898             </summary>
4899         </member>
4900         <member name="M:Microsoft.Build.Shared.XMakeAttributes.GetCurrentMSBuildArchitecture">
4901             <summary>
4902             Returns the MSBuildArchitecture value corresponding to the current process' architecture. 
4903             </summary>
4904             <comments>
4905             Revisit if we ever run on something other than Intel.  
4906             </comments>
4907         </member>
4908         <member name="M:Microsoft.Build.Shared.XMakeAttributes.GetExplicitMSBuildArchitecture(System.String)">
4909             <summary>
4910             Given an MSBuildArchitecture value that may be non-explicit -- e.g. "CurrentArchitecture" or "Any" --
4911             return the specific MSBuildArchitecture value that it would map to in this case.  If it does not map 
4912             to any known architecture, just return it as is -- maybe someone else knows what to do with it; if 
4913             not, they'll certainly have more context on logging or throwing the error. 
4914             </summary>
4915         </member>
4916         <member name="T:Microsoft.Build.Shared.XMakeElements">
4917             <summary>
4918             Contains the names of the known elements in the XML project file.
4919             </summary>
4920         </member>
4921         <member name="P:Microsoft.Build.Shared.XMakeElements.IllegalItemPropertyNames">
4922             <summary>
4923             Read-only internal accessor for the hashtable containing
4924             MSBuild reserved item/property names (like "Choose", for example).
4925             </summary>
4926         </member>
4927         <member name="T:Microsoft.Build.Shared.XmlUtilities">
4928             <summary>
4929             This class contains utility methods for XML manipulation.
4930             </summary>
4931         </member>
4932         <member name="M:Microsoft.Build.Shared.XmlUtilities.RenameXmlElement(Microsoft.Build.Construction.XmlElementWithLocation,System.String,System.String)">
4933             <summary>
4934             This method renames an XML element.  Well, actually you can't directly
4935             rename an XML element using the DOM, so what you have to do is create
4936             a brand new XML element with the new name, and copy over all the attributes
4937             and children.  This method returns the new XML element object.
4938             If the name is the same, does nothing and returns the element passed in.
4939             </summary>
4940             <param name="oldElement"></param>
4941             <param name="newElementName"></param>
4942             <param name="xmlNamespace">Can be null if global namespace.</param>
4943             <returns>new/renamed element</returns>
4944         </member>
4945         <member name="M:Microsoft.Build.Shared.XmlUtilities.VerifyThrowArgumentValidElementName(System.String)">
4946             <summary>
4947             Verifies that a name is valid for the name of an item, property, or piece of metadata.
4948             If it isn't, throws an ArgumentException indicating the invalid character.
4949             </summary>
4950             <remarks>
4951             Note that our restrictions are more stringent than the XML Standard's restrictions.
4952             </remarks>
4953             <throws>ArgumentException</throws>
4954             <param name="name">name to validate</param>
4955         </member>
4956         <member name="M:Microsoft.Build.Shared.XmlUtilities.VerifyThrowProjectValidElementName(System.String,Microsoft.Build.Shared.IElementLocation)">
4957             <summary>
4958             Verifies that a name is valid for the name of an item, property, or piece of metadata.
4959             If it isn't, throws an InvalidProjectException indicating the invalid character.
4960             </summary>
4961             <remarks>
4962             Note that our restrictions are more stringent than the XML Standard's restrictions.
4963             </remarks>
4964         </member>
4965         <member name="M:Microsoft.Build.Shared.XmlUtilities.VerifyThrowProjectValidElementName(Microsoft.Build.Construction.XmlElementWithLocation)">
4966             <summary>
4967             Verifies that a name is valid for the name of an item, property, or piece of metadata.
4968             If it isn't, throws an InvalidProjectException indicating the invalid character.
4969             </summary>
4970             <remarks>
4971             Note that our restrictions are more stringent than the XML Standard's restrictions.
4972             </remarks>
4973         </member>
4974         <member name="M:Microsoft.Build.Shared.XmlUtilities.IsValidElementName(System.String)">
4975             <summary>
4976             Indicates if the given name is valid as the name of an item, property or metadatum.
4977             </summary>
4978             <remarks>
4979             Note that our restrictions are more stringent than those of the XML Standard.
4980             </remarks>
4981             <param name="name"></param>
4982             <returns>true, if name is valid</returns>
4983         </member>
4984         <member name="M:Microsoft.Build.Shared.XmlUtilities.LocateFirstInvalidElementNameCharacter(System.String)">
4985             <summary>
4986             Finds the location of the first invalid character, if any, in the name of an 
4987             item, property, or piece of metadata. Returns the location of the first invalid character, or -1 if there are none. 
4988             Valid names must match this pattern:  [A-Za-z_][A-Za-z_0-9\-.]*
4989             Note, this is a subset of all possible valid XmlElement names: we use a subset because we also
4990             have to match this same set in our regular expressions, and allowing all valid XmlElement name
4991             characters in a regular expression would be impractical.
4992             </summary>
4993             <remarks>
4994             Note that our restrictions are more stringent than the XML Standard's restrictions.
4995             PERF: This method has to be as fast as possible, as it's called when any item, property, or piece
4996             of metadata is constructed.
4997             </remarks>
4998         </member>
4999         <member name="M:Microsoft.Build.Shared.XmlUtilities.SniffAttributeValueFromXmlFile(System.String,System.String,System.String)">
5000             <summary>
5001             Load the xml file using XMLTextReader and locate the element and attribute specified and then 
5002             return the value. This is a quick way to peek at the xml file whithout having the go through 
5003             the XMLDocument (MSDN article (Chapter 9 - Improving XML Performance)).
5004             Does not throw for IO or XML issues.
5005             Returns null if the attribute is not present.
5006             </summary>
5007         </member>
5008         <member name="T:Microsoft.Build.Collections.HybridDictionary`2">
5009             <summary>
5010             HybridDictionary is a dictionary which is implemented to efficiently store both small and large numbers of items.  When only a single item is stored, we use no 
5011             collections at all.  When 1 &lt; n &lt;= MaxListSize is stored, we use a list.  For any larger number of elements, we use a dictionary.
5012             </summary>
5013             <typeparam name="TKey">The key type</typeparam>
5014             <typeparam name="TValue">The value type</typeparam>
5015         </member>
5016         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.MaxListSize">
5017             <summary>
5018             The maximum number of entries we will store in a list before converting it to a dictionary.
5019             </summary>
5020         </member>
5021         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.store">
5022             <summary>
5023             The dictionary, list, or pair used for a store
5024             </summary>
5025         </member>
5026         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.comparer">
5027             <summary>
5028             The comparer used to look up an item.
5029             </summary>
5030         </member>
5031         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#cctor">
5032             <summary>
5033             Static constructor
5034             </summary>
5035         </member>
5036         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor">
5037             <summary>
5038             Default constructor.
5039             </summary>
5040         </member>
5041         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor(System.Int32)">
5042             <summary>
5043             Capacity constructor.
5044             </summary>
5045             <param name="capacity">The initial capacity of the collection.</param>
5046         </member>
5047         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
5048             <summary>
5049             Constructor.
5050             </summary>
5051             <param name="comparer">The comparer to use.</param>
5052         </member>
5053         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
5054             <summary>
5055             Constructor.
5056             </summary>
5057             <param name="capacity">The initial capacity.</param>
5058             <param name="comparer">The comparer to use.</param>
5059         </member>
5060         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
5061             <summary>
5062             Serialization constructor.
5063             </summary>
5064         </member>
5065         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.#ctor(Microsoft.Build.Collections.HybridDictionary{`0,`1},System.Collections.Generic.IEqualityComparer{`0})">
5066             <summary>
5067             Cloning constructor.
5068             </summary>
5069         </member>
5070         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Comparer">
5071             <summary>
5072             Gets the comparer used to compare keys.
5073             </summary>
5074         </member>
5075         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Keys">
5076             <summary>
5077             Returns the collection of keys in the dictionary.
5078             </summary>
5079         </member>
5080         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Values">
5081             <summary>
5082             Returns the collection of values in the dictionary.
5083             </summary>
5084         </member>
5085         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Count">
5086             <summary>
5087             Gets the number of items in the dictionary.
5088             </summary>
5089         </member>
5090         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.IsReadOnly">
5091             <summary>
5092             Returns true if this is a read-only collection.
5093             </summary>
5094         </member>
5095         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.IsSynchronized">
5096             <summary>
5097             Returns true if this collection is synchronized.
5098             </summary>
5099         </member>
5100         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SyncRoot">
5101             <summary>
5102             Gets the sync root for this collection.
5103             </summary>
5104             <remarks>
5105             NOTE: Returns "this", which is not normally recommended as a caller
5106             could implement its own locking scheme on "this" and deadlock. However, a
5107             sync object would be significant wasted space as there are a lot of these, 
5108             and the caller is not foolish.
5109             </remarks>
5110         </member>
5111         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.IsFixedSize">
5112             <summary>
5113             Returns true if the dictionary is a fixed size.
5114             </summary>
5115         </member>
5116         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.System#Collections#IDictionary#Keys">
5117             <summary>
5118             Returns a collection of the keys in the dictionary.
5119             </summary>
5120         </member>
5121         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.System#Collections#IDictionary#Values">
5122             <summary>
5123             Returns a collection of the values in the dictionary.
5124             </summary>
5125         </member>
5126         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Item(`0)">
5127             <summary>
5128             Item accessor.
5129             </summary>
5130         </member>
5131         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.Item(System.Object)">
5132             <summary>
5133             Item accessor.
5134             </summary>
5135         </member>
5136         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Add(`0,`1)">
5137             <summary>
5138             Adds an item to the dictionary.
5139             </summary>
5140         </member>
5141         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.ContainsKey(`0)">
5142             <summary>
5143             Returns true if the specified key is contained within the dictionary.
5144             </summary>
5145         </member>
5146         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Remove(`0)">
5147             <summary>
5148             Removes a key from the dictionary.
5149             </summary>
5150         </member>
5151         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.TryGetValue(`0,`1@)">
5152             <summary>
5153             Returns true and the value for the specified key if it is present in the dictionary, false otherwise.
5154             </summary>
5155         </member>
5156         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
5157             <summary>
5158             Adds a key/value pair to the dictionary.
5159             </summary>
5160         </member>
5161         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Clear">
5162             <summary>
5163             Clears the dictionary.
5164             </summary>
5165         </member>
5166         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
5167             <summary>
5168             Returns true of the dictionary contains the key/value pair.
5169             </summary>
5170         </member>
5171         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
5172             <summary>
5173             Copies the contents of the dictionary to the specified array.
5174             </summary>
5175         </member>
5176         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
5177             <summary>
5178             Removed the specified key/value pair from the dictionary.
5179             NOT IMPLEMENTED.
5180             </summary>
5181         </member>
5182         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.GetEnumerator">
5183             <summary>
5184             Gets an enumerator over the key/value pairs in the dictionary.
5185             </summary>
5186         </member>
5187         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.System#Collections#IEnumerable#GetEnumerator">
5188             <summary>
5189             Gets an enumerator over the key/value pairs in the dictionary.
5190             </summary>
5191         </member>
5192         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.CopyTo(System.Array,System.Int32)">
5193             <summary>
5194             Copies the contents of the dictionary to the specified Array.
5195             </summary>
5196         </member>
5197         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Add(System.Object,System.Object)">
5198             <summary>
5199             Adds the specified key/value pair to the dictionary.
5200             </summary>
5201         </member>
5202         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Contains(System.Object)">
5203             <summary>
5204             Returns true if the dictionary contains the specified key.
5205             </summary>
5206         </member>
5207         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.System#Collections#IDictionary#GetEnumerator">
5208             <summary>
5209             Returns an enumerator over the key/value pairs in the dictionary.
5210             </summary>
5211         </member>
5212         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.Remove(System.Object)">
5213             <summary>
5214             Removes the specified key from the dictionary.
5215             </summary>
5216         </member>
5217         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.AddToOrUpdateList(System.Collections.Generic.List{System.Collections.Generic.KeyValuePair{`0,`1}},`0,`1,System.Boolean)">
5218             <summary>
5219             Adds a value to the list, growing it to a dictionary if necessary
5220             </summary>
5221         </member>
5222         <member name="T:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator">
5223             <summary>
5224             An enumerator for when the dictionary has only a single entry in it.
5225             </summary>
5226         </member>
5227         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.value">
5228             <summary>
5229             The single value.
5230             </summary>
5231         </member>
5232         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.enumerationComplete">
5233             <summary>
5234             Flag indicating when we are at the end of the enumeration.
5235             </summary>
5236         </member>
5237         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.#ctor(System.Collections.Generic.KeyValuePair{`0,`1})">
5238             <summary>
5239             Constructor.
5240             </summary>
5241         </member>
5242         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.Current">
5243             <summary>
5244             Gets the current value.
5245             </summary>
5246         </member>
5247         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.System#Collections#IEnumerator#Current">
5248             <summary>
5249             Gets the current value.
5250             </summary>
5251         </member>
5252         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.Dispose">
5253             <summary>
5254             Disposer.
5255             </summary>
5256         </member>
5257         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.MoveNext">
5258             <summary>
5259             Moves to the next item.
5260             </summary>
5261         </member>
5262         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleEnumerator.Reset">
5263             <summary>
5264             Resets the enumerator.
5265             </summary>
5266         </member>
5267         <member name="T:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator">
5268             <summary>
5269             An enumerator for when the dictionary has only a single entry in it.
5270             Cannot find a way to make the SingleEntryEnumerator serve both purposes, as foreach preferentially
5271             casts to IEnumerable that returns the generic enumerator instead of an IDictionaryEnumerator.
5272             
5273             Don't want to use the List enumerator below as a throwaway one-entry list would need to be allocated.
5274             </summary>
5275         </member>
5276         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.value">
5277             <summary>
5278             The single value.
5279             </summary>
5280         </member>
5281         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.enumerationComplete">
5282             <summary>
5283             Flag indicating when we are at the end of the enumeration.
5284             </summary>
5285         </member>
5286         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.#ctor(System.Collections.DictionaryEntry)">
5287             <summary>
5288             Constructor.
5289             </summary>
5290         </member>
5291         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Key">
5292             <summary>
5293             Key
5294             </summary>
5295         </member>
5296         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Value">
5297             <summary>
5298             Value
5299             </summary>
5300         </member>
5301         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Current">
5302             <summary>
5303             Current
5304             </summary>
5305         </member>
5306         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Entry">
5307             <summary>
5308             Gets the current value.
5309             </summary>
5310         </member>
5311         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Dispose">
5312             <summary>
5313             Disposer.
5314             </summary>
5315         </member>
5316         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.MoveNext">
5317             <summary>
5318             Moves to the next item.
5319             </summary>
5320         </member>
5321         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.SingleDictionaryEntryEnumerator.Reset">
5322             <summary>
5323             Resets the enumerator.
5324             </summary>
5325         </member>
5326         <member name="T:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2">
5327             <summary>
5328             An enumerator for a list of KVP that implements IDictionaryEnumerator
5329             </summary>
5330             <typeparam name="KK">Key type</typeparam>
5331             <typeparam name="VV">Value type</typeparam>
5332         </member>
5333         <member name="F:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.enumerator">
5334             <summary>
5335             The value.
5336             </summary>
5337         </member>
5338         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.#ctor(System.Collections.Generic.List{System.Collections.Generic.KeyValuePair{`2,`3}})">
5339             <summary>
5340             Constructor.
5341             </summary>
5342         </member>
5343         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Key">
5344             <summary>
5345             Key
5346             </summary>
5347         </member>
5348         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Value">
5349             <summary>
5350             Value
5351             </summary>
5352         </member>
5353         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Current">
5354             <summary>
5355             Current
5356             </summary>
5357         </member>
5358         <member name="P:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Entry">
5359             <summary>
5360             Gets the current value.
5361             </summary>
5362         </member>
5363         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Dispose">
5364             <summary>
5365             Disposer.
5366             </summary>
5367         </member>
5368         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.MoveNext">
5369             <summary>
5370             Moves to the next item.
5371             </summary>
5372         </member>
5373         <member name="M:Microsoft.Build.Collections.HybridDictionary`2.ListDictionaryEntryEnumerator`2.Reset">
5374             <summary>
5375             Resets the enumerator.
5376             </summary>
5377         </member>
5378         <member name="T:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1">
5379             <summary>
5380             A read-only wrapper over an empty collection.
5381             </summary>
5382             <remarks>
5383             Thus this is an omission from the BCL.
5384             </remarks>
5385             <typeparam name="T">Type of element in the collection</typeparam>
5386         </member>
5387         <member name="F:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.s_instance">
5388             <summary>
5389             Backing live collection
5390             </summary>
5391         </member>
5392         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.#ctor">
5393             <summary>
5394             Private default constructor as this is a singleton
5395             </summary>
5396         </member>
5397         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Instance">
5398             <summary>
5399             Get the instance
5400             </summary>
5401         </member>
5402         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Count">
5403             <summary>
5404             Pass through for underlying collection
5405             </summary>
5406         </member>
5407         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.IsReadOnly">
5408             <summary>
5409             Returns true.
5410             </summary>
5411         </member>
5412         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.System#Collections#ICollection#IsSynchronized">
5413             <summary>
5414             Whether collection is synchronized
5415             </summary>
5416         </member>
5417         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.System#Collections#ICollection#SyncRoot">
5418             <summary>
5419             Sync root
5420             </summary>
5421         </member>
5422         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Add(`0)">
5423             <summary>
5424             Prohibited on read only collection: throws
5425             </summary>
5426         </member>
5427         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Clear">
5428             <summary>
5429             Prohibited on read only collection: throws
5430             </summary>
5431         </member>
5432         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Contains(`0)">
5433             <summary>
5434             Pass through for underlying collection
5435             </summary>
5436         </member>
5437         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.CopyTo(`0[],System.Int32)">
5438             <summary>
5439             Pass through for underlying collection
5440             </summary>
5441         </member>
5442         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.Remove(`0)">
5443             <summary>
5444             Prohibited on read only collection: throws
5445             </summary>
5446         </member>
5447         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.GetEnumerator">
5448             <summary>
5449             Get an enumerator over an empty collection
5450             </summary>
5451         </member>
5452         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.System#Collections#IEnumerable#GetEnumerator">
5453             <summary>
5454             Get an enumerator over an empty collection
5455             </summary>
5456         </member>
5457         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyCollection`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
5458             <summary>
5459             ICollection version of CopyTo
5460             </summary>
5461         </member>
5462         <member name="T:Microsoft.Build.Collections.IKeyed">
5463             <summary>
5464             Interface allowing items and metadata and properties to go into keyed collections
5465             </summary>
5466             <remarks>
5467             This can be internal as it is a constraint only on internal collections.
5468             </remarks>
5469         </member>
5470         <member name="P:Microsoft.Build.Collections.IKeyed.Key">
5471             <summary>
5472             Returns some value useful for a key in a dictionary
5473             </summary>
5474         </member>
5475         <member name="T:Microsoft.Build.Collections.ConcurrentQueueExtensions">
5476             <summary>
5477             The extensions class for ConcurrentQueue&lt;T&gt;
5478             </summary>
5479         </member>
5480         <member name="M:Microsoft.Build.Collections.ConcurrentQueueExtensions.Dequeue``1(System.Collections.Concurrent.ConcurrentQueue{``0})">
5481             <summary>
5482             The dequeue method.
5483             </summary>
5484             <typeparam name="T">The type contained within the queue</typeparam>
5485         </member>
5486         <member name="T:Microsoft.Build.Collections.ConcurrentStackExtensions">
5487             <summary>
5488             The extensions class for ConcurrentStack&lt;T&gt;
5489             </summary>
5490         </member>
5491         <member name="M:Microsoft.Build.Collections.ConcurrentStackExtensions.Peek``1(System.Collections.Concurrent.ConcurrentStack{``0})">
5492             <summary>
5493             The peek method.
5494             </summary>
5495             <typeparam name="T">The type contained within the stack.</typeparam>
5496         </member>
5497         <member name="M:Microsoft.Build.Collections.ConcurrentStackExtensions.Pop``1(System.Collections.Concurrent.ConcurrentStack{``0})">
5498             <summary>
5499             The pop method.
5500             </summary>
5501             <typeparam name="T">The type contained within the stack.</typeparam>
5502         </member>
5503         <member name="T:Microsoft.Build.Collections.LookasideStringInterner">
5504             <summary>
5505             A simple string interner designed for IPC.
5506             </summary>
5507             <remarks>
5508             This interner works by providing a way to convert strings to integer IDs.  When used as a form of compression, 
5509             clients will intern their strings and record the set of IDs returned, then transmit those IDs instead of the
5510             original strings.  The interner itself is also transmitted ahead of time, with the IDs, allowing 
5511             reconstruction of the original strings.  This ensures each string is transmitted exactly once.
5512             </remarks>
5513         </member>
5514         <member name="F:Microsoft.Build.Collections.LookasideStringInterner.NullStringIndex">
5515             <summary>
5516             Index used for null strings.
5517             </summary>
5518         </member>
5519         <member name="F:Microsoft.Build.Collections.LookasideStringInterner.EmptyStringIndex">
5520             <summary>
5521             Index used for empty strings.
5522             </summary>
5523         </member>
5524         <member name="F:Microsoft.Build.Collections.LookasideStringInterner._stringToIdsMap">
5525             <summary>
5526             The map used to intern strings for serialization.  This map doesn't exist when the strings
5527             are deserialized (it is not needed.)
5528             </summary>
5529         </member>
5530         <member name="F:Microsoft.Build.Collections.LookasideStringInterner._strings">
5531             <summary>
5532             The list of strings by ID.
5533             </summary>
5534         </member>
5535         <member name="M:Microsoft.Build.Collections.LookasideStringInterner.#ctor(System.StringComparer,System.Int32)">
5536             <summary>
5537             Constructor to be used during serialization.
5538             </summary>
5539         </member>
5540         <member name="M:Microsoft.Build.Collections.LookasideStringInterner.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
5541             <summary>
5542             Constructor to be used during deserialization.
5543             </summary>
5544             <remarks>
5545             Intern cannot be used on this interner if it came from serialization, since we do 
5546             not reconstruct the interning dictionary.
5547             </remarks>
5548         </member>
5549         <member name="M:Microsoft.Build.Collections.LookasideStringInterner.Intern(System.String)">
5550             <summary>
5551             Interns the specified string.
5552             </summary>
5553             <param name="str">The string to intern.</param>
5554             <returns>The index representing the string.</returns>
5555         </member>
5556         <member name="M:Microsoft.Build.Collections.LookasideStringInterner.GetString(System.Int32)">
5557             <summary>
5558             Retrieves a string corresponding to the provided index.
5559             </summary>
5560             <param name="index">The index.</param>
5561             <returns>The corresponding string.</returns>
5562         </member>
5563         <member name="M:Microsoft.Build.Collections.LookasideStringInterner.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
5564             <summary>
5565             The translator, for serialization.
5566             </summary>
5567         </member>
5568         <member name="T:Microsoft.Build.Collections.RetrievableEntryHashSet`1">
5569             <summary>
5570             Implementation notes:
5571             This uses an array-based implementation similar to <see cref="T:Dictionary{T}" />, using a buckets array
5572             to map hash values to the Slots array. Items in the Slots array that hash to the same value
5573             are chained together through the "next" indices. 
5574             
5575             The capacity is always prime; so during resizing, the capacity is chosen as the next prime
5576             greater than double the last capacity. 
5577             
5578             The underlying data structures are lazily initialized. Because of the observation that, 
5579             in practice, hashtables tend to contain only a few elements, the initial capacity is
5580             set very small (3 elements) unless the ctor with a collection is used.
5581             
5582             The +/- 1 modifications in methods that add, check for containment, etc allow us to 
5583             distinguish a hash code of 0 from an uninitialized bucket. This saves us from having to 
5584             reset each bucket to -1 when resizing. See Contains, for example.
5585             
5586             Set methods such as UnionWith, IntersectWith, ExceptWith, and SymmetricExceptWith modify
5587             this set.
5588             
5589             Some operations can perform faster if we can assume "other" contains unique elements
5590             according to this equality comparer. The only times this is efficient to check is if
5591             other is a hashset. Note that checking that it's a hashset alone doesn't suffice; we
5592             also have to check that the hashset is using the same equality comparer. If other 
5593             has a different equality comparer, it will have unique elements according to its own
5594             equality comparer, but not necessarily according to ours. Therefore, to go these 
5595             optimized routes we check that other is a hashset using the same equality comparer.
5596             
5597             A HashSet with no elements has the properties of the empty set. (See IsSubset, etc. for 
5598             special empty set checks.)
5599             
5600             A couple of methods have a special case if other is this (e.g. SymmetricExceptWith). 
5601             If we didn't have these checks, we could be iterating over the set and modifying at
5602             the same time. 
5603             </summary>
5604             <typeparam name="T"></typeparam>
5605         </member>
5606         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{Microsoft.Build.Collections.IKeyed})">
5607             <summary>
5608             Implementation Notes:
5609             Since resizes are relatively expensive (require rehashing), this attempts to minimize 
5610             the need to resize by setting the initial capacity based on size of collection. 
5611             </summary>
5612         </member>
5613         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.#ctor(System.Collections.Generic.IEnumerable{`0},System.Collections.Generic.IEqualityComparer{Microsoft.Build.Collections.IKeyed})">
5614             <summary>
5615             Implementation Notes:
5616             Since resizes are relatively expensive (require rehashing), this attempts to minimize 
5617             the need to resize by setting the initial capacity based on size of collection. 
5618             </summary>
5619         </member>
5620         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.System#Collections#Generic#ICollection{T}#Add(`0)">
5621             <summary>
5622             Add item to this hashset. This is the explicit implementation of the <see cref="T:System.Collections.Generic.ICollection`1" />
5623             interface. The other Add method returns bool indicating whether item was added.
5624             </summary>
5625             <param name="item">item to add</param>
5626         </member>
5627         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Clear">
5628             <summary>
5629             Remove all items from this set. This clears the elements but not the underlying 
5630             buckets and slots array. Follow this call by TrimExcess to release these.
5631             </summary>
5632         </member>
5633         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Contains(`0)">
5634             <summary>
5635             Checks if this hashset contains the item
5636             </summary>
5637             <param name="item">item to check for containment</param>
5638             <returns>true if item contained; false if not</returns>
5639         </member>
5640         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Get(System.String)">
5641             <summary>
5642             Gets the item if any with the given name
5643             </summary>
5644             <param name="key">key to check for containment</param>
5645             <returns>true if item contained; false if not</returns>
5646         </member>
5647         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Get(Microsoft.Build.Collections.IKeyed)">
5648             <summary>
5649             Gets the item if any with the given name
5650             </summary>
5651             <param name="item">item to check for containment</param>
5652             <returns>true if item contained; false if not</returns>
5653         </member>
5654         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.CopyTo(`0[],System.Int32)">
5655             <summary>
5656             Copy items in this hashset to array, starting at arrayIndex
5657             </summary>
5658             <param name="array">array to add items to</param>
5659             <param name="arrayIndex">index to start at</param>
5660         </member>
5661         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Remove(System.String)">
5662             <summary>
5663             Remove by key
5664             </summary>
5665         </member>
5666         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Remove(`0)">
5667             <summary>
5668             Remove entry that compares equal to T
5669             </summary>        
5670         </member>
5671         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Remove(Microsoft.Build.Collections.IKeyed)">
5672             <summary>
5673             Remove item from this hashset
5674             </summary>
5675             <param name="item">item to remove</param>
5676             <returns>true if removed; false if not (i.e. if the item wasn't in the HashSet)</returns>
5677         </member>
5678         <member name="P:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Count">
5679             <summary>
5680             Number of elements in this hashset
5681             </summary>
5682         </member>
5683         <member name="P:Microsoft.Build.Collections.RetrievableEntryHashSet`1.IsReadOnly">
5684             <summary>
5685             Whether this is readonly
5686             </summary>
5687         </member>
5688         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.MakeReadOnly">
5689             <summary>
5690             Permanently prevent changes to the set.
5691             </summary>
5692         </member>
5693         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Add(`0)">
5694             <summary>
5695             Add item to this HashSet. 
5696             *** MSBUILD NOTE: Always added - overwrite semantics
5697             </summary>
5698         </member>
5699         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.UnionWith(System.Collections.Generic.IEnumerable{`0})">
5700             <summary>
5701             Take the union of this HashSet with other. Modifies this set.
5702             
5703             Implementation note: GetSuggestedCapacity (to increase capacity in advance avoiding 
5704             multiple resizes ended up not being useful in practice; quickly gets to the 
5705             point where it's a wasteful check.
5706             </summary>
5707             <param name="other">enumerable with items to add</param>
5708         </member>
5709         <member name="P:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Comparer">
5710             <summary>
5711             Gets the IEqualityComparer that is used to determine equality of keys for 
5712             the HashSet.
5713             </summary>
5714         </member>
5715         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.TrimExcess">
5716             <summary>
5717             Sets the capacity of this list to the size of the list (rounded up to nearest prime),
5718             unless count is 0, in which case we release references.
5719             
5720             This method can be used to minimize a list's memory overhead once it is known that no
5721             new elements will be added to the list. To completely clear a list and release all 
5722             memory referenced by the list, execute the following statements:
5723             
5724             list.Clear();
5725             list.TrimExcess(); 
5726             </summary>
5727         </member>
5728         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.Initialize(System.Int32)">
5729             <summary>
5730             Initializes buckets and slots arrays. Uses suggested capacity by finding next prime
5731             greater than or equal to capacity.
5732             </summary>
5733             <param name="capacity"></param>
5734         </member>
5735         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.IncreaseCapacity">
5736             <summary>
5737             Expand to new capacity. New capacity is next prime greater than or equal to suggested 
5738             size. This is called when the underlying array is filled. This performs no 
5739             defragmentation, allowing faster execution; note that this is reasonable since 
5740             AddEvenIfPresent attempts to insert new elements in re-opened spots.
5741             </summary>
5742         </member>
5743         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.AddEvenIfPresent(`0)">
5744             <summary>
5745             Adds value to HashSet if not contained already
5746             Returns true if added and false if already present
5747             ** MSBUILD: Modified so that it DOES add even if present. It will return false in that case, though.**
5748             </summary>
5749             <param name="value">value to find</param>
5750             <returns></returns>
5751         </member>
5752         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.EntriesAreReferenceEquals(Microsoft.Build.Collections.RetrievableEntryHashSet{`0})">
5753             <summary>
5754             Equality comparer against another of this type.
5755             Compares entries by reference - not merely by using the comparer on the key
5756             </summary>
5757         </member>
5758         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.ToArray">
5759             <summary>
5760             Copies this to an array. Used for DebugView
5761             </summary>
5762             <returns></returns>
5763         </member>
5764         <member name="M:Microsoft.Build.Collections.RetrievableEntryHashSet`1.InternalGetHashCode(Microsoft.Build.Collections.IKeyed)">
5765             <summary>
5766             Workaround Comparers that throw ArgumentNullException for GetHashCode(null).
5767             </summary>
5768             <param name="item"></param>
5769             <returns>hash code</returns>
5770         </member>
5771         <member name="T:Microsoft.Build.Collections.RetrievableEntryHashSet`1.KeyedObject">
5772             <summary>
5773             Wrapper is necessary because String doesn't implement IKeyed
5774             </summary>
5775         </member>
5776         <member name="T:Microsoft.Build.Collections.BitHelper">
5777             <summary>
5778             ABOUT:
5779             Helps with operations that rely on bit marking to indicate whether an item in the 
5780             collection should be added, removed, visited already, etc. 
5781             
5782             BitHelper doesn't allocate the array; you must pass in an array or ints allocated on the 
5783             stack or heap. ToIntArrayLength() tells you the int array size you must allocate. 
5784             
5785             USAGE:
5786             Suppose you need to represent a bit array of length (i.e. logical bit array length)
5787             BIT_ARRAY_LENGTH. Then this is the suggested way to instantiate BitHelper:
5788             ***************************************************************************
5789             int intArrayLength = BitHelper.ToIntArrayLength(BIT_ARRAY_LENGTH);
5790             BitHelper bitHelper;
5791             if (intArrayLength less than stack alloc threshold)
5792                 int* m_arrayPtr = stackalloc int[intArrayLength];
5793                 bitHelper = new BitHelper(m_arrayPtr, intArrayLength);
5794             else
5795                 int[] m_arrayPtr = new int[intArrayLength];
5796                 bitHelper = new BitHelper(m_arrayPtr, intArrayLength);
5797             ***************************************************************************
5798             
5799             IMPORTANT:
5800             The second ctor args, length, should be specified as the length of the int array, not
5801             the logical bit array. Because length is used for bounds checking into the int array,
5802             it's especially important to get this correct for the stackalloc version. See the code 
5803             samples above; this is the value gotten from ToIntArrayLength(). 
5804             
5805             The length ctor argument is the only exception; for other methods -- MarkBit and 
5806             IsMarked -- pass in values as indices into the logical bit array, and it will be mapped
5807             to the position within the array of ints.
5808             
5809             FUTURE OPTIMIZATIONS:
5810             A method such as FindFirstMarked/Unmarked Bit would be useful for callers that operate 
5811             on a bit array and then need to loop over it. In particular, if it avoided visiting 
5812             every bit, it would allow good perf improvements when the bit array is sparse.
5813             </summary>
5814         </member>
5815         <member name="M:Microsoft.Build.Collections.BitHelper.#ctor(System.Int32*,System.Int32)">
5816             <summary>
5817             Instantiates a BitHelper with a heap alloc'd array of ints
5818             </summary>
5819             <param name="bitArrayPtr">int array to hold bits</param>
5820             <param name="length">length of int array</param>
5821         </member>
5822         <member name="M:Microsoft.Build.Collections.BitHelper.#ctor(System.Int32[],System.Int32)">
5823             <summary>
5824             Instantiates a BitHelper with a heap alloc'd array of ints
5825             </summary>
5826             <param name="bitArray">int array to hold bits</param>
5827             <param name="length">length of int array</param>
5828         </member>
5829         <member name="M:Microsoft.Build.Collections.BitHelper.MarkBit(System.Int32)">
5830             <summary>
5831             Mark bit at specified position
5832             </summary>
5833             <param name="bitPosition"></param>
5834         </member>
5835         <member name="M:Microsoft.Build.Collections.BitHelper.IsMarked(System.Int32)">
5836             <summary>
5837             Is bit at specified position marked?
5838             </summary>
5839             <param name="bitPosition"></param>
5840             <returns></returns>
5841         </member>
5842         <member name="M:Microsoft.Build.Collections.BitHelper.ToIntArrayLength(System.Int32)">
5843             <summary>
5844             How many ints must be allocated to represent n bits. Returns (n+31)/32, but 
5845             avoids overflow
5846             </summary>
5847             <param name="n"></param>
5848             <returns></returns>
5849         </member>
5850         <member name="T:Microsoft.Build.Collections.HashSetDebugView`1">
5851             <summary>
5852             Debug view for HashSet
5853             </summary>
5854             <typeparam name="T"></typeparam>
5855         </member>
5856         <member name="T:Microsoft.Build.Collections.HashHelpers">
5857             <summary>
5858             Duplicated because internal to mscorlib
5859             </summary>
5860         </member>
5861         <member name="T:Microsoft.Build.Collections.ConvertingEnumerable`2">
5862             <summary>
5863             Enumerable that uses a provided Converter delegate to
5864             convert each item from a backing enumerator as it is returned.
5865             </summary>
5866             <typeparam name="TFrom">Type of underlying enumerator</typeparam>
5867             <typeparam name="TTo">Type returned</typeparam>
5868         </member>
5869         <member name="F:Microsoft.Build.Collections.ConvertingEnumerable`2._backingEnumerable">
5870             <summary>
5871             Enumerable behind this one
5872             </summary>
5873         </member>
5874         <member name="F:Microsoft.Build.Collections.ConvertingEnumerable`2._converter">
5875             <summary>
5876             Converter delegate used on each item in the backing enumerable as it is returned
5877             </summary>
5878         </member>
5879         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.#ctor(System.Collections.Generic.IEnumerable{`0},System.Func{`0,`1})">
5880             <summary>
5881             Constructor
5882             </summary>
5883         </member>
5884         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.GetEnumerator">
5885             <summary>
5886             Gets the converting enumerator
5887             </summary>
5888         </member>
5889         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.System#Collections#IEnumerable#GetEnumerator">
5890             <summary>
5891             IEnumerable version of GetEnumerator
5892             </summary>
5893         </member>
5894         <member name="T:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2">
5895             <summary>
5896             Enumerable that uses a provided Converter delegate to
5897             convert each item from a backing enumerator as it is returned.
5898             </summary>
5899             <typeparam name="TFrom2">Type of underlying enumerator</typeparam>
5900             <typeparam name="TTo2">Type returned</typeparam>
5901         </member>
5902         <member name="F:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2._backingEnumerator">
5903             <summary>
5904             Enumerator behind this one
5905             </summary>
5906         </member>
5907         <member name="F:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2._converter">
5908             <summary>
5909             Converter delegate used on each item in the backing enumerator as it is returned
5910             </summary>
5911         </member>
5912         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.#ctor(System.Collections.Generic.IEnumerator{`2},System.Func{`2,`3})">
5913             <summary>
5914             Constructor
5915             </summary>
5916         </member>
5917         <member name="P:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.Current">
5918             <summary>
5919             Get the current element, converted
5920             </summary>
5921         </member>
5922         <member name="P:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.System#Collections#IEnumerator#Current">
5923             <summary>
5924             Get the current element, converted
5925             </summary>
5926         </member>
5927         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.MoveNext">
5928             <summary>
5929             Move to the next element
5930             </summary>
5931         </member>
5932         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.Reset">
5933             <summary>
5934             Reset the enumerator
5935             </summary>
5936         </member>
5937         <member name="M:Microsoft.Build.Collections.ConvertingEnumerable`2.ConvertingEnumerator`2.Dispose">
5938             <summary>
5939             Dispose of the enumerator
5940             </summary>
5941         </member>
5942         <member name="T:Microsoft.Build.Collections.CopyOnReadEnumerable`1">
5943             <summary>
5944             A class which implements IEnumerable by creating an optionally-deep copy of the backing collection.
5945             </summary>
5946             <remarks>
5947             If the type contained in the collection implements IDeepCloneable then the copies will be deep clones instead
5948             of mere reference copies.
5949             <see cref="M:Microsoft.Build.Collections.CopyOnReadEnumerable`1.GetEnumerator"/> is thread safe for concurrent access.
5950             </remarks>
5951             <typeparam name="T">The type contained in the backing collection.</typeparam>
5952         </member>
5953         <member name="F:Microsoft.Build.Collections.CopyOnReadEnumerable`1._backingEnumerable">
5954             <summary>
5955             The backing collection.
5956             </summary>
5957         </member>
5958         <member name="F:Microsoft.Build.Collections.CopyOnReadEnumerable`1._syncRoot">
5959             <summary>
5960             The object used to synchronize access for copying.
5961             </summary>
5962         </member>
5963         <member name="M:Microsoft.Build.Collections.CopyOnReadEnumerable`1.#ctor(System.Collections.Generic.IEnumerable{`0},System.Object)">
5964             <summary>
5965             Constructor.
5966             </summary>
5967             <param name="backingEnumerable">The collection which serves as a source for enumeration.</param>
5968             <param name="syncRoot">The object used to synchronize access for copying.</param>
5969         </member>
5970         <member name="M:Microsoft.Build.Collections.CopyOnReadEnumerable`1.GetEnumerator">
5971             <summary>
5972             Returns an enumerator over the collection.
5973             </summary>
5974             <returns>The enumerator.</returns>
5975         </member>
5976         <member name="M:Microsoft.Build.Collections.CopyOnReadEnumerable`1.System#Collections#IEnumerable#GetEnumerator">
5977             <summary>
5978             Returns an numerator over the collection.
5979             </summary>
5980             <returns>The enumerator.</returns>
5981         </member>
5982         <member name="T:Microsoft.Build.Collections.CopyOnWriteDictionary`2">
5983              <summary>
5984              A dictionary that has copy-on-write semantics.
5985              KEYS AND VALUES MUST BE IMMUTABLE OR COPY-ON-WRITE FOR THIS TO WORK.
5986              </summary>
5987              <typeparam name="K">The key type.</typeparam>
5988              <typeparam name="V">The value type.</typeparam>
5989              <remarks>
5990              This dictionary works by having a backing dictionary which is ref-counted for each
5991              COWDictionary which references it.  When a write operation is performed on any
5992              COWDictionary, we check the reference count on the backing dictionary.  If it is 
5993              greater than 1, it means any changes we make to it would be visible to other readers.
5994              Therefore, we clone the backing dictionary and decrement the reference count on the
5995              original.  From there on we use the cloned dictionary, which now has a reference count
5996              of 1.
5997             
5998              Thread safety: for all users, this class is as thread safe as the underlying Dictionary implementation, that is,
5999              safe for concurrent readers or one writer from EACH user. It achieves this by locking itself and cloning before
6000              any write, if it is being shared - i.e., stopping sharing before any writes occur.
6001              </remarks>
6002              <comment>
6003              This class must be serializable as it is used for metadata passed to tasks, which may
6004              be run in a separate appdomain.
6005              </comment>
6006         </member>
6007         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.keyComparer">
6008             <summary>
6009             The equality comparer to use when the dictionary is created.
6010             </summary>
6011         </member>
6012         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.capacity">
6013             <summary>
6014             The default capacity.
6015             </summary>
6016         </member>
6017         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.s_dummy">
6018             <summary>
6019             A special single dummy instance that always appears empty.
6020             </summary>
6021         </member>
6022         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.backing">
6023             <summary>
6024             The backing dictionary.
6025             Lazily created.
6026             </summary>
6027         </member>
6028         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor">
6029             <summary>
6030             Constructor. Consider supplying a comparer instead.
6031             </summary>
6032         </member>
6033         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor(System.Int32)">
6034             <summary>
6035             Constructor taking an initial capacity
6036             </summary>
6037         </member>
6038         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
6039             <summary>
6040             Constructor taking a specified comparer for the keys
6041             </summary>
6042         </member>
6043         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
6044             <summary>
6045             Constructor taking a specified comparer for the keys and an initial capacity
6046             </summary>
6047         </member>
6048         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
6049             <summary>
6050             Serialization constructor, for crossing appdomain boundaries
6051             </summary>
6052         </member>
6053         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.#ctor(Microsoft.Build.Collections.CopyOnWriteDictionary{`0,`1})">
6054             <summary>
6055             Cloning constructor. Defers the actual clone.
6056             </summary>
6057         </member>
6058         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Keys">
6059             <summary>
6060             Returns the collection of keys in the dictionary.
6061             </summary>
6062         </member>
6063         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Values">
6064             <summary>
6065             Returns the collection of values in the dictionary.
6066             </summary>
6067         </member>
6068         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Count">
6069             <summary>
6070             Returns the number of items in the collection.
6071             </summary>
6072         </member>
6073         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.IsReadOnly">
6074             <summary>
6075             Returns true if the collection is read-only.
6076             </summary>
6077         </member>
6078         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#IsFixedSize">
6079             <summary>
6080             IDictionary implementation
6081             </summary>
6082         </member>
6083         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#IsReadOnly">
6084             <summary>
6085             IDictionary implementation
6086             </summary>
6087         </member>
6088         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Keys">
6089             <summary>
6090             IDictionary implementation
6091             </summary>
6092         </member>
6093         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Values">
6094             <summary>
6095             IDictionary implementation
6096             </summary>
6097         </member>
6098         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#ICollection#Count">
6099             <summary>
6100             IDictionary implementation
6101             </summary>
6102         </member>
6103         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#ICollection#IsSynchronized">
6104             <summary>
6105             IDictionary implementation
6106             </summary>
6107         </member>
6108         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#ICollection#SyncRoot">
6109             <summary>
6110             IDictionary implementation
6111             </summary>
6112         </member>
6113         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Dummy">
6114             <summary>
6115             A special single dummy instance that always appears empty.
6116             </summary>
6117         </member>
6118         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.IsDummy">
6119             <summary>
6120             Whether this is a dummy instance that always appears empty.
6121             </summary>
6122         </member>
6123         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Comparer">
6124             <summary>
6125             Comparer used for keys
6126             </summary>
6127         </member>
6128         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.ReadOperation">
6129             <summary>
6130             Gets the backing dictionary for reading.
6131             </summary>
6132         </member>
6133         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.WriteOperation">
6134             <summary>
6135             Gets the backing dictionary for writing.
6136             </summary>
6137         </member>
6138         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Item(`0)">
6139             <summary>
6140             Accesses the value for the specified key.
6141             </summary>
6142         </member>
6143         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Item(System.Object)">
6144             <summary>
6145             IDictionary implementation
6146             </summary>
6147         </member>
6148         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Add(`0,`1)">
6149             <summary>
6150             Adds a value to the dictionary.
6151             </summary>
6152         </member>
6153         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.ContainsKey(`0)">
6154             <summary>
6155             Returns true if the dictionary contains the specified key.
6156             </summary>
6157         </member>
6158         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Remove(`0)">
6159             <summary>
6160             Removes the entry for the specified key from the dictionary.
6161             </summary>
6162         </member>
6163         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.TryGetValue(`0,`1@)">
6164             <summary>
6165             Attempts to find the value for the specified key in the dictionary.
6166             </summary>
6167         </member>
6168         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
6169             <summary>
6170             Adds an item to the collection.
6171             </summary>
6172         </member>
6173         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Clear">
6174             <summary>
6175             Clears the collection.
6176             </summary>
6177         </member>
6178         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
6179             <summary>
6180             Returns true ff the collection contains the specified item.
6181             </summary>
6182         </member>
6183         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
6184             <summary>
6185             Copies all of the elements of the collection to the specified array.
6186             </summary>
6187         </member>
6188         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
6189             <summary>
6190             Remove an item from the dictionary.
6191             </summary>
6192         </member>
6193         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.GetEnumerator">
6194             <summary>
6195             Implementation of generic IEnumerable.GetEnumerator()
6196             </summary>
6197         </member>
6198         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IEnumerable#GetEnumerator">
6199             <summary>
6200             Implementation of IEnumerable.GetEnumerator()
6201             </summary>
6202         </member>
6203         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Add(System.Object,System.Object)">
6204             <summary>
6205             IDictionary implementation.
6206             </summary>
6207         </member>
6208         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Clear">
6209             <summary>
6210             IDictionary implementation.
6211             </summary>
6212         </member>
6213         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Contains(System.Object)">
6214             <summary>
6215             IDictionary implementation.
6216             </summary>
6217         </member>
6218         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#GetEnumerator">
6219             <summary>
6220             IDictionary implementation.
6221             </summary>
6222         </member>
6223         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#IDictionary#Remove(System.Object)">
6224             <summary>
6225             IDictionary implementation.
6226             </summary>
6227         </member>
6228         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
6229             <summary>
6230             IDictionary implementation.
6231             </summary>
6232         </member>
6233         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.Clone">
6234             <summary>
6235             Clone, with the actual clone deferred
6236             </summary>
6237         </member>
6238         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.HasSameBacking(Microsoft.Build.Collections.CopyOnWriteDictionary{`0,`1})">
6239             <summary>
6240             Returns true if these dictionaries have the same backing.
6241             </summary>
6242         </member>
6243         <member name="T:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2">
6244             <summary>
6245             A dictionary which is reference counted to allow several references for read operations, but knows when to clone for
6246             write operations.
6247             </summary>
6248             <typeparam name="K1">The key type.</typeparam>
6249             <typeparam name="V1">The value type.</typeparam>
6250         </member>
6251         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.s_readOnlyEmptyDictionary">
6252             <summary>
6253             An empty dictionary 
6254             </summary>
6255         </member>
6256         <member name="F:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2._refCount">
6257             <summary>
6258             The reference count. 
6259             </summary>
6260         </member>
6261         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`2})">
6262             <summary>
6263             Constructor.
6264             </summary>
6265         </member>
6266         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
6267             <summary>
6268             Serialization constructor, for crossing appdomain boundaries
6269             </summary>
6270         </member>
6271         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.#ctor">
6272             <summary>
6273             Empty constructor.
6274             </summary>
6275         </member>
6276         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.#ctor(Microsoft.Build.Collections.CopyOnWriteDictionary{`0,`1}.CopyOnWriteBackingDictionary{`2,`3})">
6277             <summary>
6278             Cloning constructor.
6279             </summary>
6280         </member>
6281         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.ReadOnlyEmptyInstance">
6282             <summary>
6283             Returns a read-only empty instance.
6284             </summary>
6285         </member>
6286         <member name="P:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.HasNoClones">
6287             <summary>
6288             Returns true if this collection has no clones.
6289             </summary>
6290         </member>
6291         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.CloneForWriteIfNecessary">
6292             <summary>
6293             Clones backing dictionary if necessary for a write operation.
6294             </summary>
6295         </member>
6296         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.AddRef">
6297             <summary>
6298             Adds a reader-reference to this backing dictionary.
6299             </summary>
6300         </member>
6301         <member name="M:Microsoft.Build.Collections.CopyOnWriteDictionary`2.CopyOnWriteBackingDictionary`2.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
6302             <summary>
6303             Deserialization does not call any constructors, not even
6304             the parameterless constructor. Therefore since we do not serialize
6305             this field, we must populate it here.
6306             </summary>
6307         </member>
6308         <member name="T:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1">
6309              <summary>
6310              A dictionary of unordered property or metadata name/value pairs, with copy-on-write semantics.
6311              
6312              The copy-on-write semantics are only possible if the contained type is immutable, which currently
6313              means it can only be used for ProjectMetadataInstance's.
6314              USE THIS DICTIONARY ONLY FOR IMMUTABLE TYPES. OTHERWISE USE PROPERTYDICTIONARY.
6315              
6316              </summary>
6317              <remarks>
6318              The value that this adds over IDictionary&lt;string, T&gt; is:
6319                  - enforces that key = T.Name
6320                  - default enumerator is over values
6321                  - (marginal) enforces the correct key comparer
6322                  - potentially makes copy on write possible
6323              
6324              Really a Dictionary&lt;string, T&gt; where the key (the name) is obtained from IKeyed.Key.
6325              Is not observable, so if clients wish to observe modifications they must mediate them themselves and 
6326              either not expose this collection or expose it through a readonly wrapper.
6327             
6328              At various places in this class locks are taken on the backing collection.  The reason for this is to allow
6329              this class to be asynchronously enumerated.  This is accomplished by the CopyOnReadEnumerable which will 
6330              lock the backing collection when it does its deep cloning.  This prevents asynchronous access from corrupting
6331              the state of the enumeration until the collection has been fully copied.
6332             
6333              The use of a CopyOnWriteDictionary does not reduce the concurrency of this collection, because CopyOnWriteDictionary
6334              offers the same concurrency guarantees (concurrent readers OR single writer) for EACH user of the dictionary.
6335              
6336              Since we use the mutable ignore case comparer we need to make sure that we lock our self before we call the comparer since the comparer can call back 
6337              into this dictionary which could cause a deadlock if another thread is also accessing another method in the dictionary.
6338              </remarks>
6339              <typeparam name="T">Property or Metadata class type to store</typeparam>
6340         </member>
6341         <member name="F:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1._properties">
6342             <summary>
6343             Backing dictionary
6344             </summary>
6345         </member>
6346         <member name="F:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1._comparer">
6347             <summary>
6348             Comparer whose start and end indexes we can manipulate as necessary.
6349             </summary>
6350         </member>
6351         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.#ctor">
6352             <summary>
6353             Creates empty dictionary
6354             </summary>
6355         </member>
6356         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.#ctor(System.Int32)">
6357             <summary>
6358             Creates empty dictionary with specified initial capacity
6359             </summary>
6360         </member>
6361         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.#ctor(Microsoft.Build.Collections.CopyOnWritePropertyDictionary{`0})">
6362             <summary>
6363             Cloning constructor, with deferred cloning semantics
6364             </summary>
6365         </member>
6366         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Keys">
6367             <summary>
6368             Accessor for the list of property names
6369             </summary>
6370         </member>
6371         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Values">
6372             <summary>
6373             Accessor for the list of properties
6374             </summary>
6375         </member>
6376         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Count">
6377             <summary>
6378             Returns the number of properties in the collection
6379             </summary>
6380         </member>
6381         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#IsReadOnly">
6382             <summary>
6383             Whether the collection is read-only.
6384             </summary>
6385         </member>
6386         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Count">
6387             <summary>
6388             Returns the number of property in the collection.
6389             </summary>
6390         </member>
6391         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.PropertyNames">
6392             <summary>
6393             Retrieves a collection containing the names of all the properties present in the dictionary.
6394             </summary>
6395         </member>
6396         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Item(System.String)">
6397             <summary>
6398             Get the property with the specified name, or null if none exists.
6399             Sets the property with the specified name, overwriting it if already exists.
6400             </summary>
6401             <remarks>
6402             Unlike Dictionary&lt;K,V&gt;[K], the getter returns null instead of throwing if the key does not exist.
6403             This better matches the semantics of property, which are considered to have a blank value if they
6404             are not defined.
6405             </remarks>
6406         </member>
6407         <member name="P:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Item(System.String)">
6408             <summary>
6409             Get the property with the specified name, or null if none exists.
6410             Sets the property with the specified name, overwriting it if already exists.
6411             </summary>
6412             <remarks>
6413             Unlike Dictionary&lt;K,V&gt;[K], the getter returns null instead of throwing if the key does not exist.
6414             This better matches the semantics of property, which are considered to have a blank value if they
6415             are not defined.
6416             </remarks>
6417         </member>
6418         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.GetCopyOnReadEnumerable">
6419             <summary>
6420             Returns an enumerable which clones the properties 
6421             </summary>
6422             <returns>Returns a cloning enumerable.</returns>
6423         </member>
6424         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Contains(System.String)">
6425             <summary>
6426             Returns true if a property with the specified name is present in the collection,
6427             otherwise false.
6428             </summary>
6429         </member>
6430         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Clear">
6431             <summary>
6432             Empties the collection
6433             </summary>
6434         </member>
6435         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.GetEnumerator">
6436             <summary>
6437             Gets an enumerator over all the properties in the collection
6438             Enumeration is in undefined order
6439             </summary>
6440         </member>
6441         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#IEnumerable#GetEnumerator">
6442             <summary>
6443             Get an enumerator over entries
6444             </summary>
6445         </member>
6446         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Equals(Microsoft.Build.Collections.CopyOnWritePropertyDictionary{`0})">
6447             <summary>
6448             Compares two property dictionaries for equivalence.  They are equal if each contains the same properties with the
6449             same values as the other, unequal otherwise.
6450             </summary>
6451             <param name="other">The dictionary to which this should be compared</param>
6452             <returns>True if they are equivalent, false otherwise.</returns>
6453         </member>
6454         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Microsoft#Build#Evaluation#IPropertyProvider{T}#GetProperty(System.String)">
6455             <summary>
6456             Get the property with the specified name or null if it is not present
6457             </summary>
6458         </member>
6459         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Microsoft#Build#Evaluation#IPropertyProvider{T}#GetProperty(System.String,System.Int32,System.Int32)">
6460             <summary>
6461             Get the property with the specified name or null if it is not present.
6462             Name is the segment of the provided string with the provided start and end indexes.
6463             </summary>
6464         </member>
6465         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Add(System.String,`0)">
6466             <summary>
6467             Adds a property
6468             </summary>
6469         </member>
6470         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#ContainsKey(System.String)">
6471             <summary>
6472             Returns true if the dictionary contains the key
6473             </summary>
6474         </member>
6475         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Remove(System.String)">
6476             <summary>
6477             Removes a property
6478             </summary>
6479         </member>
6480         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#TryGetValue(System.String,`0@)">
6481             <summary>
6482             Attempts to retrieve the a property.
6483             </summary>
6484         </member>
6485         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Add(System.Collections.Generic.KeyValuePair{System.String,`0})">
6486             <summary>
6487             Adds a property
6488             </summary>
6489         </member>
6490         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Clear">
6491             <summary>
6492             Clears the property collection
6493             </summary>
6494         </member>
6495         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Contains(System.Collections.Generic.KeyValuePair{System.String,`0})">
6496             <summary>
6497             Checks for a property in the collection
6498             </summary>
6499         </member>
6500         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#CopyTo(System.Collections.Generic.KeyValuePair{System.String,`0}[],System.Int32)">
6501             <summary>
6502             Not implemented
6503             </summary>
6504         </member>
6505         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Remove(System.Collections.Generic.KeyValuePair{System.String,`0})">
6506             <summary>
6507             Removes a property from the collection
6508             </summary>
6509         </member>
6510         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,T}}#GetEnumerator">
6511             <summary>
6512             Get an enumerator over the entries.
6513             </summary>
6514         </member>
6515         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Remove(System.String)">
6516             <summary>
6517             Removes any property with the specified name.
6518             Returns true if the property was in the collection, otherwise false.
6519             </summary>
6520         </member>
6521         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.Set(`0)">
6522             <summary>
6523             Add the specified property to the collection.
6524             Overwrites any property with the same name already in the collection.
6525             To remove a property, use Remove(...) instead.
6526             </summary>
6527         </member>
6528         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.ImportProperties(System.Collections.Generic.IEnumerable{`0})">
6529             <summary>
6530             Adds the specified properties to this dictionary.
6531             </summary>
6532             <param name="other">An enumerator over the properties to add.</param>
6533         </member>
6534         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.RemoveProperties(System.Collections.Generic.IEnumerable{`0})">
6535             <summary>
6536             Removes the specified properties from this dictionary
6537             </summary>
6538             <param name="other">An enumerator over the properties to remove.</param>
6539         </member>
6540         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.ToDictionary">
6541             <summary>
6542             Helper to convert into a read-only dictionary of string, string.
6543             </summary>
6544         </member>
6545         <member name="M:Microsoft.Build.Collections.CopyOnWritePropertyDictionary`1.DeepClone">
6546             <summary>
6547             Clone. As we're copy on write, this 
6548             should be cheap.
6549             </summary>
6550         </member>
6551         <member name="T:Microsoft.Build.Collections.IDeepCloneable`1">
6552             <summary>
6553             An interface representing an item which can clone itself.
6554             </summary>
6555             <typeparam name="T">The type returned by the clone operation.</typeparam>
6556         </member>
6557         <member name="M:Microsoft.Build.Collections.IDeepCloneable`1.DeepClone">
6558             <summary>
6559             Creates a clone of the item where no data references are shared.  Changes made to the clone
6560             do not affect the original item.
6561             </summary>
6562             <returns>The cloned item.</returns>
6563         </member>
6564         <member name="T:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer">
6565             <summary>
6566             This is a custom string comparer that has three advantages over the regular
6567             string comparer:
6568             1) It can generate hash codes and perform equivalence operations on parts of a string rather than a whole
6569             2) It uses "unsafe" pointers to maximize performance of those operations
6570             3) It takes advantage of limitations on MSBuild Property/Item names to cheaply do case insensitive comparison.
6571             </summary>
6572         </member>
6573         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.s_immutableComparer">
6574             <summary>
6575             The default immutable comparer instance operating on the whole string that can be used instead of creating once each time
6576             </summary>
6577         </member>
6578         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.s_mutableComparer">
6579             <summary>
6580             The default mutable comparer instance that will ideally be shared by all users who need a mutable comparer. 
6581             </summary>
6582         </member>
6583         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.s_runningProcessorArchitecture">
6584             <summary>
6585             The processor architecture on which we are running, but default it will be x86
6586             </summary>
6587         </member>
6588         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.lockObject">
6589             <summary>
6590             Object used to lock the internal state s.t. we know that only one person is modifying
6591             it at any one time.  
6592             This is necessary to prevent, e.g., someone from reading the comparer (through GetHashCode when setting 
6593             a property, for example) at the same time that someone else is writing to it. 
6594             </summary>
6595         </member>
6596         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.constraintString">
6597             <summary>
6598             String to be constrained. 
6599             If null, comparer is unconstrained.
6600             If empty string, comparer is unconstrained and immutable.
6601             </summary>
6602         </member>
6603         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.startIndex">
6604             <summary>
6605             Start of constraint
6606             </summary>
6607         </member>
6608         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.endIndex">
6609             <summary>
6610             End of constraint
6611             </summary>
6612         </member>
6613         <member name="F:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.immutable">
6614             <summary>
6615             True if the comparer is immutable; false otherwise.
6616             </summary>
6617         </member>
6618         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.#cctor">
6619             <summary>
6620             We need a static constructor to retrieve the running ProcessorArchitecture that way we can
6621             Avoid using optimized code that will not run correctly on IA64 due to alignment issues
6622             </summary>
6623         </member>
6624         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.#ctor(System.Boolean)">
6625             <summary>
6626             Constructor. If specified, comparer is immutable and operates on the whole string.
6627             </summary>
6628         </member>
6629         <member name="P:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.Default">
6630             <summary>
6631             The default immutable comparer instance.
6632             </summary>
6633         </member>
6634         <member name="P:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.Mutable">
6635             <summary>
6636             The default mutable comparer instance.
6637             </summary>
6638         </member>
6639         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.Equals(System.String,System.String,System.Int32,System.Int32)">
6640             <summary>
6641             Performs the "Equals" operation on two MSBuild property, item or metadata names
6642             </summary>
6643         </member>
6644         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.GetValueWithConstraints``1(System.Collections.Generic.IDictionary{System.String,``0},System.String,System.Int32,System.Int32)">
6645             <summary>
6646             Given a set of constraints and a dictionary for which we are the comparer, return the value for the given key. 
6647             The key is also used as the string for the constraint. 
6648             </summary>
6649             <typeparam name="T">The value type of the dictionary being looked up</typeparam>
6650         </member>
6651         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.Equals(Microsoft.Build.Collections.IKeyed,Microsoft.Build.Collections.IKeyed)">
6652             <summary>
6653             Compare keyed operands
6654             </summary>
6655         </member>
6656         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.Equals(System.String,System.String)">
6657             <summary>
6658             Performs the "Equals" operation on two MSBuild property, item or metadata names
6659             </summary>
6660         </member>
6661         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.GetHashCode(Microsoft.Build.Collections.IKeyed)">
6662             <summary>
6663             Get case insensitive hashcode for key
6664             </summary>
6665         </member>
6666         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.GetHashCode(System.String)">
6667             <summary>
6668             Getting a case insensitive hash code for the msbuild property, item or metadata name
6669             </summary>
6670         </member>
6671         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.SetConstraintsForUnitTestingOnly(System.String,System.Int32,System.Int32)">
6672             <summary>
6673             Set the constraints in the comparer explicitly -- should ONLY be used for unit tests
6674             </summary>
6675         </member>
6676         <member name="M:Microsoft.Build.Collections.MSBuildNameIgnoreCaseComparer.RemoveConstraintsForUnitTestingOnly">
6677             <summary>
6678             Companion to SetConstraintsForUnitTestingOnly -- makes the comparer unconstrained again. 
6679             </summary>
6680         </member>
6681         <member name="T:Microsoft.Build.Collections.FilteringEnumerable`2">
6682             <summary>
6683             An enumerable over the provided collection that only exposes the members of the
6684             collection that have the type for which it is specialized for
6685             </summary>
6686             <remarks>
6687             If the 'is' checks are expensive, a field containing a type enumeration could be used instead.
6688             </remarks>
6689             <typeparam name="Base">Type of element in the underlying collection</typeparam>
6690             <typeparam name="Filter">Type to filter for</typeparam>
6691         </member>
6692         <member name="F:Microsoft.Build.Collections.FilteringEnumerable`2._enumerable">
6693             <summary>
6694             Backing collection
6695             </summary>
6696         </member>
6697         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.#ctor(System.Collections.Generic.IEnumerable{`0})">
6698             <summary>
6699             Constructor accepting the backing collection
6700             Backing collection may be null, indicating an empty collection
6701             </summary>
6702         </member>
6703         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.GetEnumerator">
6704             <summary>
6705             Gets an enumerator over all the elements in the backing collection that meet
6706             the filter criteria
6707             </summary>
6708         </member>
6709         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.System#Collections#IEnumerable#GetEnumerator">
6710             <summary>
6711             Gets an enumerator over all the elements in the backing collection that meet
6712             the filter criteria
6713             </summary>
6714         </member>
6715         <member name="T:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2">
6716             <summary>
6717             Custom enumerator that allows enumeration over only the items in
6718             the collection that are of the type it is specialized for.
6719             </summary>
6720             <typeparam name="Base2">Type of element in the underlying collection</typeparam>
6721             <typeparam name="Filter2">Type to filter for</typeparam>
6722         </member>
6723         <member name="F:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2._enumerator">
6724             <summary>
6725             The real enumerator
6726             </summary>
6727         </member>
6728         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.#ctor(System.Collections.Generic.IEnumerator{`2})">
6729             <summary>
6730             Constructor initializing with the real enumerator
6731             </summary>
6732         </member>
6733         <member name="P:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.Current">
6734             <summary>
6735             Get the current, if any, otherwise null
6736             </summary>
6737             <remarks>
6738             Current is undefined if enumerator is before the start of the collection
6739             or if MoveNext() returned false
6740             </remarks>
6741         </member>
6742         <member name="P:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.System#Collections#IEnumerator#Current">
6743             <summary>
6744             Get the current, if any
6745             </summary>
6746             <remarks>
6747             Current is undefined if enumerator is before the start of the collection
6748             or if MoveNext() returned false
6749             </remarks>
6750         </member>
6751         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.Dispose">
6752             <summary>
6753             Dispose
6754             </summary>
6755         </member>
6756         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.MoveNext">
6757             <summary>
6758             Move to the next object of the specialized type, if any, and return true;
6759             otherwise return false
6760             </summary>
6761         </member>
6762         <member name="M:Microsoft.Build.Collections.FilteringEnumerable`2.FilteringEnumerator`2.Reset">
6763             <summary>
6764             Reset
6765             </summary>
6766         </member>
6767         <member name="T:Microsoft.Build.Collections.HashTableUtility">
6768             <summary>
6769             Tools for working with Hashtables.
6770             </summary>
6771         </member>
6772         <member name="M:Microsoft.Build.Collections.HashTableUtility.Compare(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
6773             <summary>
6774             Compares the given hashtables.
6775             </summary>
6776             <param name="h1">May be null</param>
6777             <param name="h2">May be null</param>
6778             <returns>
6779             -1, if first hashtable is "less than" the second one
6780              0, if hashtables have identical keys and equivalent (case-insensitive) values
6781             +1, if first hashtable is "greater than" the second one
6782             </returns>
6783         </member>
6784         <member name="T:Microsoft.Build.Collections.ItemDictionary`1">
6785             <summary>
6786             Collection of items that allows a list of all items of a specified type to be 
6787             retrieved in O(1), and specific items to be added, removed, or checked for in O(1). 
6788             All items of a particular type can also be removed in O(1).
6789             Items are ordered with respect to all other items of their type.
6790             </summary>
6791             <remarks>
6792             Really a Dictionary&lt;string, ICollection&lt;T&gt;&gt; where the key (the item type) is obtained from IKeyed.Key
6793             Is not observable, so if clients wish to observe modifications they must mediate them themselves and 
6794             either not expose this collection or expose it through a readonly wrapper.
6795             At various places in this class locks are taken on the backing collection.  The reason for this is to allow
6796             this class to be asynchronously enumerated.  This is accomplished by the CopyOnReadEnumerable which will 
6797             lock the backing collection when it does its deep cloning.  This prevents asynchronous access from corrupting
6798             the state of the enumeration until the collection has been fully copied.
6799             </remarks>
6800             <typeparam name="T">Item class type to store</typeparam>
6801         </member>
6802         <member name="F:Microsoft.Build.Collections.ItemDictionary`1._itemLists">
6803             <summary>
6804             Dictionary of item lists used as a backing store.
6805             An empty list should never be stored in here unless it is an empty marker.
6806             See <see cref="M:Microsoft.Build.Collections.ItemDictionary`1.AddEmptyMarker(System.String)">AddEmptyMarker</see>.
6807             This collection provides quick access to the ordered set of items of a particular type.
6808             </summary>
6809         </member>
6810         <member name="F:Microsoft.Build.Collections.ItemDictionary`1._nodes">
6811             <summary>
6812             Dictionary of items in the collection, to speed up Contains,
6813             Remove, and Replace. For those operations, we look up here,
6814             then modify the other dictionary to match.
6815             </summary>
6816         </member>
6817         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.#ctor">
6818             <summary>
6819             Constructor for an empty collection.
6820             </summary>
6821         </member>
6822         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.#ctor(System.Int32)">
6823             <summary>
6824             Constructor for an empty collection taking an initial capacity
6825             for the number of distinct item types
6826             </summary>
6827         </member>
6828         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
6829             <summary>
6830             Constructor for an collection holding items from a specified enumerable.
6831             </summary>
6832         </member>
6833         <member name="P:Microsoft.Build.Collections.ItemDictionary`1.Count">
6834             <summary>
6835             Number of items in total, for debugging purposes.
6836             </summary>
6837         </member>
6838         <member name="P:Microsoft.Build.Collections.ItemDictionary`1.ItemTypes">
6839             <summary>
6840             Get the item types that have at least one item in this collection
6841             </summary>
6842             <remarks>
6843             KeyCollection&lt;K&gt; is already a read only collection, so no protection
6844             is necessary.
6845             </remarks>
6846         </member>
6847         <member name="P:Microsoft.Build.Collections.ItemDictionary`1.Item(System.String)">
6848             <summary>
6849             Returns the item list for a particular item type,
6850             creating and adding a new item list if necessary.
6851             Does not throw if there are no items of this type.
6852             This is a read-only list.
6853             If the result is not empty it is a live list.
6854             Use AddItem or RemoveItem to modify items in this project.
6855             Using the return value from this in a multithreaded situation is unsafe.
6856             </summary>
6857         </member>
6858         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Clear">
6859             <summary>
6860             Empty the collection
6861             </summary>
6862         </member>
6863         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.GetCopyOnReadEnumerable">
6864             <summary>
6865             Returns an enumerable which copies the underlying data on read.
6866             </summary>
6867         </member>
6868         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.GetEnumerator">
6869             <summary>
6870             Gets an enumerator over the items in the collection
6871             </summary>
6872         </member>
6873         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.System#Collections#IEnumerable#GetEnumerator">
6874             <summary>
6875             Get an enumerator over entries
6876             </summary>
6877         </member>
6878         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.GetItems(System.String)">
6879             <summary>
6880             Returns all of the items for the specified type.
6881             If there are no items of this type, returns an empty list.
6882             Using the return from this method in a multithreaded scenario is unsafe.
6883             </summary>
6884             <param name="itemType">The item type to return</param>
6885             <returns>The list of matching items.</returns>
6886         </member>
6887         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Contains(`0)">
6888             <summary>
6889             Whether the provided item is in this table or not.
6890             </summary>
6891         </member>
6892         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Add(`0)">
6893             <summary>
6894             Add a new item to the collection, at the
6895             end of the list of other items with its key.
6896             </summary>
6897         </member>
6898         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Remove(`0)">
6899             <summary>
6900             Removes an item, if it is in the collection.
6901             Returns true if it was found, otherwise false.
6902             </summary>
6903             <remarks>
6904             If a list is emptied, removes the list from the enclosing collection
6905             so it can be garbage collected.
6906             </remarks>        
6907         </member>
6908         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Replace(`0,`0)">
6909             <summary>
6910             Replaces an exsting item with a new item.  This is necessary to preserve the original ordering semantics of Lookup.GetItems
6911             when items with metadata modifications are being returned.  See Dev10 bug 480737.
6912             If the item is not found, does nothing.
6913             </summary>
6914             <param name="existingItem">The item to be replaced.</param>
6915             <param name="newItem">The replacement item.</param>
6916         </member>
6917         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.ImportItems(System.Collections.Generic.IEnumerable{`0})">
6918             <summary>
6919             Add the set of items specified to this dictionary
6920             </summary>
6921             <param name="other">An enumerator over the items to remove.</param>
6922         </member>
6923         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.ImportItemsOfType(System.String,System.Collections.Generic.IEnumerable{`0})">
6924             <summary>
6925             Add the set of items specified, all sharing an item type, to this dictionary.
6926             </summary>
6927             <comment>
6928             This is a little faster than ImportItems where all the items have the same item type.
6929             </comment>
6930         </member>
6931         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.RemoveItems(System.Collections.Generic.IEnumerable{`0})">
6932             <summary>
6933             Remove the set of items specified from this dictionary
6934             </summary>
6935             <param name="other">An enumerator over the items to remove.</param>
6936         </member>
6937         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.AddEmptyMarker(System.String)">
6938             <summary>
6939             Special method used for batching buckets.
6940             Adds an explicit marker indicating there are no items for the specified item type.
6941             In the general case, this is redundant, but batching buckets use this to indicate that they are
6942             batching over the item type, but their bucket does not contain items of that type.
6943             See <see cref="M:Microsoft.Build.Collections.ItemDictionary`1.HasEmptyMarker(System.String)">HasEmptyMarker</see>.
6944             </summary>
6945         </member>
6946         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.HasEmptyMarker(System.String)">
6947             <summary>
6948             Special method used for batching buckets.
6949             Lookup can call this to see whether there was an explicit marker placed indicating that
6950             there are no items of this type. See comment on <see cref="M:Microsoft.Build.Collections.ItemDictionary`1.AddEmptyMarker(System.String)">AddEmptyMarker</see>.
6951             </summary>
6952         </member>
6953         <member name="T:Microsoft.Build.Collections.ItemDictionary`1.Enumerator">
6954             <summary>
6955             Custom enumerator that allows enumeration over all the items in the collection
6956             as though they were in a single list.
6957             All items of a type are returned consecutively in their correct order.
6958             However the order in which item types are returned is not defined.
6959             </summary>
6960         </member>
6961         <member name="F:Microsoft.Build.Collections.ItemDictionary`1.Enumerator._listEnumerator">
6962             <summary>
6963             Enumerator over lists
6964             </summary>
6965         </member>
6966         <member name="F:Microsoft.Build.Collections.ItemDictionary`1.Enumerator._itemEnumerator">
6967             <summary>
6968             Enumerator over items in the current list
6969             </summary>
6970         </member>
6971         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.ICollection{`0}})">
6972             <summary>
6973             Constructs an item enumerator over a list enumerator
6974             </summary>
6975         </member>
6976         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.Finalize">
6977             <summary>
6978             Finalizer
6979             </summary>
6980         </member>
6981         <member name="P:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.Current">
6982             <summary>
6983             Get the current item
6984             </summary>
6985         </member>
6986         <member name="P:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.System#Collections#IEnumerator#Current">
6987             <summary>
6988             Implementation of IEnumerator.Current, which unlike IEnumerator&gt;T&lt;.Current throws
6989             if there is no current object
6990             </summary>
6991         </member>
6992         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.MoveNext">
6993             <summary>
6994             Move to the next object if any,
6995             otherwise returns false
6996             </summary>
6997         </member>
6998         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.Reset">
6999             <summary>
7000             Reset the enumerator
7001             </summary>
7002         </member>
7003         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.Dispose">
7004             <summary>
7005             IDisposable implementation.
7006             </summary>
7007         </member>
7008         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.Dispose(System.Boolean)">
7009             <summary>
7010             The real disposer.
7011             </summary>
7012         </member>
7013         <member name="M:Microsoft.Build.Collections.ItemDictionary`1.Enumerator.GetNextItemEnumerator">
7014             <summary>
7015             Get an item enumerator over the next list with items in it
7016             </summary>
7017         </member>
7018         <member name="T:Microsoft.Build.Collections.IImmutable">
7019             <summary>
7020             Interface indicating a type is immutable, to constrain generic types.
7021             </summary>
7022             <remarks>
7023             This can be internal as it is a constraint only on internal collections.
7024             </remarks>
7025         </member>
7026         <member name="T:Microsoft.Build.Collections.MultiDictionary`2">
7027             <summary>
7028             A dictionary that can hold more than one distinct value with the same key.
7029             All keys must have at least one value: null values are currently rejected.
7030             </summary>
7031             <remarks>
7032             Order of values for a key is not defined but is currently the order of add.
7033             A variation could store the values in a HashSet, for different tradeoffs.
7034             </remarks>
7035             <typeparam name="K">Type of key</typeparam>
7036             <typeparam name="V">Type of value</typeparam>
7037         </member>
7038         <member name="F:Microsoft.Build.Collections.MultiDictionary`2._backing">
7039             <summary>
7040             Backing dictionary
7041             </summary>
7042         </member>
7043         <member name="F:Microsoft.Build.Collections.MultiDictionary`2._valueCount">
7044             <summary>
7045             Number of values over all keys
7046             </summary>
7047         </member>
7048         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
7049             <summary>
7050             Constructor taking a specified comparer for the keys
7051             </summary>
7052         </member>
7053         <member name="P:Microsoft.Build.Collections.MultiDictionary`2.KeyCount">
7054             <summary>
7055             Number of keys
7056             </summary>
7057         </member>
7058         <member name="P:Microsoft.Build.Collections.MultiDictionary`2.ValueCount">
7059             <summary>
7060             Number of values over all keys
7061             </summary>
7062         </member>
7063         <member name="P:Microsoft.Build.Collections.MultiDictionary`2.Keys">
7064             <summary>
7065             return keys in the dictionary
7066             </summary>
7067         </member>
7068         <member name="P:Microsoft.Build.Collections.MultiDictionary`2.Item(`0)">
7069             <summary>
7070             Enumerator over values that have the specified key.
7071             </summary>
7072         </member>
7073         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.Add(`0,`1)">
7074             <summary>
7075             Add a single value under the specified key.
7076             Value may not be null.
7077             </summary>
7078         </member>
7079         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.Remove(`0,`1)">
7080             <summary>
7081             Removes an entry with the specified key and value.
7082             Returns true if found, false otherwise.
7083             </summary>
7084         </member>
7085         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.Clear">
7086             <summary>
7087             Empty the collection
7088             </summary>
7089         </member>
7090         <member name="T:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1">
7091             <summary>
7092             List capable of holding 0-n items.
7093             Uses less memory than List for less than 2 items.
7094             </summary>
7095             <typeparam name="TT">Type of the value</typeparam>
7096         </member>
7097         <member name="F:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1._entry">
7098             <summary>
7099             Entry - either a TT or a list of TT.
7100             </summary>
7101         </member>
7102         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.#ctor(`2)">
7103             <summary>
7104             Constructor taking the initial object
7105             </summary>
7106         </member>
7107         <member name="P:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.Count">
7108             <summary>
7109             Number of entries in this multivalue.
7110             </summary>
7111         </member>
7112         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.GetEnumerator">
7113             <summary>
7114             Enumerable over the values.
7115             </summary>
7116         </member>
7117         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.System#Collections#IEnumerable#GetEnumerator">
7118             <summary>
7119             Enumerable over the values.
7120             </summary>
7121         </member>
7122         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.Add(`2)">
7123             <summary>
7124             Add a value.
7125             Does not verify the value is not already present.
7126             </summary>
7127         </member>
7128         <member name="M:Microsoft.Build.Collections.MultiDictionary`2.SmallList`1.Remove(`2)">
7129             <summary>
7130             Remove a value.
7131             Returns true if the value existed, otherwise false.
7132             </summary>
7133         </member>
7134         <member name="T:Microsoft.Build.Collections.IValued">
7135             <summary>
7136             Interface allowing values of things to be gotten.
7137             </summary>
7138             <remarks>
7139             This can be internal as it is a constraint only on internal collections.
7140             </remarks>
7141         </member>
7142         <member name="P:Microsoft.Build.Collections.IValued.EscapedValue">
7143             <summary>
7144             Returns some value of a thing
7145             </summary>
7146         </member>
7147         <member name="T:Microsoft.Build.Collections.OrdinalKeyedComparer">
7148             <summary>
7149             Equality comparer for IKeyed objects that uses Ordinal comparison.
7150             </summary>
7151         </member>
7152         <member name="F:Microsoft.Build.Collections.OrdinalKeyedComparer.s_instance">
7153             <summary>
7154             The one instance
7155             </summary>
7156         </member>
7157         <member name="M:Microsoft.Build.Collections.OrdinalKeyedComparer.#ctor">
7158             <summary>
7159             Only create myself
7160             </summary>
7161         </member>
7162         <member name="P:Microsoft.Build.Collections.OrdinalKeyedComparer.Instance">
7163             <summary>
7164             The one instance
7165             </summary>
7166         </member>
7167         <member name="M:Microsoft.Build.Collections.OrdinalKeyedComparer.Equals(Microsoft.Build.Collections.IKeyed,Microsoft.Build.Collections.IKeyed)">
7168             <summary>
7169             Performs the "Equals" operation Ordinally
7170             </summary>
7171         </member>
7172         <member name="M:Microsoft.Build.Collections.OrdinalKeyedComparer.GetHashCode(Microsoft.Build.Collections.IKeyed)">
7173             <summary>
7174             Get hash
7175             </summary>
7176         </member>
7177         <member name="T:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer">
7178             <summary>
7179             Equality comparer for IKeyed objects that uses Ordinal comparison.
7180             </summary>
7181         </member>
7182         <member name="F:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer.s_instance">
7183             <summary>
7184             The one instance
7185             </summary>
7186         </member>
7187         <member name="M:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer.#ctor">
7188             <summary>
7189             Only create myself
7190             </summary>
7191         </member>
7192         <member name="P:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer.Instance">
7193             <summary>
7194             The one instance
7195             </summary>
7196         </member>
7197         <member name="M:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer.Equals(Microsoft.Build.Collections.IKeyed,Microsoft.Build.Collections.IKeyed)">
7198             <summary>
7199             Performs the "Equals" operation Ordinally
7200             </summary>
7201         </member>
7202         <member name="M:Microsoft.Build.Collections.OrdinalIgnoreCaseKeyedComparer.GetHashCode(Microsoft.Build.Collections.IKeyed)">
7203             <summary>
7204             Get hash
7205             </summary>
7206         </member>
7207         <member name="T:Microsoft.Build.Collections.PropertyDictionary`1">
7208             <summary>
7209             A dictionary of unordered property or metadata name/value pairs.
7210             </summary>
7211             <remarks>
7212             The value that this adds over IDictionary&lt;string, T&gt; is:
7213                 - enforces that key = T.Name
7214                 - default enumerator is over values
7215                 - (marginal) enforces the correct key comparer
7216                 - potentially makes copy on write possible
7217             
7218             Really a Dictionary&lt;string, T&gt; where the key (the name) is obtained from IKeyed.Key.
7219             Is not observable, so if clients wish to observe modifications they must mediate them themselves and 
7220             either not expose this collection or expose it through a readonly wrapper.
7221             At various places in this class locks are taken on the backing collection.  The reason for this is to allow
7222             this class to be asynchronously enumerated.  This is accomplished by the CopyOnReadEnumerable which will 
7223             lock the backing collection when it does its deep cloning.  This prevents asynchronous access from corrupting
7224             the state of the enumeration until the collection has been fully copied.
7225             
7226             Since we use the mutable ignore case comparer we need to make sure that we lock our self before we call the comparer since the comparer can call back 
7227             into this dictionary which could cause a deadlock if another thread is also accessing another method in the dictionary.
7228             </remarks>
7229             <typeparam name="T">Property or Metadata class type to store</typeparam>
7230         </member>
7231         <member name="F:Microsoft.Build.Collections.PropertyDictionary`1._properties">
7232             <summary>
7233             Backing dictionary
7234             </summary>
7235         </member>
7236         <member name="F:Microsoft.Build.Collections.PropertyDictionary`1._comparer">
7237             <summary>
7238             Comparer whose start and end indexes we can manipulate as necessary.
7239             </summary>
7240         </member>
7241         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.#ctor">
7242             <summary>
7243             Creates empty dictionary
7244             </summary>
7245         </member>
7246         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.#ctor(System.Int32)">
7247             <summary>
7248             Creates empty dictionary, optionally specifying initial capacity
7249             </summary>
7250         </member>
7251         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
7252             <summary>
7253             Create a new dictionary from an enumerator
7254             </summary>
7255         </member>
7256         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.#ctor(System.Int32,System.Collections.Generic.IEnumerable{`0})">
7257             <summary>
7258             Create a new dictionary from an enumerator
7259             </summary>
7260         </member>
7261         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Keys">
7262             <summary>
7263             Accessor for the list of property names
7264             </summary>
7265         </member>
7266         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Values">
7267             <summary>
7268             Accessor for the list of properties
7269             </summary>
7270         </member>
7271         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Count">
7272             <summary>
7273             Returns the number of properties in the collection
7274             </summary>
7275         </member>
7276         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#IsReadOnly">
7277             <summary>
7278             Whether the collection is read-only.
7279             </summary>
7280         </member>
7281         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.Count">
7282             <summary>
7283             Returns the number of property in the collection.
7284             </summary>
7285         </member>
7286         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.PropertyNames">
7287             <summary>
7288             Retrieves a collection containing the names of all the properties present in the dictionary.
7289             </summary>
7290         </member>
7291         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Item(System.String)">
7292             <summary>
7293             Get the property with the specified name, or null if none exists.
7294             Sets the property with the specified name, overwriting it if already exists.
7295             </summary>
7296             <remarks>
7297             Unlike Dictionary&lt;K,V&gt;[K], the getter returns null instead of throwing if the key does not exist.
7298             This better matches the semantics of property, which are considered to have a blank value if they
7299             are not defined.
7300             </remarks>
7301         </member>
7302         <member name="P:Microsoft.Build.Collections.PropertyDictionary`1.Item(System.String)">
7303             <summary>
7304             Get the property with the specified name, or null if none exists.
7305             Sets the property with the specified name, overwriting it if already exists.
7306             </summary>
7307             <remarks>
7308             Unlike Dictionary&lt;K,V&gt;[K], the getter returns null instead of throwing if the key does not exist.
7309             This better matches the semantics of property, which are considered to have a blank value if they
7310             are not defined.
7311             </remarks>
7312         </member>
7313         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.GetCopyOnReadEnumerable">
7314             <summary>
7315             Returns an enumerable which clones the properties 
7316             </summary>
7317             <returns>Returns a cloning enumerable.</returns>
7318         </member>
7319         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.Contains(System.String)">
7320             <summary>
7321             Returns true if a property with the specified name is present in the collection,
7322             otherwise false.
7323             </summary>
7324         </member>
7325         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.Clear">
7326             <summary>
7327             Empties the collection
7328             </summary>
7329         </member>
7330         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.GetEnumerator">
7331             <summary>
7332             Gets an enumerator over all the properties in the collection
7333             Enumeration is in undefined order
7334             </summary>
7335         </member>
7336         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#IEnumerable#GetEnumerator">
7337             <summary>
7338             Get an enumerator over entries
7339             </summary>
7340         </member>
7341         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.Equals(Microsoft.Build.Collections.PropertyDictionary{`0})">
7342             <summary>
7343             Compares two property dictionaries for equivalence.  They are equal if each contains the same properties with the
7344             same values as the other, unequal otherwise.
7345             </summary>
7346             <param name="other">The dictionary to which this should be compared</param>
7347             <returns>True if they are equivalent, false otherwise.</returns>
7348         </member>
7349         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.GetProperty(System.String)">
7350             <summary>
7351             Get the property with the specified name or null if it is not present
7352             </summary>
7353         </member>
7354         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.GetProperty(System.String,System.Int32,System.Int32)">
7355             <summary>
7356             Get the property with the specified name or null if it is not present.
7357             Name is the segment of the provided string with the provided start and end indexes.
7358             </summary>
7359         </member>
7360         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Add(System.String,`0)">
7361             <summary>
7362             Adds a property
7363             </summary>
7364         </member>
7365         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#ContainsKey(System.String)">
7366             <summary>
7367             Returns true if the dictionary contains the key
7368             </summary>
7369         </member>
7370         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#Remove(System.String)">
7371             <summary>
7372             Removes a property
7373             </summary>
7374         </member>
7375         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IDictionary{System#String,T}#TryGetValue(System.String,`0@)">
7376             <summary>
7377             Attempts to retrieve the a property.
7378             </summary>
7379         </member>
7380         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Add(System.Collections.Generic.KeyValuePair{System.String,`0})">
7381             <summary>
7382             Adds a property
7383             </summary>
7384         </member>
7385         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Clear">
7386             <summary>
7387             Clears the property collection
7388             </summary>
7389         </member>
7390         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Contains(System.Collections.Generic.KeyValuePair{System.String,`0})">
7391             <summary>
7392             Checks for a property in the collection
7393             </summary>
7394         </member>
7395         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#CopyTo(System.Collections.Generic.KeyValuePair{System.String,`0}[],System.Int32)">
7396             <summary>
7397             Not implemented
7398             </summary>
7399         </member>
7400         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{System#String,T}}#Remove(System.Collections.Generic.KeyValuePair{System.String,`0})">
7401             <summary>
7402             Removes a property from the collection
7403             </summary>
7404         </member>
7405         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String,T}}#GetEnumerator">
7406             <summary>
7407             Get an enumerator over the entries.
7408             </summary>
7409         </member>
7410         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.Remove(System.String)">
7411             <summary>
7412             Removes any property with the specified name.
7413             Returns true if the property was in the collection, otherwise false.
7414             </summary>
7415         </member>
7416         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.Set(`0)">
7417             <summary>
7418             Add the specified property to the collection.
7419             Overwrites any property with the same name already in the collection.
7420             To remove a property, use Remove(...) instead.
7421             </summary>
7422         </member>
7423         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.ImportProperties(System.Collections.Generic.IEnumerable{`0})">
7424             <summary>
7425             Adds the specified properties to this dictionary.
7426             </summary>
7427             <param name="other">An enumerator over the properties to add.</param>
7428         </member>
7429         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.RemoveProperties(System.Collections.Generic.IEnumerable{`0})">
7430             <summary>
7431             Removes the specified properties from this dictionary
7432             </summary>
7433             <param name="other">An enumerator over the properties to remove.</param>
7434         </member>
7435         <member name="M:Microsoft.Build.Collections.PropertyDictionary`1.ToDictionary">
7436             <summary>
7437             Helper to convert into a read-only dictionary of string, string.
7438             </summary>
7439         </member>
7440         <member name="T:Microsoft.Build.Collections.ReadOnlyCollection`1">
7441             <summary>
7442             A read-only live wrapper over a collection.
7443             It does not prevent modification of the values themselves.
7444             </summary>
7445             <remarks>
7446             There is a type with the same name in the BCL, but it is actually a ReadOnlyList and does not accept an ICollection&gt;T&lt;.
7447             Thus this is an omission from the BCL.
7448             </remarks>
7449             <typeparam name="T">Type of element in the collection</typeparam>
7450         </member>
7451         <member name="F:Microsoft.Build.Collections.ReadOnlyCollection`1._backing">
7452             <summary>
7453             Backing live enumerable.
7454             May be a collection.
7455             </summary>
7456         </member>
7457         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
7458             <summary>
7459             Construct a read only wrapper around the current contents 
7460             of the IEnumerable, or around the backing collection if the 
7461             IEnumerable is in fact a collection. 
7462             </summary>
7463         </member>
7464         <member name="P:Microsoft.Build.Collections.ReadOnlyCollection`1.Count">
7465             <summary>
7466             Return the number of items in the backing collection
7467             </summary>
7468         </member>
7469         <member name="P:Microsoft.Build.Collections.ReadOnlyCollection`1.IsReadOnly">
7470             <summary>
7471             Returns true.
7472             </summary>
7473         </member>
7474         <member name="P:Microsoft.Build.Collections.ReadOnlyCollection`1.System#Collections#ICollection#IsSynchronized">
7475             <summary>
7476             Whether collection is synchronized
7477             </summary>
7478         </member>
7479         <member name="P:Microsoft.Build.Collections.ReadOnlyCollection`1.System#Collections#ICollection#SyncRoot">
7480             <summary>
7481             Sync root
7482             </summary>
7483         </member>
7484         <member name="P:Microsoft.Build.Collections.ReadOnlyCollection`1.BackingCollection">
7485             <summary>
7486             Get a backing ICollection.
7487             </summary>
7488         </member>
7489         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.Add(`0)">
7490             <summary>
7491             Prohibited on read only collection: throws
7492             </summary>
7493         </member>
7494         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.Clear">
7495             <summary>
7496             Prohibited on read only collection: throws
7497             </summary>
7498         </member>
7499         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.Contains(`0)">
7500             <summary>
7501             Pass through for underlying collection
7502             </summary>
7503         </member>
7504         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.CopyTo(`0[],System.Int32)">
7505             <summary>
7506             Pass through for underlying collection
7507             </summary>
7508         </member>
7509         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.Remove(`0)">
7510             <summary>
7511             Prohibited on read only collection: throws
7512             </summary>
7513         </member>
7514         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.GetEnumerator">
7515             <summary>
7516             Pass through for underlying collection
7517             </summary>
7518             <comment>
7519             NOTE: This does NOT cause a copy into a List, since the
7520             backing enumerable suffices.
7521             </comment>
7522         </member>
7523         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.System#Collections#IEnumerable#GetEnumerator">
7524             <summary>
7525             Pass through for underlying collection
7526             </summary>
7527             <comment>
7528             NOTE: This does NOT cause a copy into a List, since the
7529             backing enumerable suffices.
7530             </comment>
7531         </member>
7532         <member name="M:Microsoft.Build.Collections.ReadOnlyCollection`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
7533             <summary>
7534             ICollection version of CopyTo
7535             </summary>
7536         </member>
7537         <member name="T:Microsoft.Build.Collections.Contains`1">
7538             <summary>
7539             A function that can be passed in so that the converting
7540             collection can do a "contains" operation on the backing
7541             collection, using an object of the "converted to" type.
7542             </summary>
7543             <typeparam name="N">Type converted to</typeparam>
7544             <returns>Whether the item is present</returns>
7545         </member>
7546         <member name="T:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2">
7547             <summary>
7548             Implementation of ICollection which converts values to the specified type when they are accessed.
7549             </summary>
7550             <typeparam name="V">The backing collection's value type.</typeparam>
7551             <typeparam name="N">The desired value type.</typeparam>
7552         </member>
7553         <member name="F:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2._backing">
7554             <summary>
7555             The backing collection.
7556             </summary>
7557         </member>
7558         <member name="F:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2._converter">
7559             <summary>
7560             The delegate used to convert values.
7561             </summary>
7562         </member>
7563         <member name="F:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2._contains">
7564             <summary>
7565             The delegate used to satisfy contains operations, optionally
7566             </summary>
7567         </member>
7568         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.#ctor(System.Collections.Generic.ICollection{`0},System.Func{`0,`1})">
7569             <summary>
7570             Constructor.
7571             </summary>
7572         </member>
7573         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.#ctor(System.Collections.Generic.ICollection{`0},System.Func{`0,`1},Microsoft.Build.Collections.Contains{`1})">
7574             <summary>
7575             Constructor, optionally taking a delegate to do a "backwards" contains operation.
7576             </summary>
7577         </member>
7578         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.Count">
7579             <summary>
7580             Return the number of items in the collection.
7581             </summary>
7582         </member>
7583         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.IsReadOnly">
7584             <summary>
7585             Returns true if the collection is readonly.
7586             </summary>
7587         </member>
7588         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.Add(`1)">
7589             <summary>
7590             Adds the specified item to the collection.
7591             </summary>
7592         </member>
7593         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.Clear">
7594             <summary>
7595             Clears all items from the collection.
7596             </summary>
7597         </member>
7598         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.Contains(`1)">
7599             <summary>
7600             Returns true if the collection contains the speciied item.
7601             </summary>
7602         </member>
7603         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.CopyTo(`1[],System.Int32)">
7604             <summary>
7605             Copy the elements of the collection to the specified array.
7606             </summary>
7607         </member>
7608         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.Remove(`1)">
7609             <summary>
7610             Remove the specified item from the collection.
7611             </summary>
7612         </member>
7613         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.GetEnumerator">
7614             <summary>
7615             Implementation of generic IEnumerable.GetEnumerator()
7616             </summary>
7617         </member>
7618         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingCollection`2.System#Collections#IEnumerable#GetEnumerator">
7619             <summary>
7620             Implementation of IEnumerable.GetEnumerator()
7621             </summary>
7622         </member>
7623         <member name="T:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3">
7624             <summary>
7625             Implementation of a dictionary which acts as a read-only wrapper on another dictionary, but
7626             converts values as they are accessed to another type.
7627             </summary>
7628             <typeparam name="K">The backing dictionary's key type.</typeparam>
7629             <typeparam name="V">The backing dictionary's value type.</typeparam>
7630             <typeparam name="N">The desired value type.</typeparam>
7631         </member>
7632         <member name="F:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3._backing">
7633             <summary>
7634             The backing dictionary.
7635             </summary>
7636         </member>
7637         <member name="F:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3._converter">
7638             <summary>
7639             The delegate used to convert values.
7640             </summary>
7641         </member>
7642         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.#ctor(System.Collections.Generic.IDictionary{`0,`1},System.Func{`1,`2})">
7643             <summary>
7644             Constructor.
7645             </summary>
7646         </member>
7647         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Keys">
7648             <summary>
7649             Returns the collection of keys in the dictionary.
7650             </summary>
7651         </member>
7652         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Values">
7653             <summary>
7654             Returns the collection of values in the dictionary.
7655             </summary>
7656         </member>
7657         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Count">
7658             <summary>
7659             Returns the number of items in the collection.
7660             </summary>
7661         </member>
7662         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.IsReadOnly">
7663             <summary>
7664             Returns true if the collection is read-only.
7665             </summary>
7666         </member>
7667         <member name="P:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Item(`0)">
7668             <summary>
7669             Accesses the value for the specified key.
7670             </summary>
7671         </member>
7672         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Add(`0,`2)">
7673             <summary>
7674             Adds a value to the dictionary.
7675             </summary>
7676         </member>
7677         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.ContainsKey(`0)">
7678             <summary>
7679             Returns true if the dictionary contains the specified key.
7680             </summary>
7681         </member>
7682         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Remove(`0)">
7683             <summary>
7684             Removes the entry for the specified key from the dictionary.
7685             </summary>
7686         </member>
7687         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.TryGetValue(`0,`2@)">
7688             <summary>
7689             Attempts to find the value for the specified key in the dictionary.
7690             </summary>
7691         </member>
7692         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Add(System.Collections.Generic.KeyValuePair{`0,`2})">
7693             <summary>
7694             Adds an item to the collection.
7695             </summary>
7696         </member>
7697         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Clear">
7698             <summary>
7699             Clears the collection.
7700             </summary>
7701         </member>
7702         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Contains(System.Collections.Generic.KeyValuePair{`0,`2})">
7703             <summary>
7704             Returns true ff the collection contains the specified item.
7705             </summary>
7706         </member>
7707         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.CopyTo(System.Collections.Generic.KeyValuePair{`0,`2}[],System.Int32)">
7708             <summary>
7709             Copies all of the elements of the collection to the specified array.
7710             </summary>
7711         </member>
7712         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.Remove(System.Collections.Generic.KeyValuePair{`0,`2})">
7713             <summary>
7714             Remove an item from the dictionary.
7715             </summary>
7716         </member>
7717         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.GetEnumerator">
7718             <summary>
7719             Implementation of generic IEnumerable.GetEnumerator()
7720             </summary>
7721         </member>
7722         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.System#Collections#IEnumerable#GetEnumerator">
7723             <summary>
7724             Implementation of IEnumerable.GetEnumerator()
7725             </summary>
7726         </member>
7727         <member name="M:Microsoft.Build.Collections.ReadOnlyConvertingDictionary`3.KeyValueConverter(System.Collections.Generic.KeyValuePair{`0,`1})">
7728             <summary>
7729             Delegate used by ConvertingEnumerable
7730             </summary>
7731         </member>
7732         <member name="T:Microsoft.Build.Collections.Triple`3">
7733             <summary>
7734             A struct containing three objects
7735             </summary>
7736             <typeparam name="A">Type of first object</typeparam>
7737             <typeparam name="B">Type of second object</typeparam>
7738             <typeparam name="C">Type of third object</typeparam>
7739         </member>
7740         <member name="F:Microsoft.Build.Collections.Triple`3._first">
7741             <summary>
7742             First 
7743             </summary>
7744         </member>
7745         <member name="F:Microsoft.Build.Collections.Triple`3._second">
7746             <summary>
7747             Second
7748             </summary>
7749         </member>
7750         <member name="F:Microsoft.Build.Collections.Triple`3._third">
7751             <summary>
7752             Third
7753             </summary>
7754         </member>
7755         <member name="M:Microsoft.Build.Collections.Triple`3.#ctor(`0,`1,`2)">
7756             <summary>
7757             Constructor
7758             </summary>
7759         </member>
7760         <member name="P:Microsoft.Build.Collections.Triple`3.First">
7761             <summary>
7762             First
7763             </summary>
7764         </member>
7765         <member name="P:Microsoft.Build.Collections.Triple`3.Second">
7766             <summary>
7767             Second
7768             </summary>
7769         </member>
7770         <member name="P:Microsoft.Build.Collections.Triple`3.Third">
7771             <summary>
7772             Third
7773             </summary>
7774         </member>
7775         <member name="T:Microsoft.Build.Collections.WeakReference`1">
7776             <summary>
7777             Strongly typed weak reference
7778             </summary>
7779             <typeparam name="T">Type of the target of the weak reference</typeparam>
7780         </member>
7781         <member name="F:Microsoft.Build.Collections.WeakReference`1._hashcode">
7782             <summary>
7783             Cache the hashcode so that it is still available even if the target has been 
7784             collected. This allows this object to be still found in a table so it can be removed.
7785             </summary>
7786         </member>
7787         <member name="F:Microsoft.Build.Collections.WeakReference`1._weakReference">
7788             <summary>
7789             Backing weak reference
7790             </summary>
7791         </member>
7792         <member name="M:Microsoft.Build.Collections.WeakReference`1.#ctor(`0)">
7793             <summary>
7794             Constructor.
7795             Target may not be null.
7796             </summary>
7797         </member>
7798         <member name="P:Microsoft.Build.Collections.WeakReference`1.Target">
7799             <summary>
7800             Target wrapped by this weak reference.
7801             If it returns null, its value may have been collected, or it may actually "wrap" null.
7802             To distinguish these cases, compare the WeakReference object itself to WeakReference.Null.
7803             </summary>
7804         </member>
7805         <member name="M:Microsoft.Build.Collections.WeakReference`1.GetHashCode">
7806             <summary>
7807             Returns the hashcode of the wrapped target.
7808             </summary>
7809         </member>
7810         <member name="T:Microsoft.Build.Collections.WeakValueDictionary`2">
7811             <summary>
7812             Dictionary that does not prevent values from being garbage collected.
7813             </summary>
7814             <typeparam name="K">Type of key</typeparam>
7815             <typeparam name="V">Type of value, without the WeakReference wrapper.</typeparam>
7816         </member>
7817         <member name="F:Microsoft.Build.Collections.WeakValueDictionary`2._dictionary">
7818             <summary>
7819             The dictionary used internally to store the keys and values.
7820             </summary>
7821         </member>
7822         <member name="F:Microsoft.Build.Collections.WeakValueDictionary`2._capacity">
7823             <summary>
7824             Improvised capacity. See comment in item setter.
7825             </summary>
7826         </member>
7827         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.#ctor">
7828             <summary>
7829             Constructor for a collection using the default key comparer
7830             </summary>
7831         </member>
7832         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
7833             <summary>
7834             Constructor taking a specified comparer for the keys
7835             </summary>
7836         </member>
7837         <member name="P:Microsoft.Build.Collections.WeakValueDictionary`2.Count">
7838             <summary>
7839             Count of entries.
7840             Some entries may represent keys or values that have already been garbage collected.
7841             To clean these out call <see cref="M:Microsoft.Build.Collections.WeakValueDictionary`2.Scavenge"/>.
7842             </summary>
7843         </member>
7844         <member name="P:Microsoft.Build.Collections.WeakValueDictionary`2.Keys">
7845             <summary>
7846             Return keys
7847             </summary>
7848         </member>
7849         <member name="P:Microsoft.Build.Collections.WeakValueDictionary`2.Item(`0)">
7850             <summary>
7851             Obtains the value for a given key.
7852             </summary>
7853             <remarks>
7854             If we find the entry but its value's target is null, we take the opportunity
7855             to remove the entry, as if the GC had done it.
7856             </remarks>
7857         </member>
7858         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.Contains(`0)">
7859             <summary>
7860             Whether there is a key present with the specified key
7861             </summary>
7862             <remarks>
7863             As usual, don't just call Contained as the wrapped value may be null.
7864             </remarks>
7865         </member>
7866         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.TryGetValue(`0,`1@)">
7867             <summary>
7868             Attempts to get the value for the provided key.
7869             Returns true if the key is found, otherwise false.
7870             </summary>
7871             <remarks>
7872             If we find the entry but its value's target is null, we take the opportunity
7873             to remove the entry, as if the GC had done it.
7874             </remarks>
7875         </member>
7876         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.Remove(`0)">
7877             <summary>
7878             Removes an entry with the specified key.
7879             Returns true if found, false otherwise.
7880             </summary>
7881         </member>
7882         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.Scavenge">
7883             <summary>
7884             Remove any entries from the dictionary that represent keys
7885             that have been garbage collected.
7886             </summary>
7887             <returns>The number of entries removed.</returns>
7888         </member>
7889         <member name="M:Microsoft.Build.Collections.WeakValueDictionary`2.Clear">
7890             <summary>
7891             Empty the collection
7892             </summary>
7893         </member>
7894         <member name="T:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2">
7895             <summary>
7896             A special singleton enumerable that enumerates a read-only empty dictionary
7897             </summary>
7898             <typeparam name="K">Key</typeparam>
7899             <typeparam name="V">Value</typeparam>
7900         </member>
7901         <member name="F:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.s_backing">
7902             <summary>
7903             The single instance
7904             </summary>
7905         </member>
7906         <member name="F:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.s_instance">
7907             <summary>
7908             The single instance
7909             </summary>
7910         </member>
7911         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.#ctor">
7912             <summary>
7913             Private default constructor as this is a singleton
7914             </summary>
7915         </member>
7916         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Instance">
7917             <summary>
7918             Get the instance
7919             </summary>
7920         </member>
7921         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Count">
7922             <summary>
7923             Empty returns zero
7924             </summary>
7925         </member>
7926         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.IsReadOnly">
7927             <summary>
7928             Returns true
7929             </summary>
7930         </member>
7931         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Keys">
7932             <summary>
7933             Gets empty collection
7934             </summary>
7935         </member>
7936         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Values">
7937             <summary>
7938             Gets empty collection
7939             </summary>
7940         </member>
7941         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.IsFixedSize">
7942             <summary>
7943             Is it fixed size
7944             </summary>
7945         </member>
7946         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.IsSynchronized">
7947             <summary>
7948             Not synchronized
7949             </summary>
7950         </member>
7951         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.SyncRoot">
7952             <summary>
7953             No sync root
7954             </summary>
7955         </member>
7956         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.System#Collections#IDictionary#Keys">
7957             <summary>
7958             Keys
7959             </summary>
7960         </member>
7961         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.System#Collections#IDictionary#Values">
7962             <summary>
7963             Values
7964             </summary>
7965         </member>
7966         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Item(System.Object)">
7967             <summary>
7968             Indexer
7969             </summary>
7970         </member>
7971         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Item(`0)">
7972             <summary>
7973             Get returns null as read-only
7974             Set is prohibited and throws.
7975             </summary>
7976         </member>
7977         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Add(`0,`1)">
7978             <summary>
7979             Pass through for underlying collection
7980             </summary>
7981         </member>
7982         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.ContainsKey(`0)">
7983             <summary>
7984             Empty returns false
7985             </summary>
7986         </member>
7987         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Remove(`0)">
7988             <summary>
7989             Prohibited on read only collection: throws
7990             </summary>
7991         </member>
7992         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.TryGetValue(`0,`1@)">
7993             <summary>
7994             Empty returns false
7995             </summary>
7996         </member>
7997         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
7998             <summary>
7999             Prohibited on read only collection: throws
8000             </summary>
8001         </member>
8002         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Clear">
8003             <summary>
8004             Prohibited on read only collection: throws
8005             </summary>
8006         </member>
8007         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
8008             <summary>
8009             Empty returns false
8010             </summary>
8011         </member>
8012         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
8013             <summary>
8014             Empty does nothing
8015             </summary>
8016         </member>
8017         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
8018             <summary>
8019             Prohibited on read only collection: throws
8020             </summary>
8021         </member>
8022         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.GetEnumerator">
8023             <summary>
8024             Get empty enumerator
8025             </summary>
8026         </member>
8027         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.System#Collections#IEnumerable#GetEnumerator">
8028             <summary>
8029             Get empty enumerator
8030             </summary>
8031         </member>
8032         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Add(System.Object,System.Object)">
8033             <summary>
8034             Add
8035             </summary>
8036         </member>
8037         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Contains(System.Object)">
8038             <summary>
8039             Contains
8040             </summary>
8041         </member>
8042         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.System#Collections#IDictionary#GetEnumerator">
8043             <summary>
8044             Enumerator
8045             </summary>
8046         </member>
8047         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.Remove(System.Object)">
8048             <summary>
8049             Remove
8050             </summary>
8051         </member>
8052         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyDictionary`2.CopyTo(System.Array,System.Int32)">
8053             <summary>
8054             CopyTo
8055             </summary>
8056         </member>
8057         <member name="T:Microsoft.Build.Collections.ReadOnlyEmptyList`1">
8058             <summary>
8059             A special singleton read-only empty list
8060             </summary>
8061             <typeparam name="T">Type of item</typeparam>
8062         </member>
8063         <member name="F:Microsoft.Build.Collections.ReadOnlyEmptyList`1.s_instance">
8064             <summary>
8065             The single instance
8066             </summary>
8067         </member>
8068         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.#ctor">
8069             <summary>
8070             Private default constructor as this is a singleton
8071             </summary>
8072         </member>
8073         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Instance">
8074             <summary>
8075             Get the instance
8076             </summary>
8077         </member>
8078         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Count">
8079             <summary>
8080             There are no items in this list
8081             </summary>
8082         </member>
8083         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.IsReadOnly">
8084             <summary>
8085             Read-only list
8086             </summary>
8087         </member>
8088         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.System#Collections#ICollection#Count">
8089             <summary>
8090             ICollection implementation
8091             </summary>
8092         </member>
8093         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.System#Collections#ICollection#IsSynchronized">
8094             <summary>
8095             ICollection implementation
8096             </summary>
8097         </member>
8098         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.System#Collections#ICollection#SyncRoot">
8099             <summary>
8100             ICollection implementation
8101             </summary>
8102         </member>
8103         <member name="P:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Item(System.Int32)">
8104             <summary>
8105             Items cannot be retrieved or added to a read-only list
8106             </summary>
8107         </member>
8108         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.GetEnumerator">
8109             <summary>
8110             Get an enumerator over an empty collection
8111             </summary>
8112         </member>
8113         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.System#Collections#IEnumerable#GetEnumerator">
8114             <summary>
8115             Get an enumerator over an empty collection
8116             </summary>
8117         </member>
8118         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.IndexOf(`0)">
8119             <summary>
8120             Index of specified item
8121             </summary>
8122         </member>
8123         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Insert(System.Int32,`0)">
8124             <summary>
8125             Items cannot be inserted into a read-only list
8126             </summary>
8127         </member>
8128         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.RemoveAt(System.Int32)">
8129             <summary>
8130             Items cannot be removed from a read-only list
8131             </summary>
8132         </member>
8133         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Add(`0)">
8134             <summary>
8135             Items cannot be added to a read-only list
8136             </summary>
8137         </member>
8138         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Clear">
8139             <summary>
8140             Read-only list cannot be cleared
8141             </summary>
8142         </member>
8143         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Contains(`0)">
8144             <summary>
8145             An empty list contains nothing
8146             </summary>
8147         </member>
8148         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.CopyTo(`0[],System.Int32)">
8149             <summary>
8150             An empty list copies nothing
8151             </summary>
8152         </member>
8153         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.Remove(`0)">
8154             <summary>
8155             Cannot remove items from a read-only list
8156             </summary>
8157         </member>
8158         <member name="M:Microsoft.Build.Collections.ReadOnlyEmptyList`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
8159             <summary>
8160             ICollection implementation
8161             </summary>
8162         </member>
8163         <member name="M:Microsoft.Build.BackEnd.PropertyParser.GetTable(Microsoft.Build.BackEnd.TaskLoggingHelper,System.String,System.String[],System.Collections.Hashtable@)">
8164             <summary>
8165             Given a string of semi-colon delimited name=value pairs, this method parses it and creates 
8166             a hash table containing the property names as keys and the property values as values.  
8167             </summary>
8168             <returns>true on success, false on failure.</returns>
8169         </member>
8170         <member name="M:Microsoft.Build.BackEnd.PropertyParser.GetTableWithEscaping(Microsoft.Build.BackEnd.TaskLoggingHelper,System.String,System.String,System.String[],System.Collections.Hashtable@)">
8171             <summary>
8172             Given a string of semi-colon delimited name=value pairs, this method parses it and creates 
8173             a hash table containing the property names as keys and the property values as values.  
8174             This method escapes any special characters found in the property values, in case they 
8175             are going to be passed to a method (such as that expects the appropriate escaping to have happened
8176             already.
8177             </summary>
8178             <returns>true on success, false on failure.</returns>
8179         </member>
8180         <member name="T:Microsoft.Build.BackEnd.PropertyParser.PropertyNameValuePair">
8181             <summary>
8182             A very simple class that holds two strings, a property name and property value.
8183             </summary>
8184         </member>
8185         <member name="P:Microsoft.Build.BackEnd.PropertyParser.PropertyNameValuePair.Name">
8186             <summary>
8187             Property name
8188             </summary>
8189         </member>
8190         <member name="P:Microsoft.Build.BackEnd.PropertyParser.PropertyNameValuePair.Value">
8191             <summary>
8192             Property value
8193             </summary>
8194         </member>
8195         <member name="M:Microsoft.Build.BackEnd.PropertyParser.PropertyNameValuePair.#ctor(System.String,System.String)">
8196             <summary>
8197             Constructor
8198             </summary>
8199             <param name="propertyName"></param>
8200             <param name="propertyValue"></param>
8201         </member>
8202         <member name="M:Microsoft.Build.BackEnd.PropertyParser.PropertyNameValuePair.#ctor">
8203             <summary>
8204             Default construction not allowed.
8205             </summary>
8206         </member>
8207         <member name="T:Microsoft.Build.BackEnd.TaskHostConfiguration">
8208             <summary>
8209             TaskHostConfiguration contains information needed for the task host to 
8210             configure itself for to execute a particular task.
8211             </summary>
8212         </member>
8213         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._nodeId">
8214             <summary>
8215             The node id (of the parent node, to make the logging work out)
8216             </summary>
8217         </member>
8218         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._startupDirectory">
8219             <summary>
8220             The startup directory
8221             </summary>
8222         </member>
8223         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._buildProcessEnvironment">
8224             <summary>
8225             The process environment.
8226             </summary>
8227         </member>
8228         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._culture">
8229             <summary>
8230             The culture
8231             </summary>
8232         </member>
8233         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._uiCulture">
8234             <summary>
8235             The UI culture.
8236             </summary>
8237         </member>
8238         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._appDomainSetup">
8239             <summary>
8240             The AppDomainSetup that we may want to use on AppDomainIsolated tasks. 
8241             </summary>
8242         </member>
8243         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._lineNumberOfTask">
8244             <summary>
8245             Line number where the instance of this task is defined. 
8246             </summary>
8247         </member>
8248         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._columnNumberOfTask">
8249             <summary>
8250             Column number where the instance of this task is defined. 
8251             </summary>
8252         </member>
8253         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._projectFileOfTask">
8254             <summary>
8255             Project file where the instance of this task is defined. 
8256             </summary>
8257         </member>
8258         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._continueOnError">
8259             <summary>
8260             ContinueOnError flag for this particular task.
8261             </summary>
8262         </member>
8263         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._taskName">
8264             <summary>
8265             Name of the task to be executed on the task host. 
8266             </summary>
8267         </member>
8268         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._taskLocation">
8269             <summary>
8270             Location of the assembly containing the task to be executed. 
8271             </summary>
8272         </member>
8273         <member name="F:Microsoft.Build.BackEnd.TaskHostConfiguration._taskParameters">
8274             <summary>
8275             The set of parameters to apply to the task prior to execution.  
8276             </summary>
8277         </member>
8278         <member name="M:Microsoft.Build.BackEnd.TaskHostConfiguration.#ctor(System.Int32,System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Globalization.CultureInfo,System.Globalization.CultureInfo,System.AppDomainSetup,System.Int32,System.Int32,System.String,System.Boolean,System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
8279             <summary>
8280             Constructor
8281             </summary>
8282             <param name="nodeId">The ID of the node being configured.</param>
8283             <param name="startupDirectory">The startup directory for the task being executed.</param>
8284             <param name="buildProcessEnvironment">The set of environment variables to apply to the task execution process.</param>
8285             <param name="culture">The culture of the thread that will execute the task.</param>
8286             <param name="uiCulture">The UI culture of the thread that will execute the task.</param>
8287             <param name="appDomainSetup">The AppDomainSetup that may be used to pass information to an AppDomainIsolated task.</param>
8288             <param name="lineNumberOfTask">The line number of the location from which this task was invoked.</param>
8289             <param name="columnNumberOfTask">The column number of the location from which this task was invoked.</param>
8290             <param name="projectFileOfTask">The project file from which this task was invoked.</param>
8291             <param name="continueOnError">Flag to continue with the build after a the task failed</param>
8292             <param name="taskName">Name of the task.</param>
8293             <param name="taskLocation">Location of the assembly the task is to be loaded from.</param>
8294             <param name="taskParameters">Parameters to apply to the task.</param>
8295         </member>
8296         <member name="M:Microsoft.Build.BackEnd.TaskHostConfiguration.#ctor">
8297             <summary>
8298             Constructor for deserialization. 
8299             </summary>
8300         </member>
8301         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.NodeId">
8302             <summary>
8303             The node id
8304             </summary>
8305         </member>
8306         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.StartupDirectory">
8307             <summary>
8308             The startup directory
8309             </summary>
8310         </member>
8311         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.BuildProcessEnvironment">
8312             <summary>
8313             The process environment.
8314             </summary>
8315         </member>
8316         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.Culture">
8317             <summary>
8318             The culture
8319             </summary>
8320         </member>
8321         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.UICulture">
8322             <summary>
8323             The UI culture.
8324             </summary>
8325         </member>
8326         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.AppDomainSetup">
8327             <summary>
8328             The AppDomain configuration bytes that we may want to use to initialize
8329             AppDomainIsolated tasks. 
8330             </summary>
8331         </member>
8332         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.LineNumberOfTask">
8333             <summary>
8334             Line number where the instance of this task is defined. 
8335             </summary>
8336         </member>
8337         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.ColumnNumberOfTask">
8338             <summary>
8339             Column number where the instance of this task is defined. 
8340             </summary>
8341         </member>
8342         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.ContinueOnError">
8343             <summary>
8344             ContinueOnError flag for this particular task
8345             </summary>
8346         </member>
8347         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.ProjectFileOfTask">
8348             <summary>
8349             Project file where the instance of this task is defined. 
8350             </summary>
8351         </member>
8352         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.TaskName">
8353             <summary>
8354             Name of the task to execute. 
8355             </summary>
8356         </member>
8357         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.TaskLocation">
8358             <summary>
8359             Path to the assembly to load the task from. 
8360             </summary>
8361         </member>
8362         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.TaskParameters">
8363             <summary>
8364             Parameters to set on the instantiated task prior to execution. 
8365             </summary>
8366         </member>
8367         <member name="P:Microsoft.Build.BackEnd.TaskHostConfiguration.Type">
8368             <summary>
8369             The NodePacketType of this NodePacket
8370             </summary>
8371         </member>
8372         <member name="M:Microsoft.Build.BackEnd.TaskHostConfiguration.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
8373             <summary>
8374             Translates the packet to/from binary form.
8375             </summary>
8376             <param name="translator">The translator to use.</param>
8377         </member>
8378         <member name="M:Microsoft.Build.BackEnd.TaskHostConfiguration.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
8379             <summary>
8380             Factory for deserialization.
8381             </summary>
8382         </member>
8383         <member name="T:Microsoft.Build.BackEnd.TaskHostTaskCancelled">
8384             <summary>
8385             TaskHostTaskCancelled informs the task host that the task it is 
8386             currently executing has been canceled.
8387             </summary>
8388         </member>
8389         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskCancelled.#ctor">
8390             <summary>
8391             Constructor
8392             </summary>
8393         </member>
8394         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskCancelled.Type">
8395             <summary>
8396             The type of this NodePacket
8397             </summary>
8398         </member>
8399         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskCancelled.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
8400             <summary>
8401             Translates the packet to/from binary form.
8402             </summary>
8403             <param name="translator">The translator to use.</param>
8404         </member>
8405         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskCancelled.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
8406             <summary>
8407             Factory for deserialization.
8408             </summary>
8409         </member>
8410         <member name="T:Microsoft.Build.BackEnd.TaskCompleteType">
8411             <summary>
8412             How the task completed -- successful, failed, or crashed
8413             </summary>
8414         </member>
8415         <member name="F:Microsoft.Build.BackEnd.TaskCompleteType.Success">
8416             <summary>
8417             Task execution succeeded
8418             </summary>
8419         </member>
8420         <member name="F:Microsoft.Build.BackEnd.TaskCompleteType.Failure">
8421             <summary>
8422             Task execution failed
8423             </summary>
8424         </member>
8425         <member name="F:Microsoft.Build.BackEnd.TaskCompleteType.CrashedDuringInitialization">
8426             <summary>
8427             Task crashed during initialization steps -- loading the task, 
8428             validating or setting the parameters, etc. 
8429             </summary>
8430         </member>
8431         <member name="F:Microsoft.Build.BackEnd.TaskCompleteType.CrashedDuringExecution">
8432             <summary>
8433             Task crashed while being executed
8434             </summary>
8435         </member>
8436         <member name="F:Microsoft.Build.BackEnd.TaskCompleteType.CrashedAfterExecution">
8437             <summary>
8438             Task crashed after being executed
8439             -- Getting outputs, etc
8440             </summary>
8441         </member>
8442         <member name="T:Microsoft.Build.BackEnd.TaskHostTaskComplete">
8443             <summary>
8444             TaskHostTaskComplete contains all the information the parent node 
8445             needs from the task host on completion of task execution.
8446             </summary>
8447         </member>
8448         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._taskResult">
8449             <summary>
8450             Result of the task's execution. 
8451             </summary>
8452         </member>
8453         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._taskException">
8454             <summary>
8455             If the task threw an exception during its initialization or execution, 
8456             save it here. 
8457             </summary>
8458         </member>
8459         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._taskExceptionMessage">
8460             <summary>
8461             If there's an additional message that should be attached to the error 
8462             logged beyond "task X failed unexpectedly", save it here.  May be null. 
8463             </summary>
8464         </member>
8465         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._taskExceptionMessageArgs">
8466             <summary>
8467             If the message saved in taskExceptionMessage requires arguments, save 
8468             them here. May be null. 
8469             </summary>
8470         </member>
8471         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._taskOutputParameters">
8472             <summary>
8473             The set of parameters / values from the task after it finishes execution. 
8474             </summary>
8475         </member>
8476         <member name="F:Microsoft.Build.BackEnd.TaskHostTaskComplete._buildProcessEnvironment">
8477             <summary>
8478             The process environment at the end of task execution.
8479             </summary>
8480         </member>
8481         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskComplete.#ctor(Microsoft.Build.Shared.OutOfProcTaskHostTaskResult,System.Collections.Generic.IDictionary{System.String,System.String})">
8482             <summary>
8483             Constructor
8484             </summary>
8485             <param name="result">Result of the task's execution.</param>
8486             <param name="buildProcessEnvironment">The build process environment as it was at the end of the task's execution.</param>
8487         </member>
8488         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskComplete.#ctor">
8489             <summary>
8490             For deserialization.
8491             </summary>
8492         </member>
8493         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.TaskResult">
8494             <summary>
8495             Result of the task's execution.
8496             </summary>
8497         </member>
8498         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.TaskException">
8499             <summary>
8500             If the task threw an exception during its initialization or execution, 
8501             save it here. 
8502             </summary>
8503         </member>
8504         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.TaskExceptionMessage">
8505             <summary>
8506             If there's an additional message that should be attached to the error 
8507             logged beyond "task X failed unexpectedly", put it here.  May be null. 
8508             </summary>
8509         </member>
8510         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.TaskExceptionMessageArgs">
8511             <summary>
8512             If there are arguments that need to be formatted into the message being 
8513             sent, set them here.  May be null. 
8514             </summary>
8515         </member>
8516         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.TaskOutputParameters">
8517             <summary>
8518             Task parameters and their values after the task has finished.
8519             </summary>
8520         </member>
8521         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.BuildProcessEnvironment">
8522             <summary>
8523             The process environment.
8524             </summary>
8525         </member>
8526         <member name="P:Microsoft.Build.BackEnd.TaskHostTaskComplete.Type">
8527             <summary>
8528             The type of this packet.
8529             </summary>
8530         </member>
8531         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskComplete.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
8532             <summary>
8533             Translates the packet to/from binary form.
8534             </summary>
8535             <param name="translator">The translator to use.</param>
8536         </member>
8537         <member name="M:Microsoft.Build.BackEnd.TaskHostTaskComplete.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
8538             <summary>
8539             Factory for deserialization.
8540             </summary>
8541         </member>
8542         <member name="T:Microsoft.Build.BackEnd.LinkStatusChangedDelegate">
8543             <summary>
8544             Used to receive link status updates from an endpoint.
8545             </summary>
8546             <param name="endpoint">The endpoint invoking the delegate.</param>
8547             <param name="status">The current status of the link.</param>
8548         </member>
8549         <member name="T:Microsoft.Build.BackEnd.DataReceivedDelegate">
8550             <summary>
8551             Used to receive data from a node 
8552             </summary>
8553             <param name="endpoint">The endpoint invoking the delegate.</param>
8554             <param name="packet">The packet received.</param>
8555         </member>
8556         <member name="T:Microsoft.Build.BackEnd.LinkStatus">
8557             <summary>
8558             The connection status of a link between the NodeEndpoint on the host and the NodeEndpoint
8559             on the peer.
8560             </summary>
8561         </member>
8562         <member name="F:Microsoft.Build.BackEnd.LinkStatus.Inactive">
8563             <summary>
8564             The connection has never been started.
8565             </summary>
8566         </member>
8567         <member name="F:Microsoft.Build.BackEnd.LinkStatus.Active">
8568             <summary>
8569             The connection is active, the most recent data has been successfully sent, and the 
8570             node is responding to pings.
8571             </summary>
8572         </member>
8573         <member name="F:Microsoft.Build.BackEnd.LinkStatus.Failed">
8574             <summary>
8575             The connection has failed and been terminated.
8576             </summary>
8577         </member>
8578         <member name="F:Microsoft.Build.BackEnd.LinkStatus.ConnectionFailed">
8579             <summary>
8580             The connection could not be made/timed out.
8581             </summary>
8582         </member>
8583         <member name="T:Microsoft.Build.BackEnd.INodeEndpoint">
8584             <summary>
8585             This interface represents one end of a connection between the INodeProvider and a Node.
8586             Implementations of this interface define the actual mechanism by which data is communicated.
8587             </summary>
8588         </member>
8589         <member name="E:Microsoft.Build.BackEnd.INodeEndpoint.OnLinkStatusChanged">
8590             <summary>
8591             Raised when the status of the node's link has changed.
8592             </summary>
8593         </member>
8594         <member name="P:Microsoft.Build.BackEnd.INodeEndpoint.LinkStatus">
8595             <summary>
8596             The current link status for this endpoint.
8597             </summary>
8598         </member>
8599         <member name="M:Microsoft.Build.BackEnd.INodeEndpoint.Listen(Microsoft.Build.BackEnd.INodePacketFactory)">
8600             <summary>
8601             Waits for the remote node to establish a connection.
8602             </summary>
8603             <param name="factory">The factory used to deserialize packets.</param>
8604             <remarks>Only one of Listen() or Connect() may be called on an endpoint.</remarks>
8605         </member>
8606         <member name="M:Microsoft.Build.BackEnd.INodeEndpoint.Connect(Microsoft.Build.BackEnd.INodePacketFactory)">
8607             <summary>
8608             Instructs the node to connect to its peer endpoint.
8609             </summary>
8610             <param name="factory">The factory used to deserialize packets.</param>
8611         </member>
8612         <member name="M:Microsoft.Build.BackEnd.INodeEndpoint.Disconnect">
8613             <summary>
8614             Instructs the node to disconnect from its peer endpoint.
8615             </summary>
8616         </member>
8617         <member name="M:Microsoft.Build.BackEnd.INodeEndpoint.SendData(Microsoft.Build.BackEnd.INodePacket)">
8618             <summary>
8619             Sends a data packet to the node.
8620             </summary>
8621             <param name="packet">The packet to be sent.</param>
8622         </member>
8623         <member name="T:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase">
8624             <summary>
8625             This is an implementation of INodeEndpoint for the out-of-proc nodes.  It acts only as a client.
8626             </summary>
8627         </member>
8628         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.ClientConnectTimeout">
8629             <summary>
8630             The amount of time to wait for the client to connect to the host.
8631             </summary>
8632         </member>
8633         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.PipeBufferSize">
8634             <summary>
8635             The size of the buffers to use for named pipes
8636             </summary>
8637         </member>
8638         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._debugCommunications">
8639             <summary>
8640             Flag indicating if we should debug communications or not.
8641             </summary>
8642         </member>
8643         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._status">
8644             <summary>
8645             The current communication status of the node.
8646             </summary>
8647         </member>
8648         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._pipeServer">
8649             <summary>
8650             The pipe client used by the nodes.
8651             </summary>
8652         </member>
8653         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._asyncDataMonitor">
8654             <summary>
8655             Object used as a lock source for the async data
8656             </summary>
8657         </member>
8658         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._packetAvailable">
8659             <summary>
8660             Set when a packet is available in the packet queue
8661             </summary>      
8662         </member>
8663         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._terminatePacketPump">
8664             <summary>
8665             Set when the asynchronous packet pump should terminate
8666             </summary>
8667         </member>
8668         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._packetPump">
8669             <summary>
8670             The thread which runs the asynchronous packet pump
8671             </summary>
8672         </member>
8673         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._packetFactory">
8674             <summary>
8675             The factory used to create and route packets.
8676             </summary>
8677         </member>
8678         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._packetQueue">
8679             <summary>
8680             The asynchronous packet queue.  
8681             </summary>
8682             <remarks>
8683             Operations on this queue must be synchronized since it is accessible by multiple threads.
8684             Use a lock on the packetQueue itself.
8685             </remarks>
8686         </member>
8687         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase._sharedReadBuffer">
8688             <summary>
8689             Per-node shared read buffer.
8690             </summary>
8691         </member>
8692         <member name="E:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.OnLinkStatusChanged">
8693             <summary>
8694             Raised when the link status has changed.
8695             </summary>
8696         </member>
8697         <member name="P:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.LinkStatus">
8698             <summary>
8699             Returns the link status of this node.
8700             </summary>
8701         </member>
8702         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.Listen(Microsoft.Build.BackEnd.INodePacketFactory)">
8703             <summary>
8704             Causes this endpoint to wait for the remote endpoint to connect
8705             </summary>
8706             <param name="factory">The factory used to create packets.</param>
8707         </member>
8708         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.Connect(Microsoft.Build.BackEnd.INodePacketFactory)">
8709             <summary>
8710             Causes this node to connect to the matched endpoint.  
8711             </summary>
8712             <param name="factory">The factory used to create packets.</param>
8713         </member>
8714         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.Disconnect">
8715             <summary>
8716             Shuts down the link
8717             </summary>
8718         </member>
8719         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.SendData(Microsoft.Build.BackEnd.INodePacket)">
8720             <summary>
8721             Sends data to the peer endpoint.
8722             </summary>
8723             <param name="packet">The packet to send.</param>
8724         </member>
8725         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.InternalConstruct(System.String)">
8726             <summary>
8727             Instantiates an endpoint to act as a client
8728             </summary>
8729             <param name="pipeName">The name of the pipe to which we should connect.</param>
8730         </member>
8731         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.GetHostHandshake">
8732             <summary>
8733             Returns the host handshake for this node endpoint
8734             </summary>
8735         </member>
8736         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.GetClientHandshake">
8737             <summary>
8738             Returns the client handshake for this node endpoint
8739             </summary>
8740         </member>
8741         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.ChangeLinkStatus(Microsoft.Build.BackEnd.LinkStatus)">
8742             <summary>
8743             Updates the current link status if it has changed and notifies any registered delegates.
8744             </summary>
8745             <param name="newStatus">The status the node should now be in.</param>
8746         </member>
8747         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.RaiseLinkStatusChanged(Microsoft.Build.BackEnd.LinkStatus)">
8748             <summary>
8749             Invokes the OnLinkStatusChanged event in a thread-safe manner.
8750             </summary>
8751             <param name="newStatus">The new status of the endpoint link.</param>
8752         </member>
8753         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.InternalDisconnect">
8754             <summary>
8755             This does the actual work of changing the status and shutting down any threads we may have for
8756             disconnection.
8757             </summary>
8758         </member>
8759         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.EnqueuePacket(Microsoft.Build.BackEnd.INodePacket)">
8760             <summary>
8761             Adds a packet to the packet queue when asynchronous mode is enabled.
8762             </summary>
8763             <param name="packet">The packet to be transmitted.</param>
8764         </member>
8765         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.InitializeAsyncPacketThread">
8766             <summary>
8767             Initializes the packet pump thread and the supporting events as well as the packet queue.
8768             </summary>
8769         </member>
8770         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.PacketPumpProc">
8771             <summary>
8772             This method handles the asynchronous message pump.  It waits for messages to show up on the queue
8773             and calls FireDataAvailable for each such packet.  It will terminate when the terminate event is
8774             set.
8775             </summary>
8776         </member>
8777         <member name="T:Microsoft.Build.BackEnd.NodePacketType">
8778             <summary>
8779             Enumeration of all of the packet types used for communication.
8780             </summary>
8781         </member>
8782         <member name="F:Microsoft.Build.BackEnd.NodePacketType.NodeConfiguration">
8783             <summary>
8784             Notifies the Node to set a configuration for a particular build.  This is sent before
8785             any BuildRequests are made and will not be sent again for a particular build.  This instructs
8786             the node to prepare to receive build requests.
8787             
8788             Contains:
8789             Build ID
8790             Environment variables
8791             Logging Services Configuration
8792             Node ID
8793             Default Global Properties
8794             Toolset Definition Locations
8795             Startup Directory
8796             UI Culture Information
8797             App Domain Configuration XML
8798             </summary>
8799         </member>
8800         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildRequestConfiguration">
8801             <summary>
8802             A BuildRequestConfiguration object.  
8803             When sent TO a node, this informs the node of a build configuration.
8804             When sent FROM a node, this requests a BuildRequestConfigurationResponse to map the configuration to the
8805             appropriate global configuration ID.
8806             
8807             Contents:
8808             Configuration ID
8809             Project Filename
8810             Project Properties
8811             Project Tools Version
8812             </summary>
8813         </member>
8814         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildRequestConfigurationResponse">
8815             <summary>
8816             A response to a request to map a build configuration
8817             
8818             Contents:
8819             Node Configuration ID
8820             Global Configuration ID
8821             </summary>
8822         </member>
8823         <member name="F:Microsoft.Build.BackEnd.NodePacketType.ProjectLoadInfo">
8824             <summary>
8825             Information about a project that has been loaded by a node.
8826             
8827             Contents:
8828             Global Configuration ID
8829             Initial Targets
8830             Default Targets
8831             </summary>
8832         </member>
8833         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildRequestBlocker">
8834             <summary>
8835             Packet used to inform the scheduler that a node's active build request is blocked.
8836             
8837             Contents:
8838             Build Request ID
8839             Active Targets
8840             Blocked Target, if any
8841             Child Requests, if any
8842             </summary>
8843         </member>
8844         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildRequestUnblocker">
8845             <summary>
8846             Packet used to unblocked a blocked request on a node.
8847             
8848             Contents:
8849             Build Request ID
8850             Build Results for child requests, if any.
8851             </summary>
8852         </member>
8853         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildRequest">
8854             <summary>
8855             A BuildRequest object
8856             
8857             Contents:
8858             Build Request ID
8859             Configuration ID
8860             Project Instance ID
8861             Targets
8862             </summary>
8863         </member>
8864         <member name="F:Microsoft.Build.BackEnd.NodePacketType.BuildResult">
8865             <summary>
8866             A BuildResult object
8867             
8868             Contents:
8869             Build ID
8870             Project Instance ID
8871             Targets
8872             Outputs (per Target)
8873             Results (per Target)
8874             </summary>
8875         </member>
8876         <member name="F:Microsoft.Build.BackEnd.NodePacketType.LogMessage">
8877             <summary>
8878             A logging message.
8879             
8880             Contents:
8881             Build Event Type
8882             Build Event Args
8883             </summary>
8884         </member>
8885         <member name="F:Microsoft.Build.BackEnd.NodePacketType.NodeBuildComplete">
8886             <summary>
8887             Informs the node that the build is complete.  
8888             
8889             Contents:
8890             Prepare For Reuse
8891             </summary>
8892         </member>
8893         <member name="F:Microsoft.Build.BackEnd.NodePacketType.NodeShutdown">
8894             <summary>
8895             Reported by the node (or node provider) when a node has terminated.  This is the final packet that will be received
8896             from a node.
8897             
8898             Contents:
8899             Reason
8900             </summary>
8901         </member>
8902         <member name="F:Microsoft.Build.BackEnd.NodePacketType.TaskHostConfiguration">
8903             <summary>
8904             Notifies the task host to set the task-specific configuration for a particular task execution. 
8905             This is sent in place of NodeConfiguration and gives the task host all the information it needs
8906             to set itself up and execute the task that matches this particular configuration. 
8907             
8908             Contains:
8909             Node ID (of parent MSBuild node, to make the logging work out) 
8910             Startup directory
8911             Environment variables 
8912             UI Culture information
8913             App Domain Configuration XML
8914             Task name
8915             Task assembly location
8916             Parameter names and values to set to the task prior to execution
8917             </summary>
8918         </member>
8919         <member name="F:Microsoft.Build.BackEnd.NodePacketType.TaskHostTaskComplete">
8920             <summary>
8921             Informs the parent node that the task host has finished executing a 
8922             particular task.  Does not need to contain identifying information 
8923             about the task, because the task host will only ever be connected to 
8924             one parent node at a a time, and will only ever be executing one task 
8925             for that node at any one time.  
8926             
8927             Contents:
8928             Task result (success / failure)
8929             Resultant parameter values (for output gathering)
8930             </summary>
8931         </member>
8932         <member name="F:Microsoft.Build.BackEnd.NodePacketType.TaskHostTaskCancelled">
8933             <summary>
8934             Message sent from the node to its paired task host when a task that 
8935             supports ICancellableTask is cancelled.  
8936             
8937             Contents:
8938             (nothing) 
8939             </summary>
8940         </member>
8941         <member name="T:Microsoft.Build.BackEnd.INodePacket">
8942             <summary>
8943             This interface represents a packet which may be transmitted using an INodeEndpoint.
8944             Implementations define the serialized form of the data.
8945             </summary>
8946         </member>
8947         <member name="P:Microsoft.Build.BackEnd.INodePacket.Type">
8948             <summary>
8949             The type of the packet.  Used to reconstitute the packet using the correct factory.
8950             </summary>
8951         </member>
8952         <member name="T:Microsoft.Build.BackEnd.NodePacketFactoryMethod">
8953             <summary>
8954             A delegate representing factory methods used to re-create packets deserialized from a stream.
8955             </summary>
8956             <param name="translator">The translator containing the packet data.</param>
8957             <returns>The packet reconstructed from the stream.</returns>
8958         </member>
8959         <member name="T:Microsoft.Build.BackEnd.INodePacketFactory">
8960             <summary>
8961             This interface represents an object which is used to reconstruct packet objects from
8962             binary data.
8963             </summary>
8964         </member>
8965         <member name="M:Microsoft.Build.BackEnd.INodePacketFactory.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
8966             <summary>
8967             Registers the specified handler for a particular packet type.
8968             </summary>
8969             <param name="packetType">The packet type.</param>
8970             <param name="factory">The factory for packets of the specified type.</param>
8971             <param name="handler">The handler to be called when packets of the specified type are received.</param>
8972         </member>
8973         <member name="M:Microsoft.Build.BackEnd.INodePacketFactory.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
8974             <summary>
8975             Unregisters a packet handler.
8976             </summary>
8977             <param name="packetType">The packet type.</param>
8978         </member>
8979         <member name="M:Microsoft.Build.BackEnd.INodePacketFactory.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
8980             <summary>
8981             Takes a serializer, deserializes the packet and routes it to the appropriate handler.
8982             </summary>
8983             <param name="nodeId">The node from which the packet was received.</param>
8984             <param name="packetType">The packet type.</param>
8985             <param name="translator">The translator containing the data from which the packet should be reconstructed.</param>
8986         </member>
8987         <member name="M:Microsoft.Build.BackEnd.INodePacketFactory.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
8988             <summary>
8989             Routes the specified packet
8990             </summary>
8991             <param name="nodeId">The node from which the packet was received.</param>
8992             <param name="packet">The packet to route.</param>
8993         </member>
8994         <member name="T:Microsoft.Build.BackEnd.INodePacketHandler">
8995             <summary>
8996             Objects which wish to receive packets from the NodePacketRouter must implement this interface.
8997             </summary>
8998         </member>
8999         <member name="M:Microsoft.Build.BackEnd.INodePacketHandler.PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
9000             <summary>
9001             This method is invoked by the NodePacketRouter when a packet is received and is intended for
9002             this recipient.
9003             </summary>
9004             <param name="node">The node from which the packet was received.</param>
9005             <param name="packet">The packet.</param>
9006         </member>
9007         <member name="T:Microsoft.Build.BackEnd.Translator`1">
9008             <summary>
9009             Delegate for users that want to translate an arbitrary structure that cannot implement <see cref="T:Microsoft.Build.BackEnd.INodePacketTranslatable"/> (e.g. translating a complex collection)
9010             </summary>
9011             <param name="translator">the translator</param>
9012             <param name="obj">the object to translate</param>
9013         </member>
9014         <member name="T:Microsoft.Build.BackEnd.INodePacketTranslatable">
9015             <summary>
9016             An interface representing an object which may be serialized by the node packet serializer.
9017             </summary>
9018         </member>
9019         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslatable.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
9020             <summary>
9021             Reads or writes the packet to the serializer.
9022             </summary>
9023         </member>
9024         <member name="T:Microsoft.Build.BackEnd.NodePacketValueFactory`1">
9025             <summary>
9026             This delegate is used for objects which do not have public parameterless constructors and must be constructed using
9027             another method.  When invoked, this delegate should return a new object which has been translated appropriately.
9028             </summary>
9029             <typeparam name="T">The type to be translated.</typeparam>
9030         </member>
9031         <member name="T:Microsoft.Build.BackEnd.NodePacketCollectionCreator`1">
9032             <summary>
9033             This delegate is used to create arbitrary collection types for serialization.
9034             </summary>
9035             <typeparam name="T">The type of dictionary to be created.</typeparam>
9036         </member>
9037         <member name="T:Microsoft.Build.BackEnd.TranslationDirection">
9038             <summary>
9039             The serialization mode.
9040             </summary>
9041         </member>
9042         <member name="F:Microsoft.Build.BackEnd.TranslationDirection.WriteToStream">
9043             <summary>
9044             Indicates the serializer is operating in write mode.
9045             </summary>
9046         </member>
9047         <member name="F:Microsoft.Build.BackEnd.TranslationDirection.ReadFromStream">
9048             <summary>
9049             Indicates the serializer is operating in read mode.
9050             </summary>
9051         </member>
9052         <member name="T:Microsoft.Build.BackEnd.INodePacketTranslator">
9053             <summary>
9054             This interface represents an object which aids objects in serializing and 
9055             deserializing INodePackets.
9056             </summary>
9057             <remarks>
9058             The reason we bother with a custom serialization mechanism at all is two fold:
9059             1. The .Net serialization mechanism is inefficient, even if you implement ISerializable
9060                with your own custom mechanism.  This is because the serializer uses a bag called
9061                SerializationInfo into which you are expected to drop all your data.  This adds
9062                an unnecessary level of indirection to the serialization routines and prevents direct,
9063                efficient access to the byte-stream.
9064             2. You have to implement both a reader and writer part, which introduces the potential for
9065                error should the classes be later modified.  If the reader and writer methods are not
9066                kept in perfect sync, serialization errors will occur.  Our custom serializer eliminates
9067                that by ensuring a single Translate method on a given object can handle both reads and
9068                writes without referencing any field more than once.
9069             </remarks>
9070         </member>
9071         <member name="P:Microsoft.Build.BackEnd.INodePacketTranslator.Mode">
9072             <summary>
9073             Returns the current serialization mode.
9074             </summary>
9075         </member>
9076         <member name="P:Microsoft.Build.BackEnd.INodePacketTranslator.Reader">
9077             <summary>
9078             Returns the binary reader.
9079             </summary>
9080             <remarks>
9081             This should ONLY be used when absolutely necessary for translation.  It is generally unnecessary for the 
9082             translating object to know the direction of translation.  Use one of the Translate methods instead.
9083             </remarks>
9084         </member>
9085         <member name="P:Microsoft.Build.BackEnd.INodePacketTranslator.Writer">
9086             <summary>
9087             Returns the binary writer.
9088             </summary>
9089             <remarks>
9090             This should ONLY be used when absolutely necessary for translation.  It is generally unnecessary for the 
9091             translating object to know the direction of translation.  Use one of the Translate methods instead.
9092             </remarks>
9093         </member>
9094         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Boolean@)">
9095             <summary>
9096             Translates a boolean.
9097             </summary>
9098             <param name="value">The value to be translated.</param>
9099         </member>
9100         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Byte@)">
9101             <summary>
9102             Translates a byte.
9103             </summary>
9104             <param name="value">The value to be translated.</param>
9105         </member>
9106         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Int16@)">
9107             <summary>
9108             Translates a short.
9109             </summary>
9110             <param name="value">The value to be translated.</param>
9111         </member>
9112         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.UInt16@)">
9113             <summary>
9114             Translates a unsigned short.
9115             </summary>
9116             <param name="value">The value to be translated.</param>
9117         </member>
9118         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Int32@)">
9119             <summary>
9120             Translates an integer.
9121             </summary>
9122             <param name="value">The value to be translated.</param>
9123         </member>
9124         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.String@)">
9125             <summary>
9126             Translates a string.
9127             </summary>
9128             <param name="value">The value to be translated.</param>
9129         </member>
9130         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.String[]@)">
9131             <summary>
9132             Translates a string array.
9133             </summary>
9134             <param name="array">The array to be translated.</param>
9135         </member>
9136         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Collections.Generic.List{System.String}@)">
9137             <summary>
9138             Translates a list of strings
9139             </summary>
9140             <param name="list">The list to be translated.</param>
9141         </member>
9142         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Collections.Generic.HashSet{System.String}@)">
9143             <summary>
9144             Translates a set of strings
9145             </summary>
9146             <param name="set">The set to be translated.</param>
9147         </member>
9148         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate``1(System.Collections.Generic.List{``0}@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9149             <summary>
9150             Translates a list of T where T implements INodePacketTranslateable
9151             </summary>
9152             <param name="list">The list to be translated.</param>
9153             <param name="factory">factory to create type T</param>
9154             <typeparam name="T">A TaskItemType</typeparam>
9155         </member>
9156         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate``2(System.Collections.Generic.IList{``0}@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0},Microsoft.Build.BackEnd.NodePacketCollectionCreator{``1})">
9157             <summary>
9158             Translates a list of T where T implements INodePacketTranslateable using a collection factory
9159             </summary>
9160             <param name="list">The list to be translated.</param>
9161             <param name="factory">factory to create type T</param>
9162             <typeparam name="T">An ITranslatable subtype</typeparam>
9163             <typeparam name="L">An IList subtype</typeparam>
9164             <param name="collectionFactory">factory to create a collection</param>
9165         </member>
9166         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.DateTime@)">
9167             <summary>
9168             Translates a DateTime.
9169             </summary>
9170             <param name="value">The value to be translated.</param>
9171         </member>
9172         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(Microsoft.Build.Framework.BuildEventContext@)">
9173             <summary>
9174             Translates a BuildEventContext
9175             </summary>
9176             <remarks>
9177             This method exists only because there is no serialization method built into the BuildEventContext
9178             class, and it lives in Framework and we don't want to add a public method to it.
9179             </remarks>
9180             <param name="value">The context to be translated.</param>
9181         </member>
9182         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateEnum``1(``0@,System.Int32)">
9183             <summary>
9184             Translates an enumeration.
9185             </summary>
9186             <typeparam name="T">The enumeration type.</typeparam>
9187             <param name="value">The enumeration instance to be translated.</param>
9188             <param name="numericValue">The enumeration value as an integer.</param>
9189             <remarks>This is a bit ugly, but it doesn't seem like a nice method signature is possible because
9190             you can't pass the enum type as a reference and constrain the generic parameter to Enum.  Nor
9191             can you simply pass as ref Enum, because an enum instance doesn't match that function signature.
9192             Finally, converting the enum to an int assumes that we always want to transport enums as ints.  This
9193             works in all of our current cases, but certainly isn't perfectly generic.</remarks>
9194         </member>
9195         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateDotNet``1(``0@)">
9196             <summary>
9197             Translates a value using the .Net binary formatter.
9198             </summary>
9199             <typeparam name="T">The reference type.</typeparam>
9200             <param name="value">The value to be translated.</param>
9201             <remarks>
9202             The primary purpose of this method is to support serialization of Exceptions and
9203             custom build logging events, since these do not support our custom serialization
9204             methods.
9205             </remarks>
9206         </member>
9207         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate``1(``0@)">
9208             <summary>
9209             Translates an object implementing INodePacketTranslatable.
9210             </summary>
9211             <typeparam name="T">The reference type.</typeparam>
9212             <param name="value">The value to be translated.</param>
9213         </member>
9214         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate``1(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9215             <summary>
9216             Translates an object implementing INodePacketTranslatable which does not expose a
9217             public parameterless constructor.
9218             </summary>
9219             <typeparam name="T">The reference type.</typeparam>
9220             <param name="value">The value to be translated.</param>
9221             <param name="factory">The factory method used to instantiate values of type T.</param>
9222         </member>
9223         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateCulture(System.Globalization.CultureInfo@)">
9224             <summary>
9225             Translates a culture
9226             </summary>
9227             <param name="culture">The culture</param>
9228         </member>
9229         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.Translate(System.Byte[]@)">
9230             <summary>
9231             Translates a byte array
9232             </summary>
9233             <param name="byteArray">The array to be translated.</param>
9234         </member>
9235         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateArray``1(``0[]@)">
9236             <summary>
9237             Translates an array of objects implementing INodePacketTranslatable.
9238             </summary>
9239             <typeparam name="T">The reference type.</typeparam>
9240             <param name="array">The array to be translated.</param>
9241         </member>
9242         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateArray``1(``0[]@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9243             <summary>
9244             Translates an array of objects implementing INodePacketTranslatable requiring a factory to create.
9245             </summary>
9246             <typeparam name="T">The reference type.</typeparam>
9247             <param name="array">The array to be translated.</param>
9248             <param name="factory">The factory method used to instantiate values of type T.</param>
9249         </member>
9250         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateDictionary(System.Collections.Generic.Dictionary{System.String,System.String}@,System.Collections.Generic.IEqualityComparer{System.String})">
9251             <summary>
9252             Translates a dictionary of { string, string }.
9253             </summary>
9254             <param name="dictionary">The dictionary to be translated.</param>
9255             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9256         </member>
9257         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateDictionary``1(System.Collections.Generic.Dictionary{System.String,``0}@,System.Collections.Generic.IEqualityComparer{System.String},Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9258             <summary>
9259             Translates a dictionary of { string, T }.  
9260             </summary>
9261             <typeparam name="T">The reference type for the values, which implements INodePacketTranslatable.</typeparam>
9262             <param name="dictionary">The dictionary to be translated.</param>
9263             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9264             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9265         </member>
9266         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1})">
9267             <summary>
9268             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9269             </summary>
9270             <typeparam name="D">The reference type for the dictionary.</typeparam>
9271             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9272             <param name="dictionary">The dictionary to be translated.</param>
9273             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9274         </member>
9275         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1},Microsoft.Build.BackEnd.NodePacketCollectionCreator{``0})">
9276             <summary>
9277             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9278             </summary>
9279             <typeparam name="D">The reference type for the dictionary.</typeparam>
9280             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9281             <param name="dictionary">The dictionary to be translated.</param>
9282             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9283             <param name="collectionCreator">A factory used to create the dictionary.</param>
9284         </member>
9285         <member name="M:Microsoft.Build.BackEnd.INodePacketTranslator.TranslateNullable``1(``0)">
9286             <summary>
9287             Translates the boolean that says whether this value is null or not
9288             </summary>
9289             <param name="value">The object to test.</param>
9290             <typeparam name="T">The type of object to test.</typeparam>
9291             <returns>True if the object should be written, false otherwise.</returns>
9292         </member>
9293         <member name="T:Microsoft.Build.BackEnd.NodePacketTranslator">
9294             <summary>
9295             This class is responsible for serializing and deserializing simple types to and
9296             from the byte streams used to communicate INodePacket-implementing classes.
9297             Each class implements a Translate method on INodePacket which takes this class
9298             as a parameter, and uses it to store and retrieve fields to the stream.
9299             </summary>
9300         </member>
9301         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.GetReadTranslator(System.IO.Stream,Microsoft.Build.SharedReadBuffer)">
9302             <summary>
9303             Returns a read-only serializer.
9304             </summary>
9305             <returns>The serializer.</returns>
9306         </member>
9307         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.GetWriteTranslator(System.IO.Stream)">
9308             <summary>
9309             Returns a write-only serializer.
9310             </summary>
9311             <param name="stream">The stream containing data to serialize.</param>
9312             <returns>The serializer.</returns>
9313         </member>
9314         <member name="T:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator">
9315             <summary>
9316             Implementation of INodePacketTranslator for reading from a stream.
9317             </summary>
9318         </member>
9319         <member name="F:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator._packetStream">
9320             <summary>
9321             The stream used as a source or destination for data.
9322             </summary>
9323         </member>
9324         <member name="F:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator._reader">
9325             <summary>
9326             The binary reader used in read mode.
9327             </summary>
9328         </member>
9329         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.#ctor(System.IO.Stream,Microsoft.Build.SharedReadBuffer)">
9330             <summary>
9331             Constructs a serializer from the specified stream, operating in the designated mode.
9332             </summary>
9333         </member>
9334         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Reader">
9335             <summary>
9336             Gets the reader, if any.
9337             </summary>
9338         </member>
9339         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Writer">
9340             <summary>
9341             Gets the writer, if any.
9342             </summary>
9343         </member>
9344         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Mode">
9345             <summary>
9346             Returns the current serialization mode.
9347             </summary>
9348         </member>
9349         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Boolean@)">
9350             <summary>
9351             Translates a boolean.
9352             </summary>
9353             <param name="value">The value to be translated.</param>
9354         </member>
9355         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Byte@)">
9356             <summary>
9357             Translates a byte.
9358             </summary>
9359             <param name="value">The value to be translated.</param>
9360         </member>
9361         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Int16@)">
9362             <summary>
9363             Translates a short.
9364             </summary>
9365             <param name="value">The value to be translated.</param>
9366         </member>
9367         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.UInt16@)">
9368             <summary>
9369             Translates an unsigned short.
9370             </summary>
9371             <param name="value">The value to be translated.</param>
9372         </member>
9373         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Int32@)">
9374             <summary>
9375             Translates an integer.
9376             </summary>
9377             <param name="value">The value to be translated.</param>
9378         </member>
9379         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.String@)">
9380             <summary>
9381             Translates a string.
9382             </summary>
9383             <param name="value">The value to be translated.</param>
9384         </member>
9385         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Byte[]@)">
9386             <summary>
9387             Translates a byte array
9388             </summary>
9389             <param name="byteArray">The array to be translated</param>
9390         </member>
9391         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.String[]@)">
9392             <summary>
9393             Translates a string array.
9394             </summary>
9395             <param name="array">The array to be translated.</param>
9396         </member>
9397         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Collections.Generic.HashSet{System.String}@)">
9398             <inheritdoc />
9399         </member>
9400         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.Collections.Generic.List{System.String}@)">
9401             <summary>
9402             Translates a list of strings
9403             </summary>
9404             <param name="list">The list to be translated.</param>
9405         </member>
9406         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate``1(System.Collections.Generic.List{``0}@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9407             <summary>
9408             Translates a list of T where T implements INodePacketTranslateable
9409             </summary>
9410             <param name="list">The list to be translated.</param>
9411             <param name="factory">Factory to deserialize T</param>
9412             <typeparam name="T">TaskItem type</typeparam>
9413         </member>
9414         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(System.DateTime@)">
9415             <summary>
9416             Translates a DateTime.
9417             </summary>
9418             <param name="value">The value to be translated.</param>
9419         </member>
9420         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate(Microsoft.Build.Framework.BuildEventContext@)">
9421             <summary>
9422             Translates a BuildEventContext
9423             </summary>
9424             <remarks>
9425             This method exists only because there is no serialization method built into the BuildEventContext
9426             class, and it lives in Framework and we don't want to add a public method to it.
9427             </remarks>
9428             <param name="value">The context to be translated.</param>
9429         </member>
9430         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateCulture(System.Globalization.CultureInfo@)">
9431             <summary>
9432             Translates a CultureInfo
9433             </summary>
9434             <param name="value">The CultureInfo to translate</param>
9435         </member>
9436         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateEnum``1(``0@,System.Int32)">
9437             <summary>
9438             Translates an enumeration.
9439             </summary>
9440             <typeparam name="T">The enumeration type.</typeparam>
9441             <param name="value">The enumeration instance to be translated.</param>
9442             <param name="numericValue">The enumeration value as an integer.</param>
9443             <remarks>This is a bit ugly, but it doesn't seem like a nice method signature is possible because
9444             you can't pass the enum type as a reference and constrain the generic parameter to Enum.  Nor
9445             can you simply pass as ref Enum, because an enum instance doesn't match that function signature.
9446             Finally, converting the enum to an int assumes that we always want to transport enums as ints.  This
9447             works in all of our current cases, but certainly isn't perfectly generic.</remarks>
9448         </member>
9449         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateDotNet``1(``0@)">
9450             <summary>
9451             Translates a value using the .Net binary formatter.
9452             </summary>
9453             <typeparam name="T">The reference type.</typeparam>
9454             <param name="value">The value to be translated.</param>
9455         </member>
9456         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate``1(``0@)">
9457             <summary>
9458             Translates an object implementing INodePacketTranslatable.
9459             </summary>
9460             <typeparam name="T">The reference type.</typeparam>
9461             <param name="value">The value to be translated.</param>
9462         </member>
9463         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.Translate``1(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9464             <summary>
9465             Translates an object implementing INodePacketTranslatable which does not expose a
9466             public parameterless constructor.
9467             </summary>
9468             <typeparam name="T">The reference type.</typeparam>
9469             <param name="value">The value to be translated.</param>
9470             <param name="factory">The factory method used to instantiate values of type T.</param>
9471         </member>
9472         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateArray``1(``0[]@)">
9473             <summary>
9474             Translates an array of objects implementing INodePacketTranslatable.
9475             </summary>
9476             <typeparam name="T">The reference type.</typeparam>
9477             <param name="array">The array to be translated.</param>
9478         </member>
9479         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateArray``1(``0[]@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9480             <summary>
9481             Translates an array of objects implementing INodePacketTranslatable requiring a factory to create.
9482             </summary>
9483             <typeparam name="T">The reference type.</typeparam>
9484             <param name="array">The array to be translated.</param>
9485             <param name="factory">The factory method used to instantiate values of type T.</param>
9486         </member>
9487         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateDictionary(System.Collections.Generic.Dictionary{System.String,System.String}@,System.Collections.Generic.IEqualityComparer{System.String})">
9488             <summary>
9489             Translates a dictionary of { string, string }.
9490             </summary>
9491             <param name="dictionary">The dictionary to be translated.</param>
9492             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9493         </member>
9494         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateDictionary``1(System.Collections.Generic.Dictionary{System.String,``0}@,System.Collections.Generic.IEqualityComparer{System.String},Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9495             <summary>
9496             Translates a dictionary of { string, T }.  
9497             </summary>
9498             <typeparam name="T">The reference type for the values, which implements INodePacketTranslatable.</typeparam>
9499             <param name="dictionary">The dictionary to be translated.</param>
9500             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9501             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9502         </member>
9503         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1})">
9504             <summary>
9505             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9506             </summary>
9507             <typeparam name="D">The reference type for the dictionary.</typeparam>
9508             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9509             <param name="dictionary">The dictionary to be translated.</param>
9510             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9511         </member>
9512         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1},Microsoft.Build.BackEnd.NodePacketCollectionCreator{``0})">
9513             <summary>
9514             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9515             </summary>
9516             <typeparam name="D">The reference type for the dictionary.</typeparam>
9517             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9518             <param name="dictionary">The dictionary to be translated.</param>
9519             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9520             <param name="dictionaryCreator">The delegate used to instantiate the dictionary.</param>
9521         </member>
9522         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketReadTranslator.TranslateNullable``1(``0)">
9523             <summary>
9524             Reads in the boolean which says if this object is null or not.
9525             </summary>
9526             <typeparam name="T">The type of object to test.</typeparam>
9527             <returns>True if the object should be read, false otherwise.</returns>
9528         </member>
9529         <member name="T:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator">
9530             <summary>
9531             Implementation of INodePacketTranslator for writing to a stream.
9532             </summary>
9533         </member>
9534         <member name="F:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator._packetStream">
9535             <summary>
9536             The stream used as a source or destination for data.
9537             </summary>
9538         </member>
9539         <member name="F:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator._writer">
9540             <summary>
9541             The binary writer used in write mode.
9542             </summary>
9543         </member>
9544         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.#ctor(System.IO.Stream)">
9545             <summary>
9546             Constructs a serializer from the specified stream, operating in the designated mode.
9547             </summary>
9548             <param name="packetStream">The stream serving as the source or destination of data.</param>
9549         </member>
9550         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Reader">
9551             <summary>
9552             Gets the reader, if any.
9553             </summary>
9554         </member>
9555         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Writer">
9556             <summary>
9557             Gets the writer, if any.
9558             </summary>
9559         </member>
9560         <member name="P:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Mode">
9561             <summary>
9562             Returns the current serialization mode.
9563             </summary>
9564         </member>
9565         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Boolean@)">
9566             <summary>
9567             Translates a boolean.
9568             </summary>
9569             <param name="value">The value to be translated.</param>
9570         </member>
9571         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Byte@)">
9572             <summary>
9573             Translates a byte.
9574             </summary>
9575             <param name="value">The value to be translated.</param>
9576         </member>
9577         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Int16@)">
9578             <summary>
9579             Translates a short.
9580             </summary>
9581             <param name="value">The value to be translated.</param>
9582         </member>
9583         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.UInt16@)">
9584             <summary>
9585             Translates an unsigned short.
9586             </summary>
9587             <param name="value">The value to be translated.</param>
9588         </member>
9589         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Int32@)">
9590             <summary>
9591             Translates an integer.
9592             </summary>
9593             <param name="value">The value to be translated.</param>
9594         </member>
9595         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.String@)">
9596             <summary>
9597             Translates a string.
9598             </summary>
9599             <param name="value">The value to be translated.</param>
9600         </member>
9601         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.String[]@)">
9602             <summary>
9603             Translates a string array.
9604             </summary>
9605             <param name="array">The array to be translated.</param>
9606         </member>
9607         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Collections.Generic.List{System.String}@)">
9608             <summary>
9609             Translates a list of strings
9610             </summary>
9611             <param name="list">The list to be translated.</param>
9612         </member>
9613         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Collections.Generic.HashSet{System.String}@)">
9614             <inheritdoc />
9615         </member>
9616         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate``1(System.Collections.Generic.List{``0}@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9617             <summary>
9618             Translates a list of T where T implements INodePacketTranslateable
9619             </summary>
9620             <param name="list">The list to be translated.</param>
9621             <param name="factory">factory to create type T</param>
9622             <typeparam name="T">A TaskItemType</typeparam>
9623         </member>
9624         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate``2(System.Collections.Generic.IList{``0}@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0},Microsoft.Build.BackEnd.NodePacketCollectionCreator{``1})">
9625             <summary>
9626             Translates a list of T where T implements INodePacketTranslateable
9627             </summary>
9628             <param name="list">The list to be translated.</param>
9629             <param name="factory">factory to create type T</param>
9630             <param name="collectionFactory">factory to create the IList</param>
9631             <typeparam name="T">A TaskItemType</typeparam>
9632             <typeparam name="L">IList subtype</typeparam>
9633         </member>
9634         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.DateTime@)">
9635             <summary>
9636             Translates a DateTime.
9637             </summary>
9638             <param name="value">The value to be translated.</param>
9639         </member>
9640         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(Microsoft.Build.Framework.BuildEventContext@)">
9641             <summary>
9642             Translates a BuildEventContext
9643             </summary>
9644             <remarks>
9645             This method exists only because there is no serialization method built into the BuildEventContext
9646             class, and it lives in Framework and we don't want to add a public method to it.
9647             </remarks>
9648             <param name="value">The context to be translated.</param>
9649         </member>
9650         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateCulture(System.Globalization.CultureInfo@)">
9651             <summary>
9652             Translates a CultureInfo
9653             </summary>
9654             <param name="value">The CultureInfo</param>
9655         </member>
9656         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateEnum``1(``0@,System.Int32)">
9657             <summary>
9658             Translates an enumeration.
9659             </summary>
9660             <typeparam name="T">The enumeration type.</typeparam>
9661             <param name="value">The enumeration instance to be translated.</param>
9662             <param name="numericValue">The enumeration value as an integer.</param>
9663             <remarks>This is a bit ugly, but it doesn't seem like a nice method signature is possible because
9664             you can't pass the enum type as a reference and constrain the generic parameter to Enum.  Nor
9665             can you simply pass as ref Enum, because an enum instance doesn't match that function signature.
9666             Finally, converting the enum to an int assumes that we always want to transport enums as ints.  This
9667             works in all of our current cases, but certainly isn't perfectly generic.</remarks>
9668         </member>
9669         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateDotNet``1(``0@)">
9670             <summary>
9671             Translates a value using the .Net binary formatter.
9672             </summary>
9673             <typeparam name="T">The reference type.</typeparam>
9674             <param name="value">The value to be translated.</param>
9675         </member>
9676         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate``1(``0@)">
9677             <summary>
9678             Translates an object implementing INodePacketTranslatable.
9679             </summary>
9680             <typeparam name="T">The reference type.</typeparam>
9681             <param name="value">The value to be translated.</param>
9682         </member>
9683         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate``1(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9684             <summary>
9685             Translates an object implementing INodePacketTranslatable which does not expose a
9686             public parameterless constructor.
9687             </summary>
9688             <typeparam name="T">The reference type.</typeparam>
9689             <param name="value">The value to be translated.</param>
9690             <param name="factory">The factory method used to instantiate values of type T.</param>
9691         </member>
9692         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.Translate(System.Byte[]@)">
9693             <summary>
9694             Translates a byte array
9695             </summary>
9696             <param name="byteArray">The byte array to be translated</param>
9697         </member>
9698         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateArray``1(``0[]@)">
9699             <summary>
9700             Translates an array of objects implementing INodePacketTranslatable.
9701             </summary>
9702             <typeparam name="T">The reference type.</typeparam>
9703             <param name="array">The array to be translated.</param>
9704         </member>
9705         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateArray``1(``0[]@,Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9706             <summary>
9707             Translates an array of objects implementing INodePacketTranslatable requiring a factory to create.
9708             </summary>
9709             <typeparam name="T">The reference type.</typeparam>
9710             <param name="array">The array to be translated.</param>
9711             <param name="factory">The factory method used to instantiate values of type T.</param>
9712         </member>
9713         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateDictionary(System.Collections.Generic.Dictionary{System.String,System.String}@,System.Collections.Generic.IEqualityComparer{System.String})">
9714             <summary>
9715             Translates a dictionary of { string, string }.
9716             </summary>
9717             <param name="dictionary">The dictionary to be translated.</param>
9718             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9719         </member>
9720         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateDictionary``1(System.Collections.Generic.Dictionary{System.String,``0}@,System.Collections.Generic.IEqualityComparer{System.String},Microsoft.Build.BackEnd.NodePacketValueFactory{``0})">
9721             <summary>
9722             Translates a dictionary of { string, T }.  
9723             </summary>
9724             <typeparam name="T">The reference type for the values, which implements INodePacketTranslatable.</typeparam>
9725             <param name="dictionary">The dictionary to be translated.</param>
9726             <param name="comparer">The comparer used to instantiate the dictionary.</param>
9727             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9728         </member>
9729         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1})">
9730             <summary>
9731             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9732             </summary>
9733             <typeparam name="D">The reference type for the dictionary.</typeparam>
9734             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9735             <param name="dictionary">The dictionary to be translated.</param>
9736             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9737         </member>
9738         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateDictionary``2(``0@,Microsoft.Build.BackEnd.NodePacketValueFactory{``1},Microsoft.Build.BackEnd.NodePacketCollectionCreator{``0})">
9739             <summary>
9740             Translates a dictionary of { string, T } for dictionaries with public parameterless constructors.
9741             </summary>
9742             <typeparam name="D">The reference type for the dictionary.</typeparam>
9743             <typeparam name="T">The reference type for values in the dictionary.</typeparam>
9744             <param name="dictionary">The dictionary to be translated.</param>
9745             <param name="valueFactory">The factory used to instantiate values in the dictionary.</param>
9746             <param name="dictionaryCreator">The delegate used to instantiate the dictionary.</param>
9747         </member>
9748         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslator.NodePacketWriteTranslator.TranslateNullable``1(``0)">
9749             <summary>
9750             Writes out the boolean which says if this object is null or not.
9751             </summary>
9752             <param name="value">The object to test.</param>
9753             <typeparam name="T">The type of object to test.</typeparam>
9754             <returns>True if the object should be written, false otherwise.</returns>
9755         </member>
9756         <member name="T:Microsoft.Build.BackEnd.NodePacketFactory">
9757             <summary>
9758             Implementation of INodePacketFactory as a helper class for classes which expose this interface publicly.
9759             </summary>
9760         </member>
9761         <member name="F:Microsoft.Build.BackEnd.NodePacketFactory._packetFactories">
9762             <summary>
9763             Mapping of packet types to factory information.
9764             </summary>
9765         </member>
9766         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.#ctor">
9767             <summary>
9768             Constructor
9769             </summary>
9770         </member>
9771         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
9772             <summary>
9773             Registers a packet handler
9774             </summary>
9775         </member>
9776         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
9777             <summary>
9778             Unregisters a packet handler.
9779             </summary>
9780         </member>
9781         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
9782             <summary>
9783             Creates and routes a packet with data from a binary stream.
9784             </summary>
9785         </member>
9786         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
9787             <summary>
9788             Routes the specified packet.
9789             </summary>
9790         </member>
9791         <member name="T:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord">
9792             <summary>
9793             A record for a packet factory
9794             </summary>
9795         </member>
9796         <member name="F:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord._handler">
9797             <summary>
9798             The handler to invoke when the packet is deserialized.
9799             </summary>
9800         </member>
9801         <member name="F:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord._factoryMethod">
9802             <summary>
9803             The method used to construct a packet from a translator stream.
9804             </summary>
9805         </member>
9806         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord.#ctor(Microsoft.Build.BackEnd.INodePacketHandler,Microsoft.Build.BackEnd.NodePacketFactoryMethod)">
9807             <summary>
9808             Constructor.
9809             </summary>
9810         </member>
9811         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacketTranslator)">
9812             <summary>
9813             Creates a packet from a binary stream and sends it to the registered handler.
9814             </summary>
9815         </member>
9816         <member name="M:Microsoft.Build.BackEnd.NodePacketFactory.PacketFactoryRecord.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
9817             <summary>
9818             Routes the packet to the correct destination.
9819             </summary>
9820         </member>
9821         <member name="T:Microsoft.Build.BackEnd.NodeBuildComplete">
9822             <summary>
9823             The NodeBuildComplete packet is used to indicate to a node that it should clean up its current build and 
9824             possibly prepare for node reuse.
9825             </summary>
9826         </member>
9827         <member name="F:Microsoft.Build.BackEnd.NodeBuildComplete._prepareForReuse">
9828             <summary>
9829             Flag indicating if the node should prepare for reuse after cleanup.
9830             </summary>
9831         </member>
9832         <member name="M:Microsoft.Build.BackEnd.NodeBuildComplete.#ctor(System.Boolean)">
9833             <summary>
9834             Constructor.
9835             </summary>
9836         </member>
9837         <member name="M:Microsoft.Build.BackEnd.NodeBuildComplete.#ctor">
9838             <summary>
9839             Private constructor for translation
9840             </summary>
9841         </member>
9842         <member name="P:Microsoft.Build.BackEnd.NodeBuildComplete.PrepareForReuse">
9843             <summary>
9844             Flag indicating if the node should prepare for reuse.
9845             </summary>
9846         </member>
9847         <member name="P:Microsoft.Build.BackEnd.NodeBuildComplete.Type">
9848             <summary>
9849             The packet type
9850             </summary>
9851         </member>
9852         <member name="M:Microsoft.Build.BackEnd.NodeBuildComplete.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
9853             <summary>
9854             Translates the packet to/from binary form.
9855             </summary>
9856             <param name="translator">The translator to use.</param>
9857         </member>
9858         <member name="M:Microsoft.Build.BackEnd.NodeBuildComplete.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
9859             <summary>
9860             Factory for deserialization.
9861             </summary>
9862         </member>
9863         <member name="T:Microsoft.Build.BackEnd.NodeShutdownReason">
9864             <summary>
9865             Reasons why the node shut down.
9866             </summary>
9867         </member>
9868         <member name="F:Microsoft.Build.BackEnd.NodeShutdownReason.Requested">
9869             <summary>
9870             The node shut down because it was requested to shut down.
9871             </summary>
9872         </member>
9873         <member name="F:Microsoft.Build.BackEnd.NodeShutdownReason.Error">
9874             <summary>
9875             The node shut down because of an error.
9876             </summary>
9877         </member>
9878         <member name="F:Microsoft.Build.BackEnd.NodeShutdownReason.ConnectionFailed">
9879             <summary>
9880             The node shut down because the connection failed.
9881             </summary>
9882         </member>
9883         <member name="T:Microsoft.Build.BackEnd.NodeShutdown">
9884             <summary>
9885             Implementation of INodePacket for the packet informing the build manager than a node has shut down.
9886             This is the last packet the BuildManager will receive from a Node, and as such can be used to trigger
9887             any appropriate cleanup behavior.
9888             </summary>
9889         </member>
9890         <member name="F:Microsoft.Build.BackEnd.NodeShutdown._reason">
9891             <summary>
9892             The reason the node shut down.
9893             </summary>
9894         </member>
9895         <member name="F:Microsoft.Build.BackEnd.NodeShutdown._exception">
9896             <summary>
9897             The exception - if any.
9898             </summary>
9899         </member>
9900         <member name="M:Microsoft.Build.BackEnd.NodeShutdown.#ctor(Microsoft.Build.BackEnd.NodeShutdownReason)">
9901             <summary>
9902             Constructor
9903             </summary>
9904         </member>
9905         <member name="M:Microsoft.Build.BackEnd.NodeShutdown.#ctor(Microsoft.Build.BackEnd.NodeShutdownReason,System.Exception)">
9906             <summary>
9907             Constructor
9908             </summary>
9909         </member>
9910         <member name="M:Microsoft.Build.BackEnd.NodeShutdown.#ctor">
9911             <summary>
9912             Constructor for deserialization
9913             </summary>
9914         </member>
9915         <member name="P:Microsoft.Build.BackEnd.NodeShutdown.Type">
9916             <summary>
9917             Returns the packet type.
9918             </summary>
9919         </member>
9920         <member name="P:Microsoft.Build.BackEnd.NodeShutdown.Reason">
9921             <summary>
9922             The reason for shutting down.
9923             </summary>
9924         </member>
9925         <member name="P:Microsoft.Build.BackEnd.NodeShutdown.Exception">
9926             <summary>
9927             The exception, if any.
9928             </summary>
9929         </member>
9930         <member name="M:Microsoft.Build.BackEnd.NodeShutdown.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
9931             <summary>
9932             Serializes or deserializes a packet.
9933             </summary>
9934         </member>
9935         <member name="M:Microsoft.Build.BackEnd.NodeShutdown.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
9936             <summary>
9937             Factory method for deserialization
9938             </summary>
9939         </member>
9940         <member name="T:Microsoft.Build.BackEnd.TaskLoggingHelper">
9941             <summary>
9942             Helper logging class - contains all the logging methods used by tasks.
9943             A TaskLoggingHelper object is passed to every task by MSBuild. For tasks that derive
9944             from the Task class, it is provided in the Log property.
9945             This class is thread safe: tasks can log from any threads.
9946             </summary>
9947         </member>
9948         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.#ctor(Microsoft.Build.Framework.ITask)">
9949             <summary>
9950             public constructor
9951             </summary>
9952             <param name="taskInstance">task containing an instance of this class</param>
9953         </member>
9954         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.#ctor(Microsoft.Build.Framework.IBuildEngine,System.String)">
9955             <summary>
9956             Public constructor which can be used by task factories to assist them in logging messages.
9957             </summary>
9958         </member>
9959         <member name="F:Microsoft.Build.BackEnd.TaskLoggingHelper._sponsor">
9960             <summary>
9961             A client sponsor is a class
9962             which will respond to a lease renewal request and will
9963             increase the lease time allowing the object to stay in memory
9964             </summary>
9965         </member>
9966         <member name="F:Microsoft.Build.BackEnd.TaskLoggingHelper._locker">
9967             <summary>
9968             Object to make this class thread-safe.
9969             </summary>
9970         </member>
9971         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.TaskName">
9972             <summary>
9973             Gets the name of the parent task.
9974             </summary>
9975             <value>Task name string.</value>
9976         </member>
9977         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.TaskNameUpperCase">
9978             <summary>
9979             Gets the upper-case version of the parent task's name.
9980             </summary>
9981             <value>Upper-case task name string.</value>
9982         </member>
9983         <member name="F:Microsoft.Build.BackEnd.TaskLoggingHelper._buildEngine">
9984             <summary>
9985             The build engine we are going to log against
9986             </summary>
9987         </member>
9988         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.BuildEngine">
9989             <summary>
9990             Shortcut property for getting our build engine - we retrieve it from the task instance
9991             </summary>
9992         </member>
9993         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.TaskResources">
9994             <summary>
9995             Used to load culture-specific resources. Derived classes should register their resources either during construction, or
9996             via this property, if they have localized strings.
9997             </summary>
9998         </member>
9999         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.HelpKeywordPrefix">
10000             <summary>
10001             Gets or sets the prefix used to compose help keywords from string resource names.
10002             </summary>
10003             <value>The help keyword prefix string.</value>
10004         </member>
10005         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelper.HasLoggedErrors">
10006             <summary>
10007             Has the task logged any errors through this logging helper object?
10008             </summary>
10009         </member>
10010         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.ExtractMessageCode(System.String,System.String@)">
10011             <summary>
10012             Extracts the message code (if any) prefixed to the given message string. Message code prefixes must match the
10013             following .NET regular expression in order to be recognized: <c>^\s*[A-Za-z]+\d+:\s*</c>
10014             Thread safe.
10015             </summary>
10016             <example>
10017             If this method is given the string "MYTASK1001: This is an error message.", it will return "MYTASK1001" for the
10018             message code, and "This is an error message." for the message.
10019             </example>
10020             <param name="message">The message to parse.</param>
10021             <param name="messageWithoutCodePrefix">The message with the code prefix removed (if any).</param>
10022             <returns>The message code extracted from the prefix, or null if there was no code.</returns>
10023             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10024         </member>
10025         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.FormatResourceString(System.String,System.Object[])">
10026             <summary>
10027             Loads the specified resource string and optionally formats it using the given arguments. The current thread's culture
10028             is used for formatting.
10029             
10030             Requires the owner task to have registered its resources either via the Task (or TaskMarshalByRef) base
10031             class constructor, or the Task.TaskResources (or AppDomainIsolatedTask.TaskResources) property.
10032             
10033             Thread safe.
10034             </summary>
10035             <param name="resourceName">The name of the string resource to load.</param>
10036             <param name="args">Optional arguments for formatting the loaded string.</param>
10037             <returns>The formatted string.</returns>
10038             <exception cref="T:System.ArgumentNullException">Thrown when <c>resourceName</c> is null.</exception>
10039             <exception cref="T:System.ArgumentException">Thrown when the string resource indicated by <c>resourceName</c> does not exist.</exception>
10040             <exception cref="T:System.InvalidOperationException">Thrown when the <c>TaskResources</c> property of the owner task is not set.</exception>
10041         </member>
10042         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.FormatString(System.String,System.Object[])">
10043             <summary>
10044             Formats the given string using the variable arguments passed in. The current thread's culture is used for formatting.
10045             Thread safe.
10046             </summary>
10047             <param name="unformatted">The string to format.</param>
10048             <param name="args">Arguments for formatting.</param>
10049             <returns>The formatted string.</returns>
10050             <exception cref="T:System.ArgumentNullException">Thrown when <c>unformatted</c> is null.</exception>
10051         </member>
10052         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.GetResourceMessage(System.String)">
10053             <summary>
10054             Get the message from resource in task library.
10055             Thread safe.
10056             </summary>
10057             <param name="resourceName">The resource name.</param>
10058             <returns>The message from resource.</returns>
10059         </member>
10060         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessage(System.String,System.Object[])">
10061             <summary>
10062             Logs a message using the specified string.
10063             Thread safe.
10064             </summary>
10065             <param name="message">The message string.</param>
10066             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10067             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10068         </member>
10069         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessage(Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
10070             <summary>
10071             Logs a message of the given importance using the specified string.
10072             Thread safe.
10073             </summary>
10074             <remarks>
10075             Take care to order the parameters correctly or the other overload will be called inadvertently.
10076             </remarks>
10077             <param name="importance">The importance level of the message.</param>
10078             <param name="message">The message string.</param>
10079             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10080             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10081         </member>
10082         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessage(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
10083             <summary>
10084             Logs a message using the specified string and other message details.
10085             Thread safe.
10086             </summary>
10087             <param name="subcategory">Description of the warning type (can be null).</param>
10088             <param name="code">Message code (can be null)</param>
10089             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10090             <param name="file">The path to the file causing the message (can be null).</param>
10091             <param name="lineNumber">The line in the file causing the message (set to zero if not available).</param>
10092             <param name="columnNumber">The column in the file causing the message (set to zero if not available).</param>
10093             <param name="endLineNumber">The last line of a range of lines in the file causing the message (set to zero if not available).</param>
10094             <param name="endColumnNumber">The last column of a range of columns in the file causing the message (set to zero if not available).</param>
10095             <param name="importance">Importance of the message.</param>
10096             <param name="message">The message string.</param>
10097             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10098             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10099         </member>
10100         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogCriticalMessage(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10101             <summary>
10102             Logs a critical message using the specified string and other message details.
10103             Thread safe.
10104             </summary>
10105             <param name="subcategory">Description of the warning type (can be null).</param>
10106             <param name="code">Message code (can be null).</param>
10107             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10108             <param name="file">The path to the file causing the message (can be null).</param>
10109             <param name="lineNumber">The line in the file causing the message (set to zero if not available).</param>
10110             <param name="columnNumber">The column in the file causing the message (set to zero if not available).</param>
10111             <param name="endLineNumber">The last line of a range of lines in the file causing the message (set to zero if not available).</param>
10112             <param name="endColumnNumber">The last column of a range of columns in the file causing the message (set to zero if not available).</param>
10113             <param name="message">The message string.</param>
10114             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10115             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10116         </member>
10117         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessageFromResources(System.String,System.Object[])">
10118             <summary>
10119             Logs a message using the specified resource string.
10120             Thread safe.
10121             </summary>
10122             <param name="messageResourceName">The name of the string resource to load.</param>
10123             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10124             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10125         </member>
10126         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessageFromResources(Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
10127             <summary>
10128             Logs a message of the given importance using the specified resource string.
10129             Thread safe.
10130             </summary>
10131             <remarks>
10132             Take care to order the parameters correctly or the other overload will be called inadvertently.
10133             </remarks>
10134             <param name="importance">The importance level of the message.</param>
10135             <param name="messageResourceName">The name of the string resource to load.</param>
10136             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10137             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10138         </member>
10139         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogExternalProjectStarted(System.String,System.String,System.String,System.String)">
10140             <summary>
10141             Small helper for logging the custom ExternalProjectStarted build event
10142             Thread safe.
10143             </summary>
10144             <param name="message">text message</param>
10145             <param name="helpKeyword">help keyword</param>
10146             <param name="projectFile">project name</param>
10147             <param name="targetNames">targets we are going to build (empty indicates default targets)</param>
10148         </member>
10149         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogExternalProjectFinished(System.String,System.String,System.String,System.Boolean)">
10150             <summary>
10151             Small helper for logging the custom ExternalProjectFinished build event.
10152             Thread safe.
10153             </summary>
10154             <param name="message">text message</param>
10155             <param name="helpKeyword">help keyword</param>
10156             <param name="projectFile">project name</param>
10157             <param name="succeeded">true indicates project built successfully</param>
10158         </member>
10159         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogCommandLine(System.String)">
10160             <summary>
10161             Logs the command line for a task's underlying tool/executable/shell command.
10162             Thread safe.
10163             </summary>
10164             <param name="commandLine">The command line string.</param>
10165         </member>
10166         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogCommandLine(Microsoft.Build.Framework.MessageImportance,System.String)">
10167             <summary>
10168             Logs the command line for a task's underlying tool/executable/shell
10169             command, using the given importance level.
10170             Thread safe.
10171             </summary>
10172             <param name="importance">The importance level of the command line.</param>
10173             <param name="commandLine">The command line string.</param>
10174         </member>
10175         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogError(System.String,System.Object[])">
10176             <summary>
10177             Logs an error using the specified string.
10178             Thread safe.
10179             </summary>
10180             <param name="message">The message string.</param>
10181             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10182             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10183         </member>
10184         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogError(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10185             <summary>
10186             Logs an error using the specified string and other error details.
10187             Thread safe.
10188             </summary>
10189             <param name="subcategory">Description of the error type (can be null).</param>
10190             <param name="errorCode">The error code (can be null).</param>
10191             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10192             <param name="file">The path to the file containing the error (can be null).</param>
10193             <param name="lineNumber">The line in the file where the error occurs (set to zero if not available).</param>
10194             <param name="columnNumber">The column in the file where the error occurs (set to zero if not available).</param>
10195             <param name="endLineNumber">The last line of a range of lines in the file where the error occurs (set to zero if not available).</param>
10196             <param name="endColumnNumber">The last column of a range of columns in the file where the error occurs (set to zero if not available).</param>
10197             <param name="message">The message string.</param>
10198             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10199             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10200         </member>
10201         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorFromResources(System.String,System.Object[])">
10202             <summary>
10203             Logs an error using the specified resource string.
10204             Thread safe.
10205             </summary>
10206             <param name="messageResourceName">The name of the string resource to load.</param>
10207             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10208             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10209         </member>
10210         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorFromResources(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10211             <summary>
10212             Logs an error using the specified resource string and other error details.
10213             Thread safe.
10214             </summary>
10215             <param name="subcategoryResourceName">The name of the string resource that describes the error type (can be null).</param>
10216             <param name="errorCode">The error code (can be null).</param>
10217             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10218             <param name="file">The path to the file containing the error (can be null).</param>
10219             <param name="lineNumber">The line in the file where the error occurs (set to zero if not available).</param>
10220             <param name="columnNumber">The column in the file where the error occurs (set to zero if not available).</param>
10221             <param name="endLineNumber">The last line of a range of lines in the file where the error occurs (set to zero if not available).</param>
10222             <param name="endColumnNumber">The last column of a range of columns in the file where the error occurs (set to zero if not available).</param>
10223             <param name="messageResourceName">The name of the string resource containing the error message.</param>
10224             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10225             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10226         </member>
10227         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorWithCodeFromResources(System.String,System.Object[])">
10228             <summary>
10229             Logs an error using the specified resource string. 
10230             If the message has an error code prefixed to it, the code is extracted and logged with the message. If a help keyword
10231             prefix has been provided, a help keyword for the host IDE is also logged with the message. The help keyword is
10232             composed by appending the string resource name to the prefix.
10233             
10234             A task can provide a help keyword prefix either via the Task (or TaskMarshalByRef) base class constructor, or the
10235             Task.HelpKeywordPrefix (or AppDomainIsolatedTask.HelpKeywordPrefix) property.
10236                
10237             Thread safe.
10238             </summary>
10239             <param name="messageResourceName">The name of the string resource to load.</param>
10240             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10241             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10242         </member>
10243         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorWithCodeFromResources(System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10244             <summary>
10245             Logs an error using the specified resource string and other error details. 
10246             If the message has an error code prefixed, the code is extracted and logged with the message. If a
10247             help keyword prefix has been provided, a help keyword for the host IDE is also logged with the message. The help
10248             keyword is composed by appending the error message resource string name to the prefix.
10249             
10250             A task can provide a help keyword prefix either via the Task (or TaskMarshalByRef) base class constructor, or the
10251             Task.HelpKeywordPrefix (or AppDomainIsolatedTask.HelpKeywordPrefix) property.
10252                
10253             Thread safe.
10254             </summary>
10255             <param name="subcategoryResourceName">The name of the string resource that describes the error type (can be null).</param>
10256             <param name="file">The path to the file containing the error (can be null).</param>
10257             <param name="lineNumber">The line in the file where the error occurs (set to zero if not available).</param>
10258             <param name="columnNumber">The column in the file where the error occurs (set to zero if not available).</param>
10259             <param name="endLineNumber">The last line of a range of lines in the file where the error occurs (set to zero if not available).</param>
10260             <param name="endColumnNumber">The last column of a range of columns in the file where the error occurs (set to zero if not available).</param>
10261             <param name="messageResourceName">The name of the string resource containing the error message.</param>
10262             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10263             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10264         </member>
10265         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorFromException(System.Exception)">
10266             <summary>
10267             Logs an error using the message from the given exception context.
10268             No callstack will be shown.
10269             Thread safe.
10270             </summary>
10271             <param name="exception">Exception to log.</param>
10272             <exception cref="T:System.ArgumentNullException">Thrown when <c>e</c> is null.</exception>
10273         </member>
10274         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorFromException(System.Exception,System.Boolean)">
10275             <summary>
10276             Logs an error using the message (and optionally the stack-trace) from the given exception context.
10277             Thread safe.
10278             </summary>
10279             <param name="exception">Exception to log.</param>
10280             <param name="showStackTrace">If true, callstack will be appended to message.</param>
10281             <exception cref="T:System.ArgumentNullException">Thrown when <c>exception</c> is null.</exception>
10282         </member>
10283         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogErrorFromException(System.Exception,System.Boolean,System.Boolean,System.String)">
10284             <summary>
10285             Logs an error using the message, and optionally the stack-trace from the given exception, and
10286             optionally inner exceptions too.
10287             Thread safe.
10288             </summary>
10289             <param name="exception">Exception to log.</param>
10290             <param name="showStackTrace">If true, callstack will be appended to message.</param>
10291             <param name="showDetail">Whether to log exception types and any inner exceptions.</param>
10292             <param name="file">File related to the exception, or null if the project file should be logged</param>
10293             <exception cref="T:System.ArgumentNullException">Thrown when <c>exception</c> is null.</exception>
10294         </member>
10295         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarning(System.String,System.Object[])">
10296             <summary>
10297             Logs a warning using the specified string.
10298             Thread safe.
10299             </summary>
10300             <param name="message">The message string.</param>
10301             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10302             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10303         </member>
10304         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarning(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10305             <summary>
10306             Logs a warning using the specified string and other warning details.
10307             Thread safe.
10308             </summary>
10309             <param name="subcategory">Description of the warning type (can be null).</param>
10310             <param name="warningCode">The warning code (can be null).</param>
10311             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10312             <param name="file">The path to the file causing the warning (can be null).</param>
10313             <param name="lineNumber">The line in the file causing the warning (set to zero if not available).</param>
10314             <param name="columnNumber">The column in the file causing the warning (set to zero if not available).</param>
10315             <param name="endLineNumber">The last line of a range of lines in the file causing the warning (set to zero if not available).</param>
10316             <param name="endColumnNumber">The last column of a range of columns in the file causing the warning (set to zero if not available).</param>
10317             <param name="message">The message string.</param>
10318             <param name="messageArgs">Optional arguments for formatting the message string.</param>
10319             <exception cref="T:System.ArgumentNullException">Thrown when <c>message</c> is null.</exception>
10320         </member>
10321         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningFromResources(System.String,System.Object[])">
10322             <summary>
10323             Logs a warning using the specified resource string.
10324             Thread safe.
10325             </summary>
10326             <param name="messageResourceName">The name of the string resource to load.</param>
10327             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10328             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10329         </member>
10330         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningFromResources(System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10331             <summary>
10332             Logs a warning using the specified resource string and other warning details.
10333             Thread safe.
10334             </summary>
10335             <param name="subcategoryResourceName">The name of the string resource that describes the warning type (can be null).</param>
10336             <param name="warningCode">The warning code (can be null).</param>
10337             <param name="helpKeyword">The help keyword for the host IDE (can be null).</param>
10338             <param name="file">The path to the file causing the warning (can be null).</param>
10339             <param name="lineNumber">The line in the file causing the warning (set to zero if not available).</param>
10340             <param name="columnNumber">The column in the file causing the warning (set to zero if not available).</param>
10341             <param name="endLineNumber">The last line of a range of lines in the file causing the warning (set to zero if not available).</param>
10342             <param name="endColumnNumber">The last column of a range of columns in the file causing the warning (set to zero if not available).</param>
10343             <param name="messageResourceName">The name of the string resource containing the warning message.</param>
10344             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10345             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10346         </member>
10347         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningWithCodeFromResources(System.String,System.Object[])">
10348             <summary>
10349             Logs a warning using the specified resource string. 
10350             If the message has a warning code prefixed to it, the code is extracted and logged with the message. If a help keyword
10351             prefix has been provided, a help keyword for the host IDE is also logged with the message. The help keyword is
10352             composed by appending the string resource name to the prefix.
10353             
10354             A task can provide a help keyword prefix either via the Task (or TaskMarshalByRef) base class constructor, or the
10355             Task.HelpKeywordPrefix (or AppDomainIsolatedTask.HelpKeywordPrefix) property.
10356             
10357             Thread safe.
10358             </summary>
10359             <param name="messageResourceName">The name of the string resource to load.</param>
10360             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10361             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10362         </member>
10363         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningWithCodeFromResources(System.String,System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.Object[])">
10364             <summary>
10365             Logs a warning using the specified resource string and other warning details. 
10366             If the message has a warning code, the code is extracted and logged with the message.
10367             If a help keyword prefix has been provided, a help keyword for the host IDE is also logged with the message. The help
10368             keyword is composed by appending the warning message resource string name to the prefix.
10369             
10370             A task can provide a help keyword prefix either via the Task (or TaskMarshalByRef) base class constructor, or the
10371             Task.HelpKeywordPrefix (or AppDomainIsolatedTask.HelpKeywordPrefix) property.
10372             
10373             Thread safe.
10374             </summary>
10375             <param name="subcategoryResourceName">The name of the string resource that describes the warning type (can be null).</param>
10376             <param name="file">The path to the file causing the warning (can be null).</param>
10377             <param name="lineNumber">The line in the file causing the warning (set to zero if not available).</param>
10378             <param name="columnNumber">The column in the file causing the warning (set to zero if not available).</param>
10379             <param name="endLineNumber">The last line of a range of lines in the file causing the warning (set to zero if not available).</param>
10380             <param name="endColumnNumber">The last column of a range of columns in the file causing the warning (set to zero if not available).</param>
10381             <param name="messageResourceName">The name of the string resource containing the warning message.</param>
10382             <param name="messageArgs">Optional arguments for formatting the loaded string.</param>
10383             <exception cref="T:System.ArgumentNullException">Thrown when <c>messageResourceName</c> is null.</exception>
10384         </member>
10385         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningFromException(System.Exception)">
10386             <summary>
10387             Logs a warning using the message from the given exception context.
10388             Thread safe.
10389             </summary>
10390             <param name="exception">Exception to log.</param>
10391             <exception cref="T:System.ArgumentNullException">Thrown when <c>exception</c> is null.</exception>
10392         </member>
10393         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogWarningFromException(System.Exception,System.Boolean)">
10394             <summary>
10395             Logs a warning using the message (and optionally the stack-trace) from the given exception context.
10396             Thread safe.
10397             </summary>
10398             <param name="exception">Exception to log.</param>
10399             <param name="showStackTrace">If true, the exception callstack is appended to the message.</param>
10400             <exception cref="T:System.ArgumentNullException">Thrown when <c>exception</c> is null.</exception>
10401         </member>
10402         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessagesFromFile(System.String)">
10403             <summary>
10404             Logs errors/warnings/messages for each line of text in the given file. Errors/warnings are only logged for lines that
10405             fit a particular (canonical) format -- the remaining lines are treated as messages.
10406             Thread safe.
10407             </summary>
10408             <param name="fileName">The file to log from.</param>
10409             <returns>true, if any errors were logged</returns>
10410             <exception cref="T:System.ArgumentNullException">Thrown when <c>filename</c> is null.</exception>
10411         </member>
10412         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessagesFromFile(System.String,Microsoft.Build.Framework.MessageImportance)">
10413             <summary>
10414             Logs errors/warnings/messages for each line of text in the given file. Errors/warnings are only logged for lines that
10415             fit a particular (canonical) format -- the remaining lines are treated as messages.
10416             Thread safe.
10417             </summary>
10418             <param name="fileName">The file to log from.</param>
10419             <param name="messageImportance">The importance level for messages that are neither errors nor warnings.</param>
10420             <returns>true, if any errors were logged</returns>
10421             <exception cref="T:System.ArgumentNullException">Thrown when <c>filename</c> is null.</exception>
10422         </member>
10423         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessagesFromStream(System.IO.TextReader,Microsoft.Build.Framework.MessageImportance)">
10424             <summary>
10425             Logs errors/warnings/messages for each line of text in the given stream. Errors/warnings are only logged for lines
10426             that fit a particular (canonical) format -- the remaining lines are treated as messages.
10427             Thread safe.
10428             </summary>
10429             <param name="stream">The stream to log from.</param>
10430             <param name="messageImportance">The importance level for messages that are neither errors nor warnings.</param>
10431             <returns>true, if any errors were logged</returns>
10432             <exception cref="T:System.ArgumentNullException">Thrown when <c>stream</c> is null.</exception>
10433         </member>
10434         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogMessageFromText(System.String,Microsoft.Build.Framework.MessageImportance)">
10435             <summary>
10436             Logs an error/warning/message from the given line of text. Errors/warnings are only logged for lines that fit a
10437             particular (canonical) format -- all other lines are treated as messages.
10438             Thread safe.
10439             </summary>
10440             <param name="lineOfText">The line of text to log from.</param>
10441             <param name="messageImportance">The importance level for messages that are neither errors nor warnings.</param>
10442             <returns>true, if an error was logged</returns>
10443             <exception cref="T:System.ArgumentNullException">Thrown when <c>lineOfText</c> is null.</exception>
10444         </member>
10445         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.LogTelemetry(System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
10446             <summary>
10447             Logs telemetry with the specified event name and properties.
10448             </summary>
10449             <param name="eventName">The event name.</param>
10450             <param name="properties">The list of properties associated with the event.</param>
10451         </member>
10452         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.InitializeLifetimeService">
10453             <summary>
10454             InitializeLifetimeService is called when the remote object is activated. 
10455             This method will determine how long the lifetime for the object will be.
10456             Thread safe. However, InitializeLifetimeService and MarkAsInactive should
10457             only be called in that order, together or not at all, and no more than once.
10458             </summary>
10459             <returns>The lease object to control this object's lifetime.</returns>
10460         </member>
10461         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelper.MarkAsInactive">
10462             <summary>
10463             Notifies this object that its work is done.
10464             Thread safe. However, InitializeLifetimeService and MarkAsInactive should
10465             only be called in that order, together or not at all, and no more than once.
10466             </summary>
10467             <remarks>
10468             Indicates to the TaskLoggingHelper that it is no longer needed.
10469             </remarks>
10470         </member>
10471         <member name="T:Microsoft.Build.BackEnd.TaskLoggingHelperExtension">
10472             <summary>
10473             Helper logging class for tasks, used for dealing with two resource streams.
10474             </summary>
10475         </member>
10476         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelperExtension.#ctor(Microsoft.Build.Framework.ITask,System.Resources.ResourceManager,System.Resources.ResourceManager,System.String)">
10477             <summary>
10478             public constructor
10479             </summary>
10480         </member>
10481         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelperExtension.#ctor">
10482             <summary>
10483             private default constructor - we should be using the constructor accepting an ITask argument
10484             to create instances of this class
10485             </summary>
10486         </member>
10487         <member name="P:Microsoft.Build.BackEnd.TaskLoggingHelperExtension.TaskSharedResources">
10488             <summary>
10489             Used to load culture-specific resources. Derived classes should register their resources either during construction, or
10490             via this property, if they have localized strings.
10491             </summary>
10492         </member>
10493         <member name="M:Microsoft.Build.BackEnd.TaskLoggingHelperExtension.FormatResourceString(System.String,System.Object[])">
10494             <summary>
10495             Loads the specified resource string and optionally formats it using the given arguments. The current thread's culture
10496             is used for formatting.
10497             </summary>
10498             <remarks>
10499             1) This method requires the owner task to have registered its resources either via the Task (or TaskMarshalByRef) base
10500                class constructor, or the "Task.TaskResources" (or "AppDomainIsolatedTask.TaskResources") property.
10501             2) This method is thread-safe.
10502             </remarks>
10503             <param name="resourceName">The name of the string resource to load.</param>
10504             <param name="args">Optional arguments for formatting the loaded string.</param>
10505             <returns>The formatted string.</returns>
10506             <exception cref="T:System.ArgumentNullException">Thrown when <c>resourceName</c> is null.</exception>
10507             <exception cref="T:System.ArgumentException">Thrown when the string resource indicated by <c>resourceName</c> does not exist.</exception>
10508             <exception cref="T:System.InvalidOperationException">Thrown when the <c>TaskResources</c> property of the owner task is not set.</exception>
10509         </member>
10510         <member name="T:Microsoft.Build.BackEnd.TaskParameterType">
10511             <summary>
10512             Type of parameter, used to figure out how to serialize it. 
10513             </summary>
10514         </member>
10515         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.Null">
10516             <summary>
10517             Parameter is null
10518             </summary>
10519         </member>
10520         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.String">
10521             <summary>
10522             Parameter is a string
10523             </summary>
10524         </member>
10525         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.StringArray">
10526             <summary>
10527             Parameter is an array of strings
10528             </summary>
10529         </member>
10530         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.ValueType">
10531             <summary>
10532             Parameter is a value type.  Note:  Must be serializable
10533             </summary>
10534         </member>
10535         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.ValueTypeArray">
10536             <summary>
10537             Parameter is an array of value types.  Note:  Must be serializable. 
10538             </summary>
10539         </member>
10540         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.ITaskItem">
10541             <summary>
10542             Parameter is an ITaskItem 
10543             </summary>
10544         </member>
10545         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.ITaskItemArray">
10546             <summary>
10547             Parameter is an array of ITaskItems
10548             </summary>
10549         </member>
10550         <member name="F:Microsoft.Build.BackEnd.TaskParameterType.Invalid">
10551             <summary>
10552             An invalid parameter -- the value of this parameter contains the exception 
10553             that is thrown when trying to access it. 
10554             </summary>
10555         </member>
10556         <member name="T:Microsoft.Build.BackEnd.TaskParameter">
10557             <summary>
10558             Wrapper for task parameters, to allow proper serialization even 
10559             in cases where the parameter is not .NET serializable. 
10560             </summary>
10561         </member>
10562         <member name="F:Microsoft.Build.BackEnd.TaskParameter._parameterType">
10563             <summary>
10564             The TaskParameterType of the wrapped parameter
10565             </summary>
10566         </member>
10567         <member name="F:Microsoft.Build.BackEnd.TaskParameter._wrappedParameter">
10568             <summary>
10569             The actual task parameter that we're wrapping
10570             </summary>
10571         </member>
10572         <member name="M:Microsoft.Build.BackEnd.TaskParameter.#ctor(System.Object)">
10573             <summary>
10574             Create a new TaskParameter
10575             </summary>
10576         </member>
10577         <member name="M:Microsoft.Build.BackEnd.TaskParameter.#ctor">
10578             <summary>
10579             Constructor for deserialization
10580             </summary>
10581         </member>
10582         <member name="P:Microsoft.Build.BackEnd.TaskParameter.ParameterType">
10583             <summary>
10584             The TaskParameterType of the wrapped parameter
10585             </summary>
10586         </member>
10587         <member name="P:Microsoft.Build.BackEnd.TaskParameter.WrappedParameter">
10588             <summary>
10589             The actual task parameter that we're wrapping
10590             </summary>
10591         </member>
10592         <member name="M:Microsoft.Build.BackEnd.TaskParameter.ToString">
10593             <summary>
10594             TaskParameter's ToString should just pass through to whatever it's wrapping. 
10595             </summary>
10596         </member>
10597         <member name="M:Microsoft.Build.BackEnd.TaskParameter.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
10598             <summary>
10599             Serialize / deserialize this item. 
10600             </summary>
10601         </member>
10602         <member name="M:Microsoft.Build.BackEnd.TaskParameter.InitializeLifetimeService">
10603             <summary>
10604             Overridden to give this class infinite lease time. Otherwise we end up with a limited
10605             lease (5 minutes I think) and instances can expire if they take long time processing.
10606             </summary>
10607         </member>
10608         <member name="M:Microsoft.Build.BackEnd.TaskParameter.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
10609             <summary>
10610             Factory for deserialization.
10611             </summary>
10612         </member>
10613         <member name="M:Microsoft.Build.BackEnd.TaskParameter.CreateNewTaskItemFrom(Microsoft.Build.Framework.ITaskItem)">
10614             <summary>
10615             Creates a new ITaskItem with the contents of the old one. 
10616             </summary>
10617         </member>
10618         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TranslateITaskItemArray(Microsoft.Build.BackEnd.INodePacketTranslator)">
10619             <summary>
10620             Serialize / deserialize this item. 
10621             </summary>
10622         </member>
10623         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TranslateITaskItem(Microsoft.Build.BackEnd.INodePacketTranslator)">
10624             <summary>
10625             Serialize / deserialize this item. 
10626             </summary>
10627         </member>
10628         <member name="M:Microsoft.Build.BackEnd.TaskParameter.WriteITaskItem(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Framework.ITaskItem)">
10629             <summary>
10630             Write the given ITaskItem, using the given write translator
10631             </summary>
10632         </member>
10633         <member name="M:Microsoft.Build.BackEnd.TaskParameter.ReadITaskItem(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Framework.ITaskItem@)">
10634             <summary>
10635             Read an ITaskItem into the given parameter, using the given read translator
10636             </summary>
10637         </member>
10638         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TranslateNullable``1(Microsoft.Build.BackEnd.INodePacketTranslator,``0)">
10639             <summary>
10640             Writes out the boolean which says if this object is null or not.
10641             </summary>
10642             <typeparam name="T">The nullable type to translate.</typeparam>
10643         </member>
10644         <member name="T:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem">
10645             <summary>
10646             Super simple ITaskItem derivative that we can use as a container for read items.  
10647             </summary>
10648         </member>
10649         <member name="F:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem._escapedItemSpec">
10650             <summary>
10651             The item spec 
10652             </summary>
10653         </member>
10654         <member name="F:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem._escapedDefiningProject">
10655             <summary>
10656             The full path to the project that originally defined this item.
10657             </summary>
10658         </member>
10659         <member name="F:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem._customEscapedMetadata">
10660             <summary>
10661             The custom metadata
10662             </summary>
10663         </member>
10664         <member name="F:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem._fullPath">
10665             <summary>
10666             Cache for fullpath metadata
10667             </summary>
10668         </member>
10669         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.#ctor(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
10670             <summary>
10671             Constructor for serialization
10672             </summary>
10673         </member>
10674         <member name="P:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.ItemSpec">
10675             <summary>
10676             Gets or sets the item "specification" e.g. for disk-based items this would be the file path.
10677             </summary>
10678             <remarks>
10679             This should be named "EvaluatedInclude" but that would be a breaking change to this interface.
10680             </remarks>
10681             <value>The item-spec string.</value>
10682         </member>
10683         <member name="P:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.MetadataNames">
10684             <summary>
10685             Gets the names of all the metadata on the item.
10686             Includes the built-in metadata like "FullPath".
10687             </summary>
10688             <value>The list of metadata names.</value>
10689         </member>
10690         <member name="P:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.MetadataCount">
10691             <summary>
10692             Gets the number of pieces of metadata on the item. Includes
10693             both custom and built-in metadata.  Used only for unit testing.
10694             </summary>
10695             <value>Count of pieces of metadata.</value>
10696         </member>
10697         <member name="P:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.Microsoft#Build#Framework#ITaskItem2#EvaluatedIncludeEscaped">
10698             <summary>
10699             Returns the escaped version of this item's ItemSpec
10700             </summary>
10701         </member>
10702         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.GetMetadata(System.String)">
10703             <summary>
10704             Allows the values of metadata on the item to be queried.
10705             </summary>
10706             <param name="metadataName">The name of the metadata to retrieve.</param>
10707             <returns>The value of the specified metadata.</returns>
10708         </member>
10709         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.SetMetadata(System.String,System.String)">
10710             <summary>
10711             Allows a piece of custom metadata to be set on the item.
10712             </summary>
10713             <param name="metadataName">The name of the metadata to set.</param>
10714             <param name="metadataValue">The metadata value.</param>
10715         </member>
10716         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.RemoveMetadata(System.String)">
10717             <summary>
10718             Allows the removal of custom metadata set on the item.
10719             </summary>
10720             <param name="metadataName">The name of the metadata to remove.</param>
10721         </member>
10722         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.CopyMetadataTo(Microsoft.Build.Framework.ITaskItem)">
10723             <summary>
10724             Allows custom metadata on the item to be copied to another item.
10725             </summary>
10726             <remarks>
10727             RECOMMENDED GUIDELINES FOR METHOD IMPLEMENTATIONS:
10728             1) this method should NOT copy over the item-spec
10729             2) if a particular piece of metadata already exists on the destination item, it should NOT be overwritten
10730             3) if there are pieces of metadata on the item that make no semantic sense on the destination item, they should NOT be copied
10731             </remarks>
10732             <param name="destinationItem">The item to copy metadata to.</param>
10733         </member>
10734         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.CloneCustomMetadata">
10735             <summary>
10736             Get the collection of custom metadata. This does not include built-in metadata.
10737             </summary>
10738             <remarks>
10739             RECOMMENDED GUIDELINES FOR METHOD IMPLEMENTATIONS:
10740             1) this method should return a clone of the metadata
10741             2) writing to this dictionary should not be reflected in the underlying item.
10742             </remarks>
10743             <returns>Dictionary of cloned metadata</returns>
10744         </member>
10745         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.InitializeLifetimeService">
10746             <summary>
10747             Overridden to give this class infinite lease time. Otherwise we end up with a limited
10748             lease (5 minutes I think) and instances can expire if they take long time processing.
10749             </summary>
10750         </member>
10751         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.Microsoft#Build#Framework#ITaskItem2#GetMetadataValueEscaped(System.String)">
10752             <summary>
10753             Returns the escaped value of the requested metadata name.
10754             </summary>
10755         </member>
10756         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.Microsoft#Build#Framework#ITaskItem2#SetMetadataValueLiteral(System.String,System.String)">
10757             <summary>
10758             Sets the exact metadata value given to the metadata name requested. 
10759             </summary>
10760         </member>
10761         <member name="M:Microsoft.Build.BackEnd.TaskParameter.TaskParameterTaskItem.Microsoft#Build#Framework#ITaskItem2#CloneCustomMetadataEscaped">
10762             <summary>
10763             Returns a dictionary containing all metadata and their escaped forms.  
10764             </summary>
10765         </member>
10766         <member name="T:Microsoft.Build.BackEnd.TaskParameterTypeVerifier">
10767             <summary>
10768             Provide a class which can verify the correct type for both input and output parameters.
10769             </summary>
10770         </member>
10771         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsValidScalarInputParameter(System.Type)">
10772             <summary>
10773             Is the parameter type a valid scalar input value
10774             </summary>
10775         </member>
10776         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsValidVectorInputParameter(System.Type)">
10777             <summary>
10778             Is the passed in parameterType a valid vector input parameter
10779             </summary>
10780         </member>
10781         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsAssignableToITask(System.Type)">
10782             <summary>
10783             Is the passed in value type assignable to an ITask or Itask[] object
10784             </summary>
10785         </member>
10786         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsValueTypeOutputParameter(System.Type)">
10787             <summary>
10788             Is the passed parameter a valid value type output parameter
10789             </summary>
10790         </member>
10791         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsValidInputParameter(System.Type)">
10792             <summary>
10793             Is the parameter type a valid scalar or value type input parameter
10794             </summary>
10795         </member>
10796         <member name="M:Microsoft.Build.BackEnd.TaskParameterTypeVerifier.IsValidOutputParameter(System.Type)">
10797             <summary>
10798             Is the parameter type a valid scalar or value type output parameter
10799             </summary>
10800         </member>
10801         <member name="T:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver">
10802             <summary>
10803             This is a helper class to install an AssemblyResolver event handler in whatever AppDomain this class is created in.
10804             </summary>
10805         </member>
10806         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.#ctor">
10807             <summary>
10808             This public default constructor is needed so that instances of this class can be created by NDP.
10809             </summary>
10810         </member>
10811         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.Initialize(System.String)">
10812             <summary>
10813             Initializes the instance.
10814             </summary>
10815             <param name="taskAssemblyFileToResolve"></param>
10816         </member>
10817         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.InstallHandler">
10818             <summary>
10819             Installs an AssemblyResolve handler in the current AppDomain. This class can be created in any AppDomain, 
10820             so it's possible to create an AppDomain, create an instance of this class in it and use this method to install
10821             an event handler in that AppDomain. Since the event handler instance is stored internally, this method
10822             should only be called once before a corresponding call to RemoveHandler (not that it would make sense to do 
10823             anything else).
10824             </summary>
10825         </member>
10826         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.RemoveHandler">
10827             <summary>
10828             Removes the event handler.
10829             </summary>
10830         </member>
10831         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.ResolveAssembly(System.Object,System.ResolveEventArgs)">
10832             <summary>
10833             This is an assembly resolution handler necessary for fixing up types instantiated in different
10834             AppDomains and loaded with a Assembly.LoadFrom equivalent call. See comments in TaskEngine.ExecuteTask
10835             for more details.
10836             </summary>
10837             <param name="sender"></param>
10838             <param name="args"></param>
10839             <returns></returns>
10840         </member>
10841         <member name="M:Microsoft.Build.BackEnd.Logging.TaskEngineAssemblyResolver.InitializeLifetimeService">
10842             <summary>
10843             Overridden to give this class infinite lease time. Otherwise we end up with a limited
10844             lease (5 minutes I think) and instances can expire if they take long time processing.
10845             </summary>
10846         </member>
10847         <member name="T:Microsoft.Build.BackEnd.Logging.BuildLoggingContext">
10848             <summary>
10849             Intended to be used in the nodes, during a build, where a base LoggingContext is created when the node
10850             initializes for a build (this is the public constructor.)  When a new project, target batch
10851             or task batch is started, the appropriate method on the current LoggingContext is invoked
10852             and a new LoggingContext is returned.  This new LoggingContext should be used for all
10853             subsequent logging within the subcontext.
10854             </summary>
10855         </member>
10856         <member name="F:Microsoft.Build.BackEnd.Logging.BuildLoggingContext._isInProcNode">
10857             <summary>
10858             True if this context comes from the in-proc node.
10859             </summary>
10860         </member>
10861         <member name="M:Microsoft.Build.BackEnd.Logging.BuildLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Boolean)">
10862             <summary>
10863             Constructs the logging context from a logging service and an event context.
10864             </summary>
10865             <param name="loggingService">The logging service to use</param>
10866             <param name="buildEventContext">The event context</param>
10867             <param name="inProc">Flag indicating if this context belongs to an in-proc node.</param>
10868         </member>
10869         <member name="M:Microsoft.Build.BackEnd.Logging.BuildLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.BuildLoggingContext)">
10870             <inheritdoc cref="T:Microsoft.Build.BackEnd.Logging.LoggingContext"/>
10871         </member>
10872         <member name="P:Microsoft.Build.BackEnd.Logging.BuildLoggingContext.IsInProcNode">
10873             <summary>
10874             Flag indicating if the context is being used for the in-proc node.
10875             </summary>
10876         </member>
10877         <member name="M:Microsoft.Build.BackEnd.Logging.BuildLoggingContext.LogFatalTaskError(System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
10878             <summary>
10879             Log an error based on an exception during the execution of a task
10880             </summary>
10881             <param name="exception">The exception wich is to be logged</param>
10882             <param name="file">The file in which the error occurred</param>
10883             <param name="taskName">The task in which the error occurred</param>
10884         </member>
10885         <member name="T:Microsoft.Build.BackEnd.Logging.LoggingContext">
10886             <summary>
10887             This object encapsulates the logging service plus the current BuildEventContext and
10888             hides the requirement to pass BuildEventContexts to the logging service or query the
10889             host for the logging service all of the time.
10890             </summary>
10891         </member>
10892         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingContext._loggingService">
10893             <summary>
10894             The logging service to which this context is attached
10895             </summary>
10896         </member>
10897         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingContext._eventContext">
10898             <summary>
10899             The build event context understood by the logging service.
10900             </summary>
10901         </member>
10902         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingContext._isValid">
10903             <summary>
10904             True if this context is still valid (i.e. hasn't been "finished")
10905             </summary>
10906         </member>
10907         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
10908             <summary>
10909             Constructs the logging context from a logging service and an event context.
10910             </summary>
10911             <param name="loggingService">The logging service to use</param>
10912             <param name="eventContext">The event context</param>
10913         </member>
10914         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.LoggingContext)">
10915             <summary>
10916             Constructs a logging context from another logging context.  This is used primarily in
10917             the constructors for other logging contexts to populate the logging service parameter,
10918             while the event context will come from a call into the logging service itself.
10919             </summary>
10920             <param name="baseContext">The context from which this context is being created.</param>
10921         </member>
10922         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingContext.LoggingService">
10923             <summary>
10924             Retrieves the logging service
10925             </summary>
10926         </member>
10927         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingContext.BuildEventContext">
10928             <summary>
10929             Retrieves the build event context
10930             UNDONE: (Refactor) We eventually want to remove this because all logging should go
10931             through a context object.  This exists only so we can make certain 
10932             logging calls in code which has not yet been fully refactored.
10933             </summary>
10934         </member>
10935         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingContext.IsValid">
10936             <summary>
10937             Returns true if the context is still valid, false if the
10938             appropriate 'Finished' call has been invoked.
10939             </summary>
10940         </member>
10941         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogComment(Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
10942             <summary>
10943              Helper method to create a message build event from a string resource and some parameters
10944             </summary>
10945             <param name="importance">Importance level of the message</param>
10946             <param name="messageResourceName">string within the resource which indicates the format string to use</param>
10947             <param name="messageArgs">string resource arguments</param>
10948         </member>
10949         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogCommentFromText(Microsoft.Build.Framework.MessageImportance,System.String)">
10950             <summary>
10951             Helper method to create a message build event from a string
10952             </summary>
10953             <param name="importance">Importance level of the message</param>
10954             <param name="message">message to log</param>
10955         </member>
10956         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogError(Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
10957             <summary>
10958             Log an error
10959             </summary>
10960             <param name="file">The file in which the error occurred</param>
10961             <param name="messageResourceName">The resource name for the error</param>
10962             <param name="messageArgs">Parameters for the resource string</param>
10963         </member>
10964         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogErrorWithSubcategory(System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
10965             <summary>
10966             Log an error
10967             </summary>
10968             <param name="subcategoryResourceName">The resource name which indicates the subCategory</param>
10969             <param name="file">The file in which the error occurred</param>
10970             <param name="messageResourceName">The resource name for the error</param>
10971             <param name="messageArgs">Parameters for the resource string</param>
10972         </member>
10973         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogErrorFromText(System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
10974             <summary>
10975             Log an error
10976             </summary>
10977             <param name="subcategoryResourceName">The resource name which indicates the subCategory</param>
10978             <param name="errorCode"> Error code</param>
10979             <param name="helpKeyword">Help keyword</param>
10980             <param name="file">The file in which the error occurred</param>
10981             <param name="message">Error message</param>
10982         </member>
10983         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogInvalidProjectFileError(Microsoft.Build.Exceptions.InvalidProjectFileException)">
10984             <summary>
10985             Log an invalid project file exception
10986             </summary>
10987             <param name="invalidProjectFileException">The invalid Project File Exception which is to be logged</param>
10988         </member>
10989         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogFatalError(System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
10990             <summary>
10991             Log an error based on an exception
10992             </summary>
10993             <param name="exception">The exception wich is to be logged</param>
10994             <param name="file">The file in which the error occurred</param>
10995             <param name="messageResourceName">The string resource which has the formatting string for the error</param>
10996             <param name="messageArgs">The arguments for the error message</param>
10997         </member>
10998         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogWarning(System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
10999             <summary>
11000             Log a warning
11001             </summary>
11002             <param name="subcategoryResourceName">The subcategory resource name</param>
11003             <param name="file">The file in which the warning occurred</param>
11004             <param name="messageResourceName">The string resource which contains the formatted warning string</param>
11005             <param name="messageArgs">parameters for the string resource</param>
11006         </member>
11007         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogWarningFromText(System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
11008             <summary>
11009             Log a warning based on a text message
11010             </summary>
11011             <param name="subcategoryResourceName">The subcategory resource name</param>
11012             <param name="warningCode"> Warning code</param>
11013             <param name="helpKeyword"> Help keyword</param>
11014             <param name="file">The file in which the warning occurred</param>
11015             <param name="message">The message to be logged as a warning</param>
11016         </member>
11017         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogBuildEvent(Microsoft.Build.Framework.BuildEventArgs)">
11018             <summary>
11019             Will Log a build Event. Will also take into account OnlyLogCriticalEvents when determining if to drop the event or to log it.
11020             </summary>
11021             <param name="buildEvent">The event to log</param>
11022         </member>
11023         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingContext.LogFatalBuildError(System.Exception,Microsoft.Build.Shared.BuildEventFileInfo)">
11024             <summary>
11025             Log an error based on an exception
11026             </summary>
11027             <param name="exception">The exception wich is to be logged</param>
11028             <param name="file">The file in which the error occurred</param>
11029         </member>
11030         <member name="T:Microsoft.Build.BackEnd.Logging.SendDataDelegate">
11031             <summary>
11032             Delegate to a method which will transport the packet accross the wire.
11033             </summary>
11034             <param name="packetToSend">A node packet to send accross the wire</param>
11035         </member>
11036         <member name="T:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink">
11037             <summary>
11038             This class will consume the BuildEventArgs forwarded by the EventRedirectorToSink class.
11039             The sink will then create a packet and then pass this along to the transport layer to be
11040             sent back to the build manager.
11041             </summary>
11042         </member>
11043         <member name="F:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink._sendDataDelegate">
11044             <summary>
11045             Delegate to a method which accepts a INodePacket and send the packet to where it needs to go
11046             </summary>
11047         </member>
11048         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.#ctor(Microsoft.Build.BackEnd.Logging.SendDataDelegate)">
11049             <summary>
11050             Create the sink which will consume a buildEventArg
11051             Create a INodePacket and send it to the transport component
11052             </summary>
11053             <param name="sendData">A delegate which takes an INodePacket and sends the packet to where it needs to go</param>
11054             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Send data delegate is null</exception>
11055         </member>
11056         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.Name">
11057             <summary>
11058             Provide a friendly name for the sink to make it easier to differentiate during 
11059             debugging and display
11060             </summary>
11061         </member>
11062         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.HaveLoggedBuildStartedEvent">
11063             <summary>
11064             Has the sink logged the BuildStartedEvent. This is important to know because we only want to log the build started event once
11065             </summary>
11066         </member>
11067         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.HaveLoggedBuildFinishedEvent">
11068             <summary>
11069             Has the sink logged the BuildFinishedEvent. This is important to know because we only want to log the build finished event once
11070             </summary>
11071         </member>
11072         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.WarningsAsErrors">
11073             <summary>
11074             This property is ignored by this event sink and relies on the receiver to treat warnings as errors.
11075             </summary>
11076         </member>
11077         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.WarningsAsErrorsByProject">
11078             <summary>
11079             This property is ignored by this event sink and relies on the receiver to treat warnings as errors.
11080             </summary>
11081         </member>
11082         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.WarningsAsMessages">
11083             <summary>
11084             This property is ignored by this event sink and relies on the receiver to treat warnings as low importance messages.
11085             </summary>
11086         </member>
11087         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.WarningsAsMessagesByProject">
11088             <summary>
11089             This property is ignored by this event sink and relies on the receiver to treat warnings as low importance messages.
11090             </summary>
11091         </member>
11092         <member name="P:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.BuildSubmissionIdsThatHaveLoggedErrors">
11093             <summary>
11094             This property is ignored by this event sink and relies on the receiver to keep track of whether or not any errors have been logged.
11095             </summary>
11096         </member>
11097         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.Consume(Microsoft.Build.Framework.BuildEventArgs)">
11098             <summary>
11099             This method should not be used since we need the sinkID
11100             </summary>
11101         </member>
11102         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.Consume(Microsoft.Build.Framework.BuildEventArgs,System.Int32)">
11103             <summary>
11104             Consumes the buildEventArg and creates a logMessagePacket
11105             </summary>
11106             <param name="buildEvent">Build event to package into a INodePacket</param>
11107             <param name="sinkId">The sink identifier.</param>
11108             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">buildEvent is null</exception>
11109         </member>
11110         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventArgTransportSink.ShutDown">
11111             <summary>
11112             Dispose of any resources the sink is holding onto.
11113             </summary>
11114         </member>
11115         <member name="T:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger">
11116             <summary>
11117             Logger that forwards events to loggers registered with the LoggingServices
11118             </summary>
11119         </member>
11120         <member name="P:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.BuildEventRedirector">
11121             <summary>
11122             An IEventRedirector which will redirect any events forwarded from the logger. The eventRedirector determines where the events will 
11123             be redirected.
11124             </summary>
11125         </member>
11126         <member name="P:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.NodeId">
11127             <summary>
11128             The nodeId of the node on which the logger is currently running.
11129             </summary>
11130         </member>
11131         <member name="P:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.Verbosity">
11132             <summary>
11133             Verbosity of the logger, in the central forwarding logger this is currently ignored
11134             </summary>
11135         </member>
11136         <member name="P:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.Parameters">
11137             <summary>
11138             Logging Parameters
11139             </summary>
11140         </member>
11141         <member name="M:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
11142             <summary>
11143             Initialize the logger with an eventSource and a node count. 
11144             The logger will register and listen to anyEvents on the eventSource.
11145             The node count is for informational purposes. The logger may want to take different
11146             actions depending on how many nodes there are in the system.
11147             </summary>
11148             <param name="eventSource">Event source which the logger will register with to receive events</param>
11149             <param name="nodeCount">Number of nodes the system was started with</param>
11150         </member>
11151         <member name="M:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
11152             <summary>
11153             Initialize the logger. The logger will register with AnyEventRaised on the eventSource
11154             </summary>
11155             <param name="eventSource">eventSource which the logger will register on to listen for events</param>
11156             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">EventSource is null</exception>
11157         </member>
11158         <member name="M:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.Shutdown">
11159             <summary>
11160             Shuts down the logger. This will null out the buildEventRedirector
11161             </summary>
11162         </member>
11163         <member name="M:Microsoft.Build.BackEnd.Logging.CentralForwardingLogger.EventSource_AnyEventRaised(System.Object,Microsoft.Build.Framework.BuildEventArgs)">
11164             <summary>
11165             Forwards any event raised to the BuildEventRedirector, this redirector will send the event on a path which will 
11166             take it to a logger.
11167             </summary>
11168             <param name="sender">Who sent the message, this is not used</param>
11169             <param name="buildEvent">BuildEvent to forward</param>
11170         </member>
11171         <member name="T:Microsoft.Build.BackEnd.Logging.EventRedirectorToSink">
11172             <summary>
11173             Will redirect events from forwarding loggers to the a IBuildEventSink, many redirectors may redirect to one sink.
11174             </summary>
11175         </member>
11176         <member name="F:Microsoft.Build.BackEnd.Logging.EventRedirectorToSink._centralLoggerId">
11177             <summary>
11178             The Id of the central logger to which this event should be forwarded
11179             </summary>
11180         </member>
11181         <member name="F:Microsoft.Build.BackEnd.Logging.EventRedirectorToSink._sink">
11182             <summary>
11183             The sink which will consume the messages
11184             </summary>
11185         </member>
11186         <member name="M:Microsoft.Build.BackEnd.Logging.EventRedirectorToSink.#ctor(System.Int32,Microsoft.Build.BackEnd.Logging.IBuildEventSink)">
11187             <summary>
11188             Initalize this class with a central logger id identifying the central logger to which
11189             these events should consumed by. The redirector will send the messages to the registered sink to 
11190             be consumed
11191             </summary>
11192             <param name="loggerId">Id which will be attached to the build event arguments to indicate which logger the events came from</param>
11193             <param name="eventSink">sink which will initially consume the events</param>
11194             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Eventsink is null</exception>
11195             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">LoggerId is less than 0</exception>
11196         </member>
11197         <member name="M:Microsoft.Build.BackEnd.Logging.EventRedirectorToSink.Microsoft#Build#Framework#IEventRedirector#ForwardEvent(Microsoft.Build.Framework.BuildEventArgs)">
11198             <summary>
11199             This method is called by the node loggers to forward the events to cenral logger
11200             </summary>
11201             <param name="buildEvent">Build event to forward</param>
11202             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEvent is null</exception>
11203         </member>
11204         <member name="T:Microsoft.Build.BackEnd.Logging.EventSourceSink">
11205             <summary>
11206             This class raises events on behalf of the build engine to all registered loggers.
11207             </summary>
11208         </member>
11209         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.MessageRaised">
11210             <summary>
11211             This event is raised to log a message.
11212             </summary>
11213         </member>
11214         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.ErrorRaised">
11215             <summary>
11216             This event is raised to log an error.
11217             </summary>
11218         </member>
11219         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.WarningRaised">
11220             <summary>
11221             This event is raised to log a warning.
11222             </summary>
11223         </member>
11224         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.BuildStarted">
11225             <summary>
11226             this event is raised to log the start of a build
11227             </summary>
11228         </member>
11229         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.BuildFinished">
11230             <summary>
11231             this event is raised to log the end of a build
11232             </summary>
11233         </member>
11234         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.ProjectStarted">
11235             <summary>
11236             this event is raised to log the start of a project build
11237             </summary>
11238         </member>
11239         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.ProjectFinished">
11240             <summary>
11241             this event is raised to log the end of a project build
11242             </summary>
11243         </member>
11244         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.TargetStarted">
11245             <summary>
11246             this event is raised to log the start of a target build
11247             </summary>
11248         </member>
11249         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.TargetFinished">
11250             <summary>
11251             this event is raised to log the end of a target build
11252             </summary>
11253         </member>
11254         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.TaskStarted">
11255             <summary>
11256             this event is raised to log the start of task execution
11257             </summary>
11258         </member>
11259         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.TaskFinished">
11260             <summary>
11261             this event is raised to log the end of task execution
11262             </summary>
11263         </member>
11264         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.CustomEventRaised">
11265             <summary>
11266             this event is raised to log a custom event
11267             </summary>
11268         </member>
11269         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.StatusEventRaised">
11270             <summary>
11271             this event is raised to log build status events, such as 
11272             build/project/target/task started/stopped 
11273             </summary>
11274         </member>
11275         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.AnyEventRaised">
11276             <summary>
11277             This event is raised to log that some event has
11278             occurred.  It is raised on every event.
11279             </summary>
11280         </member>
11281         <member name="E:Microsoft.Build.BackEnd.Logging.EventSourceSink.TelemetryLogged">
11282             <summary>
11283             This event is raised to log telemetry.
11284             </summary>
11285         </member>
11286         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.Name">
11287             <summary>
11288             Provide a friendly name for the sink to make it easier to differentiate during 
11289             debugging and display
11290             </summary>
11291         </member>
11292         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.HaveLoggedBuildStartedEvent">
11293             <summary>
11294             Has the sink logged the BuildStartedEvent. This is important to know because we only want to log the build started event once
11295             </summary>
11296         </member>
11297         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.HaveLoggedBuildFinishedEvent">
11298             <summary>
11299             Has the sink logged the BuildFinishedEvent. This is important to know because we only want to log the build finished event once
11300             </summary>
11301         </member>
11302         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.WarningsAsErrors">
11303             <summary>
11304             A list of warnings to treat as errors.  If null, nothing is treated as an error.  If an empty set, all warnings are treated as errors.
11305             </summary>
11306         </member>
11307         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.WarningsAsErrorsByProject">
11308             <summary>
11309             A list of warnings to treat as errors for an associated <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/>.  If the set associated with a ProjectInstanceId is null, nothing is treated as an error.  If an empty set, all warnings are treated as errors.
11310             </summary>
11311         </member>
11312         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.WarningsAsMessages">
11313             <summary>
11314             A list of warnings to treat as low importance messages.
11315             </summary>
11316         </member>
11317         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.WarningsAsMessagesByProject">
11318             <summary>
11319             A list of warnings to treat as low importance messages for an associated <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/>.
11320             </summary>
11321         </member>
11322         <member name="P:Microsoft.Build.BackEnd.Logging.EventSourceSink.BuildSubmissionIdsThatHaveLoggedErrors">
11323             <summary>
11324             A list of build submission IDs that have logged errors.  If an error is logged outside of a submission, the submission ID is <see cref="F:Microsoft.Build.Framework.BuildEventContext.InvalidSubmissionId"/>.
11325             </summary>
11326         </member>
11327         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.Consume(Microsoft.Build.Framework.BuildEventArgs,System.Int32)">
11328             <summary>
11329             Raises the given event to all registered loggers. This method up-cast the events
11330             extracted from the queue.
11331             </summary>
11332             <param name="buildEvent">BuildEventArgs</param>
11333             <param name="sinkId">Note this is not used in the eventsource sink</param>
11334         </member>
11335         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.Consume(Microsoft.Build.Framework.BuildEventArgs)">
11336             <summary>
11337             Raises the given event to all registered loggers. This method up-cast the events
11338             extracted from the queue.
11339             </summary>
11340         </member>
11341         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.ShutDown">
11342             <summary>
11343             Shutdown and displose of any resource this object is holding onto.
11344             </summary>
11345         </member>
11346         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.UnregisterAllEventHandlers">
11347             <summary>
11348             Clears out all events.
11349             </summary>
11350         </member>
11351         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseMessageEvent(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
11352             <summary>
11353             Raises a message event to all registered loggers.
11354             </summary>
11355             <param name="sender">sender of the event</param>
11356             <param name="buildEvent">BuildMessageEventArgs</param>
11357             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11358             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11359             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception> 
11360         </member>
11361         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseErrorEvent(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
11362             <summary>
11363             Raises an error event to all registered loggers.
11364             </summary>
11365             <param name="sender">sender of the event</param>
11366             <param name="buildEvent">BuildErrorEventArgs</param>
11367             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11368             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11369             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11370         </member>
11371         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseWarningEvent(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
11372             <summary>
11373             Raises a warning event to all registered loggers.
11374             </summary>
11375             <param name="sender">sender of the event</param>
11376             <param name="buildEvent">BuildWarningEventArgs</param>
11377             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11378             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11379             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11380         </member>
11381         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseBuildStartedEvent(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
11382             <summary>
11383             Raises a "build started" event to all registered loggers.
11384             </summary>
11385             <param name="sender">sender of the event</param>
11386             <param name="buildEvent">BuildStartedEventArgs</param>
11387             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11388             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11389             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11390         </member>
11391         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseBuildFinishedEvent(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
11392             <summary>
11393             Raises a "build finished" event to all registered loggers.
11394             </summary>
11395             <param name="sender">sender of the event</param>
11396             <param name="buildEvent">BuildFinishedEventArgs</param>
11397             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11398             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11399             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11400         </member>
11401         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseProjectStartedEvent(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
11402             <summary>
11403             Raises a "project build started" event to all registered loggers.
11404             </summary>
11405             <param name="sender">sender of the event</param>
11406             <param name="buildEvent">ProjectStartedEventArgs</param>
11407             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11408             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11409             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11410         </member>
11411         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseProjectFinishedEvent(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
11412             <summary>
11413             Raises a "project build finished" event to all registered loggers.
11414             </summary>
11415             <param name="sender">sender of the event</param>
11416             <param name="buildEvent">ProjectFinishedEventArgs</param>
11417             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11418             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11419             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11420         </member>
11421         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseTargetStartedEvent(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
11422             <summary>
11423             Raises a "target build started" event to all registered loggers.
11424             </summary>
11425             <param name="sender">sender of the event</param>
11426             <param name="buildEvent">TargetStartedEventArgs</param>
11427             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11428             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11429             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11430         </member>
11431         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseTargetFinishedEvent(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
11432             <summary>
11433             Raises a "target build finished" event to all registered loggers.
11434             </summary>
11435             <param name="sender">sender of the event</param>
11436             <param name="buildEvent">TargetFinishedEventArgs</param>
11437             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11438             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11439             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11440         </member>
11441         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseTaskStartedEvent(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
11442             <summary>
11443             Raises a "task execution started" event to all registered loggers.
11444             </summary>
11445             <param name="sender">sender of the event</param>
11446             <param name="buildEvent">TaskStartedEventArgs</param>
11447             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11448             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11449             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11450         </member>
11451         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseTaskFinishedEvent(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
11452             <summary>
11453             Raises a "task finished executing" event to all registered loggers.
11454             </summary>
11455             <param name="sender">sender of the event</param>
11456             <param name="buildEvent">TaskFinishedEventArgs</param>
11457             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11458             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11459             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11460         </member>
11461         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseCustomEvent(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
11462             <summary>
11463             Raises a custom event to all registered loggers.
11464             </summary>
11465             <param name="sender">sender of the event</param>
11466             <param name="buildEvent">CustomBuildEventArgs</param>
11467             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11468             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11469             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11470         </member>
11471         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseStatusEvent(System.Object,Microsoft.Build.Framework.BuildStatusEventArgs)">
11472             <summary>
11473             Raises a catch-all build status event to all registered loggers.
11474             </summary>
11475             <param name="sender">sender of the event</param>
11476             <param name="buildEvent">BuildStatusEventArgs</param>
11477             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11478             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11479             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11480         </member>
11481         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseAnyEvent(System.Object,Microsoft.Build.Framework.BuildEventArgs)">
11482             <summary>
11483             Raises a catch-all build event to all registered loggers.
11484             </summary>
11485             <param name="sender">sender of the event</param>
11486             <param name="buildEvent">Build EventArgs</param>
11487             <exception cref="T:Microsoft.Build.Framework.LoggerException">When EventHandler raises an logger exception the LoggerException is rethrown</exception>
11488             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions which are not LoggerExceptions are wrapped in an InternalLoggerException</exception>
11489             <exception cref="T:System.Exception">ExceptionHandling.IsCriticalException exceptions will not be wrapped</exception>
11490         </member>
11491         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.RaiseTelemetryEvent(System.Object,Microsoft.Build.Framework.TelemetryEventArgs)">
11492             <summary>
11493             Raises the a telemetry event to all registered loggers.
11494             </summary>
11495         </member>
11496         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.ShouldTreatWarningAsError(Microsoft.Build.Framework.BuildWarningEventArgs)">
11497             <summary>
11498             Determines if the specified warning should be treated as an error.
11499             </summary>
11500             <param name="warningEvent">A <see cref="T:Microsoft.Build.Framework.BuildWarningEventArgs"/> that specifies the warning.</param>
11501             <returns><code>true</code> if the warning should be treated as an error, otherwise <code>false</code>.</returns>
11502         </member>
11503         <member name="M:Microsoft.Build.BackEnd.Logging.EventSourceSink.ShouldTreatWarningAsMessage(Microsoft.Build.Framework.BuildWarningEventArgs)">
11504             <summary>
11505             Determines if the specified warning should be treated as a low importance message.
11506             </summary>
11507             <param name="warningEvent">A <see cref="T:Microsoft.Build.Framework.BuildWarningEventArgs"/> that specifies the warning.</param>
11508             <returns><code>true</code> if the warning should be treated as a low importance message, otherwise <code>false</code>.</returns>
11509         </member>
11510         <member name="T:Microsoft.Build.BackEnd.Logging.LoggingExceptionDelegate">
11511             <summary>
11512             Delegate for an event which will take an exception and raise it on the registered event handlers.
11513             </summary>
11514             <param name="e">Exception to be raised with registered event handlers</param>
11515         </member>
11516         <member name="T:Microsoft.Build.BackEnd.Logging.ILoggingService">
11517             <summary>
11518             Interface representing logging services in the build system.
11519             Implementations should be thread-safe.
11520             </summary>
11521         </member>
11522         <member name="E:Microsoft.Build.BackEnd.Logging.ILoggingService.OnLoggingThreadException">
11523             <summary>
11524             When there is an exception on the logging thread, we do not want to throw the exception from there
11525             instead we would like the exception to be thrown on the engine thread as this is where hosts expect
11526             to see the exception. This event will transport the exception from the loggingService to the engine
11527             which will register on this event.
11528             </summary>
11529         </member>
11530         <member name="E:Microsoft.Build.BackEnd.Logging.ILoggingService.OnProjectStarted">
11531             <summary>
11532             Raised when a ProjectStarted event is about to be sent to the loggers.
11533             </summary>
11534         </member>
11535         <member name="E:Microsoft.Build.BackEnd.Logging.ILoggingService.OnProjectFinished">
11536             <summary>
11537             Raised when a ProjectFinished event has just been sent to the loggers.
11538             </summary>
11539         </member>
11540         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.ServiceState">
11541             <summary>
11542             Provide the current state of the loggingService.
11543             Is it Inistantiated
11544             Has it been Initialized
11545             Is it starting to shutdown
11546             Has it shutdown
11547             </summary>
11548         </member>
11549         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.LoggingMode">
11550             <summary>
11551             Returns the synchronous/asynchronous mode for the logging service.
11552             </summary>
11553         </member>
11554         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.OnlyLogCriticalEvents">
11555             <summary>
11556             When true, only log critical events such as warnings and errors. Has to be in here for API compat
11557             </summary>
11558         </member>
11559         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.MaxCPUCount">
11560             <summary>
11561             Number of nodes in the system when it was initially started
11562             </summary>
11563         </member>
11564         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.Loggers">
11565             <summary>
11566             Enumerator over all registered loggers.
11567             </summary>
11568         </member>
11569         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.LoggerDescriptions">
11570             <summary>
11571             The list of descriptions which describe how to create forwarding loggers on a node.
11572             This is used by the node provider to get a list of registered descriptions so that 
11573             they can be transmitted to child nodes.
11574             </summary>
11575         </member>
11576         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.RegisteredLoggerTypeNames">
11577             <summary>
11578             Return an array which contains the logger type names
11579             this can be used to display which loggers are registered on the node
11580             </summary>
11581         </member>
11582         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.RegisteredSinkNames">
11583             <summary>
11584             Return an array which contains the sink names
11585             this can be used to display which sinks are on the node
11586             </summary>
11587         </member>
11588         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.PropertiesToSerialize">
11589             <summary>
11590             List of properties to serialize from the child node
11591             </summary>
11592         </member>
11593         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.SerializeAllProperties">
11594             <summary>
11595             Should all properties be serialized from the child to the parent process
11596             </summary>
11597         </member>
11598         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.RunningOnRemoteNode">
11599             <summary>
11600             Is the logging running on a remote node
11601             </summary>
11602         </member>
11603         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.WarningsAsErrors">
11604             <summary>
11605             Set of warnings to treat as errors.  An empty non-null set will treat all warnings as errors.
11606             </summary>
11607         </member>
11608         <member name="P:Microsoft.Build.BackEnd.Logging.ILoggingService.WarningsAsMessages">
11609             <summary>
11610             A list of warnings to treat as low importance messages.
11611             </summary>
11612         </member>
11613         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.AddWarningsAsMessages(System.Int32,System.Collections.Generic.ISet{System.String})">
11614             <summary>
11615             Adds a set of warning codes to treat as low importance messages for the specified project instance ID.
11616             </summary>
11617             <param name="projectInstanceId">A <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/> to associate with the list of warning codes.</param>
11618             <param name="codes">The list of warning codes to treat as low importance messsages.</param>
11619         </member>
11620         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.AddWarningsAsErrors(System.Int32,System.Collections.Generic.ISet{System.String})">
11621             <summary>
11622             Adds a set of warning codes to treat as errors for the specified project instance ID.
11623             </summary>
11624             <param name="projectInstanceId">A <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/> to associate with the list of warning codes.</param>
11625             <param name="codes">The list of warning codes to treat as errors.</param>
11626         </member>
11627         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.HasBuildSubmissionLoggedErrors(System.Int32)">
11628             <summary>
11629             Determines if the specified submission has logged an errors.
11630             </summary>
11631             <param name="submissionId">The ID of the build submission.  A value of "0" means that an error was logged outside of any build submission.</param>
11632             <returns><code>true</code> if the build submission logged an errors, otherwise <code>false</code>.</returns>
11633         </member>
11634         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.RegisterDistributedLogger(Microsoft.Build.Framework.ILogger,Microsoft.Build.Logging.LoggerDescription)">
11635             <summary>
11636             Allows the registering of an ICentralLogger and a forwarding logger pair
11637             </summary>
11638             <param name="centralLogger">Central logger which is to receive the events created by the forwarding logger</param>
11639             <param name="forwardingLogger">A description of the forwarding logger</param>
11640             <returns value="bool">True if the central and forwarding loggers were registered. False if the central logger or the forwarding logger were already registered</returns>
11641         </member>
11642         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.RegisterLogger(Microsoft.Build.Framework.ILogger)">
11643              <summary>
11644              Register an logger which expects all logging events from the system
11645              </summary>
11646              <param name="logger">The logger to register.</param>
11647             <returns value="bool">True if the central was registered. False if the central logger was already registered</returns>
11648         </member>
11649         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.UnregisterAllLoggers">
11650             <summary>
11651             Clear out all registered loggers so that none are registered.
11652             </summary>
11653         </member>
11654         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.InitializeNodeLoggers(System.Collections.Generic.ICollection{Microsoft.Build.Logging.LoggerDescription},Microsoft.Build.BackEnd.Logging.IBuildEventSink,System.Int32)">
11655             <summary>
11656             In order to setup the forwarding loggers on a node, we need to take in the logger descriptions and initialize them.
11657             The method will create a forwarding logger, an eventRedirector which will redirect all forwarded messages to the forwardingLoggerSink.
11658             All forwarding loggers will use the same forwardingLoggerSink.
11659             </summary>
11660             <param name="loggerDescriptions">Collection of logger descriptions which we would like to use to create a set of forwarding loggers on a node</param>
11661             <param name="forwardingLoggerSink">The buildEventSink which the fowarding loggers will forward their events to</param>
11662             <param name="nodeId">The id of the node the logging services is on</param>
11663             <exception cref="T:System.ArgumentNullException">When forwardingLoggerSink is null</exception>
11664             <exception cref="T:System.ArgumentNullException">When loggerDescriptions is null</exception>
11665         </member>
11666         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogComment(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
11667             <summary>
11668              Helper method to create a message build event from a string resource and some parameters
11669             </summary>
11670             <param name="buildEventContext">Event context which describes where in the build the message came from</param>
11671             <param name="importance">Importance level of the message</param>
11672             <param name="messageResourceName">string within the resource which indicates the format string to use</param>
11673             <param name="messageArgs">string resource arguments</param>
11674         </member>
11675         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogCommentFromText(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Framework.MessageImportance,System.String)">
11676             <summary>
11677             Helper method to create a message build event from a string
11678             </summary>
11679             <param name="buildEventContext">Event context which describes where in the build the message came from</param>
11680             <param name="importance">Importance level of the message</param>
11681             <param name="message">message to log</param>
11682         </member>
11683         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogBuildEvent(Microsoft.Build.Framework.BuildEventArgs)">
11684             <summary>
11685             Will Log a build Event. Will also take into account OnlyLogCriticalEvents when determining if to drop the event or to log it.
11686             </summary>
11687         </member>
11688         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogError(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
11689             <summary>
11690             Log an error
11691             </summary>
11692             <param name="buildEventContext">The event context information as to where the error occurred </param>
11693             <param name="file">The file in which the error occurred</param>
11694             <param name="messageResourceName">The resource name for the error</param>
11695             <param name="messageArgs">Parameters for the resource string</param>
11696         </member>
11697         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogError(Microsoft.Build.Framework.BuildEventContext,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
11698             <summary>
11699             Log an error
11700             </summary>
11701             <param name="buildEventContext">The event context for where the error occurred</param>
11702             <param name="subcategoryResourceName">The resource name which indicates the subCategory</param>
11703             <param name="file">The file in which the error occurred</param>
11704             <param name="messageResourceName">The resource name for the error</param>
11705             <param name="messageArgs">Parameters for the resource string</param>
11706         </member>
11707         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogErrorFromText(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
11708             <summary>
11709             Log an error
11710             </summary>
11711             <param name="buildEventContext">The event context for where the error occurred</param>
11712             <param name="subcategoryResourceName">The resource name which indicates the subCategory</param>
11713             <param name="errorCode"> Error code</param>
11714             <param name="helpKeyword">Help keyword</param>
11715             <param name="file">The file in which the error occurred</param>
11716             <param name="message">Error message</param>
11717         </member>
11718         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogInvalidProjectFileError(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Exceptions.InvalidProjectFileException)">
11719             <summary>
11720             Log an invalid project file exception
11721             </summary>
11722             <param name="buildEventContext">The event context for where the error occurred</param>
11723             <param name="invalidProjectFileException">The invalid Project File Exception which is to be logged</param>
11724         </member>
11725         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogFatalBuildError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo)">
11726             <summary>
11727             Log an error based on an exception
11728             </summary>
11729             <param name="buildEventContext">The event context for where the error occurred</param>
11730             <param name="exception">The exception wich is to be logged</param>
11731             <param name="file">The file in which the error occurred</param>
11732         </member>
11733         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogFatalTaskError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
11734             <summary>
11735             Log an error based on an exception during the execution of a task
11736             </summary>
11737             <param name="buildEventContext">The event context for where the error occurred</param>
11738             <param name="exception">The exception wich is to be logged</param>
11739             <param name="file">The file in which the error occurred</param>
11740             <param name="taskName">The task in which the error occurred</param>
11741         </member>
11742         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogFatalError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
11743             <summary>
11744             Log an error based on an exception
11745             </summary>
11746             <param name="buildEventContext">The event context for where the error occurred</param>
11747             <param name="exception">The exception wich is to be logged</param>
11748             <param name="file">The file in which the error occurred</param>
11749             <param name="messageResourceName">The string resource which has the formatting string for the error</param>
11750             <param name="messageArgs">The arguments for the error message</param>
11751         </member>
11752         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTaskWarningFromException(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
11753             <summary>
11754             Log a warning based on an exception
11755             </summary>
11756             <param name="buildEventContext">The event context for where the warning occurred</param>
11757             <param name="exception">The exception to be logged as a warning</param>
11758             <param name="file">The file in which the warning occurred</param>
11759             <param name="taskName">The task in which the warning occurred</param>
11760         </member>
11761         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogWarning(Microsoft.Build.Framework.BuildEventContext,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
11762             <summary>
11763             Log a warning
11764             </summary>
11765             <param name="buildEventContext">The event context for where the warning occurred</param>
11766             <param name="subcategoryResourceName">The subcategory resource name</param>
11767             <param name="file">The file in which the warning occurred</param>
11768             <param name="messageResourceName">The string resource which contains the formatted warning string</param>
11769             <param name="messageArgs">parameters for the string resource</param>
11770         </member>
11771         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogWarningFromText(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
11772             <summary>
11773             Log a warning based on a text message
11774             </summary>
11775             <param name="buildEventContext">The event context for where the warning occurred</param>
11776             <param name="subcategoryResourceName">The subcategory resource name</param>
11777             <param name="warningCode"> Warning code</param>
11778             <param name="helpKeyword"> Help keyword</param>
11779             <param name="file">The file in which the warning occurred</param>
11780             <param name="message">The message to be logged as a warning</param>
11781         </member>
11782         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogBuildStarted">
11783             <summary>
11784             Log the start of the build
11785             </summary>
11786         </member>
11787         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogBuildFinished(System.Boolean)">
11788             <summary>
11789             Log the completion of a build
11790             </summary>
11791             <param name="success">Did the build succeed or not</param>
11792         </member>
11793         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogProjectStarted(Microsoft.Build.Framework.BuildEventContext,System.Int32,System.Int32,Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.DictionaryEntry},System.Collections.Generic.IEnumerable{System.Collections.DictionaryEntry})">
11794             <summary>
11795             Log that a project has started
11796             </summary>
11797             <param name="nodeBuildEventContext">The logging context of the node which is building this project.</param>
11798             <param name="submissionId">The id of the build submission.</param>
11799             <param name="projectId">The id of the project instance which is about to start</param>
11800             <param name="parentBuildEventContext">The build context of the parent project which asked this project to build</param>
11801             <param name="projectFile">The project file path of the project about to be built</param>
11802             <param name="targetNames">The entrypoint target names for this project</param>
11803             <param name="properties">The initial properties of the project</param>
11804             <param name="items">The initial items of the project</param>
11805             <returns>The BuildEventContext to use for this project.</returns>
11806         </member>
11807         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogProjectFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.Boolean)">
11808             <summary>
11809             Log that the project has finished
11810             </summary>
11811             <param name="projectBuildEventContext">The build context of the project which has just finished</param>
11812             <param name="projectFile">The path to the projec file which was just built</param>
11813             <param name="success">Did the build succeede or not</param>
11814         </member>
11815         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTargetStarted(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.String)">
11816             <summary>
11817             Log that a target has started
11818             </summary>
11819             <param name="projectBuildEventContext">The build event context of the project spawning this target.</param>
11820             <param name="targetName">The name of the target which is about to start</param>
11821             <param name="projectFile">The project file which is being built</param>
11822             <param name="projectFileOfTargetElement">The file in which the target is defined - typically a .targets file</param>
11823             <param name="parentTargetName">The name of the parent target.</param>
11824             <returns>The target build event context</returns>
11825         </member>
11826         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTargetFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance.TaskItem})">
11827             <summary>
11828             Log that a target has finished
11829             </summary>
11830             <param name="targetBuildEventContext">The event context of the target which has just completed</param>
11831             <param name="targetName">The name of the target which has just completed</param>
11832             <param name="projectFile">The project file which the target was being run in</param>
11833             <param name="projectFileOfTargetElement">The file in which the target is defined - typically a .targets file</param>
11834             <param name="success">Did the target finish successfully or not</param>
11835             <param name="targetOutputs">List of target outputs for the target, right now this is for all batches and only is on the last target finished event</param>
11836         </member>
11837         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTaskStarted(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String)">
11838             <summary>
11839             Log that a task is about to start
11840             </summary>
11841             <param name="taskBuildEventContext">The event context of the task.</param>
11842             <param name="taskName">The name of the task</param>
11843             <param name="projectFile">The project file which is being built</param>
11844             <param name="projectFileOfTaskNode">The file in which the task is defined - typically a .targets file</param>
11845         </member>
11846         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTaskStarted2(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String)">
11847             <summary>
11848             Log that a task is about to start
11849             </summary>
11850             <param name="targetBuildEventContext">The event context of the target which is spawning this task.</param>
11851             <param name="taskName">The name of the task</param>
11852             <param name="projectFile">The project file which is being built</param>
11853             <param name="projectFileOfTaskNode">The file in which the task is defined - typically a .targets file</param>
11854             <returns>The task build event context</returns>
11855         </member>
11856         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTaskFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.Boolean)">
11857             <summary>
11858             Log that a task has just completed
11859             </summary>
11860             <param name="taskBuildEventContext">The event context of the task which has just finished</param>
11861             <param name="taskName">The name of the task</param>
11862             <param name="projectFile">The project file which is being built</param>
11863             <param name="projectFileOfTaskNode">The file in which the task is defined - typically a .targets file</param>
11864             <param name="success">True of the task finished successfully, false otherwise.</param>
11865         </member>
11866         <member name="M:Microsoft.Build.BackEnd.Logging.ILoggingService.LogTelemetry(Microsoft.Build.Framework.BuildEventContext,System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
11867             <summary>
11868             Logs telemetry.
11869             </summary>
11870             <param name="buildEventContext">The event context of the task which sent the telemetry.</param>
11871             <param name="eventName">The event name.</param>
11872             <param name="properties">The list of properties associated with the event.</param>
11873         </member>
11874         <member name="T:Microsoft.Build.BackEnd.Logging.IBuildEventSink">
11875             <summary>
11876             Acts as an endpoint for a buildEventArg. The objects which implement this interface are intended to consume the BuildEventArg. 
11877             </summary>
11878         </member>
11879         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.Name">
11880             <summary>
11881             Provide a the sink a friendly name which can be used to distinguish sinks in memory 
11882             and for display
11883             </summary>
11884         </member>
11885         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.HaveLoggedBuildStartedEvent">
11886             <summary>
11887             Has the sink logged the BuildStartedEvent. This is important to know because we only want to log the build started event once
11888             </summary>
11889         </member>
11890         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.HaveLoggedBuildFinishedEvent">
11891             <summary>
11892             Has the sink logged the BuildFinishedEvent. This is important to know because we only want to log the build finished event once
11893             </summary>
11894         </member>
11895         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.WarningsAsErrors">
11896             <summary>
11897             A list of warnings to treat as errors.  If null, nothing is treated as an error.  If an empty set, all warnings are treated as errors.
11898             </summary>
11899         </member>
11900         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.WarningsAsErrorsByProject">
11901             <summary>
11902             A list of warnings to treat as errors for an associated <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/>.
11903             </summary>
11904         </member>
11905         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.WarningsAsMessages">
11906             <summary>
11907             A list of warnings to treat as low importance messages.
11908             </summary>
11909         </member>
11910         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.WarningsAsMessagesByProject">
11911             <summary>
11912             A list of warnings to treat as low importance messages for an associated <see cref="P:Microsoft.Build.Framework.BuildEventContext.ProjectInstanceId"/>.
11913             </summary>
11914         </member>
11915         <member name="P:Microsoft.Build.BackEnd.Logging.IBuildEventSink.BuildSubmissionIdsThatHaveLoggedErrors">
11916             <summary>
11917             A list of build submissions that have logged errors.
11918             </summary>
11919         </member>
11920         <member name="M:Microsoft.Build.BackEnd.Logging.IBuildEventSink.Consume(Microsoft.Build.Framework.BuildEventArgs,System.Int32)">
11921             <summary>
11922             Entry point for a sink to consume an event.
11923             </summary>
11924             <param name="buildEvent">The event to be consumed by the sink.</param>
11925             <param name="sinkId"> Sink where the message should go to, this is really only used for the transport sink</param>
11926         </member>
11927         <member name="M:Microsoft.Build.BackEnd.Logging.IBuildEventSink.Consume(Microsoft.Build.Framework.BuildEventArgs)">
11928             <summary>
11929             Entry point for a sink to consume an event.
11930             </summary>
11931         </member>
11932         <member name="M:Microsoft.Build.BackEnd.Logging.IBuildEventSink.ShutDown">
11933             <summary>
11934             Shuts down the sink and any resources it may be holding
11935             </summary>
11936         </member>
11937         <member name="T:Microsoft.Build.BackEnd.Logging.LoggerMode">
11938             <summary>
11939             What is the mode of the logger, should there be a thread
11940             processing the buildEvents and raising them on the filters and sinks
11941             or should they be done synchronously
11942             </summary>
11943         </member>
11944         <member name="F:Microsoft.Build.BackEnd.Logging.LoggerMode.Synchronous">
11945             <summary>
11946             Events are processed synchronously
11947             </summary>
11948         </member>
11949         <member name="F:Microsoft.Build.BackEnd.Logging.LoggerMode.Asynchronous">
11950             <summary>
11951             A thread is started which will process build events by raising them on a filter event source
11952             or on the correct sink.
11953             </summary>
11954         </member>
11955         <member name="T:Microsoft.Build.BackEnd.Logging.LoggingServiceState">
11956             <summary>
11957             What is the current state of the logging service
11958             </summary>
11959         </member>
11960         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceState.Instantiated">
11961             <summary>
11962             When the logging service has been instantiated but not yet initialized through a call
11963             to initializecomponent
11964             </summary>
11965         </member>
11966         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceState.Initialized">
11967             <summary>
11968             The logging service has been initialized through a call to initialize component
11969             </summary>
11970         </member>
11971         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceState.ShuttingDown">
11972             <summary>
11973              The logging service is in the process of starting to shutdown.
11974             </summary>
11975         </member>
11976         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceState.Shutdown">
11977             <summary>
11978             The logging service completly shutdown
11979             </summary>
11980         </member>
11981         <member name="T:Microsoft.Build.BackEnd.Logging.LoggingService">
11982             <summary>
11983             Logging services is used as a helper class to assist logging messages in getting to the correct loggers.
11984             </summary>
11985             <summary>
11986             Partial class half of LoggingService which contains the Logging methods.
11987             </summary>
11988         </member>
11989         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService.DefaultQueueCapacity">
11990             <summary>
11991             The default maximum size for the logging event queue.
11992             </summary>
11993         </member>
11994         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._lockObject">
11995             <summary>
11996             Lock for the nextProjectId
11997             </summary>
11998         </member>
11999         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService.s_projectStartedEventArgsGlobalProperties">
12000             <summary>
12001             A cached reflection accessor for an internal member.
12002             </summary>
12003             <remarks>
12004             We use a BindingFlags.Public flag here because the getter is public, so although the setter is internal,
12005             it is only discoverable with Reflection using the Public flag (go figure!)
12006             </remarks>
12007         </member>
12008         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService.s_projectStartedEventArgsToolsVersion">
12009             <summary>
12010             A cached reflection accessor for an internal member.
12011             </summary>
12012             <remarks>
12013             We use a BindingFlags.Public flag here because the getter is public, so although the setter is internal,
12014             it is only discoverable with Reflection using the Public flag (go figure!)
12015             </remarks>
12016         </member>
12017         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._projectFileMap">
12018             <summary>
12019             The mapping of build request configuration ids to project file names.
12020             </summary>
12021         </member>
12022         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._serviceState">
12023             <summary>
12024             The current state of the logging service
12025             </summary>
12026         </member>
12027         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._onlyLogCriticalEvents">
12028             <summary>
12029             Use to optimize away status messages. When this is set to true, only "critical"
12030             events like errors are logged. Default is false
12031             </summary>
12032         </member>
12033         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._eventSinkDictionary">
12034             <summary>
12035             Contains a dictionary of loggerId's and the sink which the logger (of the given Id) is expecting to consume its messages 
12036             </summary>
12037         </member>
12038         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._iloggerList">
12039             <summary>
12040             A list of ILoggers registered with the LoggingService
12041             </summary>
12042         </member>
12043         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._loggerDescriptions">
12044             <summary>
12045             A list of LoggerDescriptions which describe how to create a forwarding logger on a node. These are
12046             passed to each node as they are created so that the forwarding loggers can be registered on them.
12047             </summary>
12048         </member>
12049         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._filterEventSource">
12050             <summary>
12051             The event source to which filters will listen to to get the build events which are logged to the logging service through the 
12052             logging helper methods. Ie LogMessage and LogMessageEvent
12053             </summary>
12054         </member>
12055         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._centralLoggerSinkId">
12056             <summary>
12057             Index into the eventSinkDictionary which indicates which sink is the sink for any logger registered through RegisterLogger
12058             </summary>
12059         </member>
12060         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._nextSinkId">
12061             <summary>
12062             What is the Id for the next logger registered with the logging service.
12063             This Id is unique for this instance of the loggingService.
12064             </summary>
12065         </member>
12066         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._maxCPUCount">
12067             <summary>
12068             The number of nodes in the system. Loggers may take different action depending on how many nodes are in the system.
12069             </summary>
12070         </member>
12071         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._componentHost">
12072             <summary>
12073             Component host for this component which is used to get system parameters and other initialization information.
12074             </summary>
12075         </member>
12076         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._configCache">
12077             <summary>
12078             The IConfigCache instance obtained from componentHost (stored here to avoid repeated dictionary lookups).
12079             </summary>
12080         </member>
12081         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._nextProjectId">
12082             <summary>
12083             The next project ID to assign when a project started event is received.
12084             </summary>
12085         </member>
12086         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._nextTargetId">
12087             <summary>
12088             The next target ID to assign when a target started event is received.
12089             </summary>
12090         </member>
12091         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._nextTaskId">
12092             <summary>
12093             The next task ID to assign when a task started event is received.
12094             </summary>
12095         </member>
12096         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._nodeId">
12097             <summary>
12098             What node is this logging service running on
12099             </summary>
12100         </member>
12101         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._loggingQueue">
12102             <summary>
12103             The data flow buffer for logging events.
12104             </summary>
12105         </member>
12106         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._loggingQueueProcessor">
12107             <summary>
12108             The data flow processor for logging events.
12109             </summary>
12110         </member>
12111         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._queueCapacity">
12112             <summary>
12113             The queue size above which the queue will close to messages from remote nodes.
12114             This value should be selected such that during normal builds it is never reached.
12115             It should also be low enough that we do not accumulate enough messages to cause
12116             virtual memory exhaustion in extremely large builds.
12117             </summary>
12118         </member>
12119         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._logMode">
12120             <summary>
12121             By default our logMode is Asynchronous. We do this
12122             because we are hoping it will make the system 
12123             more responsive when there are a large number of logging messages
12124             Note: Mono has issues with TPL Dataflow implementation,
12125             so use synchronous version
12126             </summary>
12127         </member>
12128         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._warningsAsErrors">
12129             <summary>
12130             A list of warnings to treat as errors.
12131             </summary>
12132         </member>
12133         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingService._warningsAsMessages">
12134             <summary>
12135             A list of warnings to treat as low importance messages.
12136             </summary>
12137         </member>
12138         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.#ctor(Microsoft.Build.BackEnd.Logging.LoggerMode,System.Int32)">
12139             <summary>
12140             Initialize an instance of a loggingService.
12141             </summary>
12142             <param name="loggerMode">Should the events be processed synchronously or asynchronously</param>
12143             <param name="nodeId">The node identifier.</param>
12144         </member>
12145         <member name="E:Microsoft.Build.BackEnd.Logging.LoggingService.OnLoggingThreadException">
12146             <summary>
12147             When there is an exception on the logging thread, we do not want to throw the exception from there
12148             instead we would like the exception to be thrown on the engine thread as this is where hosts expect
12149             to see the exception. This event will transport the exception from the loggingService to the engine
12150             which will register on this event.
12151             </summary>
12152         </member>
12153         <member name="E:Microsoft.Build.BackEnd.Logging.LoggingService.OnProjectStarted">
12154             <summary>
12155             Raised when a ProjectStarted event is about to be sent to the loggers.
12156             </summary>
12157         </member>
12158         <member name="E:Microsoft.Build.BackEnd.Logging.LoggingService.OnProjectFinished">
12159             <summary>
12160             Raised when a ProjectFinished event has just been sent to the loggers.
12161             </summary>
12162         </member>
12163         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.PropertiesToSerialize">
12164             <summary>
12165             Properties we need to serialize from the child node
12166             </summary>
12167         </member>
12168         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.SerializeAllProperties">
12169             <summary>
12170             Should all properties be serialized from the child to the parent node
12171             </summary>
12172         </member>
12173         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.RunningOnRemoteNode">
12174             <summary>
12175             Is the logging running on a remote node
12176             </summary>
12177         </member>
12178         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.NextProjectId">
12179             <summary>
12180             Gets the next project id.
12181             </summary>
12182             <remarks>This property is thread-safe</remarks>
12183         </member>
12184         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.NextTargetId">
12185             <summary>
12186             Gets the next target id.
12187             </summary>
12188             <remarks>This property is thread-safe</remarks>
12189         </member>
12190         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.NextTaskId">
12191             <summary>
12192             Gets the next task id.
12193             </summary>
12194             <remarks>This property is thread-safe</remarks>
12195         </member>
12196         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.ServiceState">
12197             <summary>
12198             Provide the current state of the loggingService.
12199             Is it Inistantiated
12200             Has it been Initialized
12201             Is it starting to shutdown
12202             Has it shutdown
12203             </summary>
12204         </member>
12205         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.OnlyLogCriticalEvents">
12206             <summary>
12207             Use to optimize away status messages. When this is set to true, only "critical"
12208             events like errors are logged.
12209             </summary>
12210         </member>
12211         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.MaxCPUCount">
12212             <summary>
12213             Number of nodes in the system when the system is initially started
12214             </summary>
12215         </member>
12216         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.LoggerDescriptions">
12217             <summary>
12218             The list of descriptions which describe how to create forwarding loggers on a node.
12219             This is used by the node provider to get a list of registered descriptions so that 
12220             they can be transmitted to child nodes.
12221             </summary>
12222         </member>
12223         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.Loggers">
12224             <summary>
12225             Enumerator over all registered loggers.
12226             </summary>
12227         </member>
12228         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.LoggingMode">
12229             <summary>
12230             What type of logging mode is the logger running under. 
12231             Is it Synchronous or Asynchronous
12232             </summary>
12233         </member>
12234         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.WarningsAsErrors">
12235             <summary>
12236             Get of warnings to treat as errors.  An empty non-null set will treat all warnings as errors.
12237             </summary>
12238         </member>
12239         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.WarningsAsMessages">
12240             <summary>
12241             A list of warnings to treat as low importance messages.
12242             </summary>
12243         </member>
12244         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.HasBuildSubmissionLoggedErrors(System.Int32)">
12245             <summary>
12246             Determines if the specified submission has logged an errors.
12247             </summary>
12248             <param name="submissionId">The ID of the build submission.  A value of "0" means that an error was logged outside of any build submission.</param>
12249             <returns><code>true</code> if the build submission logged an errors, otherwise <code>false</code>.</returns>
12250         </member>
12251         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.LoggingQueueHasEvents">
12252             <summary>
12253             Return whether or not the LoggingQueue has any events left in it
12254             </summary>
12255         </member>
12256         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.RegisteredLoggerTypeNames">
12257             <summary>
12258             Return an array which contains the logger type names
12259             this can be used to display which loggers are registered on the node
12260             </summary>
12261         </member>
12262         <member name="P:Microsoft.Build.BackEnd.Logging.LoggingService.RegisteredSinkNames">
12263             <summary>
12264             Return an array which contains the sink names
12265             this can be used to display which sinks are on the node
12266             </summary>
12267         </member>
12268         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.CreateLoggingService(Microsoft.Build.BackEnd.Logging.LoggerMode,System.Int32)">
12269             <summary>
12270             Create an instance of a LoggingService using the specified mode.
12271             This method is used by the object factories to create instances of components.
12272             </summary>
12273             <param name="mode">Should the logger component created be synchronous or asynchronous</param>
12274             <param name="node">The identifier of the node.</param>
12275             <returns>An instantiated LoggingService as a IBuildComponent</returns>
12276         </member>
12277         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
12278             <summary>
12279             NotThreadSafe, this method should only be called from the component host thread
12280             Called by the build component host when a component is first initialized.
12281             </summary>
12282             <param name="buildComponentHost">The component host for this object</param>
12283             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">When buildComponentHost is null</exception>
12284             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Service has already shutdown</exception>
12285         </member>
12286         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.ShutdownComponent">
12287             <summary>
12288             NotThreadSafe, this method should only be called from the component host thread
12289             Called by the build component host when the component host is about to shutdown.
12290             1. Shutdown forwarding loggers so that any events they have left to forward can get into the queue
12291             2. Terminate the logging thread
12292             3. Null out sinks and the filter event source so that no more events can get to the central loggers
12293             4. Shutdown the central loggers
12294             </summary>
12295             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Service has already shutdown</exception>
12296             <exception cref="T:Microsoft.Build.Framework.LoggerException"> A logger may throw a logger exception when shutting down</exception>
12297             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">A logger will wrap other exceptions (except ExceptionHandling.IsCriticalException exceptions) in a InternalLoggerException if it crashes during shutdown</exception>
12298         </member>
12299         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
12300             <summary>
12301             Will receive a logging packet and send it to the correct
12302             sink which is registered to the LoggingServices.
12303             PacketReceived should be called from a single thread.
12304             </summary>
12305             <param name="node">The node from which the packet was received.</param>
12306             <param name="packet">A LogMessagePacket</param>
12307             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Packet is null</exception>
12308             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Packet is not a NodePacketType.LogMessage</exception>
12309         </member>
12310         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RegisterLogger(Microsoft.Build.Framework.ILogger)">
12311             <summary>
12312             Register an instantiated logger which implements the ILogger interface. This logger will be registered to a specific event
12313             source (the central logger event source) which will receive all logging messages for a given build.
12314             This should not be used on a node, Loggers are not to be registered on a child node.
12315             </summary>
12316             <param name="logger">ILogger</param>
12317             <returns>True if the logger has been registered successfully. False if the logger was not registered due to it already being registered before</returns>
12318             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">If logger is null</exception>
12319         </member>
12320         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.UnregisterAllLoggers">
12321             <summary>
12322             Clear out all registered loggers so that none are registered.
12323             If no loggers are registered, does nothing.
12324             </summary>
12325             <remarks>
12326             UNDONE: (Logging) I don't like the semantics of this. Why should unregistering imply shutting down? VS actually calls it before registering any loggers.
12327             Also, why not just have ShutdownComponent? Or call this Shutdown or Dispose?
12328             </remarks>
12329         </member>
12330         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RegisterDistributedLogger(Microsoft.Build.Framework.ILogger,Microsoft.Build.Logging.LoggerDescription)">
12331             <summary>
12332             Register a distributed logger. This involves creating a new eventsource sink 
12333             and associating this with the central logger. In addition the sinkId needs 
12334             to be put in the loggerDescription so that nodes know what they need to 
12335             tag onto the event so that the message goes to the correct logger.
12336             
12337             The central logger is initialized before the distributed logger
12338             </summary>
12339             <param name="centralLogger">Central logger to receive messages from the forwarding logger, This logger cannot have been registered before</param>
12340             <param name="forwardingLogger">Logger description which describes how to create the forwarding logger, the logger description cannot have been used before</param>
12341             <returns value="bool">True if the distributed and central logger were registered, false if they either were already registered</returns>
12342             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">If forwardingLogger is null</exception>
12343             <exception cref="T:Microsoft.Build.Framework.LoggerException">If a logger exception is thrown while creating or initializing the distributed or central logger</exception>
12344             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">If any exception (other than a loggerException)is thrown while creating or initializing the distributed or central logger, we will wrap these exceptions in an InternalLoggerException</exception>
12345         </member>
12346         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.InitializeNodeLoggers(System.Collections.Generic.ICollection{Microsoft.Build.Logging.LoggerDescription},Microsoft.Build.BackEnd.Logging.IBuildEventSink,System.Int32)">
12347             <summary>
12348             In order to setup the forwarding loggers on a node, we need to take in the logger descriptions and initialize them.
12349             The method will create a forwarding logger, an eventRedirector which will redirect all forwarded messages to the forwardingLoggerSink.
12350             All forwarding loggers will use the same forwardingLoggerSink.
12351             </summary>
12352             <param name="descriptions">Collection of logger descriptions which we would like to use to create a set of forwarding loggers on a node</param>
12353             <param name="forwardingLoggerSink">The buildEventSink which the fowarding loggers will forward their events to</param>
12354             <param name="nodeId">The id of the node the logging services is on</param>
12355             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">When forwardingLoggerSink is null</exception>
12356             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">When loggerDescriptions is null</exception>
12357         </member>
12358         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogBuildEvent(Microsoft.Build.Framework.BuildEventArgs)">
12359             <summary>
12360             Will Log a build Event. Will also take into account OnlyLogCriticalEvents when determining
12361             if to drop the event or to log it.
12362             
12363             Only the following events will be logged if OnlyLogCriticalEvents is true:
12364             CustomEventArgs
12365             BuildErrorEventArgs
12366             BuildWarningEventArgs
12367             </summary>
12368             <param name="buildEvent">BuildEvent to log</param>
12369             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">buildEvent is null</exception>
12370         </member>
12371         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.ProcessLoggingEvent(System.Object,System.Boolean)">
12372             <summary>
12373             This method will becalled from multiple threads in asynchronous mode.
12374             
12375             Determine where to send the buildevent either to the filters or to a specific sink.
12376             When in Asynchronous mode the event should to into the logging queue (as long as we are initialized).
12377             In Synchronous mode the event should be routed to the correct sink or logger right away
12378             </summary>
12379             <param name="buildEvent">BuildEventArgs to process</param>
12380             <param name="allowThrottling"><code>true</code> to allow throttling, otherwise <code>false</code>.</param>
12381             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">buildEvent is null</exception>
12382         </member>
12383         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.WaitForThreadToProcessEvents">
12384             <summary>
12385             Wait for the logging messages in the logging queue to be completly processed.
12386             This is required because for Logging build finished or when the component is to shutdown
12387             we need to make sure we process all of the events before the build finished event is raised
12388             and we need to make sure we process all of the logging events before we shutdown the component.
12389             </summary>
12390         </member>
12391         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.InjectNonSerializedData(Microsoft.Build.BackEnd.LogMessagePacket)">
12392             <summary>
12393             Adds data to the EventArgs of the log packet that the main node is aware of, but doesn't
12394             get serialized for perf reasons.
12395             </summary>
12396         </member>
12397         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.CreateLoggingEventQueue">
12398             <summary>
12399             Create a logging thread to process the logging queue
12400             </summary>
12401         </member>
12402         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.TerminateLoggingEventQueue">
12403             <summary>
12404             Wait for the logginQueue to empty and then terminate the logging thread
12405             </summary>
12406         </member>
12407         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.ShutdownLogger(Microsoft.Build.Framework.ILogger)">
12408             <summary>
12409             Shutdown an ILogger
12410             Rethrow LoggerExceptions
12411             Wrap all other exceptions in an InternalLoggerException
12412             </summary>
12413             <param name="logger">Logger to shutdown</param>
12414             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exception comming from a logger during shutdown that is not a LoggerException is wrapped in an InternalLoggerException and thrown</exception>
12415             <exception cref="T:Microsoft.Build.Framework.LoggerException">Errors during logger shutdown may throw a LoggerException, in this case the exception is re-thrown</exception>
12416         </member>
12417         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.CreateFilterEventSource">
12418             <summary>
12419             Create an event source to which the distributed (filter loggers) can attach to and listen
12420             for logging events. This event source will consume events which are logged against
12421             the logging service and raise them on itself.
12422             </summary>
12423         </member>
12424         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LoggingEventProcessor(System.Object)">
12425             <summary>
12426             The logging services thread loop. This loop will wait until the logging queue has build events.
12427             When this happens the thread will start to process the queue items by raising the build event
12428             on either a filter event source or a sink depending on where the message is supposed to go.
12429             </summary>
12430             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">WaitHandle returns something other than 0 or 1</exception>
12431         </member>
12432         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RouteBuildEvent(System.Object)">
12433             <summary>
12434             Route the event to the correct location, this is mostly used by the logging thread since it may have a buildevent or a tuple.
12435             </summary>
12436         </member>
12437         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RouteBuildEvent(System.Collections.Generic.KeyValuePair{System.Int32,Microsoft.Build.Framework.BuildEventArgs})">
12438             <summary>
12439             Route the build event to the correct filter or sink depending on what the sinId is in the build event. 
12440             </summary>
12441         </member>
12442         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RouteBuildEvent(Microsoft.Build.Framework.BuildEventArgs)">
12443             <summary>
12444             Route the build event to the filter
12445             </summary>
12446             <param name="eventArg">Build event that needs to be routed to the correct filter or sink.</param>
12447         </member>
12448         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.InitializeLogger(Microsoft.Build.Framework.ILogger,Microsoft.Build.Framework.IEventSource)">
12449             <summary>
12450             Initializes the logger and adds it to the list of loggers maintained by the engine.
12451             This method is not expected to be called from multiple threads
12452             </summary>
12453             <exception cref="T:Microsoft.Build.Framework.LoggerException">A logger exception thrown by a logger when its initialize call is made</exception>
12454             <exception cref="T:Microsoft.Build.Exceptions.InternalLoggerException">Any exceptions from initializing the logger which are not loggerExceptions are caught and wrapped in a InternalLoggerException</exception>
12455             <exception cref="T:System.Exception">Any exception which is a ExceptionHandling.IsCriticalException will not be wrapped</exception>
12456         </member>
12457         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.RaiseLoggingExceptionEvent(System.Exception)">
12458             <summary>
12459             When an exception is raised in the logging thread, we do not want the application to terminate right away. 
12460             Whidbey and orcas msbuild have the logger exceptions occurring on the engine thread so that the host can
12461             catch and deal with these exceptions as they may occur somewhat frequently due to user generated loggers.
12462             This method will raise the exception on a delegate to which the engine is registered to. This delegate will 
12463             send the exception to the engine so that it can be raised on the engine thread.
12464             </summary>
12465             <param name="ex">Exception to raise to event handlers</param>
12466         </member>
12467         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.TryRaiseProjectStartedEvent(Microsoft.Build.Framework.BuildEventArgs)">
12468             <summary>
12469             Raise the project started event, if necessary.
12470             </summary>
12471         </member>
12472         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.TryRaiseProjectFinishedEvent(Microsoft.Build.Framework.BuildEventArgs)">
12473             <summary>
12474             Raise the project finished event, if necessary.
12475             </summary>
12476         </member>
12477         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.GetAndVerifyProjectFileFromContext(Microsoft.Build.Framework.BuildEventContext)">
12478             <summary>
12479             Get the project name from a context ID. Throw an exception if it's not found.
12480             </summary>
12481         </member>
12482         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogComment(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
12483             <summary>
12484             Logs a comment (BuildMessageEventArgs) with a certain MessageImportance level
12485             </summary>
12486             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12487             <param name="importance">How important is the message, this will determine which verbosities the message will show up on. 
12488             The higher the importance the lower the verbosity needs to be for the message to be seen</param>
12489             <param name="messageResourceName">String which identifies the message in the string resx</param>
12490             <param name="messageArgs">Arguments for the format string indexed by messageResourceName</param>
12491             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">MessageResourceName is null</exception>
12492         </member>
12493         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogCommentFromText(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Framework.MessageImportance,System.String)">
12494             <summary>
12495             Log a comment
12496             </summary>
12497             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12498             <param name="importance">How important is the message, this will determine which verbosities the message will show up on. 
12499             The higher the importance the lower the verbosity needs to be for the message to be seen</param>
12500             <param name="message">Message to log</param>
12501             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12502             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Message is null</exception>
12503         </member>
12504         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogCommentFromText(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Framework.MessageImportance,System.String,System.Object[])">
12505             <summary>
12506             Log a comment
12507             </summary>
12508             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12509             <param name="importance">How important is the message, this will determine which verbosities the message will show up on. 
12510             The higher the importance the lower the verbosity needs to be for the message to be seen</param>
12511             <param name="message">Message to log</param>
12512             <param name="messageArgs">Message formatting arguments</param>
12513             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12514             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Message is null</exception>
12515         </member>
12516         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogError(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
12517             <summary>
12518             Logs an error with all registered loggers using the specified resource string.
12519             </summary>
12520             <param name="location">Event context information which describes who is logging the event</param>
12521             <param name="file">File information where the error happened</param>
12522             <param name="messageResourceName">String key to find the correct string resource</param>
12523             <param name="messageArgs">Arguments for the string resource</param>
12524         </member>
12525         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogError(Microsoft.Build.Framework.BuildEventContext,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
12526             <summary>
12527             Logs an error
12528             </summary>
12529             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12530             <param name="subcategoryResourceName">Can be null.</param>
12531             <param name="file">File information about where the error happened</param>
12532             <param name="messageResourceName">String index into the string.resx file</param>
12533             <param name="messageArgs">Arguments for the format string in the resource file</param>
12534             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">MessageResourceName is null</exception>
12535         </member>
12536         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogErrorFromText(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
12537             <summary>
12538             Logs an error with a given message
12539             </summary>
12540             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12541             <param name="subcategoryResourceName">Can be null.</param>
12542             <param name="errorCode">Can be null.</param>
12543             <param name="helpKeyword">Can be null.</param>
12544             <param name="file">File information about where the error happened</param>
12545             <param name="message">Error message which will be displayed</param>
12546             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">File is null</exception>
12547             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">Message is null</exception>
12548         </member>
12549         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogInvalidProjectFileError(Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Exceptions.InvalidProjectFileException)">
12550             <summary>
12551             Logs an error regarding an invalid project file . Since this method may be multiple times for the same InvalidProjectException
12552             we do not want to log the error multiple times. Once the exception has been logged we set a flag on the exception to note that
12553             it has already been logged.
12554             </summary>
12555             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12556             <param name="invalidProjectFileException">Exception which is causing the error</param>
12557             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">InvalidProjectFileException is null</exception>
12558             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12559         </member>
12560         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogFatalBuildError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo)">
12561             <summary>
12562             Logs an error regarding an unexpected build failure
12563             This will include a stack dump.
12564             </summary>
12565             <param name="buildEventContext">BuildEventContext of the error</param>
12566             <param name="exception">Exception wihch caused the build error</param>
12567             <param name="file">Provides file information about where the build error happened</param>
12568         </member>
12569         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogFatalTaskError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
12570             <summary>
12571             Logs an error regarding an unexpected task failure.
12572             This will include a stack dump.
12573             </summary>
12574             <param name="buildEventContext">BuildEventContext of the error</param>
12575             <param name="exception">Exceptionm which caused the error</param>
12576             <param name="file">File information which indicates which file the error is happening in</param>
12577             <param name="taskName">Task which the error is happening in</param>
12578             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">TaskName is null</exception>
12579         </member>
12580         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogFatalError(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
12581             <summary>
12582             Logs an error regarding an unexpected failure using the specified resource string.
12583             This will include a stack dump.
12584             </summary>
12585             <param name="buildEventContext">BuildEventContext of the error</param>
12586             <param name="exception">Exception which will be used to generate the error message</param>
12587             <param name="file">File information which describes where the error happened</param>
12588             <param name="messageResourceName">String name for the resource string to be used</param>
12589             <param name="messageArgs">Arguments for messageResourceName</param>
12590             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">MessageResourceName is null</exception>
12591         </member>
12592         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTaskWarningFromException(Microsoft.Build.Framework.BuildEventContext,System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
12593             <summary>
12594             Logs an warning regarding an unexpected task failure
12595             This will include a stack dump.
12596             </summary>
12597             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12598             <param name="exception">The exception to be used to create the warning text</param>
12599             <param name="file">The file information which indicates where the warning happened</param>
12600             <param name="taskName">Name of the task which the warning is being raised from</param>
12601         </member>
12602         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogWarning(Microsoft.Build.Framework.BuildEventContext,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String,System.Object[])">
12603             <summary>
12604             Logs a warning using the specified resource string.
12605             </summary>
12606             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12607             <param name="subcategoryResourceName">Can be null.</param>
12608             <param name="file">File information which describes where the warning happened</param>
12609             <param name="messageResourceName">String name for the resource string to be used</param>
12610             <param name="messageArgs">Arguments for messageResourceName</param>
12611         </member>
12612         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogWarningFromText(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
12613             <summary>
12614             Logs a warning
12615             </summary>
12616             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12617             <param name="subcategoryResourceName">Subcategory resource Name. Can be null.</param>
12618             <param name="warningCode">The warning code of the message. Can be null.</param>
12619             <param name="helpKeyword">Help keyword for the message. Can be null.</param>
12620             <param name="file">The file information which will describe where the warning happened</param>
12621             <param name="message">Warning message to log</param>
12622         </member>
12623         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogBuildStarted">
12624             <summary>
12625             Logs that the build has started 
12626             </summary>
12627         </member>
12628         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogBuildFinished(System.Boolean)">
12629             <summary>
12630             Logs that the build has finished
12631             </summary>
12632             <param name="success">Did the build pass or fail</param>
12633         </member>
12634         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogProjectStarted(Microsoft.Build.Framework.BuildEventContext,System.Int32,System.Int32,Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.DictionaryEntry},System.Collections.Generic.IEnumerable{System.Collections.DictionaryEntry})">
12635             <summary>
12636             Logs that a project build has started
12637             </summary>
12638             <param name="nodeBuildEventContext">The event context of the node which is spawning this project.</param>
12639             <param name="submissionId">The id of the submission.</param>
12640             <param name="projectInstanceId">Id of the project instance which is being started</param>
12641             <param name="parentBuildEventContext">BuildEventContext of the project who is requesting "projectFile" to build</param>
12642             <param name="projectFile">Project file to build</param>
12643             <param name="targetNames">Target names to build</param>
12644             <param name="properties">Initial property list</param>
12645             <param name="items">Initial items list</param>
12646             <returns>The build event context for the project.</returns>
12647             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">parentBuildEventContext is null</exception>
12648             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">projectBuildEventContext is null</exception>
12649         </member>
12650         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogProjectFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.Boolean)">
12651             <summary>
12652             Logs that a project has finished
12653             </summary>
12654             <param name="projectBuildEventContext">Event context for the project.</param>
12655             <param name="projectFile">Project file being built</param>
12656             <param name="success">Did the project pass or fail</param>
12657             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12658         </member>
12659         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTargetStarted(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.String)">
12660             <summary>
12661             Logs that a target started
12662             </summary>
12663             <param name="projectBuildEventContext">Event context for the project spawning this target</param>
12664             <param name="targetName">Name of target</param>
12665             <param name="projectFile">Project file being built</param>
12666             <param name="projectFileOfTargetElement">Project file which contains the target</param>
12667             <param name="parentTargetName">The name of the parent target.</param>
12668             <returns>The build event context for the target.</returns>
12669             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12670         </member>
12671         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTargetFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance.TaskItem})">
12672             <summary>
12673             Logs that a target has finished.
12674             </summary>
12675             <param name="targetBuildEventContext">Event context for the target</param>
12676             <param name="targetName">Target which has just finished</param>
12677             <param name="projectFile">Project file being built</param>
12678             <param name="projectFileOfTargetElement">Project file which contains the target</param>
12679             <param name="success">Did the target pass or fail</param>
12680             <param name="targetOutputs">Target outputs for the target.</param>
12681             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12682         </member>
12683         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTaskStarted(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String)">
12684             <summary>
12685             Logs that task execution has started.
12686             </summary>
12687             <param name="taskBuildEventContext">Event context for the task</param>
12688             <param name="taskName">Task Name</param>
12689             <param name="projectFile">Project file being built</param>
12690             <param name="projectFileOfTaskNode">Project file which contains the task</param>
12691             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12692         </member>
12693         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTaskStarted2(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String)">
12694             <summary>
12695             Logs that task execution has started.
12696             </summary>
12697             <param name="targetBuildEventContext">Event context for the target spawning this task.</param>
12698             <param name="taskName">Task Name</param>
12699             <param name="projectFile">Project file being built</param>
12700             <param name="projectFileOfTaskNode">Project file which contains the task</param>
12701             <returns>The build event context for the task.</returns>
12702             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12703         </member>
12704         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTaskFinished(Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String,System.Boolean)">
12705             <summary>
12706             Logs that a task has finished executing.
12707             </summary>
12708             <param name="taskBuildEventContext">Event context for the task</param>
12709             <param name="taskName">Name of the task</param>
12710             <param name="projectFile">Project which is being processed</param>
12711             <param name="projectFileOfTaskNode">Project file which contains the task</param>
12712             <param name="success">Did the task pass or fail</param>
12713             <exception cref="T:Microsoft.Build.Shared.InternalErrorException">BuildEventContext is null</exception>
12714         </member>
12715         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingService.LogTelemetry(Microsoft.Build.Framework.BuildEventContext,System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
12716             <summary>
12717             Logs a telemetry event.
12718             </summary>
12719             <param name="buildEventContext">Event context information which describes who is logging the event</param>
12720             <param name="eventName">The event name.</param>
12721             <param name="properties">The list of properties assocated with the event.</param>
12722         </member>
12723         <member name="T:Microsoft.Build.BackEnd.Logging.LoggingServiceFactory">
12724             <summary>
12725             Factory to create components of the type LoggingService
12726             </summary>
12727         </member>
12728         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceFactory._logMode">
12729             <summary>
12730             What kind of LoggerMode are the logging services when created.
12731             They could be Synchronous or Asynchronous
12732             </summary>
12733         </member>
12734         <member name="F:Microsoft.Build.BackEnd.Logging.LoggingServiceFactory._nodeId">
12735             <summary>
12736             What node is this logging service being created on.
12737             </summary>
12738         </member>
12739         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingServiceFactory.#ctor(Microsoft.Build.BackEnd.Logging.LoggerMode,System.Int32)">
12740             <summary>
12741             Tell the factory what kind of logging services is should create
12742             </summary>
12743             <param name="mode">Synchronous or Asynchronous</param>
12744             <param name="nodeId">The node identifier.</param>
12745         </member>
12746         <member name="M:Microsoft.Build.BackEnd.Logging.LoggingServiceFactory.CreateInstance(Microsoft.Build.BackEnd.BuildComponentType)">
12747             <summary>
12748             Create an instance of a LoggingService and returns is as an IBuildComponent
12749             </summary>
12750             <returns>An instance of a LoggingService as a IBuildComponent</returns>
12751         </member>
12752         <member name="T:Microsoft.Build.BackEnd.Logging.NodeLoggingContext">
12753             <summary>
12754             The logging context for an entire node.
12755             </summary>
12756         </member>
12757         <member name="M:Microsoft.Build.BackEnd.Logging.NodeLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ILoggingService,System.Int32,System.Boolean)">
12758             <summary>
12759             Used to create the initial, base logging context for the node.
12760             </summary>
12761             <param name="loggingService">The logging service to use.</param>
12762             <param name="nodeId">The </param>
12763             <param name="inProcNode"><code>true</code> if this is an in-process node, otherwise <code>false</code>.</param>
12764         </member>
12765         <member name="M:Microsoft.Build.BackEnd.Logging.NodeLoggingContext.LogBuildFinished(System.Boolean)">
12766             <summary>
12767             Log the completion of a build
12768             </summary>
12769             <param name="success">Did the build succeed or not</param>
12770         </member>
12771         <member name="M:Microsoft.Build.BackEnd.Logging.NodeLoggingContext.LogProjectStarted(Microsoft.Build.BackEnd.BuildRequestEntry)">
12772             <summary>
12773             Log that a project has started if it has no parent (the first project)
12774             </summary>
12775             <param name="requestEntry">The build request entry for this project.</param>
12776             <returns>The BuildEventContext to use for this project.</returns>
12777         </member>
12778         <member name="M:Microsoft.Build.BackEnd.Logging.NodeLoggingContext.LogProjectStarted(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
12779             <summary>
12780             Log that a project has started if it is serviced from the cache
12781             </summary>
12782             <param name="request">The build request.</param>
12783             <param name="configuration">The configuration used to build the request.</param>
12784             <returns>The BuildEventContext to use for this project.</returns>
12785         </member>
12786         <member name="M:Microsoft.Build.BackEnd.Logging.NodeLoggingContext.LogRequestHandledFromCache(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.BuildRequestConfiguration,Microsoft.Build.Execution.BuildResult)">
12787             <summary>
12788             Logs the project started/finished pair for projects which are skipped entirely because all
12789             of their results are available in the cache.
12790             </summary>
12791         </member>
12792         <member name="T:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext">
12793             <summary>
12794             A logging context for a project.
12795             </summary>
12796         </member>
12797         <member name="F:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext._projectFullPath">
12798             <summary>
12799             The project's full path
12800             </summary>
12801         </member>
12802         <member name="F:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext._nodeLoggingContext">
12803             <summary>
12804             The parent node logging context this context was derived from.
12805             </summary>
12806         </member>
12807         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.NodeLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.Framework.BuildEventContext)">
12808             <summary>
12809             Constructs a project logging context.
12810             </summary>
12811         </member>
12812         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.NodeLoggingContext,Microsoft.Build.BackEnd.BuildRequest,System.String,System.String,Microsoft.Build.Framework.BuildEventContext)">
12813             <summary>
12814             Constructs a project logging context.
12815             </summary>
12816         </member>
12817         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.NodeLoggingContext,System.Int32,System.Int32,System.String,System.Collections.Generic.List{System.String},System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance},Microsoft.Build.Framework.BuildEventContext)">
12818             <summary>
12819             Constructs a project logging contexts.
12820             </summary>
12821         </member>
12822         <member name="P:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.NodeLoggingContext">
12823             <summary>
12824             Retrieves the node logging context.
12825             </summary>
12826         </member>
12827         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.LogProjectFinished(System.Boolean)">
12828             <summary>
12829             Log that the project has finished
12830             </summary>
12831             <param name="success">Did the build succeede or not</param>
12832         </member>
12833         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.LogTargetBatchStarted(System.String,Microsoft.Build.Execution.ProjectTargetInstance,System.String)">
12834             <summary>
12835             Log that a target has started
12836             </summary>
12837         </member>
12838         <member name="T:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectItemInstanceEnumeratorProxy">
12839             <summary>
12840             An enumerable wrapper for items that clones items as they are requested,
12841             so that writes have no effect on the items.
12842             </summary>
12843             <remarks>
12844             This class is designed to be passed to loggers.
12845             The expense of copying items is only incurred if and when 
12846             a logger chooses to enumerate over it.
12847             The type of the items enumerated over is imposed by backwards compatibility for ProjectStartedEvent.
12848             </remarks>
12849         </member>
12850         <member name="F:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectItemInstanceEnumeratorProxy._backingItems">
12851             <summary>
12852             Enumerable that this proxies
12853             </summary>
12854         </member>
12855         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectItemInstanceEnumeratorProxy.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance})">
12856             <summary>
12857             Constructor
12858             </summary>
12859             <param name="backingItems">Enumerator this class should proxy</param>
12860         </member>
12861         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectItemInstanceEnumeratorProxy.GetEnumerator">
12862             <summary>
12863             Returns an enumerator that provides copies of the items
12864             in the backing store.
12865             Each dictionary entry has key of the item type and value of an ITaskItem.
12866             Type of the enumerator is imposed by backwards compatibility for ProjectStartedEvent.
12867             </summary>
12868         </member>
12869         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectItemInstanceEnumeratorProxy.System#Collections#IEnumerable#GetEnumerator">
12870             <summary>
12871             Returns an enumerator that provides copies of the items
12872             in the backing store.
12873             </summary>
12874         </member>
12875         <member name="T:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectPropertyInstanceEnumeratorProxy">
12876             <summary>
12877             An enumerable wrapper for properties that clones properties as they are requested,
12878             so that writes have no effect on the properties.
12879             </summary>
12880             <remarks>
12881             This class is designed to be passed to loggers.
12882             The expense of copying items is only incurred if and when 
12883             a logger chooses to enumerate over it.
12884             The type of the items enumerated over is imposed by backwards compatibility for ProjectStartedEvent.
12885             </remarks>
12886         </member>
12887         <member name="F:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectPropertyInstanceEnumeratorProxy._backingProperties">
12888             <summary>
12889             Enumerable that this proxies
12890             </summary>
12891         </member>
12892         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectPropertyInstanceEnumeratorProxy.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectPropertyInstance})">
12893             <summary>
12894             Constructor
12895             </summary>
12896             <param name="backingProperties">Enumerator this class should proxy</param>
12897         </member>
12898         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectPropertyInstanceEnumeratorProxy.GetEnumerator">
12899             <summary>
12900             Returns an enumerator that provides copies of the properties
12901             in the backing store.
12902             Each DictionaryEntry has key of the property name and value of the property value.
12903             Type of the enumerator is imposed by backwards compatibility for ProjectStartedEvent.
12904             </summary>
12905         </member>
12906         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectLoggingContext.ProjectPropertyInstanceEnumeratorProxy.System#Collections#IEnumerable#GetEnumerator">
12907             <summary>
12908             Returns an enumerator that provides copies of the properties
12909             in the backing store.
12910             </summary>
12911         </member>
12912         <member name="T:Microsoft.Build.BackEnd.Logging.TargetLoggingContext">
12913             <summary>
12914             A logging context for building a specific target within a project.
12915             </summary>
12916         </member>
12917         <member name="F:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.s_enableTargetOutputLogging">
12918             <summary>
12919             Should target outputs be logged also.
12920             </summary>
12921         </member>
12922         <member name="F:Microsoft.Build.BackEnd.Logging.TargetLoggingContext._projectLoggingContext">
12923             <summary>
12924             The project to which this target is attached.
12925             </summary>
12926         </member>
12927         <member name="F:Microsoft.Build.BackEnd.Logging.TargetLoggingContext._target">
12928             <summary>
12929             The target being built.
12930             </summary>
12931         </member>
12932         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ProjectLoggingContext,System.String,Microsoft.Build.Execution.ProjectTargetInstance,System.String)">
12933             <summary>
12934             Creates a new target logging context from an existing project context and target.
12935             </summary>
12936         </member>
12937         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
12938             <summary>
12939             Constructor used to support out-of-proc task host (proxy for in-proc logging service.)
12940             </summary>
12941         </member>
12942         <member name="P:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.EnableTargetOutputLogging">
12943             <summary>
12944             Should target outputs be logged also.
12945             </summary>
12946         </member>
12947         <member name="P:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.ProjectLoggingContext">
12948             <summary>
12949             Retrieves the project logging context.
12950             </summary>
12951         </member>
12952         <member name="P:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.Target">
12953             <summary>
12954             Retrieves the target.
12955             </summary>
12956         </member>
12957         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.LogTargetBatchFinished(System.String,System.Boolean,System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance.TaskItem})">
12958             <summary>
12959             Log that a target has finished
12960             </summary>
12961         </member>
12962         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.LogTaskBatchStarted(System.String,Microsoft.Build.Execution.ProjectTargetInstanceChild)">
12963             <summary>
12964             Log that a task is about to start
12965             </summary>
12966         </member>
12967         <member name="T:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.TargetOutputItemsInstanceEnumeratorProxy">
12968             <summary>
12969             An enumerable wrapper for items that clones items as they are requested,
12970             so that writes have no effect on the items.
12971             </summary>
12972             <remarks>
12973             This class is designed to be passed to loggers.
12974             The expense of copying items is only incurred if and when 
12975             a logger chooses to enumerate over it.
12976             </remarks>
12977         </member>
12978         <member name="F:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.TargetOutputItemsInstanceEnumeratorProxy._backingItems">
12979             <summary>
12980             Enumerable that this proxies
12981             </summary>
12982         </member>
12983         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.TargetOutputItemsInstanceEnumeratorProxy.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance.TaskItem})">
12984             <summary>
12985             Constructor
12986             </summary>
12987             <param name="backingItems">Enumerator this class should proxy</param>
12988         </member>
12989         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.TargetOutputItemsInstanceEnumeratorProxy.GetEnumerator">
12990             <summary>
12991             Returns an enumerator that provides copies of the items
12992             in the backing store.
12993             Each dictionary entry has key of the item type and value of an ITaskItem.
12994             Type of the enumerator is imposed by backwards compatibility for ProjectStartedEvent.
12995             </summary>
12996         </member>
12997         <member name="M:Microsoft.Build.BackEnd.Logging.TargetLoggingContext.TargetOutputItemsInstanceEnumeratorProxy.System#Collections#IEnumerable#GetEnumerator">
12998             <summary>
12999             Returns an enumerator that provides copies of the items
13000             in the backing store.
13001             </summary>
13002         </member>
13003         <member name="T:Microsoft.Build.BackEnd.Logging.TaskLoggingContext">
13004             <summary>
13005             A logging context representing a task being built.
13006             </summary>
13007         </member>
13008         <member name="F:Microsoft.Build.BackEnd.Logging.TaskLoggingContext._targetLoggingContext">
13009             <summary>
13010             The target context in which this task is being built.
13011             </summary>
13012         </member>
13013         <member name="F:Microsoft.Build.BackEnd.Logging.TaskLoggingContext._task">
13014             <summary>
13015             The task instance
13016             </summary>
13017         </member>
13018         <member name="F:Microsoft.Build.BackEnd.Logging.TaskLoggingContext._taskName">
13019             <summary>
13020             The name of the task
13021             </summary>
13022         </member>
13023         <member name="M:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.TargetLoggingContext,System.String,Microsoft.Build.Execution.ProjectTargetInstanceChild)">
13024             <summary>
13025             Constructs a task logging context from a parent target context and a task node.
13026             </summary>
13027         </member>
13028         <member name="M:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.#ctor(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
13029             <summary>
13030             Constructor used to support out-of-proc task host (proxy for in-proc logging service.)
13031             </summary>
13032         </member>
13033         <member name="P:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.TargetLoggingContext">
13034             <summary>
13035             Retrieves the target logging context.
13036             </summary>
13037         </member>
13038         <member name="P:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.Task">
13039             <summary>
13040             Retrieves the task node.
13041             </summary>
13042         </member>
13043         <member name="P:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.TaskName">
13044             <summary>
13045             Retrieves the task node.
13046             </summary>
13047         </member>
13048         <member name="M:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.LogTaskBatchFinished(System.String,System.Boolean)">
13049             <summary>
13050             Log that a task has just completed
13051             </summary>
13052         </member>
13053         <member name="M:Microsoft.Build.BackEnd.Logging.TaskLoggingContext.LogTaskWarningFromException(System.Exception,Microsoft.Build.Shared.BuildEventFileInfo,System.String)">
13054             <summary>
13055             Log a warning based on an exception
13056             </summary>
13057             <param name="exception">The exception to be logged as a warning</param>
13058             <param name="file">The file in which the warning occurred</param>
13059             <param name="taskName">The task in which the warning occurred</param>
13060         </member>
13061         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger._supportReadingBackgroundColor">
13062             <summary>
13063             When set, we'll try reading background color.
13064             </summary>
13065         </member>
13066         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.BackgroundColor">
13067             <summary>
13068             Some platforms do not allow getting current background color. There
13069             is not way to check, but not-supported exception is thrown. Assume
13070             black, but don't crash.
13071             </summary>
13072         </member>
13073         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.Verbosity">
13074             <summary>
13075             Gets or sets the level of detail to show in the event log.
13076             </summary>
13077             <value>Verbosity level.</value>
13078         </member>
13079         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.NumberOfProcessors">
13080             <summary>
13081             Gets or sets the number of MSBuild processes participating in the build. If greater than 1,
13082             include the node ID 
13083             </summary>
13084         </member>
13085         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.Parameters">
13086             <summary>
13087             The console logger takes a single parameter to suppress the output of the errors
13088             and warnings summary at the end of a build.
13089             </summary>
13090             <value>null</value>
13091         </member>
13092         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.SkipProjectStartedText">
13093             <summary>
13094             Suppresses the display of project headers. Project headers are
13095             displayed by default unless this property is set.
13096             </summary>
13097             <remarks>This is only needed by the IDE logger.</remarks>
13098         </member>
13099         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ShowSummary">
13100             <summary>
13101             Suppresses the display of error and warnings summary.
13102             If null, user has made no indication.
13103             </summary>
13104         </member>
13105         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteHandler">
13106             <summary>
13107             Provide access to the write hander delegate so that it can be redirected
13108             if necessary (e.g. to a file)
13109             </summary>
13110         </member>
13111         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ParseParameters">
13112             <summary>
13113             Parses out the logger parameters from the Parameters string.
13114             </summary>
13115         </member>
13116         <member name="T:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.DictionaryEntryKeyComparer">
13117             <summary>
13118             An implementation of IComparer useful for comparing the keys 
13119             on DictionaryEntry's
13120             </summary>
13121             <remarks>Uses CurrentCulture for display purposes</remarks>
13122         </member>
13123         <member name="T:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ITaskItemItemSpecComparer">
13124             <summary>
13125             An implementation of IComparer useful for comparing the ItemSpecs 
13126             on ITaskItem's
13127             </summary>
13128             <remarks>Uses CurrentCulture for display purposes</remarks>
13129         </member>
13130         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.IndentString(System.String,System.Int32)">
13131             <summary>
13132             Indents the given string by the specified number of spaces.
13133             </summary>
13134             <param name="s">String to indent.</param>
13135             <param name="indent">Depth to indent.</param>
13136         </member>
13137         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.SplitStringOnNewLines(System.String)">
13138             <summary>
13139             Splits strings on 'newLines' with tolerance for Everett and Dogfood builds.
13140             </summary>
13141             <param name="s">String to split.</param>
13142         </member>
13143         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteNewLine">
13144             <summary>
13145             Writes a newline to the log.
13146             </summary>
13147         </member>
13148         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteLinePrettyFromResource(System.String,System.Object[])">
13149             <summary>
13150             Writes a line from a resource string to the log, using the default indentation.
13151             </summary>
13152             <param name="resourceString"></param>
13153             <param name="args"></param>
13154         </member>
13155         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteLinePrettyFromResource(System.Int32,System.String,System.Object[])">
13156             <summary>
13157             Writes a line from a resource string to the log, using the specified indentation.
13158             </summary>
13159         </member>
13160         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WritePretty(System.String)">
13161             <summary>
13162             Writes to the log, using the default indentation. Does not 
13163             terminate with a newline.
13164             </summary>
13165         </member>
13166         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ShowPerfSummary">
13167             <summary>
13168             If requested, display a performance summary at the end of the build.  This
13169             shows how much time (and # hits) were spent inside of each project, target,
13170             and task.
13171             </summary>
13172         </member>
13173         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WritePretty(System.Int32,System.String)">
13174             <summary>
13175             Writes to the log, using the specified indentation. Does not 
13176             terminate with a newline.
13177             </summary>
13178         </member>
13179         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteLinePretty(System.String)">
13180             <summary>
13181             Writes a line to the log, using the default indentation.
13182             </summary>
13183             <param name="formattedString"></param>
13184         </member>
13185         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteLinePretty(System.Int32,System.String)">
13186             <summary>
13187             Writes a line to the log, using the specified indentation.
13188             </summary>
13189         </member>
13190         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.IsRunningWithCharacterFileType">
13191             <summary>
13192             Check to see what kind of device we are outputting the log to, is it a character device, a file, or something else
13193             this can be used by loggers to modify their outputs based on the device they are writing to
13194             </summary>
13195         </member>
13196         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.IsVerbosityAtLeast(Microsoft.Build.Framework.LoggerVerbosity)">
13197             <summary>
13198             Determines whether the current verbosity setting is at least the value
13199             passed in.
13200             </summary>
13201         </member>
13202         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.SetColor(System.ConsoleColor)">
13203             <summary>
13204             Sets foreground color to color specified
13205             </summary>
13206         </member>
13207         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ResetColor">
13208             <summary>
13209             Resets the color
13210             </summary>
13211         </member>
13212         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.SetColorAnsi(System.ConsoleColor)">
13213             <summary>
13214             Sets foreground color to color specified using ANSI escape codes
13215             </summary>
13216             <param name="c">foreground color</param>
13217         </member>
13218         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ResetColorAnsi">
13219             <summary>
13220             Resets the color using ANSI escape codes
13221             </summary>
13222         </member>
13223         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.TransformColor(System.ConsoleColor,System.ConsoleColor)">
13224             <summary>
13225             Changes the foreground color to black if the foreground is the
13226             same as the background. Changes the foreground to white if the
13227             background is black.
13228             </summary>
13229             <param name="foreground">foreground color for black</param>
13230             <param name="background">current background</param>
13231         </member>
13232         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.DontSetColor(System.ConsoleColor)">
13233             <summary>
13234             Does nothing, meets the ColorSetter delegate type
13235             </summary>
13236             <param name="c">foreground color (is ignored)</param>
13237         </member>
13238         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.DontResetColor">
13239             <summary>
13240             Does nothing, meets the ColorResetter delegate type
13241             </summary>
13242         </member>
13243         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteProperties(System.Collections.Generic.List{System.Collections.DictionaryEntry})">
13244             <summary>
13245             Writes out the list of property names and their values.
13246             This could be done at any time during the build to show the latest
13247             property values, using the cached reference to the list from the 
13248             appropriate ProjectStarted event.
13249             </summary>
13250             <param name="properties">List of properties</param>
13251         </member>
13252         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteEnvironment(System.Collections.Generic.IDictionary{System.String,System.String})">
13253             <summary>
13254             Writes out the environment as seen on build started.
13255             </summary>
13256         </member>
13257         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ExtractPropertyList(System.Collections.IEnumerable)">
13258             <summary>
13259             Generate a list which contains the properties referenced by the properties 
13260             enumerable object
13261             </summary>
13262         </member>
13263         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.OutputEnvironment(System.Collections.Generic.IDictionary{System.String,System.String})">
13264             <summary>
13265             Write the environment of the build as was captured on the build started event.
13266             </summary>
13267         </member>
13268         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.WriteItems(System.Collections.SortedList)">
13269             <summary>
13270             Writes out the list of item specs and their metadata.
13271             This could be done at any time during the build to show the latest
13272             items, using the cached reference to the list from the 
13273             appropriate ProjectStarted event.
13274             </summary>
13275         </member>
13276         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ExtractItemList(System.Collections.IEnumerable)">
13277             <summary>
13278             Extract the Items from the enumerable object and return a sorted list containing these items
13279             </summary>
13280         </member>
13281         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.OutputItems(System.String,System.Collections.ArrayList)">
13282             <summary>
13283             Dump the initial items provided.
13284             Overridden in ParallelConsoleLogger.
13285             </summary>
13286         </member>
13287         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.GetPerformanceCounter(System.String,System.Collections.Generic.Dictionary{System.String,Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter}@)">
13288             <summary>
13289             Returns a performance counter for a given scope (either task name or target name)
13290             from the given table.
13291             </summary>
13292             <param name="scopeName">Task name or target name.</param>
13293             <param name="table">Table that has tasks or targets.</param>
13294             <returns></returns>
13295         </member>
13296         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.DisplayCounters(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter})">
13297             <summary>
13298             Display the timings for each counter in the dictionary.
13299             </summary>
13300             <param name="counters"></param>
13301         </member>
13302         <member name="T:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter">
13303             <summary>
13304             Records performance information consumed by a task or target.
13305             </summary>
13306         </member>
13307         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.#ctor(System.String)">
13308             <summary>
13309             Construct.
13310             </summary>
13311             <param name="scopeName"></param>
13312         </member>
13313         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.ScopeName">
13314             <summary>
13315             Name of the scope.
13316             </summary>
13317         </member>
13318         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.Calls">
13319             <summary>
13320             Total number of calls so far.
13321             </summary>
13322         </member>
13323         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.ElapsedTime">
13324             <summary>
13325             Total accumulated time so far.
13326             </summary>
13327         </member>
13328         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.ReenteredScope">
13329             <summary>
13330             Whether or not this scope was reentered. Timing information is not recorded in these cases.
13331             </summary>
13332         </member>
13333         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.InScope">
13334             <summary>
13335             Whether or not this task or target is executing right now.
13336             </summary>
13337         </member>
13338         <member name="P:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.DescendingByElapsedTimeComparer">
13339             <summary>
13340             Returns an IComparer that will put performance counters 
13341             in descending order by elapsed time.
13342             </summary>
13343         </member>
13344         <member name="T:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.DescendingByElapsedTime">
13345             <summary>
13346             Private IComparer class for sorting performance counters 
13347             in descending order by elapsed time.
13348             </summary>
13349         </member>
13350         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter.DescendingByElapsedTime.Compare(System.Object,System.Object)">
13351             <summary>
13352             Compare two PerformanceCounters.
13353             </summary>
13354             <param name="o1"></param>
13355             <param name="o2"></param>
13356             <returns></returns>
13357         </member>
13358         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
13359             <summary>
13360             Signs up the console logger for all build events.
13361             </summary>
13362             <param name="eventSource">Available events.</param>
13363         </member>
13364         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ApplyParameter(System.String,System.String)">
13365             <summary>
13366             Apply a logger parameter.
13367             parameterValue may be null, if there is no parameter value.
13368             </summary>
13369         </member>
13370         <member name="M:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.ApplyVerbosityParameter(System.String)">
13371             <summary>
13372             Apply the verbosity value
13373             </summary>
13374         </member>
13375         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.buildStarted">
13376             <summary>
13377             Time the build started
13378             </summary>
13379         </member>
13380         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.setColor">
13381             <summary>
13382             Delegate used to change text color.
13383             </summary>
13384         </member>
13385         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.resetColor">
13386             <summary>
13387             Delegate used to reset text color
13388             </summary>
13389         </member>
13390         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.tabWidth">
13391             <summary>
13392             Number of spaces that each level of indentation is worth
13393             </summary>
13394         </member>
13395         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.currentIndentLevel">
13396             <summary>
13397             Keeps track of the current indentation level.
13398             </summary>
13399         </member>
13400         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.newLines">
13401             <summary>
13402             The kinds of newline breaks we expect.
13403             </summary>
13404             <remarks>Currently we're not supporting "\r".</remarks>
13405         </member>
13406         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.projectSeparatorLine">
13407             <summary>
13408             Visual separator for projects. Line length was picked arbitrarily.
13409             </summary>
13410         </member>
13411         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.parameterDelimiters">
13412             <summary>
13413             Console logger parameters delimiters.
13414             </summary>
13415         </member>
13416         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.s_parameterValueSplitCharacter">
13417             <summary>
13418             Console logger parameter value split character.
13419             </summary>
13420         </member>
13421         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showPerfSummary">
13422             <summary>
13423             When true, accumulate performance numbers.
13424             </summary>
13425         </member>
13426         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showItemAndPropertyList">
13427             <summary>
13428             When true, show the list of item and property values at the start of each project
13429             </summary>
13430         </member>
13431         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showTargetOutputs">
13432             <summary>
13433             Should the target output items be displayed
13434             </summary>
13435         </member>
13436         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showOnlyWarnings">
13437             <summary>
13438             When true, suppresses all messages except for warnings. (And possibly errors, if showOnlyErrors is true.)
13439             </summary>
13440         </member>
13441         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showOnlyErrors">
13442             <summary>
13443             When true, suppresses all messages except for errors. (And possibly warnings, if showOnlyWarnings is true.)
13444             </summary>
13445         </member>
13446         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showEnvironment">
13447             <summary>
13448             When true the environment block supplied by the build started event should be printed out at the start of the build
13449             </summary>
13450         </member>
13451         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.showProjectFile">
13452             <summary>
13453             When true, indicates that the logger should tack the project file onto the end of errors and warnings.
13454             </summary>
13455         </member>
13456         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.errorCount">
13457             <summary>
13458             Number of errors encountered in this build
13459             </summary>
13460         </member>
13461         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.warningCount">
13462             <summary>
13463             Number of warnings encountered in this build
13464             </summary>
13465         </member>
13466         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.errorList">
13467             <summary>
13468             A list of the errors that have occurred during this build.
13469             </summary>
13470         </member>
13471         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.warningList">
13472             <summary>
13473             A list of the warnings that have occurred during this build.
13474             </summary>
13475         </member>
13476         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.projectPerformanceCounters">
13477             <summary>
13478             Accumulated project performance information.
13479             </summary>
13480         </member>
13481         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.targetPerformanceCounters">
13482             <summary>
13483             Accumulated target performance information.
13484             </summary>
13485         </member>
13486         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.taskPerformanceCounters">
13487             <summary>
13488             Accumulated task performance information.
13489             </summary>
13490         </member>
13491         <member name="F:Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.projectEvaluationPerformanceCounters">
13492             <summary>
13493             
13494             </summary>
13495         </member>
13496         <member name="T:Microsoft.Build.BackEnd.Logging.NullCentralLogger">
13497             <summary>
13498             This class will throw an exception when it receives any event except for the build started or build finished event
13499             this logger is good to use if a distributed logger is attached but does not want to forward any events
13500             </summary>
13501         </member>
13502         <member name="T:Microsoft.Build.BackEnd.Logging.BuildEventManager">
13503             <summary>
13504             Stores and manages projects and targets events for logging purposes
13505             </summary>
13506         </member>
13507         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.AddProjectStartedEvent(Microsoft.Build.Framework.ProjectStartedEventArgs,System.Boolean)">
13508             <summary>
13509              Adds a new project to the list of project started events which have been fired
13510             </summary>
13511         </member>
13512         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.AddTargetStartedEvent(Microsoft.Build.Framework.TargetStartedEventArgs,System.Boolean)">
13513             <summary>
13514              Adds a new target to the list of project started events which have been fired
13515             </summary>
13516         </member>
13517         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.GetProjectCallStack(Microsoft.Build.Framework.BuildEventContext)">
13518             <summary>
13519             Get a call stack of event contexts for a starting point event context
13520             </summary>
13521         </member>
13522         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.SetErrorWarningFlagOnCallStack(Microsoft.Build.Framework.BuildEventContext)">
13523             <summary>
13524             Set an error flag on all projects in the call stack of a given event context
13525             </summary>
13526         </member>
13527         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.ProjectCallStackFromProject(Microsoft.Build.Framework.BuildEventContext)">
13528             <summary>
13529             Retrieve the project call stack based on the starting point of buildEventContext e
13530             </summary>
13531         </member>
13532         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.GetProjectStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13533             <summary>
13534             Get a deferred project started event based on a given event context
13535             </summary>
13536         </member>
13537         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.GetTargetStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13538             <summary>
13539              Get a deferred target started event based on a given event context
13540             </summary>
13541         </member>
13542         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.RemoveProjectStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13543             <summary>
13544             Will remove a project started event from the list of deferred project started events
13545             </summary>
13546         </member>
13547         <member name="M:Microsoft.Build.BackEnd.Logging.BuildEventManager.RemoveTargetStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13548             <summary>
13549             Will remove a project started event from the list of deferred project started events
13550             </summary>
13551         </member>
13552         <member name="T:Microsoft.Build.BackEnd.Logging.ComparerContextNodeId`1">
13553             <summary>
13554             Compares two event contexts on ProjectContextId and NodeId only
13555             </summary>
13556         </member>
13557         <member name="T:Microsoft.Build.BackEnd.Logging.ComparerContextNodeIdTargetId`1">
13558             <summary>
13559             Compares two event contexts based on the ProjectContextId, NodeId, and TargetId only
13560             </summary>
13561         </member>
13562         <member name="T:Microsoft.Build.BackEnd.Logging.ProjectStartedEventMinimumFields">
13563             <summary>
13564             This class stands in for a full project started event because it contains only the 
13565             minimum amount of inforomation needed for the logger
13566             </summary>
13567         </member>
13568         <member name="T:Microsoft.Build.BackEnd.Logging.TargetStartedEventMinimumFields">
13569             <summary>
13570             This class stands in for a full target started event because it contains only the 
13571             minimum amount of inforomation needed for the logger
13572             </summary>
13573         </member>
13574         <member name="T:Microsoft.Build.BackEnd.Logging.ErrorWarningSummaryDictionaryKey">
13575             <summary>
13576             This class is used as a key to group warnings and errors by the project entry point and the target they 
13577             error or warning was in
13578             </summary>
13579         </member>
13580         <member name="T:Microsoft.Build.BackEnd.Logging.ProjectFullKey">
13581             <summary>
13582             Structure that holds both project and entrypoint keys
13583             </summary>
13584         </member>
13585         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectFullKey.ToString(Microsoft.Build.Framework.LoggerVerbosity)">
13586             <summary>
13587             Output the projectKey or the projectKey and the entrypointKey depending on the verbosity level of the logger
13588             </summary>
13589         </member>
13590         <member name="M:Microsoft.Build.BackEnd.Logging.ProjectFullKey.ToString">
13591             <summary>
13592             The default of he ToString method should  be to output the projectKey or the projectKey and the entrypointKey depending if a
13593             entry point key exists or not
13594             </summary>
13595             <returns></returns>
13596         </member>
13597         <member name="T:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger">
13598             <summary>
13599             This class implements the default logger that outputs event data
13600             to the console (stdout).
13601             </summary>
13602             <remarks>This class is not thread safe.</remarks>
13603         </member>
13604         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.#ctor">
13605             <summary>
13606             Default constructor.
13607             </summary>
13608         </member>
13609         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity)">
13610             <summary>
13611             Create a logger instance with a specific verbosity.  This logs to
13612             the default console.
13613             </summary>
13614         </member>
13615         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity,Microsoft.Build.Logging.WriteHandler,Microsoft.Build.Logging.ColorSetter,Microsoft.Build.Logging.ColorResetter)">
13616             <summary>
13617             Initializes the logger, with alternate output handlers.
13618             </summary>
13619         </member>
13620         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.CheckIfOutputSupportsAlignment">
13621             <summary>
13622             Check to see if the console is going to a char output such as a console,printer or com port, or if it going to a file
13623             </summary>
13624         </member>
13625         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ApplyParameter(System.String,System.String)">
13626             <summary>
13627             Allows the logger to take action based on a parameter passed on when initializing the logger
13628             </summary>
13629         </member>
13630         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ShownBuildEventContext(Microsoft.Build.Framework.BuildEventContext)">
13631             <summary>
13632             Keep track of the last event displayed so target names can be displayed at the correct time
13633             </summary>
13634         </member>
13635         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ResetConsoleLoggerState">
13636             <summary>
13637             Reset the states of per-build member variables
13638             VSW#516376 
13639             </summary>
13640         </member>
13641         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.BuildStartedHandler(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
13642             <summary>
13643             Handler for build started events
13644             </summary>
13645             <param name="sender">sender (should be null)</param>
13646             <param name="e">event arguments</param>
13647         </member>
13648         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.BuildFinishedHandler(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
13649             <summary>
13650             Handler for build finished events
13651             </summary>
13652             <param name="sender">sender (should be null)</param>
13653             <param name="e">event arguments</param>
13654         </member>
13655         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ShowFlatErrorWarningSummary">
13656             <summary>
13657             At the end of the build, repeats the errors and warnings that occurred 
13658             during the build, and displays the error count and warning count.
13659             Does this in a "flat" style, without context.
13660             </summary>
13661         </member>
13662         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ShowNestedErrorWarningSummary">
13663             <summary>
13664             At the end of the build, repeats the errors and warnings that occurred 
13665             during the build, and displays the error count and warning count.
13666             Does this in a "nested" style.
13667             </summary>
13668         </member>
13669         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ProjectStartedHandler(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
13670             <summary>
13671             Handler for project started events
13672             </summary>
13673             <param name="sender">sender (should be null)</param>
13674             <param name="e">event arguments</param>
13675         </member>
13676         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ProjectFinishedHandler(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
13677             <summary>
13678             Handler for project finished events
13679             </summary>
13680             <param name="sender">sender (should be null)</param>
13681             <param name="e">event arguments</param>
13682         </member>
13683         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteProperties(Microsoft.Build.Framework.BuildEventArgs,System.Collections.IEnumerable)">
13684             <summary>
13685             Writes out the list of property names and their values.
13686             This could be done at any time during the build to show the latest
13687             property values, using the cached reference to the list from the 
13688             appropriate ProjectStarted event.
13689             </summary>
13690             <param name="e">A <see cref="T:Microsoft.Build.Framework.BuildEventArgs"/> object containing information about the build event.</param>
13691             <param name="properties">List of properties</param>
13692         </member>
13693         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.OutputEnvironment(System.Collections.Generic.IDictionary{System.String,System.String})">
13694             <summary>
13695              Write the environment strings to the console.
13696             </summary>
13697         </member>
13698         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteItems(Microsoft.Build.Framework.BuildEventArgs,System.Collections.IEnumerable)">
13699             <summary>
13700             Writes out the list of item specs and their metadata.
13701             This could be done at any time during the build to show the latest
13702             items, using the cached reference to the list from the 
13703             appropriate ProjectStarted event.
13704             </summary>
13705             <param name="e">A <see cref="T:Microsoft.Build.Framework.BuildEventArgs"/> object containing information about the build event.</param>
13706             <param name="items">List of items</param>
13707         </member>
13708         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.TargetStartedHandler(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
13709             <summary>
13710             Handler for target started events
13711             </summary>
13712             <param name="sender">sender (should be null)</param>
13713             <param name="e">event arguments</param>
13714         </member>
13715         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.TargetFinishedHandler(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
13716             <summary>
13717             Handler for target finished events
13718             </summary>
13719             <param name="sender">sender (should be null)</param>
13720             <param name="e">event arguments</param>
13721         </member>
13722         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.TaskStartedHandler(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
13723             <summary>
13724             Handler for task started events
13725             </summary>
13726             <param name="sender">sender (should be null)</param>
13727             <param name="e">event arguments</param>
13728         </member>
13729         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.TaskFinishedHandler(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
13730             <summary>
13731             Handler for task finished events
13732             </summary>
13733             <param name="sender">sender (should be null)</param>
13734             <param name="e">event arguments</param>
13735         </member>
13736         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.ErrorHandler(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
13737             <summary>
13738             Prints an error event
13739             </summary>
13740         </member>
13741         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WarningHandler(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
13742             <summary>
13743             Prints a warning event
13744             </summary>
13745         </member>
13746         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.MessageHandler(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
13747             <summary>
13748             Prints a message event
13749             </summary>
13750         </member>
13751         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.PrintMessage(Microsoft.Build.Framework.BuildMessageEventArgs,System.Boolean)">
13752             <summary>
13753             Prints out a message event to the console
13754             </summary>
13755         </member>
13756         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteMessageAligned(System.String,System.Boolean)">
13757             <summary>
13758             Writes a message to the console, aligned and formatted to fit within the console width
13759             </summary>
13760             <param name="message">Message to be formatted to fit on the console</param>
13761             <param name="prefixAlreadyWritten">Has the prefix(timestamp or key been written)</param>
13762         </member>
13763         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteMessageAligned(System.String,System.Boolean,System.Int32)">
13764             <summary>
13765             Writes a message to the console, aligned and formatted to fit within the console width
13766             </summary>
13767             <param name="message">Message to be formatted to fit on the console</param>
13768             <param name="prefixAlreadyWritten">Has the prefix(timestamp or key been written)</param>
13769             <param name="prefixAdjustment">An amount to adjust the prefix by.</param>
13770         </member>
13771         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteBasedOnPrefix(System.String,System.Boolean,System.Int32)">
13772             <summary>
13773             Write message taking into account whether or not the prefix (timestamp and key) have already been written on the line
13774             </summary>
13775         </member>
13776         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.DisplayDeferredTargetStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13777             <summary>
13778             Will display the target started event which was deferred until the first visible message for the target is ready to be displayed
13779             </summary>
13780         </member>
13781         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.DisplayDeferredProjectStartedEvent(Microsoft.Build.Framework.BuildEventContext)">
13782             <summary>
13783             Will display the project started event which was deferred until the first visible message for the project is ready to be displayed
13784             </summary>
13785         </member>
13786         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.CustomEventHandler(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
13787             <summary>
13788             Prints a custom event
13789             </summary>
13790         </member>
13791         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.WriteLinePrefix(Microsoft.Build.Framework.BuildEventContext,System.DateTime,System.Boolean)">
13792             <summary>
13793             Writes message contextual information for each message displayed on the console
13794             </summary>
13795         </member>
13796         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.GetFullProjectKey(Microsoft.Build.Framework.BuildEventContext)">
13797             <summary>
13798             Extract the full project key from the BuildEventContext
13799             </summary>
13800         </member>
13801         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.GetPerformanceCounter(System.String,System.Collections.Generic.Dictionary{System.String,Microsoft.Build.BackEnd.Logging.BaseConsoleLogger.PerformanceCounter}@)">
13802             <summary>
13803             Returns a performance counter for a given scope (either task name or target name)
13804             from the given table.
13805             </summary>
13806             <param name="scopeName">Task name or target name.</param>
13807             <param name="table">Table that has tasks or targets.</param>
13808         </member>
13809         <member name="T:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.MPPerformanceCounter">
13810             <summary>
13811             Stores and calculates the performance numbers for the different events
13812             </summary>
13813         </member>
13814         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.MPPerformanceCounter.AddEventStarted(System.String,Microsoft.Build.Framework.BuildEventContext,System.DateTime,System.Collections.Generic.IEqualityComparer{Microsoft.Build.Framework.BuildEventContext})">
13815             <summary>
13816             Add a started event to the performance counter, by adding the event this sets the start time of the performance counter
13817             </summary>
13818         </member>
13819         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.MPPerformanceCounter.AddEventFinished(System.String,Microsoft.Build.Framework.BuildEventContext,System.DateTime)">
13820             <summary>
13821              Add a finished event to the performance counter, so perf numbers can be calculated
13822             </summary>
13823         </member>
13824         <member name="M:Microsoft.Build.BackEnd.Logging.ParallelConsoleLogger.MPPerformanceCounter.PrintCounterMessage(Microsoft.Build.BackEnd.Logging.WriteLinePrettyFromResourceDelegate,Microsoft.Build.Logging.ColorSetter,Microsoft.Build.Logging.ColorResetter)">
13825             <summary>
13826             Print out the performance counter message
13827             </summary>
13828         </member>
13829         <member name="T:Microsoft.Build.BackEnd.Logging.LogFormatter">
13830             <summary>
13831             Utility helper functions for formatting logger output.
13832             </summary>
13833         </member>
13834         <member name="M:Microsoft.Build.BackEnd.Logging.LogFormatter.FormatLogTimeStamp(System.DateTime)">
13835             <summary>
13836             Formats the timestamp in the log as  Hours:Minutes:Seconds.Milliseconds
13837             </summary>
13838         </member>
13839         <member name="M:Microsoft.Build.BackEnd.Logging.LogFormatter.FormatTimeSpan(System.TimeSpan)">
13840             <summary>
13841             Formats a timespan for logger output.
13842             </summary>
13843             <param name="t"></param>
13844             <returns>String representation of time-span.</returns>
13845         </member>
13846         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.#ctor">
13847             <summary>
13848             Default constructor.
13849             </summary>
13850         </member>
13851         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity)">
13852             <summary>
13853             Create a logger instance with a specific verbosity.  This logs to
13854             the default console.
13855             </summary>
13856             <param name="verbosity">Verbosity level.</param>
13857         </member>
13858         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity,Microsoft.Build.Logging.WriteHandler,Microsoft.Build.Logging.ColorSetter,Microsoft.Build.Logging.ColorResetter)">
13859             <summary>
13860             Initializes the logger, with alternate output handlers.
13861             </summary>
13862             <param name="verbosity"></param>
13863             <param name="write"></param>
13864             <param name="colorSet"></param>
13865             <param name="colorReset"></param>
13866         </member>
13867         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ResetConsoleLoggerState">
13868             <summary>
13869             Reset the states of per-build member variables
13870             VSW#516376 
13871             </summary>
13872         </member>
13873         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.BuildStartedHandler(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
13874             <summary>
13875             Handler for build started events
13876             </summary>
13877             <param name="sender">sender (should be null)</param>
13878             <param name="e">event arguments</param>
13879         </member>
13880         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.BuildFinishedHandler(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
13881             <summary>
13882             Handler for build finished events
13883             </summary>
13884             <param name="sender">sender (should be null)</param>
13885             <param name="e">event arguments</param>
13886         </member>
13887         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ShowErrorWarningSummary">
13888             <summary>
13889             At the end of the build, repeats the errors and warnings that occurred 
13890             during the build, and displays the error count and warning count.
13891             </summary>
13892         </member>
13893         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ProjectStartedHandler(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
13894             <summary>
13895             Handler for project started events
13896             </summary>
13897             <param name="sender">sender (should be null)</param>
13898             <param name="e">event arguments</param>
13899         </member>
13900         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ProjectFinishedHandler(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
13901             <summary>
13902             Handler for project finished events
13903             </summary>
13904             <param name="sender">sender (should be null)</param>
13905             <param name="e">event arguments</param>
13906         </member>
13907         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.TargetStartedHandler(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
13908             <summary>
13909             Handler for target started events
13910             </summary>
13911             <param name="sender">sender (should be null)</param>
13912             <param name="e">event arguments</param>
13913         </member>
13914         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.TargetFinishedHandler(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
13915             <summary>
13916             Handler for target finished events
13917             </summary>
13918             <param name="sender">sender (should be null)</param>
13919             <param name="e">event arguments</param>
13920         </member>
13921         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.TaskStartedHandler(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
13922             <summary>
13923             Handler for task started events
13924             </summary>
13925             <param name="sender">sender (should be null)</param>
13926             <param name="e">event arguments</param>
13927         </member>
13928         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.TaskFinishedHandler(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
13929             <summary>
13930             Handler for task finished events
13931             </summary>
13932             <param name="sender">sender (should be null)</param>
13933             <param name="e">event arguments</param>
13934         </member>
13935         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ErrorHandler(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
13936             <summary>
13937             Prints an error event
13938             </summary>
13939         </member>
13940         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.WarningHandler(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
13941             <summary>
13942             Prints a warning event
13943             </summary>
13944         </member>
13945         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.MessageHandler(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
13946             <summary>
13947             Prints a message event
13948             </summary>
13949         </member>
13950         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.CustomEventHandler(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
13951             <summary>
13952             Prints a custom event
13953             </summary>
13954         </member>
13955         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.WriteProjectStarted">
13956             <summary>
13957             Writes project started messages.
13958             </summary>
13959         </member>
13960         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.WriteProjectStartedText(System.String,System.String,System.String,System.Int32)">
13961             <summary>
13962             Displays the text for a project started message.
13963             </summary>
13964             <param name ="current">current project file</param>
13965             <param name ="previous">previous project file</param>
13966             <param name="targetNames">targets that are being invoked</param>
13967             <param name="indentLevel">indentation level</param>
13968         </member>
13969         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.WriteTargetStarted">
13970             <summary>
13971             Writes target started messages.
13972             </summary>
13973         </member>
13974         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.GetCurrentlyBuildingProjectFile">
13975             <summary>
13976             Determines the currently building project file.
13977             </summary>
13978             <returns>name of project file currently being built</returns>
13979         </member>
13980         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.ShowDeferredMessages">
13981             <summary>
13982             Displays project started and target started messages that
13983             are shown only when the associated project or target produces
13984             output.
13985             </summary>
13986         </member>
13987         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.SetErrorsOrWarningsOnCurrentFrame">
13988             <summary>
13989             Marks the current frame to indicate that an error or warning
13990             occurred during it.
13991             </summary>
13992         </member>
13993         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.VerifyStack(System.Boolean,System.String,System.Object[])">
13994             <summary>
13995             Checks the condition passed in.  If it's false, it emits an error message to the console
13996             indicating that there's a problem with the console logger.  These "problems" should
13997             never occur in the real world after we ship, unless there's a bug in the MSBuild
13998             engine such that events aren't getting paired up properly.  So the messages don't
13999             really need to be localized here, since they're only for our own benefit, and have
14000             zero value to a customer.
14001             </summary>
14002             <param name="condition"></param>
14003             <param name="unformattedMessage"></param>
14004             <param name="args"></param>
14005         </member>
14006         <member name="T:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameType">
14007             <summary>
14008             This enumeration represents the kinds of context that can be
14009             stored in the context stack.
14010             </summary>
14011         </member>
14012         <member name="T:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame">
14013             <summary>
14014             This struct represents context information about a single
14015             target or project.
14016             </summary>
14017         </member>
14018         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.#ctor(Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameType,System.Boolean,System.Int32,System.String,System.String,System.String,System.String)">
14019             <summary>
14020             Creates a new instance of frame with all fields specified.
14021             </summary>
14022             <param name="t">the type of the this frame</param>
14023             <param name="d">display state. true indicates this frame has been displayed to the user</param>
14024             <param name="indent">indentation level for this frame</param>
14025             <param name="s">frame id</param>
14026             <param name="targets">targets to execute, in the case of a project frame</param>
14027             <param name="fileOfTarget">the file name where the target is defined</param>
14028             <param name="parent">parent project file</param>
14029         </member>
14030         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.type">
14031             <summary>
14032             Indicates if project or target frame.
14033             </summary>
14034         </member>
14035         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.displayed">
14036             <summary>
14037             Set to true to indicate the user has seen a message about this frame.
14038             </summary>
14039         </member>
14040         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.indentLevel">
14041             <summary>
14042             The number of tabstops to indent this event when it is eventually displayed.
14043             </summary>
14044         </member>
14045         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.ID">
14046             <summary>
14047             A string associated with this frame -- should be a target name
14048             or a project file.
14049             </summary>
14050         </member>
14051         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.parentProjectFile">
14052             <summary>
14053             For a TargetStarted or a ProjectStarted event, this field tells us
14054             the name of the *parent* project file that was responsible.
14055             </summary>
14056         </member>
14057         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.targetNames">
14058             <summary>
14059             Stores the TargetNames from the ProjectStarted event. Null for Target frames.
14060             </summary>
14061         </member>
14062         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.file">
14063             <summary>
14064             For TargetStarted events, this stores the filename where the Target is defined
14065             (e.g., Microsoft.Common.targets).  This is different than the project that is 
14066             being built.  
14067             For ProjectStarted events, this is null.
14068             </summary>
14069         </member>
14070         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame.hasErrorsOrWarnings">
14071             <summary>
14072             True if there were errors/warnings during the project or target frame.
14073             </summary>
14074         </member>
14075         <member name="T:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack">
14076             <summary>
14077             The FrameStack class represents a (lifo) stack of Frames.
14078             </summary>
14079         </member>
14080         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack._frames">
14081             <summary>
14082             The frames member is contained by FrameStack and does
14083             all the heavy lifting for FrameStack.
14084             </summary>
14085         </member>
14086         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.#ctor">
14087             <summary>
14088             Create a new, empty, FrameStack.
14089             </summary>
14090         </member>
14091         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.Pop">
14092             <summary>
14093             Remove and return the top element in the stack.
14094             </summary>
14095             <exception cref="T:System.InvalidOperationException">Thrown when stack is empty.</exception>
14096         </member>
14097         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.Peek">
14098             <summary>
14099             Returns, but does not remove, the top of the stack.
14100             </summary>
14101         </member>
14102         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.Push(Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.Frame)">
14103             <summary>
14104             Push(f) adds f to the top of the stack.
14105             </summary>
14106             <param name="f">a frame to push</param>
14107         </member>
14108         <member name="P:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.Count">
14109             <summary>
14110             Constant property that indicates the number of elements
14111             in the stack.
14112             </summary>
14113         </member>
14114         <member name="M:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.FrameStack.IsEmpty">
14115             <summary>
14116             s.IsEmpty() is true iff s.Count == 0
14117             </summary>
14118         </member>
14119         <member name="F:Microsoft.Build.BackEnd.Logging.SerialConsoleLogger.contextStack">
14120             <summary>
14121             contextStack is the only interesting state in the console
14122             logger.  The context stack contains a sequence of frames
14123             denoting current and previous containing projects and targets
14124             </summary>
14125         </member>
14126         <member name="T:Microsoft.Build.BackEnd.BuildComponentFactoryCollection">
14127             <summary>
14128             Helper class for maintaining the component collection
14129             </summary>
14130         </member>
14131         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection._componentEntriesByType">
14132             <summary>
14133             The build component factories.
14134             </summary>
14135         </member>
14136         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection._host">
14137             <summary>
14138             The host used to initialize components.
14139             </summary>
14140         </member>
14141         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.#ctor(Microsoft.Build.BackEnd.IBuildComponentHost)">
14142             <summary>
14143             Constructor.
14144             </summary>
14145         </member>
14146         <member name="T:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.CreationPattern">
14147             <summary>
14148             The creation pattern to use for this component.
14149             </summary>
14150         </member>
14151         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.CreationPattern.Singleton">
14152             <summary>
14153             The component should be created as a singleton.
14154             </summary>
14155         </member>
14156         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.CreationPattern.CreateAlways">
14157             <summary>
14158             A new instance of the component should be created with every request.
14159             </summary>
14160         </member>
14161         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.RegisterDefaultFactories">
14162             <summary>
14163             Registers the default factories.
14164             </summary>
14165         </member>
14166         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.ShutdownComponents">
14167             <summary>
14168             Shuts down all factories registered to this component factory collection. 
14169             </summary>
14170         </member>
14171         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.ShutdownComponent(Microsoft.Build.BackEnd.BuildComponentType)">
14172             <summary>
14173             Shuts down a specific singleton component.
14174             </summary>
14175         </member>
14176         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.ReplaceFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate)">
14177             <summary>
14178             Registers a factory to replace one of the defaults.  Creation pattern is inherited from the original.
14179             </summary>
14180             <param name="componentType">The type which is created by this factory.</param>
14181             <param name="factory">The factory to be registered.</param>
14182         </member>
14183         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.ReplaceFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.IBuildComponent)">
14184             <summary>
14185             Registers a factory to replace one of the defaults.  Creation pattern is inherited from the original.
14186             </summary>
14187             <param name="componentType">The type which is created by this factory.</param>
14188             <param name="instance">The instance to be registered.</param>
14189         </member>
14190         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.AddFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate,Microsoft.Build.BackEnd.BuildComponentFactoryCollection.CreationPattern)">
14191             <summary>
14192             Adds a factory.
14193             </summary>
14194             <param name="componentType">The type which is created by this factory.</param>
14195             <param name="factory">Delegate which is responsible for creating the Component.</param>
14196             <param name="creationPattern">Creation pattern.</param>
14197         </member>
14198         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.GetComponent(Microsoft.Build.BackEnd.BuildComponentType)">
14199             <summary>
14200             Gets an instance of the specified component type from the host.
14201             </summary>
14202             <param name="type">The component type to be retrieved</param>
14203             <returns>The component</returns>
14204         </member>
14205         <member name="T:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry">
14206             <summary>
14207             A helper class wrapping build components.
14208             </summary>
14209         </member>
14210         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry._factory">
14211             <summary>
14212             The factory used to construct instances of the component.
14213             </summary>
14214         </member>
14215         <member name="F:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry._singleton">
14216             <summary>
14217             The singleton instance for components which adhere to the singleton pattern.
14218             </summary>
14219         </member>
14220         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.#ctor(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate,Microsoft.Build.BackEnd.BuildComponentFactoryCollection.CreationPattern)">
14221             <summary>
14222             Constructor.
14223             </summary>
14224         </member>
14225         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.#ctor(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.IBuildComponent)">
14226             <summary>
14227             Constructor for existing singleton.
14228             </summary>
14229         </member>
14230         <member name="P:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.ComponentType">
14231             <summary>
14232             Retrieves the component type.
14233             </summary>
14234         </member>
14235         <member name="P:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.Pattern">
14236             <summary>
14237             Retrieves the creation pattern.
14238             </summary>
14239         </member>
14240         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.GetInstance(Microsoft.Build.BackEnd.IBuildComponentHost)">
14241             <summary>
14242             Gets an instance of the component.
14243             </summary>
14244         </member>
14245         <member name="M:Microsoft.Build.BackEnd.BuildComponentFactoryCollection.BuildComponentEntry.ShutdownSingletonInstance">
14246             <summary>
14247             Shuts down the single instance for this component type.
14248             </summary>
14249         </member>
14250         <member name="T:Microsoft.Build.BackEnd.Components.Caching.IRegisteredTaskObjectCache">
14251             <summary>
14252             Defines a cache for registered task objects.
14253             </summary>
14254         </member>
14255         <member name="M:Microsoft.Build.BackEnd.Components.Caching.IRegisteredTaskObjectCache.DisposeCacheObjects(Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14256             <summary>
14257             Disposes of all of the objects with the specified lifetime.
14258             </summary>
14259         </member>
14260         <member name="M:Microsoft.Build.BackEnd.Components.Caching.IRegisteredTaskObjectCache.RegisterTaskObject(System.Object,System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime,System.Boolean)">
14261             <summary>
14262             Registers a task object with the specified key and lifetime.
14263             </summary>
14264         </member>
14265         <member name="M:Microsoft.Build.BackEnd.Components.Caching.IRegisteredTaskObjectCache.GetRegisteredTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14266             <summary>
14267             Gets a previously registered task object.
14268             </summary>
14269         </member>
14270         <member name="M:Microsoft.Build.BackEnd.Components.Caching.IRegisteredTaskObjectCache.UnregisterTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14271             <summary>
14272             Unregisters a task object.
14273             </summary>
14274         </member>
14275         <member name="T:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase">
14276             <summary>
14277             This is a cache of objects which are registered to be disposed of at a specified time.
14278             </summary>
14279         </member>
14280         <member name="F:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.s_appDomainLifetimeObjects">
14281             <summary>
14282             The cache for AppDomain lifetime objects.
14283             </summary>
14284         </member>
14285         <member name="F:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase._buildLifetimeObjects">
14286             <summary>
14287             The cache for Build lifetime objects.
14288             </summary>
14289         </member>
14290         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.#cctor">
14291             <summary>
14292             Static constructor which registers a callback to dispose of AppDomain-lifetime cache objects.
14293             </summary>
14294         </member>
14295         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.DisposeCacheObjects(Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14296             <summary> 
14297             Disposes of all of the cached objects registered with the specified lifetime.
14298             </summary>
14299         </member>
14300         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.RegisterTaskObject(System.Object,System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime,System.Boolean)">
14301             <summary>
14302             Registers a task object with the specified key and lifetime.
14303             </summary>
14304         </member>
14305         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.GetRegisteredTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14306             <summary>
14307             Gets a previously registered task object.
14308             </summary>
14309         </member>
14310         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.UnregisterTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14311             <summary>
14312             Unregisters a previously registered task object.
14313             </summary>
14314         </member>
14315         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.IsCollectionEmptyOrUncreated(Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14316             <summary>
14317             Returns true if a collection is not yet created or if it has no content.
14318             </summary>
14319         </member>
14320         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.GetCollectionForLifetime(Microsoft.Build.Framework.RegisteredTaskObjectLifetime,System.Boolean)">
14321             <summary>
14322             Returns the collection associated with a particular lifetime.
14323             </summary>
14324         </member>
14325         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.GetLazyCollectionForLifetime(Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
14326             <summary>
14327             Gets the lazy cache for the specified lifetime.
14328             </summary>
14329         </member>
14330         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCacheBase.DisposeObjects(System.Lazy{System.Collections.Concurrent.ConcurrentDictionary{System.Object,System.Object}})">
14331             <summary>
14332             Cleans up a cache collection.
14333             </summary>
14334         </member>
14335         <member name="T:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache">
14336             <summary>
14337             This is a cache of objects which are registered to be disposed of at a specified time.
14338             </summary>
14339         </member>
14340         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.Finalize">
14341             <summary>
14342             Finalizer
14343             </summary>
14344         </member>
14345         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
14346             <summary>
14347             Initialize the build component.
14348             </summary>
14349         </member>
14350         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.ShutdownComponent">
14351             <summary>
14352             Shuts down the build component.
14353             </summary>
14354         </member>
14355         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.Dispose">
14356             <summary>
14357             Implementation of Dispose pattern.
14358             </summary>
14359         </member>
14360         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
14361             <summary>
14362             Component factory.
14363             </summary>
14364         </member>
14365         <member name="M:Microsoft.Build.BackEnd.Components.Caching.RegisteredTaskObjectCache.Dispose(System.Boolean)">
14366             <summary>
14367             Implementation of Dispose pattern.
14368             </summary>
14369         </member>
14370         <member name="T:Microsoft.Build.BackEnd.Components.Logging.EvaluationLoggingContext">
14371             <summary>
14372                 Logging context and helpers for evaluation logging
14373             </summary>
14374         </member>
14375         <member name="T:Microsoft.Build.BackEnd.CallTarget">
14376             <remarks>
14377             This class implements the "CallTarget" task, which invokes other targets within the same
14378             project file.  Marked RunInMTA because we do not want this task to ever be invoked explicitly
14379             on the STA if the RequestBuilder is running on another thread, as this will cause thread
14380             id validation checks to fail.
14381             </remarks>
14382         </member>
14383         <member name="F:Microsoft.Build.BackEnd.CallTarget._logHelper">
14384             <summary>
14385             The task logging helper
14386             </summary>
14387         </member>
14388         <member name="M:Microsoft.Build.BackEnd.CallTarget.#ctor">
14389             <summary>
14390             Default constructor.
14391             </summary>
14392         </member>
14393         <member name="P:Microsoft.Build.BackEnd.CallTarget.Targets">
14394             <summary>
14395             The targets to build.
14396             </summary>
14397             <value>Array of target names.</value>
14398         </member>
14399         <member name="P:Microsoft.Build.BackEnd.CallTarget.TargetOutputs">
14400             <summary>
14401             Outputs of the targets built in each project.
14402             </summary>
14403             <value>Array of output items.</value>
14404         </member>
14405         <member name="P:Microsoft.Build.BackEnd.CallTarget.RunEachTargetSeparately">
14406             <summary>
14407             When this is true, instead of calling the engine once to build all the targets (for each project),
14408             we would call the engine once per target (for each project).  The benefit of this is that
14409             if one target fails, you can still continue with the remaining targets.
14410             </summary>
14411         </member>
14412         <member name="P:Microsoft.Build.BackEnd.CallTarget.UseResultsCache">
14413             <summary>
14414             If true the cached result will be returned if present and a if MSBuild
14415             task is run its result will be cached in a scope (ProjectFileName, GlobalProperties)[TargetNames]
14416             as a list of build items
14417             </summary>
14418         </member>
14419         <member name="P:Microsoft.Build.BackEnd.CallTarget.HostObject">
14420             <summary>
14421             The host object, from ITask
14422             </summary>
14423         </member>
14424         <member name="M:Microsoft.Build.BackEnd.CallTarget.ExecuteInternal">
14425             <summary>
14426             Instructs the MSBuild engine to build one or more targets in the current project.
14427             </summary>
14428             <returns>true if all targets built successfully; false if any target fails</returns>
14429         </member>
14430         <member name="T:Microsoft.Build.BackEnd.IntrinsicTaskFactory">
14431             <summary>
14432             The factory
14433             </summary>
14434         </member>
14435         <member name="M:Microsoft.Build.BackEnd.IntrinsicTaskFactory.#ctor(System.Type)">
14436             <summary>
14437             Constructor
14438             </summary>
14439         </member>
14440         <member name="P:Microsoft.Build.BackEnd.IntrinsicTaskFactory.FactoryName">
14441             <summary>
14442             Returns the factory name
14443             </summary>
14444         </member>
14445         <member name="P:Microsoft.Build.BackEnd.IntrinsicTaskFactory.TaskType">
14446             <summary>
14447             Returns the task type.
14448             </summary>
14449         </member>
14450         <member name="M:Microsoft.Build.BackEnd.IntrinsicTaskFactory.Initialize(System.String,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Framework.TaskPropertyInfo},System.String,Microsoft.Build.Framework.IBuildEngine)">
14451             <summary>
14452             Initialize the factory.
14453             </summary>
14454         </member>
14455         <member name="M:Microsoft.Build.BackEnd.IntrinsicTaskFactory.GetTaskParameters">
14456             <summary>
14457             Gets all of the parameters on the task.
14458             </summary>
14459         </member>
14460         <member name="M:Microsoft.Build.BackEnd.IntrinsicTaskFactory.CreateTask(Microsoft.Build.Framework.IBuildEngine)">
14461             <summary>
14462             Creates an instance of the task.
14463             </summary>
14464         </member>
14465         <member name="M:Microsoft.Build.BackEnd.IntrinsicTaskFactory.CleanupTask(Microsoft.Build.Framework.ITask)">
14466             <summary>
14467             Cleanup for the task.
14468             </summary>
14469         </member>
14470         <member name="T:Microsoft.Build.BackEnd.ItemGroupLoggingHelper">
14471             <summary>
14472             Helper class to convert ItemGroup parameters to a string value for logging.
14473             </summary>
14474         </member>
14475         <member name="M:Microsoft.Build.BackEnd.ItemGroupLoggingHelper.GetParameterText(System.String,System.String,System.Object[])">
14476             <summary>
14477             Gets a text serialized value of a parameter for logging.
14478             </summary>
14479         </member>
14480         <member name="M:Microsoft.Build.BackEnd.ItemGroupLoggingHelper.GetParameterText(System.String,System.String,System.Collections.IList)">
14481             <summary>
14482             Gets a text serialized value of a parameter for logging.
14483             </summary>
14484         </member>
14485         <member name="M:Microsoft.Build.BackEnd.ItemGroupLoggingHelper.GetStringFromParameterValue(System.Object)">
14486             <summary>
14487             Given an object wrapping a scalar value that will be set on a task,
14488             returns a suitable string to log its value, with a trailing newline.
14489             First line is already indented.
14490             Indent of any subsequent line should be 12 spaces.
14491             </summary>
14492         </member>
14493         <member name="T:Microsoft.Build.BackEnd.MSBuild">
14494             <remarks>
14495             This class implements the "MSBuild" task, which hands off child project files to the MSBuild engine to be built.
14496             </remarks>
14497         </member>
14498         <member name="T:Microsoft.Build.BackEnd.MSBuild.SkipNonexistentProjectsBehavior">
14499             <summary>
14500             Enum describing the behavior when a project doesn't exist on disk.
14501             </summary>
14502         </member>
14503         <member name="F:Microsoft.Build.BackEnd.MSBuild.SkipNonexistentProjectsBehavior.Skip">
14504             <summary>
14505             Skip the project if there is no file on disk.
14506             </summary>
14507         </member>
14508         <member name="F:Microsoft.Build.BackEnd.MSBuild.SkipNonexistentProjectsBehavior.Error">
14509             <summary>
14510             Error if the project does not exist on disk.
14511             </summary>
14512         </member>
14513         <member name="F:Microsoft.Build.BackEnd.MSBuild.SkipNonexistentProjectsBehavior.Build">
14514             <summary>
14515             Build even if the project does not exist on disk.
14516             </summary>
14517         </member>
14518         <member name="M:Microsoft.Build.BackEnd.MSBuild.#ctor">
14519             <summary>
14520             Default constructor.
14521             </summary>
14522         </member>
14523         <member name="F:Microsoft.Build.BackEnd.MSBuild._undefineProperties">
14524             <summary>
14525             A semicolon-delimited list of global properties to undefine
14526             </summary>
14527         </member>
14528         <member name="F:Microsoft.Build.BackEnd.MSBuild._logHelper">
14529             <summary>
14530             The task logging helper
14531             </summary>
14532         </member>
14533         <member name="P:Microsoft.Build.BackEnd.MSBuild.BuildEngine">
14534             <summary>
14535             The build engine, from ITask
14536             </summary>
14537         </member>
14538         <member name="P:Microsoft.Build.BackEnd.MSBuild.HostObject">
14539             <summary>
14540             The host object, from ITask
14541             </summary>
14542         </member>
14543         <member name="P:Microsoft.Build.BackEnd.MSBuild.Properties">
14544             <summary>
14545             A list of property name/value pairs to apply as global properties to 
14546             the child project.  
14547             A typical input: "propname1=propvalue1", "propname2=propvalue2", "propname3=propvalue3".
14548             </summary>
14549             <remarks>
14550             The fact that this is a string[] makes the following illegal:
14551                 <MSBuild
14552                     Properties="TargetPath=@(OutputPathItem)" />
14553             The engine fails on this because it doesn't like item lists being concatenated with string
14554             constants when the data is being passed into an array parameter.  So the workaround is to 
14555             write this in the project file:
14556                 <MSBuild
14557                     Properties="@(OutputPathItem->'TargetPath=%(Identity)')" />
14558             </remarks>
14559         </member>
14560         <member name="P:Microsoft.Build.BackEnd.MSBuild.RemoveProperties">
14561             <summary>
14562             Gets or sets the set of global properties to remove.
14563             </summary>
14564         </member>
14565         <member name="P:Microsoft.Build.BackEnd.MSBuild.Targets">
14566             <summary>
14567             The targets to build in each project specified by the <see cref="P:Microsoft.Build.BackEnd.MSBuild.Projects"/> property.
14568             </summary>
14569             <value>Array of target names.</value>
14570         </member>
14571         <member name="P:Microsoft.Build.BackEnd.MSBuild.Projects">
14572             <summary>
14573             The projects to build.
14574             </summary>
14575             <value>Array of project items.</value>
14576         </member>
14577         <member name="P:Microsoft.Build.BackEnd.MSBuild.TargetOutputs">
14578             <summary>
14579             Outputs of the targets built in each project.
14580             </summary>
14581             <value>Array of output items.</value>
14582         </member>
14583         <member name="P:Microsoft.Build.BackEnd.MSBuild.RebaseOutputs">
14584             <summary>
14585             Indicates if the paths of target output items should be rebased relative to the calling project.
14586             </summary>
14587             <value>true, if target output item paths should be rebased</value>
14588         </member>
14589         <member name="P:Microsoft.Build.BackEnd.MSBuild.StopOnFirstFailure">
14590             <summary>
14591             Forces the task to stop building the remaining projects as soon as any of
14592             them fail.
14593             </summary>
14594         </member>
14595         <member name="P:Microsoft.Build.BackEnd.MSBuild.RunEachTargetSeparately">
14596             <summary>
14597             When this is true, instead of calling the engine once to build all the targets (for each project),
14598             we would call the engine once per target (for each project).  The benefit of this is that
14599             if one target fails, you can still continue with the remaining targets.
14600             </summary>
14601         </member>
14602         <member name="P:Microsoft.Build.BackEnd.MSBuild.ToolsVersion">
14603             <summary>
14604             Value of ToolsVersion to use when building projects passed to this task.
14605             </summary>
14606         </member>
14607         <member name="P:Microsoft.Build.BackEnd.MSBuild.BuildInParallel">
14608             <summary>
14609             When this is true we call the engine with all the projects at once instead of 
14610             calling the engine once per project
14611             </summary>
14612         </member>
14613         <member name="P:Microsoft.Build.BackEnd.MSBuild.UnloadProjectsOnCompletion">
14614             <summary>
14615             If true the project will be unloaded once the operation is completed
14616             </summary>
14617         </member>
14618         <member name="P:Microsoft.Build.BackEnd.MSBuild.UseResultsCache">
14619             <summary>
14620             If true the cached result will be returned if present and a if MSBuild
14621             task is run its result will be cached in a scope (ProjectFileName, GlobalProperties)[TargetNames]
14622             as a list of build items
14623             </summary>
14624         </member>
14625         <member name="P:Microsoft.Build.BackEnd.MSBuild.SkipNonexistentProjects">
14626             <summary>
14627             When this is true, project files that do not exist on the disk will be skipped. By default,
14628             such projects will cause an error.
14629             </summary>
14630         </member>
14631         <member name="P:Microsoft.Build.BackEnd.MSBuild.TargetAndPropertyListSeparators">
14632             <summary>
14633             Unescape Targets, Properties (including Properties and AdditionalProperties as Project item metadata)
14634             will be un-escaped before processing. e.g. %3B (an escaped ';') in the string for any of them will 
14635             be treated as if it were an un-escaped ';'
14636             </summary>
14637         </member>
14638         <member name="M:Microsoft.Build.BackEnd.MSBuild.ExecuteInternal">
14639             <summary>
14640             Instructs the MSBuild engine to build one or more project files whose locations are specified by the
14641             <see cref="P:Microsoft.Build.BackEnd.MSBuild.Projects"/> property.
14642             </summary>
14643             <returns>true if all projects build successfully; false if any project fails</returns>
14644         </member>
14645         <member name="M:Microsoft.Build.BackEnd.MSBuild.BuildProjectsInParallel(System.Collections.Hashtable,System.String[],System.Collections.ArrayList,System.Boolean,System.Boolean[])">
14646             <summary>
14647             Build projects which have not been skipped. This will be done in parallel
14648             </summary>
14649         </member>
14650         <member name="M:Microsoft.Build.BackEnd.MSBuild.ExpandAllTargetsAndProperties">
14651             <summary>
14652             Expand and re-construct arrays of all targets and properties
14653             </summary>
14654         </member>
14655         <member name="M:Microsoft.Build.BackEnd.MSBuild.CreateTargetLists(System.String[],System.Boolean)">
14656             <summary>
14657             
14658             </summary>
14659             <param name="targets"></param>
14660             <param name="runEachTargetSeparately"></param>
14661             <returns></returns>
14662         </member>
14663         <member name="M:Microsoft.Build.BackEnd.MSBuild.ExecuteTargets(Microsoft.Build.Framework.ITaskItem[],System.Collections.Hashtable,System.String[],System.Collections.ArrayList,System.Boolean,System.Boolean,Microsoft.Build.Framework.IBuildEngine3,Microsoft.Build.BackEnd.TaskLoggingHelper,System.Collections.ArrayList,System.Boolean,System.Boolean,System.String)">
14664             <summary>
14665             
14666             </summary>
14667             <returns>True if the operation was successful</returns>
14668         </member>
14669         <member name="T:Microsoft.Build.BackEnd.SchedulableRequestState">
14670             <summary>
14671             The state enumeration for SchedulableRequests.
14672             </summary>
14673         </member>
14674         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Unscheduled">
14675             <summary>
14676             This request has been submitted but has never been scheduled so it has executed no tasks and does not currently have an
14677             entry residing on any node.  There may be multiple requests with the same global request id in this state.
14678             </summary>
14679         </member>
14680         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Ready">
14681             <summary>
14682             This request may continue executing.  It already has an entry on a node.  There may only ever be one request with a given
14683             global request id in this state.
14684             </summary>
14685         </member>
14686         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Executing">
14687             <summary>
14688             This request is currently executing tasks on its node.  In this case it will be the only task executing on the node -
14689             all other tasks are either Ready or Blocked.  There may only ever be one request with a given global request id in this state.
14690             </summary>
14691         </member>
14692         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Blocked">
14693             <summary>
14694             This request is currently blocked on one or more requests which must complete before it may continue.  There may only ever be one
14695             request with a given global request id in this state.
14696             </summary>
14697         </member>
14698         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Yielding">
14699             <summary>
14700             This request has yielded control of the node while it is running a long-running out-of-process program.  Any number of tasks on a 
14701             node may be in the yielding state.
14702             </summary>
14703         </member>
14704         <member name="F:Microsoft.Build.BackEnd.SchedulableRequestState.Completed">
14705             <summary>
14706             This request has completed and removed from the system.
14707             </summary>
14708         </member>
14709         <member name="T:Microsoft.Build.BackEnd.SchedulableRequest">
14710             <summary>
14711             A representation of a BuildRequest and associated data used by the Scheduler to track work being done by the build system.
14712             SchedulableRequests implicitly form a directed acyclic graph showing the blocking/blocked relationship between the requests
14713             known to the system at any given time.  These associations are updated by the BlockByRequest, UnblockWithResult and ResumeExecution
14714             methods.  These methods, along with Complete, cause state changes which the SchedulingData object will record.  That data can be
14715             queried to determine the state of any request or node in the system.
14716             </summary>
14717         </member>
14718         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._schedulingData">
14719             <summary>
14720             The request collection to which this belongs.
14721             </summary>
14722         </member>
14723         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._state">
14724             <summary>
14725             The current state.
14726             </summary>
14727         </member>
14728         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._assignedNodeId">
14729             <summary>
14730             The node to which this request is assigned.
14731             </summary>
14732         </member>
14733         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._request">
14734             <summary>
14735             The BuildRequest this class represents.
14736             </summary>
14737         </member>
14738         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._parent">
14739             <summary>
14740             The schedulable request which issued this request.
14741             </summary>
14742         </member>
14743         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._activeTargetsWhenBlocked">
14744             <summary>
14745             The list of targets which were actively building at the time we were blocked.
14746             </summary>
14747         </member>
14748         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._requestsWeAreBlockedBy">
14749             <summary>
14750             The requests which must complete before we can continue executing.  Indexed by global request id and node request id.
14751             Each global request id may have multiple requests which map to it, but they will have separate node request ids.
14752             </summary>
14753         </member>
14754         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._requestsWeAreBlocking">
14755             <summary>
14756             The requests which cannot continue until we have finished executing.
14757             </summary>
14758         </member>
14759         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._creationTime">
14760             <summary>
14761             The time this request was created.
14762             </summary>
14763         </member>
14764         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._startTime">
14765             <summary>
14766             The time this request started building.
14767             </summary>
14768         </member>
14769         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._endTime">
14770             <summary>
14771             The time this request was completed.
14772             </summary>
14773         </member>
14774         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest._timeRecords">
14775             <summary>
14776             Records of the amount of time spent in each of the states.
14777             </summary>
14778         </member>
14779         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.#ctor(Microsoft.Build.BackEnd.SchedulingData,Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.SchedulableRequest)">
14780             <summary>
14781             Constructor.
14782             </summary>
14783         </member>
14784         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.State">
14785             <summary>
14786             The current state of the request.
14787             </summary>
14788         </member>
14789         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.BuildRequest">
14790             <summary>
14791             The underlying BuildRequest.
14792             </summary>
14793         </member>
14794         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.Parent">
14795             <summary>
14796             The request which issued this request.
14797             </summary>
14798         </member>
14799         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.AssignedNode">
14800             <summary>
14801             Returns the node to which this request is assigned.
14802             </summary>
14803         </member>
14804         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.ActiveTargets">
14805             <summary>
14806             The set of active targets.
14807             </summary>
14808         </member>
14809         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.RequestsWeAreBlockedByCount">
14810             <summary>
14811             Gets a count of the requests we are blocked by.
14812             </summary>
14813         </member>
14814         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.RequestsWeAreBlockedBy">
14815             <summary>
14816             Gets the set of requests for which we require results before we may proceed.
14817             </summary>
14818         </member>
14819         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.RequestsWeAreBlockingCount">
14820             <summary>
14821             Gets a count of the requests we are blocking.
14822             </summary>
14823         </member>
14824         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.RequestsWeAreBlocking">
14825             <summary>
14826             Gets the set of requests which cannot proceed because they are waiting for results from us.
14827             </summary>
14828         </member>
14829         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.CreationTime">
14830             <summary>
14831             The time this request was created.
14832             </summary>
14833         </member>
14834         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.StartTime">
14835             <summary>
14836             The time this request started building.
14837             </summary>
14838         </member>
14839         <member name="P:Microsoft.Build.BackEnd.SchedulableRequest.EndTime">
14840             <summary>
14841             The time this request was completed.
14842             </summary>
14843         </member>
14844         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.GetTimeSpentInState(Microsoft.Build.BackEnd.SchedulableRequestState)">
14845             <summary>
14846             Gets the amount of time we spent in the specified state.
14847             </summary>
14848         </member>
14849         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.Yield(System.String[])">
14850             <summary>
14851             Inticates the request is yielding the node.
14852             </summary>
14853         </member>
14854         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.Reacquire">
14855             <summary>
14856             Indicates the request is ready to reacquire the node.
14857             </summary>
14858         </member>
14859         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.BlockByRequest(Microsoft.Build.BackEnd.SchedulableRequest,System.String[])">
14860             <summary>
14861             Marks this request as being blocked by the specified request.  Establishes the correct relationships between the requests.
14862             </summary>
14863             <param name="blockingRequest">The request which is blocking this one.</param>
14864             <param name="activeTargets">The list of targets this request was currently building at the time it became blocked.</param>
14865         </member>
14866         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.UnblockWithResult(Microsoft.Build.Execution.BuildResult)">
14867             <summary>
14868             Indicates that there are results which can be used to unblock this request.  Updates the relationships between requests.
14869             </summary>
14870         </member>
14871         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.ResumeExecution(System.Int32)">
14872             <summary>
14873             Resumes execution of the request on the specified node.
14874             </summary>
14875         </member>
14876         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.Complete(Microsoft.Build.Execution.BuildResult)">
14877             <summary>
14878             Completes this request.
14879             </summary>
14880         </member>
14881         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.Delete">
14882             <summary>
14883             Removes an unscheduled request.
14884             </summary>
14885         </member>
14886         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.VerifyState(Microsoft.Build.BackEnd.SchedulableRequestState)">
14887             <summary>
14888             Verifies that the current state is as expected.
14889             </summary>
14890         </member>
14891         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.VerifyOneOfStates(Microsoft.Build.BackEnd.SchedulableRequestState[])">
14892             <summary>
14893             Verifies that the current state is as expected.
14894             </summary>
14895         </member>
14896         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.ChangeToState(Microsoft.Build.BackEnd.SchedulableRequestState)">
14897             <summary>
14898             Change to the specified state.  Update internal counters.
14899             </summary>
14900         </member>
14901         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.DetectCircularDependency(Microsoft.Build.BackEnd.SchedulableRequest)">
14902             <summary>
14903             Detects a circular dependency.  Throws a CircularDependencyException if one exists.  Circular dependencies can occur
14904             under the following conditions:
14905             1. If the blocking request's global request ID appears in the ancestor chain (Direct).
14906             2. If a request appears in the ancestor chain and has a different global request ID but has an active target that
14907                matches one of the targets specified in the blocking request (Direct).
14908             3. If the blocking request exists elsewhere as a blocked request with the same global request ID, and one of its children
14909                (recursively) matches this request's global request ID (Indirect).
14910             4. If the blocking request's configuration is part of another request elsewhere which is also blocked, and that request
14911                is building targets this blocking request is building, and one of that blocked request's children (recursively)
14912                matches this request's global request ID (Indirect).
14913             </summary>
14914         </member>
14915         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.DetectIndirectCircularDependency(Microsoft.Build.BackEnd.SchedulableRequest)">
14916             <summary>
14917             Detects a circular dependency where the request which is about to block us is already blocked by us, usually as a result
14918             of it having been previously scheduled in a multiproc scenario, but before this request was able to execute.
14919             </summary>
14920             <remarks>
14921             Let A be 'this' project and B be 'blockingRequest' (the request which is going to block A.)  
14922             An indirect circular dependency exists if there is a dependency path from B to A.  If there is no 
14923             existing blocked request B' with the same global request id as B, then there can be no path from B to A because B is a brand new 
14924             request with no other dependencies.  If there is an existing blocked request B' with the same global request ID as B, then we 
14925             walk the set of dependencies recursively searching for A.  If A is found, we have a circular dependency.
14926             </remarks>
14927         </member>
14928         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.ThrowIndirectCircularDependency(Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.SchedulableRequest)">
14929             <summary>
14930             Build our ancestor list then throw the circular dependency error.
14931             </summary>
14932         </member>
14933         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.DetectDirectCircularDependency(Microsoft.Build.BackEnd.SchedulableRequest)">
14934             <summary>
14935             Detects a circular dependency where the blocking request is in our direct ancestor chain.
14936             </summary>
14937         </member>
14938         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.CleanupForCircularDependencyAndThrow(Microsoft.Build.BackEnd.SchedulableRequest,System.Collections.Generic.List{Microsoft.Build.BackEnd.SchedulableRequest})">
14939             <summary>
14940             Removes associations with all blocking requests and throws an exception.
14941             </summary>
14942         </member>
14943         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.DisconnectRequestWeAreBlockedBy(Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey)">
14944             <summary>
14945             Removes the association between this request and the one we are blocked by.
14946             </summary>
14947         </member>
14948         <member name="T:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey">
14949             <summary>
14950             A key for blocking requests combining the global request and node request ids.
14951             </summary>
14952         </member>
14953         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey._globalRequestId">
14954             <summary>
14955             The global request id.
14956             </summary>
14957         </member>
14958         <member name="F:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey._nodeRequestId">
14959             <summary>
14960             The request id known to the node.
14961             </summary>
14962         </member>
14963         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey.#ctor(Microsoft.Build.BackEnd.BuildRequest)">
14964             <summary>
14965             Constructor over a request.
14966             </summary>
14967         </member>
14968         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey.#ctor(Microsoft.Build.Execution.BuildResult)">
14969             <summary>
14970             Constructor over a result.
14971             </summary>
14972         </member>
14973         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey.Equals(System.Object)">
14974             <summary>
14975             Equals override.
14976             </summary>
14977         </member>
14978         <member name="M:Microsoft.Build.BackEnd.SchedulableRequest.BlockingRequestKey.GetHashCode">
14979             <summary>
14980             GetHashCode override.
14981             </summary>
14982         </member>
14983         <member name="T:Microsoft.Build.BackEnd.FullTracking">
14984             <summary>
14985             Manages full tracking activation and suspension.
14986             </summary>
14987         </member>
14988         <member name="F:Microsoft.Build.BackEnd.FullTracking.FullTrackingDirectoryPropertyName">
14989             <summary>
14990             The default name of the MSBuild property to read for the relative path to the full tracking .tlog files.
14991             If this property isn't set in the project, full tracking is turned off.
14992             </summary>
14993         </member>
14994         <member name="F:Microsoft.Build.BackEnd.FullTracking._tlogDirectory">
14995             <summary>
14996             The full path to where full tracking .tlog files should be written.
14997             </summary>
14998         </member>
14999         <member name="F:Microsoft.Build.BackEnd.FullTracking._trackingMode">
15000             <summary>
15001             A value indicating whether this instance is tracking a full tracking suspension
15002             (as opposed to activation).
15003             </summary>
15004         </member>
15005         <member name="F:Microsoft.Build.BackEnd.FullTracking._taskName">
15006             <summary>
15007             The name of the task as given to FileTracker.dll.
15008             </summary>
15009         </member>
15010         <member name="M:Microsoft.Build.BackEnd.FullTracking.#ctor">
15011             <summary>
15012             Initializes a new instance of the <see cref="T:Microsoft.Build.BackEnd.FullTracking"/> class.
15013             </summary>
15014         </member>
15015         <member name="T:Microsoft.Build.BackEnd.FullTracking.TrackingMode">
15016             <summary>
15017             The state of the <see cref="T:Microsoft.Build.BackEnd.FullTracking"/> object regarding whether it is actively tracking or suspending tracking.
15018             </summary>
15019         </member>
15020         <member name="F:Microsoft.Build.BackEnd.FullTracking.TrackingMode.None">
15021             <summary>
15022             No tracking or suspension operation is in effect as a result of this instance.
15023             </summary>
15024         </member>
15025         <member name="F:Microsoft.Build.BackEnd.FullTracking.TrackingMode.Active">
15026             <summary>
15027             This instance has invoked full tracking.
15028             </summary>
15029         </member>
15030         <member name="F:Microsoft.Build.BackEnd.FullTracking.TrackingMode.Suspended">
15031             <summary>
15032             This instance has suspended full tracking.
15033             </summary>
15034         </member>
15035         <member name="M:Microsoft.Build.BackEnd.FullTracking.Dispose">
15036             <summary>
15037             Disposes the FullTracking object, causing full tracking to end, or resume,
15038             depending on how this object was created.
15039             </summary>
15040         </member>
15041         <member name="M:Microsoft.Build.BackEnd.FullTracking.Track(System.String,System.String,System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
15042             <summary>
15043             Starts full tracking.
15044             </summary>
15045             <param name="targetName">taskLoggingContext.TargetLoggingContext.Target.Name</param>
15046             <param name="taskName">taskNode.Name</param>
15047             <param name="projectRootDirectory">buildRequestEntry.ProjectRootDirectory</param>
15048             <param name="projectProperties">buildRequestEntry.RequestConfiguration.Project.PropertiesToBuildWith</param>
15049             <returns>
15050             An object that will stop full tracking when disposed.
15051             </returns>
15052         </member>
15053         <member name="M:Microsoft.Build.BackEnd.FullTracking.Suspend">
15054             <summary>
15055             Suspends full tracking.
15056             </summary>
15057             <returns>An object that will resume full tracking when disposed.</returns>
15058         </member>
15059         <member name="M:Microsoft.Build.BackEnd.FullTracking.Dispose(System.Boolean)">
15060             <summary>
15061             Disposes the FullTracking object, causing full tracking to end, or resume,
15062             depending on how this object was created.
15063             </summary>
15064         </member>
15065         <member name="M:Microsoft.Build.BackEnd.FullTracking.GenerateUniqueTaskName(System.String,System.String)">
15066             <summary>
15067             Gets the task name to pass to Tracker.
15068             </summary>
15069         </member>
15070         <member name="T:Microsoft.Build.BackEnd.SchedulingData">
15071             <summary>
15072             This class manages the set of schedulable requests.  In concert with SchedulableRequest, it tracks all relationships
15073             between requests in the system, verifies state change validity and provides efficient methods for querying request relationships.
15074             </summary>
15075         </member>
15076         <member name="F:Microsoft.Build.BackEnd.SchedulingData._executingRequests">
15077             <summary>
15078             Maps global request Id to an executing request.
15079             </summary>
15080         </member>
15081         <member name="F:Microsoft.Build.BackEnd.SchedulingData._blockedRequests">
15082             <summary>
15083             Maps global request Id to a blocked request.
15084             </summary>
15085         </member>
15086         <member name="F:Microsoft.Build.BackEnd.SchedulingData._yieldingRequests">
15087             <summary>
15088             Maps global request Id to a blocked request.
15089             </summary>
15090         </member>
15091         <member name="F:Microsoft.Build.BackEnd.SchedulingData._readyRequests">
15092             <summary>
15093             Maps global request Id to a ready request.
15094             </summary>
15095         </member>
15096         <member name="F:Microsoft.Build.BackEnd.SchedulingData._unscheduledRequests">
15097             <summary>
15098             Holds all of the unscheduled requests.
15099             </summary>
15100         </member>
15101         <member name="F:Microsoft.Build.BackEnd.SchedulingData._unscheduledRequestNodesByRequest">
15102             <summary>
15103             Maps a schedulable request directly to the node holding it in the linked list.  This allows us to perform an O(1) operation to
15104             remove the node from the linked list without exposing the list directly.
15105             </summary>
15106         </member>
15107         <member name="F:Microsoft.Build.BackEnd.SchedulingData._scheduledRequestsByNode">
15108             <summary>
15109             Maps node id to the requests scheduled on it.
15110             </summary>
15111         </member>
15112         <member name="F:Microsoft.Build.BackEnd.SchedulingData._executingRequestByNode">
15113             <summary>
15114             Maps a node id to the currently executing request, if any.
15115             </summary>
15116         </member>
15117         <member name="F:Microsoft.Build.BackEnd.SchedulingData._readyRequestsByNode">
15118             <summary>
15119             Maps a node id to those requests which are ready to execute, if any.
15120             </summary>
15121         </member>
15122         <member name="F:Microsoft.Build.BackEnd.SchedulingData._configurationsByNode">
15123             <summary>
15124             Maps a node id to the set of configurations assigned to it.
15125             </summary>
15126         </member>
15127         <member name="F:Microsoft.Build.BackEnd.SchedulingData._configurationCounts">
15128             <summary>
15129             Maps a configuration id to the number of requests in the system which are assigned to that configuration.
15130             </summary>
15131         </member>
15132         <member name="F:Microsoft.Build.BackEnd.SchedulingData._configurationToNode">
15133             <summary>
15134             Maps a configuration id to the node to which it is assigned.
15135             </summary>
15136         </member>
15137         <member name="F:Microsoft.Build.BackEnd.SchedulingData._configurationToRequests">
15138             <summary>
15139             Maps a configuration id to the requests which apply to it.
15140             </summary>
15141         </member>
15142         <member name="F:Microsoft.Build.BackEnd.SchedulingData._buildHierarchy">
15143             <summary>
15144             This is the hierarchy of build requests as they were created.
15145             </summary>
15146         </member>
15147         <member name="F:Microsoft.Build.BackEnd.SchedulingData._buildEvents">
15148             <summary>
15149             The sequence of events which have taken place during this build.
15150             </summary>
15151         </member>
15152         <member name="F:Microsoft.Build.BackEnd.SchedulingData._currentEventTime">
15153             <summary>
15154             The current time for events.  This is set by the scheduler when it does a scheduling cycle in response to an event.
15155             </summary>
15156         </member>
15157         <member name="M:Microsoft.Build.BackEnd.SchedulingData.#ctor">
15158             <summary>
15159             Constructor.
15160             </summary>
15161         </member>
15162         <member name="P:Microsoft.Build.BackEnd.SchedulingData.BuildEvents">
15163             <summary>
15164             Retrieves all of the build events.
15165             </summary>
15166         </member>
15167         <member name="P:Microsoft.Build.BackEnd.SchedulingData.ExecutingRequests">
15168             <summary>
15169             Retrieves all of the executing requests.
15170             </summary>
15171         </member>
15172         <member name="P:Microsoft.Build.BackEnd.SchedulingData.ExecutingRequestsCount">
15173             <summary>
15174             Gets a count of all executing requests.
15175             </summary>
15176         </member>
15177         <member name="P:Microsoft.Build.BackEnd.SchedulingData.ReadyRequests">
15178             <summary>
15179             Retrieves all of the ready requests.
15180             </summary>
15181         </member>
15182         <member name="P:Microsoft.Build.BackEnd.SchedulingData.ReadyRequestsCount">
15183             <summary>
15184             Gets a count of all the ready requests.
15185             </summary>
15186         </member>
15187         <member name="P:Microsoft.Build.BackEnd.SchedulingData.BlockedRequests">
15188             <summary>
15189             Retrieves all of the blocked requests.
15190             </summary>
15191         </member>
15192         <member name="P:Microsoft.Build.BackEnd.SchedulingData.BlockedRequestsCount">
15193             <summary>
15194             Gets a count of all of the blocked requests.
15195             </summary>
15196         </member>
15197         <member name="P:Microsoft.Build.BackEnd.SchedulingData.YieldingRequests">
15198             <summary>
15199             Retrieves all of the yielded requests.
15200             </summary>
15201         </member>
15202         <member name="P:Microsoft.Build.BackEnd.SchedulingData.YieldingRequestsCount">
15203             <summary>
15204             Gets a count of all of the yielded requests.
15205             </summary>
15206         </member>
15207         <member name="P:Microsoft.Build.BackEnd.SchedulingData.UnscheduledRequests">
15208             <summary>
15209             Retrieves all of the unscheduled requests.
15210             </summary>
15211         </member>
15212         <member name="P:Microsoft.Build.BackEnd.SchedulingData.UnscheduledRequestsCount">
15213             <summary>
15214             Gets a count of all the unscheduled requests.
15215             </summary>
15216         </member>
15217         <member name="P:Microsoft.Build.BackEnd.SchedulingData.UnscheduledRequestsWhichCanBeScheduled">
15218             <summary>
15219             Enumerates the unscheduled requests which don't have other instances scheduled already.
15220             </summary>
15221         </member>
15222         <member name="P:Microsoft.Build.BackEnd.SchedulingData.Configurations">
15223             <summary>
15224             Gets all of the configurations for this build.
15225             </summary>
15226             <returns></returns>
15227         </member>
15228         <member name="P:Microsoft.Build.BackEnd.SchedulingData.EventTime">
15229             <summary>
15230             Gets or sets the current event time.
15231             </summary>
15232         </member>
15233         <member name="M:Microsoft.Build.BackEnd.SchedulingData.CreateRequest(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.SchedulableRequest)">
15234             <summary>
15235             Creates a new request and adds it to the system
15236             </summary>
15237             <remarks>
15238             New requests always go on the front of the queue, because we prefer to build the projects we just received first (depth first, absent
15239             any particular scheduling algorithm such as in the single-proc case.)
15240             </remarks>
15241         </member>
15242         <member name="M:Microsoft.Build.BackEnd.SchedulingData.UpdateFromState(Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.SchedulableRequestState)">
15243             <summary>
15244             Updates the state of the specified request.
15245             </summary>
15246         </member>
15247         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetRequestsAssignedToConfiguration(System.Int32)">
15248             <summary>
15249             Gets the requests assigned to a particular configuration.
15250             </summary>
15251         </member>
15252         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetRequestsAssignedToConfigurationCount(System.Int32)">
15253             <summary>
15254             Retrieves the number of requests which exist in the system that are attributed to the specified configuration.
15255             </summary>
15256         </member>
15257         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetExecutingRequest(System.Int32)">
15258             <summary>
15259             Retrieves a request which is currently executing.
15260             </summary>
15261         </member>
15262         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetBlockedRequest(System.Int32)">
15263             <summary>
15264             Retrieves a request which is currently blocked.
15265             </summary>
15266         </member>
15267         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetBlockedRequestIfAny(System.Int32)">
15268             <summary>
15269             Retrieves a request which is currently blocked, or null if there is none.
15270             </summary>
15271         </member>
15272         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetYieldingRequest(System.Int32)">
15273             <summary>
15274             Retrieves a request which is currently yielding.
15275             </summary>
15276         </member>
15277         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetReadyRequest(System.Int32)">
15278             <summary>
15279             Retrieves a request which is ready to continue executing.
15280             </summary>
15281         </member>
15282         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetScheduledRequest(System.Int32)">
15283             <summary>
15284             Retrieves a request which has been assigned to a node and is in the executing, blocked or ready states.
15285             </summary>
15286         </member>
15287         <member name="M:Microsoft.Build.BackEnd.SchedulingData.IsNodeWorking(System.Int32)">
15288             <summary>
15289             Returns true if the specified node has an executing request, false otherwise.
15290             </summary>
15291         </member>
15292         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetConfigurationsCountByNode(System.Int32,System.Boolean,Microsoft.Build.BackEnd.IConfigCache)">
15293             <summary>
15294             Returns the number of configurations assigned to the specified node.
15295             </summary>
15296         </member>
15297         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetExecutingRequestByNode(System.Int32)">
15298             <summary>
15299             Gets the request currently executing on the node.
15300             </summary>
15301         </member>
15302         <member name="M:Microsoft.Build.BackEnd.SchedulingData.IsRequestScheduled(Microsoft.Build.BackEnd.SchedulableRequest)">
15303             <summary>
15304             Determines if the specified request is currently scheduled.
15305             </summary>
15306         </member>
15307         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetScheduledRequestsCountByNode(System.Int32)">
15308             <summary>
15309             Retrieves the count all of the requests scheduled to the specified node.
15310             </summary>
15311         </member>
15312         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetScheduledRequestsByNode(System.Int32)">
15313             <summary>
15314             Retrieves all of the requests scheduled to the specified node.
15315             </summary>
15316         </member>
15317         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetReadyRequestsByNode(System.Int32)">
15318             <summary>
15319             Retrieves all of the ready requests on the specified node.
15320             </summary>
15321         </member>
15322         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetRequestsByHierarchy(Microsoft.Build.BackEnd.SchedulableRequest)">
15323             <summary>
15324             Retrieves a set of build requests which have the specified parent.  If root is null, this will retrieve all of the 
15325             top-level requests.
15326             </summary>
15327         </member>
15328         <member name="M:Microsoft.Build.BackEnd.SchedulingData.GetAssignedNodeForRequestConfiguration(System.Int32)">
15329             <summary>
15330             Returns the node id to which this request should be assigned based on its configuration.
15331             </summary>
15332             <returns>The node if one has been assigned for this configuration, otherwise -1.</returns>
15333         </member>
15334         <member name="M:Microsoft.Build.BackEnd.SchedulingData.CanScheduleRequestToNode(Microsoft.Build.BackEnd.SchedulableRequest,System.Int32)">
15335             <summary>
15336             Returns true if the request can be scheduled to the specified node.
15337             </summary>
15338         </member>
15339         <member name="M:Microsoft.Build.BackEnd.SchedulingData.UnassignNodeForRequestConfiguration(System.Int32)">
15340             <summary>
15341             Unassigns the node associated with a particular configuration.
15342             </summary>
15343             <remarks>
15344             The operation is only valid when there are no scheduled requests for this configuration.
15345             </remarks>
15346         </member>
15347         <member name="M:Microsoft.Build.BackEnd.SchedulingData.InternalGetScheduledRequestByGlobalRequestId(System.Int32)">
15348             <summary>
15349             Gets a schedulable request with the specified global request id if it is currently scheduled.
15350             </summary>
15351         </member>
15352         <member name="M:Microsoft.Build.BackEnd.SchedulingData.ExpectScheduledRequestState(System.Int32,Microsoft.Build.BackEnd.SchedulableRequestState)">
15353             <summary>
15354             Verifies that the request is scheduled and in the expected state.
15355             </summary>
15356         </member>
15357         <member name="T:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent">
15358             <summary>
15359             A scheduling event.
15360             </summary>
15361         </member>
15362         <member name="F:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent._eventTime">
15363             <summary>
15364             The time the event took place.
15365             </summary>
15366         </member>
15367         <member name="F:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent._request">
15368             <summary>
15369             The request involved in the event.
15370             </summary>
15371         </member>
15372         <member name="F:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent._oldState">
15373             <summary>
15374             The state of the request before the event.
15375             </summary>
15376         </member>
15377         <member name="F:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent._newState">
15378             <summary>
15379             The state of the request as a result of the event.
15380             </summary>
15381         </member>
15382         <member name="M:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent.#ctor(System.DateTime,Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.SchedulableRequestState,Microsoft.Build.BackEnd.SchedulableRequestState)">
15383             <summary>
15384             Constructor.
15385             </summary>
15386         </member>
15387         <member name="P:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent.EventTime">
15388             <summary>
15389             The time the event took place.
15390             </summary>
15391         </member>
15392         <member name="P:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent.Request">
15393             <summary>
15394             The request involved in the event.
15395             </summary>
15396         </member>
15397         <member name="P:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent.OldState">
15398             <summary>
15399             The state of the request before the event.
15400             </summary>
15401         </member>
15402         <member name="P:Microsoft.Build.BackEnd.SchedulingData.SchedulingEvent.NewState">
15403             <summary>
15404             The state of the request as a result of the event.
15405             </summary>
15406         </member>
15407         <member name="T:Microsoft.Build.BackEnd.Scheduler">
15408             <summary>
15409             The MSBuild Scheduler
15410             </summary>
15411         </member>
15412         <member name="F:Microsoft.Build.BackEnd.Scheduler.InvalidNodeId">
15413             <summary>
15414             The invalid node id
15415             </summary>
15416         </member>
15417         <member name="F:Microsoft.Build.BackEnd.Scheduler.ResultsTransferredId">
15418             <summary>
15419             ID used to indicate that the results for a particular configuration may at one point 
15420             have resided on this node, but currently do not and will need to be transferred back 
15421             in order to be used.  
15422             </summary>
15423         </member>
15424         <member name="F:Microsoft.Build.BackEnd.Scheduler.InProcNodeId">
15425             <summary>
15426             The in-proc node id
15427             </summary>
15428         </member>
15429         <member name="F:Microsoft.Build.BackEnd.Scheduler.VirtualNode">
15430             <summary>
15431             The virtual node, used when a request is initially given to the scheduler.
15432             </summary>
15433         </member>
15434         <member name="F:Microsoft.Build.BackEnd.Scheduler.DefaultCustomSchedulerForSQLConfigurationLimitMultiplier">
15435             <summary>
15436             If MSBUILDCUSTOMSCHEDULER = CustomSchedulerForSQL, the default multiplier for the amount by which 
15437             the count of configurations on any one node can exceed the average configuration count is 1.1 -- 
15438             + 10%.
15439             </summary>
15440         </member>
15441         <member name="F:Microsoft.Build.BackEnd.Scheduler._schedulingUnlimitedVariable">
15442             <summary>
15443             Content of the environment variable  MSBUILDSCHEDULINGUNLIMITED
15444             </summary>
15445         </member>
15446         <member name="F:Microsoft.Build.BackEnd.Scheduler._schedulingUnlimited">
15447             <summary>
15448             If MSBUILDSCHEDULINGUNLIMITED is set, this flag will make AtSchedulingLimit() always return false
15449             </summary>
15450         </member>
15451         <member name="F:Microsoft.Build.BackEnd.Scheduler._nodeLimitOffset">
15452             <summary>
15453             If MSBUILDNODELIMITOFFSET is set, this will add an offset to the limit used in AtSchedulingLimit()
15454             </summary>
15455         </member>
15456         <member name="F:Microsoft.Build.BackEnd.Scheduler._availableNodes">
15457             <summary>
15458             { nodeId -> NodeInfo }
15459             A list of nodes we know about.  For the non-distributed case, there will be no more nodes than the
15460             maximum specified on the command-line.
15461             </summary>
15462         </member>
15463         <member name="F:Microsoft.Build.BackEnd.Scheduler._currentInProcNodeCount">
15464             <summary>
15465             The number of inproc nodes that can be created without hitting the 
15466             node limit.
15467             </summary>
15468         </member>
15469         <member name="F:Microsoft.Build.BackEnd.Scheduler._currentOutOfProcNodeCount">
15470             <summary>
15471             The number of out-of-proc nodes that can be created without hitting the 
15472             node limit.
15473             </summary>
15474         </member>
15475         <member name="F:Microsoft.Build.BackEnd.Scheduler._schedulingData">
15476             <summary>
15477             The collection of all requests currently known to the system.
15478             </summary>
15479         </member>
15480         <member name="F:Microsoft.Build.BackEnd.Scheduler._componentHost">
15481             <summary>
15482             The component host.
15483             </summary>
15484         </member>
15485         <member name="F:Microsoft.Build.BackEnd.Scheduler._configCache">
15486             <summary>
15487             The configuration cache.
15488             </summary>
15489         </member>
15490         <member name="F:Microsoft.Build.BackEnd.Scheduler._resultsCache">
15491             <summary>
15492             The results cache.
15493             </summary>
15494         </member>
15495         <member name="F:Microsoft.Build.BackEnd.Scheduler._nextGlobalRequestId">
15496             <summary>
15497              The next ID to assign for a global request id.
15498             </summary>
15499         </member>
15500         <member name="F:Microsoft.Build.BackEnd.Scheduler._debugDumpState">
15501             <summary>
15502             Flag indicating that we are supposed to dump the scheduler state to the disk periodically.
15503             </summary>
15504         </member>
15505         <member name="F:Microsoft.Build.BackEnd.Scheduler._forceAffinityOutOfProc">
15506             <summary>
15507             Flag used for debugging by forcing all scheduling to go out-of-proc.
15508             </summary>
15509         </member>
15510         <member name="F:Microsoft.Build.BackEnd.Scheduler._debugDumpPath">
15511             <summary>
15512             The path into which debug files will be written.
15513             </summary>
15514         </member>
15515         <member name="F:Microsoft.Build.BackEnd.Scheduler._customSchedulerForSQLConfigurationLimitMultiplier">
15516             <summary>
15517             If MSBUILDCUSTOMSCHEDULER = CustomSchedulerForSQL, the user may also choose to set 
15518             MSBUILDCUSTOMSCHEDULERFORSQLCONFIGURATIONLIMITMULTIPLIER to the value by which they want 
15519             the max configuration count for any one node to exceed the average configuration count.  
15520             If that env var is not set, or is set to an invalid value (negative, less than 1, non-numeric)
15521             then we use the default value instead.
15522             </summary>
15523         </member>
15524         <member name="F:Microsoft.Build.BackEnd.Scheduler._schedulingPlan">
15525             <summary>
15526             The plan.
15527             </summary>
15528         </member>
15529         <member name="F:Microsoft.Build.BackEnd.Scheduler._customRequestSchedulingAlgorithm">
15530             <summary>
15531             If MSBUILDCUSTOMSCHEDULER is set, contains the requested scheduling algorithm
15532             </summary>
15533         </member>
15534         <member name="M:Microsoft.Build.BackEnd.Scheduler.#ctor">
15535             <summary>
15536             Constructor.
15537             </summary>
15538         </member>
15539         <member name="T:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsDelegate">
15540             <summary>
15541             In the circumstance where we want to specify the scheduling algorithm via the secret environment variable 
15542             MSBUILDCUSTOMSCHEDULING, the scheduling algorithm used will be assigned to a delegate of this type. 
15543             </summary>
15544         </member>
15545         <member name="P:Microsoft.Build.BackEnd.Scheduler.MinimumAssignableConfigurationId">
15546             <summary>
15547             Retrieves the minimum configuration id which can be assigned that won't conflict with those in the scheduling plan.
15548             </summary>
15549         </member>
15550         <member name="M:Microsoft.Build.BackEnd.Scheduler.IsCurrentlyBuildingConfiguration(System.Int32)">
15551             <summary>
15552             Returns true if the specified configuration is currently in the scheduler.
15553             </summary>
15554             <param name="configurationId">The configuration id</param>
15555             <returns>True if the specified configuration is already building.</returns>
15556         </member>
15557         <member name="M:Microsoft.Build.BackEnd.Scheduler.GetConfigurationIdFromPlan(System.String)">
15558             <summary>
15559             Gets a configuration id from the plan which matches the specified path.
15560             </summary>
15561             <param name="configPath">The path.</param>
15562             <returns>The configuration id which has been assigned to this path.</returns>
15563         </member>
15564         <member name="M:Microsoft.Build.BackEnd.Scheduler.ReportRequestBlocked(System.Int32,Microsoft.Build.BackEnd.BuildRequestBlocker)">
15565             <summary>
15566             Reports that the specified request has become blocked and cannot proceed.
15567             </summary>
15568         </member>
15569         <member name="M:Microsoft.Build.BackEnd.Scheduler.ReportResult(System.Int32,Microsoft.Build.Execution.BuildResult)">
15570             <summary>
15571             Informs the scheduler of a specific result.
15572             </summary>
15573         </member>
15574         <member name="M:Microsoft.Build.BackEnd.Scheduler.ReportNodesCreated(System.Collections.Generic.IEnumerable{Microsoft.Build.BackEnd.NodeInfo})">
15575             <summary>
15576             Signals that a node has been created.
15577             </summary>
15578             <param name="nodeInfos">Information about the nodes which were created.</param>
15579             <returns>A new set of scheduling actions to take.</returns>
15580         </member>
15581         <member name="M:Microsoft.Build.BackEnd.Scheduler.ReportBuildAborted(System.Int32)">
15582             <summary>
15583             Signals that the build has been aborted by the specified node.
15584             </summary>
15585             <param name="nodeId">The node which reported the failure.</param>
15586         </member>
15587         <member name="M:Microsoft.Build.BackEnd.Scheduler.Reset">
15588             <summary>
15589             Resets the scheduler.
15590             </summary>
15591         </member>
15592         <member name="M:Microsoft.Build.BackEnd.Scheduler.WriteDetailedSummary(System.Int32)">
15593             <summary>
15594             Writes out the detailed summary of the build.
15595             </summary>
15596             <param name="submissionId">The id of the submission which is at the root of the build.</param>
15597         </member>
15598         <member name="M:Microsoft.Build.BackEnd.Scheduler.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
15599             <summary>
15600             Initializes the component with the specified component host.
15601             </summary>
15602             <param name="host">The component host.</param>
15603         </member>
15604         <member name="M:Microsoft.Build.BackEnd.Scheduler.ShutdownComponent">
15605             <summary>
15606             Shuts down the component.
15607             </summary>
15608         </member>
15609         <member name="M:Microsoft.Build.BackEnd.Scheduler.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
15610             <summary>
15611             Factory for component construction.
15612             </summary>
15613         </member>
15614         <member name="M:Microsoft.Build.BackEnd.Scheduler.HandleYieldAction(Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.BuildRequestBlocker)">
15615             <summary>
15616             Updates the state of a request based on its desire to yield or reacquire control of its node.
15617             </summary>
15618         </member>
15619         <member name="M:Microsoft.Build.BackEnd.Scheduler.ScheduleUnassignedRequests(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15620             <summary>
15621             Attempts to schedule unassigned requests to free nodes.
15622             </summary>
15623             <param name="responses">The list which should be populated with responses from the scheduling.</param>
15624         </member>
15625         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsToNodes(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15626             <summary>
15627             Determines which requests to assign to available nodes.
15628             </summary>
15629             <remarks>
15630             This is where all the real scheduling decisions take place.  It should not be necessary to edit functions outside of this
15631             to alter how scheduling occurs.
15632             </remarks>
15633         </member>
15634         <member name="M:Microsoft.Build.BackEnd.Scheduler.GetSchedulingPlanAndAlgorithm">
15635             <summary>
15636             Reads in the scheduling plan if one exists and has not previously been read; returns true if the scheduling plan 
15637             both exists and is valid, or false otherwise. 
15638             </summary>
15639         </member>
15640         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithPlanByMostImmediateReferences(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15641             <summary>
15642             Assigns requests to nodes based on those which refer to the most other projects.
15643             </summary>
15644         </member>
15645         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithPlanByGreatestPlanTime(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15646             <summary>
15647             Assigns requests to nodes based on those which have the most plan time.
15648             </summary>
15649         </member>
15650         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsByTraversalsFirst(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15651             <summary>
15652             Assigns requests preferring those which are traversal projects as determined by filename.
15653             </summary>
15654         </member>
15655         <member name="M:Microsoft.Build.BackEnd.Scheduler.IsTraversalRequest(Microsoft.Build.BackEnd.BuildRequest)">
15656             <summary>
15657             Returns true if the request is for a traversal project.  Traversals are used to find more work.
15658             </summary>
15659         </member>
15660         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithConfigurationCountLevelling(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15661             <summary>
15662             Assigns requests to nodes attempting to ensure each node has the same number of configurations assigned to it.
15663             </summary>
15664         </member>
15665         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithSmallestFileSize(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15666             <summary>
15667             Assigns requests with the smallest file sizes first.
15668             </summary>
15669         </member>
15670         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithLargestFileSize(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15671             <summary>
15672             Assigns requests with the largest file sizes first.
15673             </summary>
15674         </member>
15675         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithMaxWaitingRequests(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15676             <summary>
15677             Assigns requests preferring the ones which have the most other requests waiting on them using the transitive closure.
15678             </summary>
15679         </member>
15680         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsWithMaxWaitingRequests2(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15681             <summary>
15682             Assigns requests preferring those with the most requests waiting on them, but only counting those requests which are
15683             directly waiting, as opposed to the transitive closure.
15684             </summary>
15685         </member>
15686         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsFIFO(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15687             <summary>
15688             Assigns requests on a first-come, first-serve basis.
15689             </summary>
15690         </member>
15691         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestsUsingCustomSchedulerForSQL(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.HashSet{System.Int32})">
15692             <summary>
15693             Custom scheduler for the SQL folks to solve a performance problem with their builds where they end up with a few long-running 
15694             requests on all but one node, and then a very large number of short-running requests on that one node -- which is by design for 
15695             our current scheduler, but makes it so that later in the build, when these configurations are re-entered with new requests, the 
15696             build becomes essentially serial because so many of the configurations are tied to that one node.  
15697             
15698             Fixes that problem by intentionally choosing to refrain from assigning new configurations to idle nodes if those idle nodes already 
15699             have more than their fair share of the existing configurations assigned to them. 
15700             </summary>
15701         </member>
15702         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignUnscheduledRequestToNode(Microsoft.Build.BackEnd.SchedulableRequest,System.Int32,System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15703             <summary>
15704             Assigns the specified request to the specified node.
15705             </summary>
15706         </member>
15707         <member name="M:Microsoft.Build.BackEnd.Scheduler.AtSchedulingLimit">
15708             <summary>
15709             Returns true if we are at the limit of work we can schedule.
15710             </summary>
15711         </member>
15712         <member name="M:Microsoft.Build.BackEnd.Scheduler.CanScheduleRequestToNode(Microsoft.Build.BackEnd.SchedulableRequest,System.Int32)">
15713             <summary>
15714             Returns true if a request can be scheduled to a node, false otherwise.
15715             </summary>
15716         </member>
15717         <member name="M:Microsoft.Build.BackEnd.Scheduler.CreateNewNodeIfPossible(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse},System.Collections.Generic.IEnumerable{Microsoft.Build.BackEnd.SchedulableRequest})">
15718             <summary>
15719             Adds CreateNode responses to satisfy all the affinities in the list of requests, with the following constraints:
15720             
15721             a) Issue no more than one response to create an inproc node, and aggressively issues as many requests for an out-of-proc node
15722                as there are requests to assign to them. 
15723                
15724             b) Don't exceed the max node count, *unless* there isn't even one node of the necessary affinity yet. (That means that even if there's a max
15725                node count of e.g., 3, and we have already created 3 out of proc nodes, we will still create an inproc node if affinity requires it; if 
15726                we didn't, the build would jam.)
15727                
15728             Returns true if there is a pending response to create a new node.
15729             </summary>
15730         </member>
15731         <member name="M:Microsoft.Build.BackEnd.Scheduler.MarkRequestAborted(Microsoft.Build.BackEnd.SchedulableRequest)">
15732             <summary>
15733             Marks the specified request and all of its ancestors as having aborted.
15734             </summary>
15735         </member>
15736         <member name="M:Microsoft.Build.BackEnd.Scheduler.HandleRequestBlockedOnInProgressTarget(Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.BuildRequestBlocker)">
15737             <summary>
15738             Marks the request as being blocked by another request which is currently building a target whose results we need to proceed.
15739             </summary>
15740         </member>
15741         <member name="M:Microsoft.Build.BackEnd.Scheduler.HandleRequestBlockedOnResultsTransfer(Microsoft.Build.BackEnd.SchedulableRequest,System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15742             <summary>
15743             Marks the parent as blocked waiting for results from a results transfer.
15744             </summary>
15745         </member>
15746         <member name="M:Microsoft.Build.BackEnd.Scheduler.HandleRequestBlockedByNewRequests(Microsoft.Build.BackEnd.SchedulableRequest,Microsoft.Build.BackEnd.BuildRequestBlocker,System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15747             <summary>
15748             Marks the request as being blocked by new requests whose results we must get before we can proceed.
15749             </summary>
15750         </member>
15751         <member name="M:Microsoft.Build.BackEnd.Scheduler.ResumeReadyRequestIfAny(System.Int32,System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15752             <summary>
15753             Resumes executing a request which was in the Ready state for the specified node, if any.
15754             </summary>
15755         </member>
15756         <member name="M:Microsoft.Build.BackEnd.Scheduler.ResolveRequestFromCacheAndResumeIfPossible(Microsoft.Build.BackEnd.SchedulableRequest,System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15757             <summary>
15758             Attempts to get results from the cache for this request.  If results are available, reports them to the 
15759             correct node.  If that action causes the parent to become ready and its node is idle, the parent is
15760             resumed.
15761             </summary>
15762         </member>
15763         <member name="M:Microsoft.Build.BackEnd.Scheduler.ResumeRequiredWork(System.Collections.Generic.List{Microsoft.Build.BackEnd.ScheduleResponse})">
15764             <summary>
15765             Determines which work is available which must be assigned to the nodes.  This includes:
15766             1. Ready requests - those requests which can immediately resume executing.
15767             2. Requests which can continue because results are now available but we haven't distributed them.
15768             </summary>
15769         </member>
15770         <member name="M:Microsoft.Build.BackEnd.Scheduler.TrySatisfyRequestFromCache(System.Int32,Microsoft.Build.BackEnd.BuildRequest,System.Boolean)">
15771             <summary>
15772             Attempts to get a result from the cache to satisfy the request, and returns the appropriate response if possible.
15773             </summary>
15774         </member>
15775         <member name="M:Microsoft.Build.BackEnd.Scheduler.GetResponseForResult(System.Int32,Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
15776             <summary>
15777             Gets the appropriate ScheduleResponse for a result, either to complete a submission or to report to a node.
15778             </summary>
15779         </member>
15780         <member name="M:Microsoft.Build.BackEnd.Scheduler.LogRequestHandledFromCache(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
15781             <summary>
15782             Logs the project started/finished pair for projects which are skipped entirely because all
15783             of their results are available in the cache.
15784             </summary>
15785         </member>
15786         <member name="M:Microsoft.Build.BackEnd.Scheduler.ComputeClosureOfWaitingRequests(Microsoft.Build.BackEnd.SchedulableRequest)">
15787             <summary>
15788             This method determines how many requests are waiting for this request, taking into account the full tree of all requests
15789             in all dependency chains which are waiting.
15790             </summary>
15791         </member>
15792         <member name="M:Microsoft.Build.BackEnd.Scheduler.GetNodeAffinityForRequest(Microsoft.Build.BackEnd.BuildRequest)">
15793             <summary>
15794             Gets the node affinity for the specified request.
15795             </summary>
15796         </member>
15797         <member name="M:Microsoft.Build.BackEnd.Scheduler.RequestOrAnyItIsBlockedByCanBeServiced(Microsoft.Build.BackEnd.SchedulableRequest)">
15798             <summary>
15799             Iterates through the set of available nodes and checks whether any of them is 
15800             capable of servicing this request or any of the requests that it is blocked 
15801             by (regardless of whether they are currently available to do so).
15802             </summary>
15803         </member>
15804         <member name="M:Microsoft.Build.BackEnd.Scheduler.AssignGlobalRequestId(Microsoft.Build.BackEnd.BuildRequest)">
15805             <summary>
15806             Determines if we have a matching request somewhere, and if so, assigns the same request ID.  Otherwise
15807             assigns a new request id.
15808             </summary>
15809             <remarks>
15810             UNDONE: (Performance) This algorithm should be modified so we don't have to iterate over all of the 
15811             requests to find a matching one.  A HashSet with proper equality semantics and a good hash code for the BuildRequest
15812             would speed this considerably, especially for large numbers of projects in a build.
15813             </remarks>
15814             <param name="request">The request whose ID should be assigned</param>
15815         </member>
15816         <member name="M:Microsoft.Build.BackEnd.Scheduler.WriteNodeUtilizationGraph(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Boolean)">
15817             <summary>
15818             Writes the graph representation of how the nodes were utilized.
15819             </summary>
15820         </member>
15821         <member name="M:Microsoft.Build.BackEnd.Scheduler.WriteNodeUtilizationGraphLine(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Int32[],System.Int32[],System.DateTime,System.DateTime,System.Int32,System.Double@)">
15822             <summary>
15823             Writes a single line of node utilization information.
15824             </summary>
15825         </member>
15826         <member name="M:Microsoft.Build.BackEnd.Scheduler.WriteRecursiveSummary(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Int32,Microsoft.Build.BackEnd.SchedulableRequest,System.Int32,System.Boolean,System.Boolean)">
15827             <summary>
15828             Recursively dumps the build information for the specified hierarchy
15829             </summary>
15830         </member>
15831         <member name="M:Microsoft.Build.BackEnd.Scheduler.TraceScheduler(System.String,System.Object[])">
15832             <summary>
15833             Method used for debugging purposes.
15834             </summary>
15835         </member>
15836         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpSchedulerState">
15837             <summary>
15838             Dumps the current state of the scheduler.
15839             </summary>
15840         </member>
15841         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpConfigurations">
15842             <summary>
15843             Dumps all of the configurations.
15844             </summary>
15845         </member>
15846         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpRequests">
15847             <summary>
15848             Dumps all of the requests.
15849             </summary>
15850         </member>
15851         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpRequestHierarchy(System.IO.StreamWriter,Microsoft.Build.BackEnd.SchedulableRequest,System.Int32)">
15852             <summary>
15853             Dumps the hierarchy of requests.
15854             </summary>
15855         </member>
15856         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpRequestState(System.IO.StreamWriter,Microsoft.Build.BackEnd.SchedulableRequest,System.Int32)">
15857             <summary>
15858             Dumps the state of a request.
15859             </summary>
15860         </member>
15861         <member name="M:Microsoft.Build.BackEnd.Scheduler.DumpRequestSpec(System.IO.StreamWriter,Microsoft.Build.BackEnd.SchedulableRequest,System.Int32,System.String)">
15862             <summary>
15863             Dumps detailed information about a request.
15864             </summary>
15865         </member>
15866         <member name="M:Microsoft.Build.BackEnd.Scheduler.WriteSchedulingPlan(System.Int32)">
15867             <summary>
15868             Write out the scheduling information so the next time we can read the plan back in and use it.
15869             </summary>
15870         </member>
15871         <member name="M:Microsoft.Build.BackEnd.Scheduler.ReadSchedulingPlan(System.Int32)">
15872             <summary>
15873             Retrieves the scheduling plan from the previous run.
15874             </summary>
15875         </member>
15876         <member name="T:Microsoft.Build.BackEnd.SchedulerCircularDependencyException">
15877             <summary>
15878             Exception thrown when a circular dependency is detected in the Scheduler.
15879             </summary>
15880         </member>
15881         <member name="F:Microsoft.Build.BackEnd.SchedulerCircularDependencyException._ancestors">
15882             <summary>
15883             The ancestors which led to this circular dependency.
15884             </summary>
15885         </member>
15886         <member name="F:Microsoft.Build.BackEnd.SchedulerCircularDependencyException._request">
15887             <summary>
15888             The request which caused the circular dependency.
15889             </summary>
15890         </member>
15891         <member name="M:Microsoft.Build.BackEnd.SchedulerCircularDependencyException.#ctor(Microsoft.Build.BackEnd.BuildRequest,System.Collections.Generic.IList{Microsoft.Build.BackEnd.SchedulableRequest})">
15892             <summary>
15893             Constructor.
15894             </summary>
15895         </member>
15896         <member name="P:Microsoft.Build.BackEnd.SchedulerCircularDependencyException.Ancestors">
15897             <summary>
15898             Gets an enumeration of the ancestors which led to this circular dependency.
15899             </summary>
15900         </member>
15901         <member name="P:Microsoft.Build.BackEnd.SchedulerCircularDependencyException.Request">
15902             <summary>
15903             Gets the request which caused the circular dependency.
15904             </summary>
15905         </member>
15906         <member name="T:Microsoft.Build.BackEnd.ScheduleTimeRecord">
15907             <summary>
15908             Class used to track time accumulated during scheduling.
15909             </summary>
15910         </member>
15911         <member name="F:Microsoft.Build.BackEnd.ScheduleTimeRecord._startTimeForCurrentState">
15912             <summary>
15913             The time the current counter started.
15914             </summary>
15915         </member>
15916         <member name="F:Microsoft.Build.BackEnd.ScheduleTimeRecord._accumulatedTime">
15917             <summary>
15918             The accumulated time for this counter.
15919             </summary>
15920         </member>
15921         <member name="M:Microsoft.Build.BackEnd.ScheduleTimeRecord.#ctor">
15922             <summary>
15923             Constructor.
15924             </summary>
15925         </member>
15926         <member name="P:Microsoft.Build.BackEnd.ScheduleTimeRecord.AccumulatedTime">
15927             <summary>
15928             Retrieve the accumulated time.
15929             </summary>
15930         </member>
15931         <member name="M:Microsoft.Build.BackEnd.ScheduleTimeRecord.StartState(System.DateTime)">
15932             <summary>
15933             Start the timer.
15934             </summary>
15935         </member>
15936         <member name="M:Microsoft.Build.BackEnd.ScheduleTimeRecord.EndState(System.DateTime)">
15937             <summary>
15938             End the timer and update the accumulated time.
15939             </summary>
15940         </member>
15941         <member name="T:Microsoft.Build.BackEnd.SchedulingPlan">
15942             <summary>
15943             A SchedulingPlan contains timing and relationship information for a build which has already occurred.  This data can then be
15944             used by subsequent builds to determine how best to distribute work among several nodes.
15945             </summary>
15946         </member>
15947         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan._configCache">
15948             <summary>
15949             The configuration cache.
15950             </summary>
15951         </member>
15952         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan._schedulingData">
15953             <summary>
15954             The active scheduling data.
15955             </summary>
15956         </member>
15957         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan._configPathToData">
15958             <summary>
15959             Mapping of project full paths to plan configuration data.
15960             </summary>
15961         </member>
15962         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan._configIdToData">
15963             <summary>
15964             Mapping of configuration ids to plan configuration data.
15965             </summary>
15966         </member>
15967         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan._configIdToPaths">
15968             <summary>
15969             Mapping of configuration ids to the set of configurations which were traversed to get to this configuration.
15970             </summary>
15971         </member>
15972         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.#ctor(Microsoft.Build.BackEnd.IConfigCache,Microsoft.Build.BackEnd.SchedulingData)">
15973             <summary>
15974             Constructor.
15975             </summary>
15976         </member>
15977         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.IsPlanValid">
15978             <summary>
15979             Returns true if a valid plan was read, false otherwise.
15980             </summary>
15981         </member>
15982         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.MaximumConfigurationId">
15983             <summary>
15984             Returns the largest configuration id known to the plan.
15985             </summary>
15986         </member>
15987         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.WritePlan(System.Int32,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
15988             <summary>
15989             Writes a plan for the specified submission id.
15990             </summary>
15991         </member>
15992         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.ReadPlan(System.Int32,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
15993             <summary>
15994             Reads a plan for the specified submission Id.
15995             </summary>
15996         </member>
15997         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetConfigIdForPath(System.String)">
15998             <summary>
15999             Returns the config id for the config specified by the path, if any.
16000             </summary>
16001             <returns>The config id if one exists, otherwise BuildRequestConfiguration.InvalidConfigurationId</returns>
16002         </member>
16003         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetConfigWithGreatestNumberOfReferences(System.Collections.Generic.IEnumerable{System.Int32})">
16004             <summary>
16005             Given a list of configuration IDs, returns the id of the config with the greatest number of immediate references.
16006             </summary>
16007             <param name="configsToSchedule">The set of configurations to consider.</param>
16008             <returns>The id of the configuration with the most immediate references.</returns>
16009         </member>
16010         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetConfigWithGreatestPlanTime(System.Collections.Generic.IEnumerable{System.Int32})">
16011             <summary>
16012             Given a list of real configuration IDs, returns the id of the config with the largest plan time.
16013             </summary>
16014         </member>
16015         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetReferencesCountForConfigByPath(System.String)">
16016             <summary>
16017             Determines how many references a config with a particular path has.
16018             </summary>
16019         </member>
16020         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.VisitConfig(System.String)">
16021             <summary>
16022             Advances the state of the plan by removing the specified config from all paths
16023             </summary>
16024         </member>
16025         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.CompleteConfig(System.String)">
16026             <summary>
16027             Advances the state of the plan by zeroing out the time spend on the config.
16028             </summary>
16029         </member>
16030         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetPlanName(Microsoft.Build.BackEnd.SchedulableRequest)">
16031             <summary>
16032             Gets the name of the plan file for a specified submission.
16033             </summary>
16034         </member>
16035         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetConfigWithComparison(System.Collections.Generic.IEnumerable{System.Int32},System.Comparison{Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData})">
16036             <summary>
16037             Returns the config id with the greatest value according to the comparer.
16038             </summary>
16039         </member>
16040         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.AnalyzeData">
16041             <summary>
16042             Analyzes the plan data which has been read.
16043             </summary>
16044         </member>
16045         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.DetermineConfigsWithGreatestPlanTime">
16046             <summary>
16047             Writes out configuration in order of the greatest total plan time.
16048             </summary>
16049         </member>
16050         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.DetermineConfigsWithTheMostImmediateReferences">
16051             <summary>
16052             Writes out configs in order of most immediate references.
16053             </summary>
16054         </member>
16055         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.DetermineConfigsByNumberOfOccurrences">
16056             <summary>
16057             Writes out configs in order of how often they are seen in the hierarchy.
16058             </summary>
16059         </member>
16060         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.DoRecursiveAnalysis">
16061             <summary>
16062             This method finds all of the paths which lead to any given project
16063             </summary>
16064         </member>
16065         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.RecursiveVisitNodes(Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData,System.Collections.Generic.Stack{Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData})">
16066             <summary>
16067             Recursively visits all nodes in the hierarchy.
16068             </summary>
16069         </member>
16070         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.DetermineExpensiveConfigs">
16071             <summary>
16072             Finds projects in order of expense and displays the paths leading to them.
16073             </summary>
16074         </member>
16075         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.ReadHierarchy(System.IO.StreamReader)">
16076             <summary>
16077             Reads the hierarchy from a plan file.
16078             </summary>
16079         </member>
16080         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.ReadTimes(System.IO.StreamReader)">
16081             <summary>
16082             Reads the accumulated time and path information for each configuration from the plan file.
16083             </summary>
16084         </member>
16085         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.GetRootRequest(System.Int32)">
16086             <summary>
16087             Retrieves the root request for the specified submission id.
16088             </summary>
16089             <returns>The request if one exists, otherwise null.</returns>
16090         </member>
16091         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.RecursiveWriteDependencies(System.IO.StreamWriter,Microsoft.Build.BackEnd.SchedulableRequest)">
16092             <summary>
16093             Writes out all of the dependencies for a specified request, recursively.
16094             </summary>
16095         </member>
16096         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.RecursiveAccumulateConfigurationTimes(Microsoft.Build.BackEnd.SchedulableRequest,System.Collections.Generic.Dictionary{System.Int32,System.Double})">
16097             <summary>
16098             Recursively accumulates the amount of time spent in each configuration.
16099             </summary>
16100         </member>
16101         <member name="T:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData">
16102             <summary>
16103             The data associated with a config as read from a build plan.
16104             </summary>
16105         </member>
16106         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._configId">
16107             <summary>
16108             The configuration id.
16109             </summary>
16110         </member>
16111         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._configFullPath">
16112             <summary>
16113             The full path to the project.
16114             </summary>
16115         </member>
16116         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._accumulatedTime">
16117             <summary>
16118             The amount of time spent in the configuration.
16119             </summary>
16120         </member>
16121         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._accumulatedTimeOfReferences">
16122             <summary>
16123             The total time of all of the references.
16124             </summary>
16125         </member>
16126         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._references">
16127             <summary>
16128             The set of references.
16129             </summary>
16130         </member>
16131         <member name="F:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData._referrers">
16132             <summary>
16133             The set of referrers.
16134             </summary>
16135         </member>
16136         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.#ctor(System.Int32,System.String,System.Double)">
16137             <summary>
16138             Constructor.
16139             </summary>
16140         </member>
16141         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.ConfigId">
16142             <summary>
16143             Gets the configuration id.
16144             </summary>
16145         </member>
16146         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.ConfigFullPath">
16147             <summary>
16148             Gets the configuration's full path.
16149             </summary>
16150         </member>
16151         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.AccumulatedTime">
16152             <summary>
16153             Gets the configuration's accumulated time.
16154             </summary>
16155         </member>
16156         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.AccumulatedTimeOfReferences">
16157             <summary>
16158             Gets the configuration's accumulated time for all of its references.
16159             </summary>
16160         </member>
16161         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.TotalPlanTime">
16162             <summary>
16163             Retrieves the total time for this configuration, which includes the time spent on its references.
16164             </summary>
16165         </member>
16166         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.ReferencesCount">
16167             <summary>
16168             Retrieves the number of references this configuration has.
16169             </summary>
16170         </member>
16171         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.References">
16172             <summary>
16173             Retrieves the references from this configuration.
16174             </summary>
16175         </member>
16176         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.ReferrerCount">
16177             <summary>
16178             Retrieves the number of configurations which refer to this one.
16179             </summary>
16180         </member>
16181         <member name="P:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.Referrers">
16182             <summary>
16183             Retrieves the configurations which refer to this one.
16184             </summary>
16185         </member>
16186         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.AddReference(Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData)">
16187             <summary>
16188             Adds the specified configuration as a reference.
16189             </summary>
16190         </member>
16191         <member name="M:Microsoft.Build.BackEnd.SchedulingPlan.PlanConfigData.RecursivelyApplyReferenceTimeToReferrers(System.Double)">
16192             <summary>
16193             Applies the specified duration offset to the configurations which refer to this one.
16194             </summary>
16195         </member>
16196         <member name="T:Microsoft.Build.BackEnd.DefaultSdkResolver">
16197             <summary>
16198                 Default SDK resolver for compatibility with VS2017 RTM.
16199             <remarks>
16200                 Default Sdk folder will to:
16201                     1) MSBuildSDKsPath environment variable if defined
16202                     2) When in Visual Studio, (VSRoot)\MSBuild\Sdks\
16203                     3) Outside of Visual Studio (MSBuild Root)\Sdks\
16204             </remarks>
16205             </summary>
16206         </member>
16207         <member name="T:Microsoft.Build.BackEnd.SdkResolution">
16208             <summary>
16209                 Component responsible for resolving an SDK to a file path. Loads and coordinates
16210                 with <see cref="T:Microsoft.Build.Framework.SdkResolver" /> plug-ins.
16211             </summary>
16212         </member>
16213         <member name="M:Microsoft.Build.BackEnd.SdkResolution.#ctor(Microsoft.Build.BackEnd.SdkResolverLoader)">
16214             <summary>
16215                 Create an instance with a specified resolver assembly loading strategy. Used
16216                 for testing purposes.
16217             </summary>
16218             <param name="sdkResolverLoader">Resolver loading strategy.</param>
16219         </member>
16220         <member name="M:Microsoft.Build.BackEnd.SdkResolution.GetSdkPath(Microsoft.Build.Framework.SdkReference,Microsoft.Build.BackEnd.Logging.LoggingContext,Microsoft.Build.Construction.ElementLocation,System.String,System.String)">
16221             <summary>
16222                 Get path on disk to the referenced SDK.
16223             </summary>
16224             <param name="sdk">SDK referenced by the Project.</param>
16225             <param name="loggingContext">The logging service</param>
16226             <param name="sdkReferenceLocation">Location of the element within the project which referenced the SDK.</param>
16227             <param name="solutionPath">Path to the solution if known.</param>
16228             <param name="projectPath">Path to the project being built.</param>
16229             <returns>Path to the root of the referenced SDK.</returns>
16230         </member>
16231         <member name="M:Microsoft.Build.BackEnd.SdkResolution.InitializeForTests(System.Collections.Generic.IList{Microsoft.Build.Framework.SdkResolver})">
16232             <summary>
16233             Used for unit tests only.
16234             </summary>
16235             <param name="resolvers">Explicit set of SdkResolvers to use for all SDK resolution.</param>
16236         </member>
16237         <member name="M:Microsoft.Build.BackEnd.SdkResolverLoader.FindPotentialSdkResolvers(System.String)">
16238             <summary>
16239                 Find all files that are to be considered SDK Resolvers. Pattern will match
16240                 Root\SdkResolver\(ResolverName)\(ResolverName).dll.
16241             </summary>
16242             <param name="rootFolder"></param>
16243             <returns></returns>
16244         </member>
16245         <member name="T:Microsoft.Build.BackEnd.ConfigurationMetadata">
16246             <summary>
16247             A struct representing the uniquely-identifying portion of a BuildRequestConfiguration.  Used for lookups.
16248             </summary>
16249         </member>
16250         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.#ctor(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
16251             <summary>
16252             Constructor over a BuildRequestConfiguration.
16253             </summary>
16254         </member>
16255         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.#ctor(Microsoft.Build.Evaluation.Project)">
16256             <summary>
16257             Constructor over a Project.
16258             </summary>
16259         </member>
16260         <member name="P:Microsoft.Build.BackEnd.ConfigurationMetadata.ProjectFullPath">
16261             <summary>
16262             The full path to the project to build.
16263             </summary>
16264         </member>
16265         <member name="P:Microsoft.Build.BackEnd.ConfigurationMetadata.ToolsVersion">
16266             <summary>
16267             The tools version specified for the configuration.
16268             Always specified.
16269             May have originated from a /tv switch, or an MSBuild task,
16270             or a Project tag, or the default.
16271             </summary>
16272         </member>
16273         <member name="P:Microsoft.Build.BackEnd.ConfigurationMetadata.GlobalProperties">
16274             <summary>
16275             The set of global properties which should be used when building this project.
16276             </summary>
16277         </member>
16278         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.GetHashCode">
16279             <summary>
16280             This override is used to provide a hash code for storage in dictionaries and the like.
16281             </summary>
16282             <remarks>
16283             If two objects are Equal, they must have the same hash code, for dictionaries to work correctly.
16284             Two configurations are Equal if their global properties are equivalent, not necessary reference equals.
16285             So only include filename and tools version in the hashcode.
16286             </remarks>
16287             <returns>A hash code</returns>
16288         </member>
16289         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.Equals(System.Object)">
16290             <summary>
16291             Determines object equality
16292             </summary>
16293             <param name="obj">The object to compare with</param>
16294             <returns>True if they contain the same data, false otherwise</returns>
16295         </member>
16296         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.Equals(Microsoft.Build.BackEnd.ConfigurationMetadata)">
16297             <summary>
16298             Equality of the configuration is the product of the equality of its members.
16299             </summary>
16300             <param name="other">The other configuration to which we will compare ourselves.</param>
16301             <returns>True if equal, false otherwise.</returns>
16302         </member>
16303         <member name="M:Microsoft.Build.BackEnd.ConfigurationMetadata.InternalEquals(Microsoft.Build.BackEnd.ConfigurationMetadata)">
16304             <summary>
16305             Compares this object with another for equality
16306             </summary>
16307             <param name="other">The object with which to compare this one.</param>
16308             <returns>True if the objects contain the same data, false otherwise.</returns>
16309         </member>
16310         <member name="T:Microsoft.Build.BackEnd.ResultsCacheResponseType">
16311             <summary>
16312             The type of response.
16313             </summary>
16314         </member>
16315         <member name="F:Microsoft.Build.BackEnd.ResultsCacheResponseType.NotSatisfied">
16316             <summary>
16317             There were no matching results, or some implicit targets need to be built.
16318             </summary>
16319         </member>
16320         <member name="F:Microsoft.Build.BackEnd.ResultsCacheResponseType.Satisfied">
16321             <summary>
16322             All explicit and implicit targets have results.
16323             </summary>
16324         </member>
16325         <member name="T:Microsoft.Build.BackEnd.ResultsCacheResponse">
16326             <summary>
16327             Container for results of IResultsCache.SatisfyRequest
16328             </summary>
16329         </member>
16330         <member name="F:Microsoft.Build.BackEnd.ResultsCacheResponse.Type">
16331             <summary>
16332             The results type.
16333             </summary>
16334         </member>
16335         <member name="F:Microsoft.Build.BackEnd.ResultsCacheResponse.Results">
16336             <summary>
16337             The actual results, if the request was satisfied.
16338             </summary>
16339         </member>
16340         <member name="F:Microsoft.Build.BackEnd.ResultsCacheResponse.ExplicitTargetsToBuild">
16341             <summary>
16342             The subset of explicit targets which must be built because there are no results for them in the cache.
16343             </summary>
16344         </member>
16345         <member name="M:Microsoft.Build.BackEnd.ResultsCacheResponse.#ctor(Microsoft.Build.BackEnd.ResultsCacheResponseType)">
16346             <summary>
16347             Constructor.
16348             </summary>
16349             <param name="type">The response type.</param>
16350         </member>
16351         <member name="T:Microsoft.Build.BackEnd.NodeEndpointOutOfProc">
16352             <summary>
16353             This is an implementation of INodeEndpoint for the out-of-proc nodes.  It acts only as a client.
16354             </summary>
16355         </member>
16356         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProc._componentHost">
16357             <summary>
16358             The build component host
16359             </summary>
16360         </member>
16361         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.#ctor(System.String,Microsoft.Build.BackEnd.IBuildComponentHost,System.Boolean)">
16362             <summary>
16363             Instantiates an endpoint to act as a client
16364             </summary>
16365             <param name="pipeName">The name of the pipe to which we should connect.</param>
16366             <param name="host">The component host.</param>
16367             <param name="enableReuse">Whether this node may be reused for a later build.</param>
16368         </member>
16369         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.GetHostHandshake">
16370             <summary>
16371             Returns the host handshake for this node endpoint
16372             </summary>
16373         </member>
16374         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.GetClientHandshake">
16375             <summary>
16376             Returns the client handshake for this node endpoint
16377             </summary>
16378         </member>
16379         <member name="T:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.EndpointPair">
16380             <summary>
16381             Used to return a matched pair of endpoints for in-proc nodes to use with the Build Manager.
16382             </summary>
16383         </member>
16384         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.EndpointPair.NodeEndpoint">
16385             <summary>
16386             The endpoint destined for use by a node.
16387             </summary>
16388         </member>
16389         <member name="F:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.EndpointPair.ManagerEndpoint">
16390             <summary>
16391             The endpoint destined for use by the Build Manager
16392             </summary>
16393         </member>
16394         <member name="M:Microsoft.Build.BackEnd.NodeEndpointOutOfProc.EndpointPair.#ctor(Microsoft.Build.BackEnd.NodeEndpointInProc,Microsoft.Build.BackEnd.NodeEndpointInProc)">
16395             <summary>
16396             Creates an endpoint pair
16397             </summary>
16398             <param name="node">The node-side endpoint.</param>
16399             <param name="manager">The manager-side endpoint.</param>
16400         </member>
16401         <member name="T:Microsoft.Build.BackEnd.NodeManager">
16402             <summary>
16403             The NodeManager class is responsible for marshalling data to/from the NodeProviders and organizing the 
16404             creation of new nodes on request.
16405             </summary>
16406         </member>
16407         <member name="F:Microsoft.Build.BackEnd.NodeManager.InvalidNodeId">
16408             <summary>
16409             The invalid node id
16410             </summary>
16411         </member>
16412         <member name="F:Microsoft.Build.BackEnd.NodeManager._inProcNodeProvider">
16413             <summary>
16414             The node provider for the in-proc node.
16415             </summary>
16416         </member>
16417         <member name="F:Microsoft.Build.BackEnd.NodeManager._outOfProcNodeProvider">
16418             <summary>
16419             The node provider for out-of-proc nodes.
16420             </summary> 
16421         </member>
16422         <member name="F:Microsoft.Build.BackEnd.NodeManager._componentHost">
16423             <summary>
16424             The build component host.
16425             </summary>
16426         </member>
16427         <member name="F:Microsoft.Build.BackEnd.NodeManager._nodeIdToProvider">
16428             <summary>
16429             Mapping of manager-produced node IDs to the provider hosting the node.
16430             </summary>
16431         </member>
16432         <member name="F:Microsoft.Build.BackEnd.NodeManager._packetFactory">
16433             <summary>
16434             The packet factory used to translate and route packets
16435             </summary>
16436         </member>
16437         <member name="F:Microsoft.Build.BackEnd.NodeManager._nextNodeId">
16438             <summary>
16439             The next node id to assign to a node.
16440             </summary>
16441         </member>
16442         <member name="F:Microsoft.Build.BackEnd.NodeManager._inprocNodeId">
16443             <summary>
16444             The nodeID for the inproc node.
16445             </summary>
16446         </member>
16447         <member name="F:Microsoft.Build.BackEnd.NodeManager._nodesShutdown">
16448             <summary>
16449             Flag indicating when the nodes have been shut down.
16450             BUGBUG: This is a fix which corrects an RI blocking BVT failure.  The real fix must be determined before RTM.
16451             This must be investigated and resolved before RTM.  The apparent issue is that a design-time build has already called EndBuild
16452             through the BuildManagerAccessor, and the nodes are shut down.  Shortly thereafter, the solution build manager comes through and calls EndBuild, which throws
16453             another Shutdown packet in the queue, and causes the following build to stop prematurely.  This is all timing related - not every sequence of builds seems to 
16454             cause the problem, probably due to the order in which the packet queue gets serviced relative to other threads.
16455             
16456             It appears that the problem is that the BuildRequestEngine is being invoked in a way that causes a shutdown packet to appear to overlap with a build request packet.
16457             Interactions between the in-proc node communication thread and the shutdown mechanism must be investigated to determine how BuildManager.EndBuild is allowing itself
16458             to return before the node has indicated it is actually finished.
16459             </summary>
16460         </member>
16461         <member name="F:Microsoft.Build.BackEnd.NodeManager._componentShutdown">
16462             <summary>
16463             Tracks whether ShutdownComponent has been called.  
16464             </summary>
16465         </member>
16466         <member name="M:Microsoft.Build.BackEnd.NodeManager.#ctor">
16467             <summary>
16468             Constructor.
16469             </summary>
16470         </member>
16471         <member name="M:Microsoft.Build.BackEnd.NodeManager.CreateNode(Microsoft.Build.BackEnd.NodeConfiguration,Microsoft.Build.Execution.NodeAffinity)">
16472             <summary>
16473             Creates a node on an available NodeProvider, if any..
16474             </summary>
16475             <param name="configuration">The configuration to use for the remote node.</param>
16476             <param name="nodeAffinity">The <see cref="T:Microsoft.Build.Execution.NodeAffinity"/> to use.</param>
16477             <returns>A NodeInfo describing the node created, or null if none could be created.</returns>
16478         </member>
16479         <member name="M:Microsoft.Build.BackEnd.NodeManager.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
16480             <summary>
16481             Sends data to the specified node.
16482             </summary>
16483             <param name="node">The node.</param>
16484             <param name="packet">The packet to send.</param>
16485         </member>
16486         <member name="M:Microsoft.Build.BackEnd.NodeManager.ShutdownConnectedNodes(System.Boolean)">
16487             <summary>
16488             Shuts down all of the connected managed nodes.
16489             </summary>
16490             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
16491         </member>
16492         <member name="M:Microsoft.Build.BackEnd.NodeManager.ShutdownAllNodes">
16493             <summary>
16494             Shuts down all of managed nodes permanently.
16495             </summary>
16496         </member>
16497         <member name="M:Microsoft.Build.BackEnd.NodeManager.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
16498             <summary>
16499             Initializes the component
16500             </summary>
16501             <param name="host">The component host</param>
16502         </member>
16503         <member name="M:Microsoft.Build.BackEnd.NodeManager.ShutdownComponent">
16504             <summary>
16505             Shuts down the component.
16506             </summary>
16507         </member>
16508         <member name="M:Microsoft.Build.BackEnd.NodeManager.ClearPerBuildState">
16509             <summary>
16510             Reset the state of objects in the node manager which need to be reset between builds.
16511             </summary>
16512         </member>
16513         <member name="M:Microsoft.Build.BackEnd.NodeManager.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
16514             <summary>
16515             Registers the specified handler for a particular packet type.
16516             </summary>
16517             <param name="packetType">The packet type.</param>
16518             <param name="factory">The factory for packets of the specified type.</param>
16519             <param name="handler">The handler to be called when packets of the specified type are received.</param>
16520         </member>
16521         <member name="M:Microsoft.Build.BackEnd.NodeManager.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
16522             <summary>
16523             Unregisters a packet handler.
16524             </summary>
16525             <param name="packetType">The packet type.</param>
16526         </member>
16527         <member name="M:Microsoft.Build.BackEnd.NodeManager.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
16528             <summary>
16529             Takes a serializer, deserializes the packet and routes it to the appropriate handler.
16530             </summary>
16531             <param name="nodeId">The node from which the packet was received.</param>
16532             <param name="packetType">The packet type.</param>
16533             <param name="translator">The translator containing the data from which the packet should be reconstructed.</param>
16534         </member>
16535         <member name="M:Microsoft.Build.BackEnd.NodeManager.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
16536             <summary>
16537             Routes the specified packet. This is called by the Inproc node directly since it does not have to do any deserialization
16538             </summary>
16539             <param name="nodeId">The node from which the packet was received.</param>
16540             <param name="packet">The packet to route.</param>
16541         </member>
16542         <member name="M:Microsoft.Build.BackEnd.NodeManager.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
16543             <summary>
16544             Factory for component creation.
16545             </summary>
16546         </member>
16547         <member name="M:Microsoft.Build.BackEnd.NodeManager.RemoveNodeFromMapping(System.Int32)">
16548             <summary>
16549             We have received the node shutdown packet for this node, we should remove it from our list of providers.
16550             </summary>
16551         </member>
16552         <member name="M:Microsoft.Build.BackEnd.NodeManager.AttemptCreateNode(Microsoft.Build.BackEnd.INodeProvider,Microsoft.Build.BackEnd.NodeConfiguration)">
16553             <summary>
16554             Attempts to create a node on the specified machine using the specified provider.
16555             </summary>
16556             <param name="nodeProvider">The provider used to create the node.</param>
16557             <param name="nodeConfiguration">The <see cref="T:Microsoft.Build.BackEnd.NodeConfiguration"/> to use.</param>
16558             <returns>The id of the node created.</returns>
16559         </member>
16560         <member name="T:Microsoft.Build.BackEnd.TaskHostNodeManager">
16561             <summary>
16562             The NodeManager class is responsible for marshalling data to/from the NodeProviders and organizing the 
16563             creation of new nodes on request.
16564             </summary>
16565         </member>
16566         <member name="F:Microsoft.Build.BackEnd.TaskHostNodeManager._outOfProcTaskHostNodeProvider">
16567             <summary>
16568             The node provider for task hosts. 
16569             </summary>
16570         </member>
16571         <member name="F:Microsoft.Build.BackEnd.TaskHostNodeManager._componentHost">
16572             <summary>
16573             The build component host.
16574             </summary>
16575         </member>
16576         <member name="F:Microsoft.Build.BackEnd.TaskHostNodeManager._componentShutdown">
16577             <summary>
16578             Tracks whether ShutdownComponent has been called.  
16579             </summary>
16580         </member>
16581         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.#ctor">
16582             <summary>
16583             Constructor.
16584             </summary>
16585         </member>
16586         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.CreateNode(Microsoft.Build.BackEnd.NodeConfiguration,Microsoft.Build.Execution.NodeAffinity)">
16587             <summary>
16588             Creates a node on an available NodeProvider, if any..
16589             </summary>
16590             <param name="configuration">The configuration to use for the remote node.</param>
16591             <param name="nodeAffinity">The <see cref="T:Microsoft.Build.Execution.NodeAffinity"/> to use.</param>
16592             <returns>A NodeInfo describing the node created, or null if none could be created.</returns>
16593         </member>
16594         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
16595             <summary>
16596             Sends data to the specified node.
16597             </summary>
16598             <param name="node">The node.</param>
16599             <param name="packet">The packet to send.</param>
16600         </member>
16601         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.ShutdownConnectedNodes(System.Boolean)">
16602             <summary>
16603             Shuts down all of the connected managed nodes.
16604             </summary>
16605             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
16606         </member>
16607         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.ShutdownAllNodes">
16608             <summary>
16609             Shuts down all of the managed nodes permanently.
16610             </summary>
16611         </member>
16612         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
16613             <summary>
16614             Initializes the component
16615             </summary>
16616             <param name="host">The component host</param>
16617         </member>
16618         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.ShutdownComponent">
16619             <summary>
16620             Shuts down the component.
16621             </summary>
16622         </member>
16623         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.ClearPerBuildState">
16624             <summary>
16625             Reset the state of objects in the node manager which need to be reset between builds.
16626             </summary>
16627         </member>
16628         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
16629             <summary>
16630             Registers the specified handler for a particular packet type.
16631             </summary>
16632             <param name="packetType">The packet type.</param>
16633             <param name="factory">The factory for packets of the specified type.</param>
16634             <param name="handler">The handler to be called when packets of the specified type are received.</param>
16635         </member>
16636         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
16637             <summary>
16638             Unregisters a packet handler.
16639             </summary>
16640             <param name="packetType">The packet type.</param>
16641         </member>
16642         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
16643             <summary>
16644             Takes a serializer, deserializes the packet and routes it to the appropriate handler.
16645             </summary>
16646             <param name="nodeId">The node from which the packet was received.</param>
16647             <param name="packetType">The packet type.</param>
16648             <param name="translator">The translator containing the data from which the packet should be reconstructed.</param>
16649         </member>
16650         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
16651             <summary>
16652             Routes the specified packet. This is called by the Inproc node directly since it does not have to do any deserialization
16653             </summary>
16654             <param name="nodeId">The node from which the packet was received.</param>
16655             <param name="packet">The packet to route.</param>
16656         </member>
16657         <member name="M:Microsoft.Build.BackEnd.TaskHostNodeManager.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
16658             <summary>
16659             Factory for component creation.
16660             </summary>
16661         </member>
16662         <member name="T:Microsoft.Build.BackEnd.LogMessagePacket">
16663             <summary>
16664             A packet to encapsulate a BuildEventArg logging message.
16665             Contents:
16666             Build Event Type
16667             Build Event Args
16668             </summary>
16669         </member>
16670         <member name="M:Microsoft.Build.BackEnd.LogMessagePacket.#ctor(System.Nullable{System.Collections.Generic.KeyValuePair{System.Int32,Microsoft.Build.Framework.BuildEventArgs}})">
16671             <summary>
16672             Encapsulates the buildEventArg in this packet.
16673             </summary>
16674         </member>
16675         <member name="M:Microsoft.Build.BackEnd.LogMessagePacket.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
16676             <summary>
16677             Constructor for deserialization
16678             </summary>
16679         </member>
16680         <member name="M:Microsoft.Build.BackEnd.LogMessagePacket.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
16681             <summary>
16682             Factory for serialization
16683             </summary>
16684         </member>
16685         <member name="M:Microsoft.Build.BackEnd.LogMessagePacket.TranslateTargetFinishedEvent(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Framework.TargetFinishedEventArgs)">
16686             <summary>
16687             Translate the TargetOutputs for the target finished event.
16688             </summary>
16689         </member>
16690         <member name="T:Microsoft.Build.BackEnd.NodeFailedToLaunchException">
16691             <summary>
16692             An exception representing the case where a TaskHost node failed to launch.
16693             This may happen for example when the TaskHost binary is corrupted.
16694             </summary>
16695             <remarks>
16696             If you add fields to this class, add a custom serialization constructor and override GetObjectData().
16697             </remarks>
16698         </member>
16699         <member name="M:Microsoft.Build.BackEnd.NodeFailedToLaunchException.#ctor">
16700             <summary>
16701             Constructs a standard NodeFailedToLaunchException.
16702             </summary>
16703         </member>
16704         <member name="M:Microsoft.Build.BackEnd.NodeFailedToLaunchException.#ctor(System.String,System.String)">
16705             <summary>
16706             Constructs a standard NodeFailedToLaunchException.
16707             </summary>
16708         </member>
16709         <member name="M:Microsoft.Build.BackEnd.NodeFailedToLaunchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
16710             <summary>
16711             Constructor for deserialization.
16712             </summary>
16713         </member>
16714         <member name="P:Microsoft.Build.BackEnd.NodeFailedToLaunchException.ErrorCode">
16715             <summary>
16716             Gets the error code (if any) associated with the exception message.
16717             </summary>
16718             <value>Error code string, or null.</value>
16719         </member>
16720         <member name="P:Microsoft.Build.BackEnd.NodeFailedToLaunchException.ErrorDescription">
16721             <summary>
16722             Gets the error code (if any) associated with the exception message.
16723             </summary>
16724             <value>Error code string, or null.</value>
16725         </member>
16726         <member name="M:Microsoft.Build.BackEnd.NodeFailedToLaunchException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
16727             <summary>
16728             ISerializable method which we must override since Exception implements this interface
16729             If we ever add new members to this class, we'll need to update this.
16730             </summary>
16731         </member>
16732         <member name="T:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse">
16733             <summary>
16734             This is the packet which is sent in response to a build configuration ID request.  When the node generates a new configuration which it has
16735             never seen before, it gives that configuration a temporary, "unresolved" configuration id.  The node then asks the Build Request Manager
16736             for the "resolved" configuration id, which is global to all nodes in the system.  This packet maps the unresolved to the resolved
16737             configuration id.  Once this packet is received, the node engine can then continue processing requests associated with the configuration.
16738             </summary>
16739         </member>
16740         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse._nodeConfigId">
16741             <summary>
16742             The configuration ID assigned by the node
16743             </summary>
16744         </member>
16745         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse._globalConfigId">
16746             <summary>
16747             The configuration ID assigned by the build manager.
16748             </summary>
16749         </member>
16750         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse._resultsNodeId">
16751             <summary>
16752             The results node assigned to this configuration
16753             </summary>
16754         </member>
16755         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.#ctor(System.Int32,System.Int32,System.Int32)">
16756             <summary>
16757             Constructor for non-deserialization initialization.
16758             </summary>
16759             <param name="nodeConfigId">The node-assigned configuration id</param>
16760             <param name="globalConfigId">The build manager-assigned configuration id</param>
16761             <param name="resultsNodeId">The result node identifier.</param>
16762         </member>
16763         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
16764             <summary>
16765             Constructor for deserialization
16766             </summary>
16767         </member>
16768         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.NodeConfigurationId">
16769             <summary>
16770             Returns the node-assigned configuration id
16771             </summary>
16772         </member>
16773         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.GlobalConfigurationId">
16774             <summary>
16775             Returns the build manager assigned configuration id
16776             </summary>
16777         </member>
16778         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.ResultsNodeId">
16779             <summary>
16780             Returns the results node for the global configuration.
16781             </summary>
16782         </member>
16783         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.Type">
16784             <summary>
16785             INodePacket property.  Returns the packet type.
16786             </summary>
16787         </member>
16788         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
16789             <summary>
16790             Reads/writes this packet
16791             </summary>
16792         </member>
16793         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
16794             <summary>
16795             Factory for serialization.
16796             </summary>
16797         </member>
16798         <member name="T:Microsoft.Build.BackEnd.BuildRequestEngine">
16799             <summary>
16800             The BuildRequestEngine is responsible for managing the building of projects on a given node.  It
16801             receives build requests, reports results and deals with BuildRequestConfiguration transactions.
16802             As it runs on its own thread, all BuildRequestEngine operations are asynchronous.
16803             </summary>
16804             <remarks>
16805             Internally, the BuildRequestEngine manages the requests in the form of BuildRequestEntry objects.
16806             Each of these maintains the complete state of a build request, accumulating results until completion.
16807             The EngineLoop method is the separate thread proc which handles state changes for BuildRequestEntries
16808             and shutting down.  However, each RequestBuilder can call back into the BuildRequestEngine (via events)
16809             to cause new requests to be submitted.  See <seealso cref="M:Microsoft.Build.BackEnd.BuildRequestEngine.IssueBuildRequest(Microsoft.Build.BackEnd.BuildRequestBlocker)"/>.
16810             </remarks>
16811         </member>
16812         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.StartingUnresolvedConfigId">
16813             <summary>
16814             The starting unresolved configuration id assigned by the engine.
16815             </summary>
16816         </member>
16817         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.StartingBuildRequestId">
16818             <summary>
16819             The starting build request id
16820             </summary>
16821         </member>
16822         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._status">
16823             <summary>
16824             The current engine status
16825             </summary>
16826         </member>
16827         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._componentHost">
16828             <summary>
16829             Ths component host
16830             </summary>
16831         </member>
16832         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._workQueue">
16833             <summary>
16834             The work queue.
16835             </summary>
16836         </member>
16837         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._requests">
16838             <summary>
16839             The list of current requests the engine is working on.
16840             </summary>
16841         </member>
16842         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._requestsByGlobalRequestId">
16843             <summary>
16844             Mapping of global request ids to the request entries.
16845             </summary>
16846         </member>
16847         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._unsubmittedRequests">
16848             <summary>
16849             The list of requests currently waiting to be submitted from RequestBuilders.
16850             </summary>
16851         </member>
16852         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._nextUnresolvedConfigurationId">
16853             <summary>
16854             The next available local unresolved configuration Id
16855             </summary>
16856         </member>
16857         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._nextBuildRequestId">
16858             <summary>
16859             The next available build request Id
16860             </summary>
16861         </member>
16862         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._configCache">
16863             <summary>
16864             The global configuration cache
16865             </summary>
16866         </member>
16867         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._unresolvedConfigurations">
16868             <summary>
16869             The list of unresolved configurations
16870             </summary>
16871         </member>
16872         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._nodeLoggingContext">
16873             <summary>
16874             The logging context for the node
16875             </summary>
16876         </member>
16877         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._debugDumpState">
16878             <summary>
16879             Flag indicating if we should trace.
16880             </summary>
16881         </member>
16882         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._debugDumpPath">
16883             <summary>
16884             The path where we will store debug files
16885             </summary>
16886         </member>
16887         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine._debugForceCaching">
16888             <summary>
16889             Forces caching of all configurations and results.
16890             </summary>
16891         </member>
16892         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.#ctor">
16893             <summary>
16894             Constructor
16895             </summary>
16896         </member>
16897         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnRequestComplete">
16898             <summary>
16899             Raised when a request has completed.
16900             </summary>
16901         </member>
16902         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnRequestResumed">
16903             <summary>
16904             Raised when a request is resumed by the engine itself.
16905             </summary>
16906         </member>
16907         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnRequestBlocked">
16908             <summary>
16909             Raised when a new request is generated.
16910             </summary>
16911         </member>
16912         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnStatusChanged">
16913             <summary>
16914             Raised when the engine's status has changed.
16915             </summary>
16916         </member>
16917         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnNewConfigurationRequest">
16918             <summary>
16919             Raised when a configuration needs its ID resolved.
16920             </summary>
16921         </member>
16922         <member name="E:Microsoft.Build.BackEnd.BuildRequestEngine.OnEngineException">
16923             <summary>
16924             Raised when an unexpected exception occurs.
16925             </summary>
16926         </member>
16927         <member name="P:Microsoft.Build.BackEnd.BuildRequestEngine.Status">
16928             <summary>
16929             Returns the current engine status.
16930             </summary>
16931         </member>
16932         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.InitializeForBuild(Microsoft.Build.BackEnd.Logging.NodeLoggingContext)">
16933             <summary>
16934             Prepares the build request engine to run a build.
16935             </summary>
16936             <param name="loggingContext">The logging context to use.</param>
16937             <remarks>
16938             Called by the Node.  Non-overlapping with other calls from the Node.</remarks>
16939         </member>
16940         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.CleanupForBuild">
16941             <summary>
16942             Cleans up after a build but leaves the engine thread running.  Aborts
16943             any outstanding requests.  Blocks until the engine has cleaned up
16944             everything.  After this method is called, InitializeForBuild may be
16945             called to start a new build, or the component may be shut down.        
16946             </summary>
16947             <remarks>
16948             Called by the Node.  Non-overlapping with other calls from the Node.
16949             </remarks>
16950         </member>
16951         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.SubmitBuildRequest(Microsoft.Build.BackEnd.BuildRequest)">
16952             <summary>
16953             Adds a new build request to the request queue.
16954             </summary>
16955             <param name="request">The request to be added.</param>
16956             <remarks>
16957             Called by the Node.  Non-overlapping with other calls from the Node.
16958             </remarks>
16959         </member>
16960         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.UnblockBuildRequest(Microsoft.Build.BackEnd.BuildRequestUnblocker)">
16961             <summary>
16962             Reports a build result to the engine, allowing it to satisfy outstanding requests.  This result
16963             is reported to each entry, allowing it the opportunity to determine for itself if the
16964             result applies.
16965             </summary>
16966             <param name="unblocker">Information needed to unblock the engine.</param>
16967             <remarks>
16968             Called by the Node.  Non-overlapping with other calls from the Node.
16969             </remarks>
16970         </member>
16971         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.ReportConfigurationResponse(Microsoft.Build.BackEnd.BuildRequestConfigurationResponse)">
16972             <summary>
16973             Reports a configuration response to the request, allowing it to satisfy outstanding requests.
16974             <seealso cref="T:Microsoft.Build.BackEnd.BuildRequestConfigurationResponse"/>
16975             </summary>
16976             <param name="response">The configuration response.</param>
16977             <remarks>
16978             Called by the Node.  Non-overlapping with other calls from the Node.
16979             </remarks>
16980         </member>
16981         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
16982             <summary>
16983             Sets the build component host for this object.
16984             </summary>
16985             <param name="host">The host.</param>
16986         </member>
16987         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.ShutdownComponent">
16988             <summary>
16989             Called to terminate the functions of this component
16990             </summary>
16991         </member>
16992         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
16993             <summary>
16994             Class factory for component creation.
16995             </summary>
16996         </member>
16997         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.BuildRequestEntry_StateChanged(Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.BuildRequestEntryState)">
16998             <summary>
16999             Called when a build request entry has a state change.  We should re-evaluate our requests when this happens.
17000             </summary>
17001             <param name="entry">The entry raising the event.</param>
17002             <param name="newState">The event's new state.</param>
17003         </member>
17004         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseRequestComplete(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
17005             <summary>
17006             Raises the OnRequestComplete event.
17007             </summary>
17008             <param name="request">The request which completed.</param>
17009             <param name="result">The result for the request</param>
17010         </member>
17011         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseRequestResumed(Microsoft.Build.BackEnd.BuildRequest)">
17012             <summary>
17013             Raises the OnRequestResumed event.
17014             </summary>
17015             <param name="request">The request being resumed.</param>
17016         </member>
17017         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseEngineException(System.Exception)">
17018             <summary>
17019             Raises the OnEngineException event.
17020             </summary>
17021             <param name="e">The exception being thrown.</param>
17022         </member>
17023         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseRequestBlocked(Microsoft.Build.BackEnd.BuildRequestBlocker)">
17024             <summary>
17025             Raises the OnNewRequest event.
17026             </summary>
17027             <param name="blocker">Information about what is blocking the current request.</param>
17028         </member>
17029         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseEngineStatusChanged(Microsoft.Build.BackEnd.BuildRequestEngineStatus)">
17030             <summary>
17031             Raises the OnStatusChanged event.
17032             </summary>
17033             <param name="newStatus">The new engine status.</param>
17034         </member>
17035         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.RaiseNewConfigurationRequest(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17036             <summary>
17037             Raises the OnNewConfigurationRequest event.
17038             </summary>
17039             <param name="config">The configuration which needs resolving.</param>
17040         </member>
17041         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.ChangeStatus(Microsoft.Build.BackEnd.BuildRequestEngineStatus)">
17042             <summary>
17043             Changes the engine's status and raises the OnStatsChanged event.
17044             </summary>
17045             <param name="newStatus">The new engine status.</param>
17046         </member>
17047         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.EvaluateRequestStates">
17048             <summary>
17049             This method examines the current list of requests to determine if any requests should change
17050             state, possibly reactivating a previously inactive request or removing a now-completed
17051             request from the list.
17052             </summary>
17053         </member>
17054         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.CheckMemoryUsage">
17055             <summary>
17056             Check the amount of memory we are using and, if we exceed the threshold, unload cacheable items.
17057             </summary>
17058             <remarks>
17059             Since this causes synchronous I/O and a stop-the-world GC, it can be very expensive. If
17060             something other than build results is taking up the bulk of the memory space, it may not
17061             free any space. That's caused customer reports of VS hangs resulting from build requests
17062             that are very slow because something in VS is taking all of the memory, but every
17063             project build is slowed down by this codepath. To mitigate this, don't perform these
17064             checks in devenv.exe. On the command line, 32-bit MSBuild may still need to cache build
17065             results on very large builds, but build results are much more likely to be the bulk of
17066             memory usage there.
17067             </remarks>
17068         </member>
17069         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.ActivateBuildRequest(Microsoft.Build.BackEnd.BuildRequestEntry)">
17070             <summary>
17071             Makes the specified build request entry the active one, loading the project if necessary.
17072             </summary>
17073             <param name="entry">The entry to activate.</param>
17074         </member>
17075         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.GetRequestBuilder">
17076             <summary>
17077             Returns an unused request builder if there are any, or creates a new one.
17078             </summary>
17079             <returns>An IRequestBuilder to use.</returns>
17080         </member>
17081         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.BeginDeactivateBuildRequest(Microsoft.Build.BackEnd.BuildRequestEntry)">
17082             <summary>
17083             Starts to terminate any builder associated with the entry and clean it up in preparation for removal.
17084             </summary>
17085             <param name="entry">The entry to be deactivated</param>
17086         </member>
17087         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.WaitForDeactivateCompletion(Microsoft.Build.BackEnd.BuildRequestEntry)">
17088             <summary>
17089             Waits for the builders until they are terminated.
17090             </summary>
17091             <param name="entry">The entry to be deactivated</param>
17092         </member>
17093         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.Builder_OnNewBuildRequests(Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[])">
17094             <summary>
17095             Raised when the active request needs to build new requests.
17096             </summary>
17097             <param name="sourceEntry">The request issuing the requests.</param>
17098             <param name="newRequests">The requests being issued.</param>
17099             <remarks>Called by the RequestBuilder (implicitly through an event).  Non-overlapping with other RequestBuilders.</remarks>
17100         </member>
17101         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.Builder_OnBlockedRequest(Microsoft.Build.BackEnd.BuildRequestEntry,System.Int32,System.String)">
17102             <summary>
17103             Called when the request builder needs to block on another request.
17104             </summary>
17105             <remarks>
17106             Called by the RequestBuilder (implicitly through an event).  Non-overlapping with other RequestBuilders.</remarks>
17107         </member>
17108         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.IssueUnsubmittedRequests">
17109             <summary>
17110             Dequeue some requests from the unsubmitted request queue and submit them.
17111             </summary>
17112         </member>
17113         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.IssueBuildRequests(Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[])">
17114             <summary>
17115             This method is responsible for evaluating whether we have enough information to make the request of the Build Manager,
17116             or if we need to obtain additional configuration information.  It then issues either configuration
17117             requests or build requests, or both as needed.
17118             </summary>
17119             <param name="issuingEntry">The BuildRequestEntry which is making the request</param>
17120             <param name="newRequests">The array of "child" build requests to be issued.</param>
17121             <remarks>
17122             When we receive a build request, we first have to determine if we already have a configuration which matches the
17123             one used by the request.  We do this because everywhere we deal with requests and results beyond this function, we
17124             use configuration ids, which are assigned once by the Build Manager and are global to the system.  If we do
17125             not have a global configuration id, we can't check to see if we already have build results for the request, so we 
17126             cannot send the request out.  Thus, first we determine the configuration id.
17127             
17128             Assuming we don't have the global configuration id locally, we will send the configuration to the Build Manager.
17129             It will look up or assign the global configuration id and send it back to us.
17130             
17131             Once we have the global configuration id, we can then look up results locally.  If we have enough results to fulfill
17132             the request, we give them back to the request, otherwise we have to forward the request to the Build Mangager
17133             for scheduling.
17134             </remarks>
17135         </member>
17136         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.GetNextUnresolvedConfigurationId">
17137             <summary>
17138             Retrieves a new configuration ID
17139             </summary>
17140             <returns>The next unused local configuration ID.</returns>
17141         </member>
17142         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.GetNextBuildRequestId">
17143             <summary>
17144             Retrieves a new build request ID
17145             </summary>
17146             <returns>The next build request ID.</returns>
17147         </member>
17148         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.IssueConfigurationRequest(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17149             <summary>
17150             This method forms a configuration request from an unresolved configuration and posts it to the
17151             Build Manager.
17152             </summary>
17153             <param name="config">The configuration to be mapped.</param>
17154         </member>
17155         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.IssueBuildRequest(Microsoft.Build.BackEnd.BuildRequestBlocker)">
17156             <summary>
17157             Sends a build request to the Build Manager for scheduling
17158             </summary>
17159             <param name="blocker">The information about why the request is blocked.</param>
17160         </member>
17161         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.QueueAction(System.Action,System.Boolean)">
17162             <summary>
17163             Queue an action to be run in the engine.
17164             </summary>
17165             <param name="action">The action to execute.</param>
17166             <param name="isLastTask"><code>true</code> if this is the last task for this queue, otherwise <code>false</code>.</param>
17167             <returns>True if the task was scheduled, false otherwise.</returns>
17168             <remarks>This method will return false if an attempt is made to schedule an action after the queue has been shut down.</remarks>
17169         </member>
17170         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.TraceEngine(System.String,System.Object[])">
17171             <summary>
17172             Method used for debugging purposes.
17173             </summary>
17174         </member>
17175         <member name="T:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests">
17176             <summary>
17177             Struct used to contain information about requests submitted by the RequestBuilder.
17178             </summary>
17179         </member>
17180         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.BlockingGlobalRequestId">
17181             <summary>
17182             The global request id on which we are blocking
17183             </summary>
17184         </member>
17185         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.BlockingTarget">
17186             <summary>
17187             The target on which we are blocking
17188             </summary>
17189         </member>
17190         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.SourceEntry">
17191             <summary>
17192             The issuing request
17193             </summary>
17194         </member>
17195         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.NewRequests">
17196             <summary>
17197             The new requests to issue
17198             </summary>
17199         </member>
17200         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.#ctor(Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[])">
17201             <summary>
17202             Create a new unsubmitted request entry
17203             </summary>
17204             <param name="sourceEntry">The build request originating these requests.</param>
17205             <param name="newRequests">The new requests to be issued.</param>
17206         </member>
17207         <member name="M:Microsoft.Build.BackEnd.BuildRequestEngine.PendingUnsubmittedBuildRequests.#ctor(Microsoft.Build.BackEnd.BuildRequestEntry,System.Int32,System.String)">
17208             <summary>
17209             Create a new unsubmitted request entry
17210             </summary>
17211             <param name="sourceEntry">The build request originating these requests.</param>
17212             <param name="blockingGlobalRequestId">The request on which we are blocked.</param>
17213             <param name="blockingTarget">The target on which we are blocked.</param>
17214         </member>
17215         <member name="T:Microsoft.Build.BackEnd.BuildRequestEntryStateChangedDelegate">
17216             <summary>
17217             Delegate is called when the state for a build request entry has changed.
17218             </summary>
17219             <param name="entry">The entry whose state has changed.</param>
17220             <param name="newState">The new state value.</param>
17221         </member>
17222         <member name="T:Microsoft.Build.BackEnd.BuildRequestEntryState">
17223             <summary>
17224             The set of states in which a build request entry can be.
17225             </summary>
17226         </member>
17227         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntryState.Active">
17228             <summary>
17229             There should only ever be one entry in the Active state.  This is the request which is
17230             being actively built by the engine - i.e. it has a running task thread.  All other requests
17231             must be in one of the other states.  When in this state, the outstandingRequest and
17232             receivedResult members must be null.
17233             
17234             Transitions: 
17235                 Waiting:  When an msbuild callback is made the active build request needs to wait
17236                           for the results in order to continue to process.
17237                 Complete: The build request has generated all of the required results.
17238             </summary>
17239         </member>
17240         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntryState.Ready">
17241             <summary>
17242             This state means the node has received all of the results needed to continue processing this
17243             request.  When this state is set, the receivedResult member of this entry must be non-null.  
17244             The request engine can continue it at some later point when it is no longer busy.
17245             Any number of entries may be in this state.
17246             
17247             Transitions:
17248                     Active: The build request engine picks this ready request to process.
17249             </summary>
17250         </member>
17251         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntryState.Waiting">
17252             <summary>
17253             This state means the node is waiting for results from outstanding build requests.  When this 
17254             state is set, the outstandingRequest or outstandingConfiguration members of the entry 
17255             must be non-null.
17256             
17257             Transitions: 
17258                       Ready: All of the results which caused the build request to wait have been received
17259             </summary>
17260         </member>
17261         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntryState.Complete">
17262             <summary>
17263             This state means the request has completed and results are available.  The engine will remove
17264             the request from the list and the results will be returned to the node for processing.
17265             
17266             Transitions: None, this is the final state of the build request
17267             </summary>
17268         </member>
17269         <member name="T:Microsoft.Build.BackEnd.BuildRequestEntry">
17270             <summary>
17271             BuildRequestEntry holds a build request and associated state data.
17272             </summary>
17273         </member>
17274         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._dataMonitor">
17275             <summary>
17276             A class used for thread synchronization
17277             </summary>
17278         </member>
17279         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._request">
17280             <summary>
17281             The request for this entry
17282             </summary>
17283         </member>
17284         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._requestConfiguration">
17285             <summary>
17286             The request configuration.
17287             </summary>
17288         </member>
17289         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._completedResult">
17290             <summary>
17291             The result of building this entry's request
17292             </summary>
17293         </member>
17294         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._unresolvedConfigurations">
17295             <summary>
17296             Mapping of Build Request Configurations to Build Requests waiting for configuration resolution.
17297             </summary>
17298         </member>
17299         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._requestsToIssue">
17300             <summary>
17301             The set of requests to issue.  This holds all of the requests as we prepare them.  Once their configurations
17302             have all been resolved, we will issue them to the Scheduler in the order received.
17303             </summary>
17304         </member>
17305         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._unresolvedConfigurationsToIssue">
17306             <summary>
17307             The list of unresolved configurations we need to issue.
17308             </summary>
17309         </member>
17310         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._outstandingRequests">
17311             <summary>
17312             Mapping of nodeRequestIDs to Build Requests waiting for results.
17313             </summary>
17314         </member>
17315         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._outstandingResults">
17316             <summary>
17317             Mapping of nodeRequestIDs to Build Results.
17318             </summary>
17319         </member>
17320         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._blockingGlobalRequestId">
17321             <summary>
17322             The ID of the request we are blocked waiting for.
17323             </summary>
17324         </member>
17325         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._state">
17326             <summary>
17327             The current state of this entry.
17328             </summary>
17329         </member>
17330         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._requestBuilder">
17331             <summary>
17332             The object used to build this request.
17333             </summary>
17334         </member>
17335         <member name="F:Microsoft.Build.BackEnd.BuildRequestEntry._projectRootDirectory">
17336             <summary>
17337             The project's root directory.
17338             </summary>
17339         </member>
17340         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.#ctor(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17341             <summary>
17342             Creates a build request entry from a build request.
17343             </summary>
17344             <param name="request">The originating build request.</param>
17345             <param name="requestConfiguration">The build request configuration.</param>
17346         </member>
17347         <member name="E:Microsoft.Build.BackEnd.BuildRequestEntry.OnStateChanged">
17348             <summary>
17349             Raised when the state changes.
17350             </summary>
17351         </member>
17352         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.GlobalLock">
17353             <summary>
17354             Returns the object used to lock for synchronization of long-running operations.
17355             </summary>
17356         </member>
17357         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.ProjectRootDirectory">
17358             <summary>
17359             Returns the root directory for the project being built by this request.
17360             </summary>
17361         </member>
17362         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.State">
17363             <summary>
17364             Returns the current state of the build request.
17365             </summary>
17366         </member>
17367         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.Request">
17368             <summary>
17369             Returns the request which originated this entry.
17370             </summary>
17371         </member>
17372         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.RequestConfiguration">
17373             <summary>
17374             Returns the build request configuration
17375             </summary>
17376         </member>
17377         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.Result">
17378             <summary>
17379             Returns the overall result for this request.
17380             </summary>
17381         </member>
17382         <member name="P:Microsoft.Build.BackEnd.BuildRequestEntry.Builder">
17383             <summary>
17384             Returns the request builder.
17385             </summary>
17386         </member>
17387         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.WaitForConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17388             <summary>
17389             Informs the entry that it has configurations which need to be resolved.
17390             </summary>
17391             <param name="configuration">The configuration to be resolved.</param>
17392         </member>
17393         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.WaitForResult(Microsoft.Build.BackEnd.BuildRequest)">
17394             <summary>
17395             Waits for a result from a request.
17396             </summary>
17397             <param name="newRequest">The build request</param>
17398         </member>
17399         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.WaitForBlockingRequest(System.Int32)">
17400             <summary>
17401             Signals that we are waiting for a specific blocking request to finish.
17402             </summary>
17403         </member>
17404         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.ResolveConfigurationRequest(System.Int32,System.Int32)">
17405             <summary>
17406             Waits for a result from a request which previously had an unresolved configuration.
17407             </summary>
17408             <param name="unresolvedConfigId">The id of the unresolved configuration.</param>
17409             <param name="configId">The id of the resolved configuration.</param>
17410             <returns>True if all unresolved configurations have been resolved, false otherwise.</returns>
17411         </member>
17412         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.GetRequestsToIssueIfReady">
17413             <summary>
17414             Returns the set of build requests which should be issued to the scheduler.
17415             </summary>
17416         </member>
17417         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.GetUnresolvedConfigurationsToIssue">
17418             <summary>
17419             Returns the list of unresolved configurations to issue.
17420             </summary>
17421         </member>
17422         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.GetActiveTargets">
17423             <summary>
17424             Returns the list of currently active targets.
17425             </summary>
17426         </member>
17427         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.ReportResult(Microsoft.Build.Execution.BuildResult)">
17428             <summary>
17429             This reports a result for a request on which this entry was waiting.
17430             PERF: Once we have fixed up all the result reporting, we can probably
17431             optimize this.  See the comment in BuildRequestEngine.ReportBuildResult.
17432             </summary>
17433             <param name="result">The result for the request.</param>
17434         </member>
17435         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.Unblock">
17436             <summary>
17437             Unblocks an entry which was waiting for a specific global request id.
17438             </summary>
17439         </member>
17440         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.Continue">
17441             <summary>
17442             Marks the entry as active and returns all of the results needed to continue.
17443             Results are returned as { nodeRequestId -> BuildResult }
17444             </summary>
17445             <returns>The results for all previously pending requests, or null if there were none.</returns>
17446         </member>
17447         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.BeginCancel">
17448             <summary>
17449             Starts to cancel the current request.
17450             </summary>
17451         </member>
17452         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.WaitForCancelCompletion">
17453             <summary>
17454             Waits for the current request until it's canceled.
17455             </summary>
17456         </member>
17457         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.Complete(Microsoft.Build.Execution.BuildResult)">
17458             <summary>
17459             Marks this entry as complete and sets the final results.
17460             </summary>
17461             <param name="result">The result of the build.</param>
17462         </member>
17463         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.WaitForResult(Microsoft.Build.BackEnd.BuildRequest,System.Boolean)">
17464             <summary>
17465             Adds a request to the set of waiting requests.
17466             </summary>
17467         </member>
17468         <member name="M:Microsoft.Build.BackEnd.BuildRequestEntry.ChangeState(Microsoft.Build.BackEnd.BuildRequestEntryState)">
17469             <summary>
17470             Updates the state of this entry.
17471             </summary>
17472             <param name="newState">The new state for this entry.</param>
17473         </member>
17474         <member name="T:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest">
17475             <summary>
17476             This class represents a build request as it would be received from an MSBuild callback.  Such requests have
17477             configurations which have not yet been assigned a global configuration ID, and therefore must be resolved
17478             with the build manager before a formal request can be sent.
17479             </summary>
17480             <remarks>
17481             This class is called "Fully Qualified" because it completely and directly specifies all of the configuration information.
17482             A standard Build Request only specifies the configuration id, so to get the configuration requires an additional lookup
17483             in a configuration cache.
17484             </remarks>
17485         </member>
17486         <member name="F:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest._requestConfiguration">
17487             <summary>
17488             The request's configuration.
17489             </summary>
17490         </member>
17491         <member name="F:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest._targets">
17492             <summary>
17493             The set of targets to build.
17494             </summary>
17495         </member>
17496         <member name="F:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest._resultsNeeded">
17497             <summary>
17498             Whether or not we need to wait for results before completing this request.
17499             </summary>
17500         </member>
17501         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.#ctor(Microsoft.Build.BackEnd.BuildRequestConfiguration,System.String[],System.Boolean)">
17502             <summary>
17503             Initializes a build request.
17504             </summary>
17505             <param name="config">The configuration to use for the request.</param>
17506             <param name="targets">The set of targets to build.</param>
17507             <param name="resultsNeeded">Whether or not to wait for the results of this request.</param>
17508         </member>
17509         <member name="P:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.Config">
17510             <summary>
17511             Returns the configuration for this request.
17512             </summary>
17513         </member>
17514         <member name="P:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.Targets">
17515             <summary>
17516             Returns the set of targets to be satisfied for this request.
17517             </summary>
17518         </member>
17519         <member name="P:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.ResultsNeeded">
17520             <summary>
17521             Returns true if this request must wait for its results in order to complete.
17522             </summary>
17523         </member>
17524         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.op_Equality(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest,Microsoft.Build.BackEnd.FullyQualifiedBuildRequest)">
17525             <summary>
17526             Implementation of the equality operator.
17527             </summary>
17528             <param name="left">The left hand argument</param>
17529             <param name="right">The right hand argument</param>
17530             <returns>True if the objects are equivalent, false otherwise.</returns>
17531         </member>
17532         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.op_Inequality(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest,Microsoft.Build.BackEnd.FullyQualifiedBuildRequest)">
17533             <summary>
17534             Implementation of the inequality operator.
17535             </summary>
17536             <param name="left">The left-hand argument</param>
17537             <param name="right">The right-hand argument</param>
17538             <returns>True if the objects are not equivalent, false otherwise.</returns>
17539         </member>
17540         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.GetHashCode">
17541             <summary>
17542             Returns the hashcode for this object.
17543             </summary>
17544             <returns>The hashcode</returns>
17545         </member>
17546         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.Equals(System.Object)">
17547             <summary>
17548             Determines equivalence between this object and another.
17549             </summary>
17550             <param name="obj">The object to which this one should be compared.</param>
17551             <returns>True if the objects are equivalent, false otherwise.</returns>
17552         </member>
17553         <member name="M:Microsoft.Build.BackEnd.FullyQualifiedBuildRequest.InternalEquals(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest)">
17554             <summary>
17555             Determines equivalence with another object of the same type.
17556             </summary>
17557             <param name="other">The other object with which to compare this one.</param>
17558             <returns>True if the objects are equivalent, false otherwise.</returns>
17559         </member>
17560         <member name="T:Microsoft.Build.BackEnd.ConfigCreateCallback">
17561             <summary>
17562             Delegate invoked to create a configuration
17563             </summary>
17564         </member>
17565         <member name="T:Microsoft.Build.BackEnd.IConfigCache">
17566             <summary>
17567             An interfacing representing a build request configuration cache.
17568             </summary>
17569         </member>
17570         <member name="P:Microsoft.Build.BackEnd.IConfigCache.Item(System.Int32)">
17571             <summary>
17572             Returns the configuration with the specified id.
17573             </summary>
17574             <param name="configId">The configuration id.</param>
17575             <returns>The configuration with the specified id.</returns>
17576         </member>
17577         <member name="M:Microsoft.Build.BackEnd.IConfigCache.AddConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17578             <summary>
17579             Adds the configuration to the cache.
17580             </summary>
17581             <param name="config">The configuration to add.</param>
17582         </member>
17583         <member name="M:Microsoft.Build.BackEnd.IConfigCache.RemoveConfiguration(System.Int32)">
17584             <summary>
17585             Removes the specified configuration from the cache.
17586             </summary>
17587             <param name="configId">The id of the configuration to remove.</param>
17588         </member>
17589         <member name="M:Microsoft.Build.BackEnd.IConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17590             <summary>
17591             Gets the cached configuration which matches the specified configuration
17592             </summary>
17593             <param name="config">The configuration to match.</param>
17594             <returns>The matching configuration if any, null otherwise.</returns>
17595         </member>
17596         <member name="M:Microsoft.Build.BackEnd.IConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.ConfigurationMetadata)">
17597             <summary>
17598             Gets the cached configuration which matches the specified configuration
17599             </summary>
17600             <param name="configMetadata">The configuration metadata to match.</param>
17601             <returns>The matching configuration if any, null otherwise.</returns>
17602         </member>
17603         <member name="M:Microsoft.Build.BackEnd.IConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.ConfigurationMetadata,Microsoft.Build.BackEnd.ConfigCreateCallback,System.Boolean)">
17604             <summary>
17605             Gets a matching configuration.  If no such configration exists, one is created and optionally loaded.
17606             </summary>
17607             <param name="configMetadata">The configuration metadata to match.</param>
17608             <param name="callback">Callback to be invoked if the configuration does not exist.</param>
17609             <param name="loadProject">True if the configuration should also be loaded.</param>
17610             <returns>The matching configuration if any, null otherwise.</returns>
17611         </member>
17612         <member name="M:Microsoft.Build.BackEnd.IConfigCache.HasConfiguration(System.Int32)">
17613             <summary>
17614             Returns true if a configuration with the specified id exists in the cache.
17615             </summary>
17616             <param name="configId">The configuration id to check.</param>
17617             <returns>
17618             True if there is a configuration with the specified id, false otherwise.
17619             </returns>
17620         </member>
17621         <member name="M:Microsoft.Build.BackEnd.IConfigCache.ClearConfigurations">
17622             <summary>
17623             Clears out the configurations
17624             </summary>
17625         </member>
17626         <member name="M:Microsoft.Build.BackEnd.IConfigCache.ClearNonExplicitlyLoadedConfigurations">
17627             <summary>
17628             Clear non explicltly loaded configurations. 
17629             </summary>
17630             <returns>The configuration ids which have been cleared.</returns>
17631         </member>
17632         <member name="M:Microsoft.Build.BackEnd.IConfigCache.IsConfigCacheSizeLargerThanThreshold">
17633             <summary>
17634             Check whether the config cache has more items that the predefined threshold
17635             </summary>
17636         </member>
17637         <member name="M:Microsoft.Build.BackEnd.IConfigCache.WriteConfigurationsToDisk">
17638             <summary>
17639             Unloads any configurations not in use.
17640             </summary>
17641             <returns>True if any configurations were cached, false otherwise.</returns>
17642         </member>
17643         <member name="T:Microsoft.Build.BackEnd.ResultsCache">
17644             <summary>
17645             Implementation of the results cache.
17646             </summary>
17647         </member>
17648         <member name="F:Microsoft.Build.BackEnd.ResultsCache._resultsByConfiguration">
17649             <summary>
17650             The table of all build results.  This table is indexed by configuration id and
17651             contains BuildResult objects which have all of the target information.
17652             </summary>
17653         </member>
17654         <member name="F:Microsoft.Build.BackEnd.ResultsCache._componentHost">
17655             <summary>
17656             The component host.
17657             </summary>
17658         </member>
17659         <member name="M:Microsoft.Build.BackEnd.ResultsCache.#ctor">
17660             <summary>
17661             Creates an empty results cache.
17662             </summary>
17663         </member>
17664         <member name="T:Microsoft.Build.BackEnd.ResultsCache.TargetClass">
17665             <summary>
17666             Enum for CheckResults helper function.
17667             </summary>
17668         </member>
17669         <member name="F:Microsoft.Build.BackEnd.ResultsCache.TargetClass.Explicit">
17670             <summary>
17671             Targets explicitly specified in the build request.
17672             </summary>
17673         </member>
17674         <member name="F:Microsoft.Build.BackEnd.ResultsCache.TargetClass.Initial">
17675             <summary>
17676             Targets which are declared as initial targets.
17677             </summary>
17678         </member>
17679         <member name="F:Microsoft.Build.BackEnd.ResultsCache.TargetClass.Default">
17680             <summary>
17681             Targets which are the default when no explicit targets are specified.
17682             </summary>
17683         </member>
17684         <member name="P:Microsoft.Build.BackEnd.ResultsCache.ResultsDictionary">
17685             <summary>
17686             Returns the internal cache for testing purposes.
17687             </summary>
17688         </member>
17689         <member name="M:Microsoft.Build.BackEnd.ResultsCache.AddResult(Microsoft.Build.Execution.BuildResult)">
17690             <summary>
17691             Adds the specified build result to the cache
17692             </summary>
17693             <param name="result">The result to add.</param>
17694         </member>
17695         <member name="M:Microsoft.Build.BackEnd.ResultsCache.ClearResults">
17696             <summary>
17697             Clears the results for the specified build.
17698             </summary>
17699         </member>
17700         <member name="M:Microsoft.Build.BackEnd.ResultsCache.GetResultForRequest(Microsoft.Build.BackEnd.BuildRequest)">
17701             <summary>
17702             Retrieves the results for the specified build request.
17703             </summary>
17704             <param name="request">The request for which results should be retrieved.</param>
17705             <returns>The build results for the specified request.</returns>
17706         </member>
17707         <member name="M:Microsoft.Build.BackEnd.ResultsCache.GetResultsForConfiguration(System.Int32)">
17708             <summary>
17709             Retrieves the results for the specified configuration
17710             </summary>
17711             <param name="configurationId">The configuration for which results should be returned.</param>
17712             <returns>The results, if any</returns>
17713         </member>
17714         <member name="M:Microsoft.Build.BackEnd.ResultsCache.SatisfyRequest(Microsoft.Build.BackEnd.BuildRequest,System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Boolean)">
17715             <summary>
17716             Attempts to satisfy the request from the cache.  The request can be satisfied only if:
17717             1. All specified targets in the request have successful results in the cache or if the sequence of target results
17718                includes 0 or more successful targets followed by at least one failed target.
17719             2. All initial targets in the configuration for the request have non-skipped results in the cache.
17720             3. If there are no specified targets, then all default targets in the request must have non-skipped results
17721                in the cache.
17722             </summary>
17723             <param name="request">The request whose results we should return</param>
17724             <param name="configInitialTargets">The initial targets for the request's configuration.</param>
17725             <param name="configDefaultTargets">The default targets for the request's configuration.</param>
17726             <param name="additionalTargetsToCheckForOverallResult">Any additional targets that need to be checked to determine overall 
17727             pass or failure, but that are not included as actual results. (E.g. AfterTargets of an entrypoint target)</param>
17728             <param name="skippedResultsAreOK">If false, a cached skipped target will cause this method to return "NotSatisfied".  
17729             If true, then as long as there is a result in the cache (regardless of whether it was skipped or not), this method 
17730             will return "Satisfied". In most cases this should be false, but it may be set to true in a situation where there is no 
17731             chance of re-execution (which is the usual response to missing / skipped targets), and the caller just needs the data.</param>
17732             <returns>A response indicating the results, if any, and the targets needing to be built, if any.</returns>
17733         </member>
17734         <member name="M:Microsoft.Build.BackEnd.ResultsCache.ClearResultsForConfiguration(System.Int32)">
17735             <summary>
17736             Removes the results for a particular configuration.
17737             </summary>
17738             <param name="configurationId">The configuration</param>
17739         </member>
17740         <member name="M:Microsoft.Build.BackEnd.ResultsCache.WriteResultsToDisk">
17741             <summary>
17742             Cache as many results as we can.
17743             </summary>
17744         </member>
17745         <member name="M:Microsoft.Build.BackEnd.ResultsCache.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
17746             <summary>
17747             Sets the build component host.
17748             </summary>
17749             <param name="host">The component host.</param>
17750         </member>
17751         <member name="M:Microsoft.Build.BackEnd.ResultsCache.ShutdownComponent">
17752             <summary>
17753             Shuts down this component
17754             </summary>
17755         </member>
17756         <member name="M:Microsoft.Build.BackEnd.ResultsCache.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
17757             <summary>
17758             Factory for component creation.
17759             </summary>
17760         </member>
17761         <member name="M:Microsoft.Build.BackEnd.ResultsCache.CheckResults(Microsoft.Build.Execution.BuildResult,System.Collections.Generic.List{System.String},Microsoft.Build.BackEnd.ResultsCache.TargetClass,System.Collections.Generic.HashSet{System.String},System.Boolean)">
17762             <summary>
17763             Looks for results for the specified targets.
17764             </summary>
17765             <param name="result">The result to examine</param>
17766             <param name="targets">The targets to search for</param>
17767             <param name="targetClass">The class of targets</param>
17768             <param name="targetsMissingResults">An optional list to be populated with missing targets</param>
17769             <param name="skippedResultsAreOK">If true, a status of "skipped" counts as having valid results 
17770             for that target.  Otherwise, a skipped target is treated as equivalent to a missing target.</param>
17771             <returns>False if there were missing results, true otherwise.</returns>
17772         </member>
17773         <member name="T:Microsoft.Build.BackEnd.ConfigCache">
17774             <summary>
17775             Implements a build request configuration cache.
17776             </summary>
17777         </member>
17778         <member name="F:Microsoft.Build.BackEnd.ConfigCache._configurations">
17779             <summary>
17780             The configurations
17781             </summary>
17782         </member>
17783         <member name="F:Microsoft.Build.BackEnd.ConfigCache._lockObject">
17784             <summary>
17785             Object used for locking.
17786             </summary>
17787         </member>
17788         <member name="F:Microsoft.Build.BackEnd.ConfigCache._configurationIdsByMetadata">
17789             <summary>
17790             Lookup which can be used to find a configuration with the specified metadata.
17791             </summary>
17792         </member>
17793         <member name="F:Microsoft.Build.BackEnd.ConfigCache._sweepThreshhold">
17794             <summary>
17795             The maximum cache entries allowed before a sweep can occur.
17796             </summary>
17797         </member>
17798         <member name="M:Microsoft.Build.BackEnd.ConfigCache.#ctor">
17799             <summary>
17800             Creates a new build configuration cache.
17801             </summary>
17802         </member>
17803         <member name="P:Microsoft.Build.BackEnd.ConfigCache.Item(System.Int32)">
17804             <summary>
17805             Returns the configuration cached under the specified configuration id.
17806             </summary>
17807             <param name="configId">The id of the configuration to return.</param>
17808             <returns>The cached configuration.</returns>
17809             <exception cref="T:System.Collections.Generic.KeyNotFoundException">Returned if a configuration with the specified id is not in the cache.</exception>
17810         </member>
17811         <member name="M:Microsoft.Build.BackEnd.ConfigCache.AddConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17812             <summary>
17813             Adds the specified configuration to the cache.
17814             </summary>
17815             <param name="config">The configuration to add.</param>
17816         </member>
17817         <member name="M:Microsoft.Build.BackEnd.ConfigCache.RemoveConfiguration(System.Int32)">
17818             <summary>
17819             Removes the specified configuration from the cache.
17820             </summary>
17821             <param name="configId">The id of the configuration to remove.</param>
17822         </member>
17823         <member name="M:Microsoft.Build.BackEnd.ConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17824             <summary>
17825             Returns the entry in the cache which matches the specified config.
17826             </summary>
17827             <param name="config">The configuration to match</param>
17828             <returns>A matching configuration if one exists, null otherwise.</returns>
17829         </member>
17830         <member name="M:Microsoft.Build.BackEnd.ConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.ConfigurationMetadata)">
17831             <summary>
17832             Returns the entry in the cache which matches the specified config.
17833             </summary>
17834             <param name="configMetadata">The configuration metadata to match</param>
17835             <returns>A matching configuration if one exists, null otherwise.</returns>
17836         </member>
17837         <member name="M:Microsoft.Build.BackEnd.ConfigCache.GetMatchingConfiguration(Microsoft.Build.BackEnd.ConfigurationMetadata,Microsoft.Build.BackEnd.ConfigCreateCallback,System.Boolean)">
17838             <summary>
17839             Gets a matching configuration.  If no such configuration exists, one is created and optionally loaded.
17840             </summary>
17841         </member>
17842         <member name="M:Microsoft.Build.BackEnd.ConfigCache.HasConfiguration(System.Int32)">
17843             <summary>
17844             Returns true if the cache contains a configuration with the specified id, false otherwise.
17845             </summary>
17846             <param name="configId">The configuration id to check.</param>
17847             <returns>True if the cache contains a configuration with this id, false otherwise.</returns>
17848         </member>
17849         <member name="M:Microsoft.Build.BackEnd.ConfigCache.ClearConfigurations">
17850             <summary>
17851             Clear all configurations
17852             </summary>
17853         </member>
17854         <member name="M:Microsoft.Build.BackEnd.ConfigCache.ClearNonExplicitlyLoadedConfigurations">
17855             <summary>
17856             Clears configurations from the configuration cache which have not been explicitly loaded.
17857             </summary>
17858             <returns>Set if configurations which have been cleared.</returns>
17859         </member>
17860         <member name="M:Microsoft.Build.BackEnd.ConfigCache.IsConfigCacheSizeLargerThanThreshold">
17861             <summary>
17862             Check whether the config cache has more items that the predefined threshold
17863             </summary>
17864         </member>
17865         <member name="M:Microsoft.Build.BackEnd.ConfigCache.WriteConfigurationsToDisk">
17866             <summary>
17867             Writes out as many configurations to disk as we can, under the assumption that inactive configurations
17868             probably aren't going to be accessed again (the exception is re-entrant builds) and we want to make as much
17869             space as possible now for future projects to load.
17870             </summary>
17871             <returns>True if any configurations were cached, false otherwise.</returns>
17872         </member>
17873         <member name="M:Microsoft.Build.BackEnd.ConfigCache.GetEnumerator">
17874             <summary>
17875             Gets the enumerator over the configurations in the cache.
17876             </summary>
17877         </member>
17878         <member name="M:Microsoft.Build.BackEnd.ConfigCache.System#Collections#IEnumerable#GetEnumerator">
17879             <summary>
17880             Gets the enumerator over the configurations in the cache.
17881             </summary>
17882         </member>
17883         <member name="M:Microsoft.Build.BackEnd.ConfigCache.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
17884             <summary>
17885             Sets the component host.
17886             </summary>
17887             <param name="host">The build component host.</param>
17888         </member>
17889         <member name="M:Microsoft.Build.BackEnd.ConfigCache.ShutdownComponent">
17890             <summary>
17891             Shuts down this component
17892             </summary>
17893         </member>
17894         <member name="M:Microsoft.Build.BackEnd.ConfigCache.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
17895             <summary>
17896             Factory for component creation.
17897             </summary>
17898         </member>
17899         <member name="M:Microsoft.Build.BackEnd.ConfigCache.GetKeyForConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
17900             <summary>
17901             Override which determines the key for entry into the collection from the specified build request configuration.
17902             </summary>
17903             <param name="config">The build request configuration.</param>
17904             <returns>The configuration id.</returns>
17905         </member>
17906         <member name="T:Microsoft.Build.BackEnd.IPropertyCache">
17907             <summary>
17908             Represents a cache for build properties
17909             </summary>
17910         </member>
17911         <member name="T:Microsoft.Build.BackEnd.IResultsCache">
17912             <summary>
17913             This interface represents an object which holds build results.
17914             </summary>
17915         </member>
17916         <member name="M:Microsoft.Build.BackEnd.IResultsCache.AddResult(Microsoft.Build.Execution.BuildResult)">
17917             <summary>
17918             Adds a result to the cache
17919             </summary>
17920             <param name="result">The result to add.</param>
17921         </member>
17922         <member name="M:Microsoft.Build.BackEnd.IResultsCache.ClearResults">
17923             <summary>
17924             Deletes all results from the cache for the specified build.
17925             </summary>
17926         </member>
17927         <member name="M:Microsoft.Build.BackEnd.IResultsCache.GetResultForRequest(Microsoft.Build.BackEnd.BuildRequest)">
17928             <summary>
17929             Retrieves a BuildResult for the specified matching BuildRequest.
17930             </summary>
17931             <param name="request">The request for which the result should be returned.</param>
17932             <returns>A BuildResult if there is a matching one in the cache, otherwise null.</returns>
17933         </member>
17934         <member name="M:Microsoft.Build.BackEnd.IResultsCache.GetResultsForConfiguration(System.Int32)">
17935             <summary>
17936             Retrieves a BuildResult for the specified configuration.
17937             </summary>
17938             <param name="configurationId">The configuration for which results should be returned.</param>
17939             <returns>A BuildResult if there is a matching one in the cache, otherwise null.</returns>
17940         </member>
17941         <member name="M:Microsoft.Build.BackEnd.IResultsCache.SatisfyRequest(Microsoft.Build.BackEnd.BuildRequest,System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String},System.Boolean)">
17942             <summary>
17943             Attempts to satisfy the request from the cache.  The request can be satisfied only if:
17944             1. All specified targets in the request have non-skipped results in the cache.
17945             2. All initial targets in the configuration for the request have non-skipped results in the cache.
17946             3. If there are no specified targets, then all default targets in the request must have non-skipped results
17947                in the cache.
17948             </summary>
17949             <param name="request">The request whose results we should return</param>
17950             <param name="configInitialTargets">The initial targets for the request's configuration.</param>
17951             <param name="configDefaultTargets">The default targets for the request's configuration.</param>
17952             <param name="additionalTargetsToCheckForOverallResult">Any additional targets that need to be checked to determine overall 
17953             pass or failure, but that are not included as actual results. (E.g. AfterTargets of an entrypoint target)</param>
17954             <param name="skippedResultsAreOK">If false, a cached skipped target will cause this method to return "NotSatisfied".  
17955             If true, then as long as there is a result in the cache (regardless of whether it was skipped or not), this method 
17956             will return "Satisfied". In most cases this should be false, but it may be set to true in a situation where there is no 
17957             chance of re-execution (which is the usual response to missing / skipped targets), and the caller just needs the data.</param>
17958             <returns>A response indicating the results, if any, and the targets needing to be built, if any.</returns>
17959         </member>
17960         <member name="M:Microsoft.Build.BackEnd.IResultsCache.ClearResultsForConfiguration(System.Int32)">
17961             <summary>
17962             Clears the results for a specific configuration.
17963             </summary>
17964             <param name="configurationId">The configuration id.</param>
17965         </member>
17966         <member name="M:Microsoft.Build.BackEnd.IResultsCache.WriteResultsToDisk">
17967             <summary>
17968             Caches results to disk if possible.
17969             </summary>
17970         </member>
17971         <member name="T:Microsoft.Build.BackEnd.NodePacketTranslatorExtensions">
17972             <summary>
17973             This class is responsible for serializing and deserializing anything that is not 
17974             officially supported by INodePacketTranslator, but that we still want to do 
17975             custom translation of.  
17976             </summary>
17977         </member>
17978         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslatorExtensions.TranslateProjectPropertyInstanceDictionary(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance}@)">
17979             <summary>
17980             Translates a PropertyDictionary of ProjectPropertyInstances.
17981             </summary>
17982             <param name="translator">The tranlator doing the translating</param>
17983             <param name="value">The dictionary to translate.</param>
17984         </member>
17985         <member name="M:Microsoft.Build.BackEnd.NodePacketTranslatorExtensions.FactoryForDeserializingTypeWithName``1(Microsoft.Build.BackEnd.INodePacketTranslator)">
17986             <summary>
17987             Deserialize a type or a subtype by its full name. The type must implement ITranslateable
17988             </summary>
17989             <typeparam name="T">Top level type. Serialized types can be of this type, or subtypes</typeparam>
17990             <returns></returns>
17991         </member>
17992         <member name="T:Microsoft.Build.BackEnd.NodeProviderOutOfProc">
17993             <summary>
17994             The provider for out-of-proc nodes.  This manages the lifetime of external MSBuild.exe processes
17995             which act as child nodes for the build system.
17996             </summary>
17997         </member>
17998         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProc._nodeContexts">
17999             <summary>
18000             A mapping of all the nodes managed by this provider.
18001             </summary>
18002         </member>
18003         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.#ctor">
18004             <summary>
18005             Constructor.
18006             </summary>
18007         </member>
18008         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProc.ProviderType">
18009             <summary>
18010             Returns the node provider type.
18011             </summary>
18012         </member>
18013         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProc.AvailableNodes">
18014             <summary>
18015             Returns the number of available nodes.
18016             </summary>
18017         </member>
18018         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.GetHostHandshake(System.Boolean)">
18019             <summary>
18020             Magic number sent by the host to the client during the handshake.
18021             Derived from the binary timestamp to avoid mixing binary versions,
18022             Is64BitProcess to avoid mixing bitness, and enableNodeReuse to
18023             ensure that a /nr:false build doesn't reuse clients left over from
18024             a prior /nr:true build.
18025             </summary>
18026             <param name="enableNodeReuse">Is reuse of build nodes allowed?</param>
18027         </member>
18028         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.GetClientHandshake">
18029             <summary>
18030             Magic number sent by the client to the host during the handshake.
18031             Munged version of the host handshake.
18032             </summary>
18033         </member>
18034         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.CreateNode(System.Int32,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.NodeConfiguration)">
18035             <summary>
18036             Instantiates a new MSBuild process acting as a child node.
18037             </summary>
18038         </member>
18039         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
18040             <summary>
18041             Sends data to the specified node.
18042             </summary>
18043             <param name="nodeId">The node to which data shall be sent.</param>
18044             <param name="packet">The packet to send.</param>
18045         </member>
18046         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.ShutdownConnectedNodes(System.Boolean)">
18047             <summary>
18048             Shuts down all of the connected managed nodes.
18049             </summary>
18050             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
18051         </member>
18052         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.ShutdownAllNodes">
18053             <summary>
18054             Shuts down all of the managed nodes permanently.
18055             </summary>
18056         </member>
18057         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
18058             <summary>
18059             Initializes the component.
18060             </summary>
18061             <param name="host">The component host.</param>
18062         </member>
18063         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.ShutdownComponent">
18064             <summary>
18065             Shuts down the component
18066             </summary>
18067         </member>
18068         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
18069             <summary>
18070             Static factory for component creation.
18071             </summary>
18072         </member>
18073         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProc.NodeContextTerminated(System.Int32)">
18074             <summary>
18075             Method called when a context terminates.
18076             </summary>
18077         </member>
18078         <member name="T:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase">
18079             <summary>
18080             Contains the shared pieces of code from NodeProviderOutOfProc
18081             and NodeProviderOutOfProcTaskHost.
18082             </summary>
18083         </member>
18084         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.MaxPacketWriteSize">
18085             <summary>
18086             The maximum number of bytes to write 
18087             </summary>
18088         </member>
18089         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeCreationRetries">
18090             <summary>
18091             The number of times to retry creating an out-of-proc node.
18092             </summary>
18093         </member>
18094         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.TimeoutForNewNodeCreation">
18095             <summary>
18096             The amount of time to wait for an out-of-proc node to spool up before we give up.
18097             </summary>
18098         </member>
18099         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase._componentHost">
18100             <summary>
18101             The build component host.
18102             </summary>
18103         </member>
18104         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase._processesToIgnore">
18105             <summary>
18106             Keeps track of the processes we've already checked for nodes so we don't check them again.
18107             </summary>
18108         </member>
18109         <member name="T:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContextTerminateDelegate">
18110             <summary>
18111             Delegate used to tell the node provider that a context has terminated.
18112             </summary>
18113             <param name="nodeId">The id of the node which terminated.</param>
18114         </member>
18115         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.ComponentHost">
18116             <summary>
18117             The build component host. 
18118             </summary>
18119         </member>
18120         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.SendData(Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext,Microsoft.Build.BackEnd.INodePacket)">
18121             <summary>
18122             Sends data to the specified node.
18123             </summary>
18124             <param name="context">The node to which data shall be sent.</param>
18125             <param name="packet">The packet to send.</param>
18126         </member>
18127         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.ShutdownConnectedNodes(System.Collections.Generic.List{Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext},System.Boolean)">
18128             <summary>
18129             Shuts down all of the connected managed nodes.
18130             </summary>
18131             <param name="contextsToShutDown">List of the contexts to be shut down</param>
18132             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
18133         </member>
18134         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.ShutdownAllNodes(System.Int64,System.Int64,Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContextTerminateDelegate)">
18135             <summary>
18136             Shuts down all of the managed nodes permanently.
18137             </summary>
18138             <param name="hostHandshake">host handshake key</param>
18139             <param name="clientHandshake">client handshake key</param>
18140             <param name="terminateNode">Delegate used to tell the node provider that a context has terminated</param>
18141         </member>
18142         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.GetNode(System.String,System.String,System.Int32,Microsoft.Build.BackEnd.INodePacketFactory,System.Int64,System.Int64,Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContextTerminateDelegate)">
18143             <summary>
18144             Finds or creates a child process which can act as a node.
18145             </summary>
18146             <returns>The pipe stream representing the node.</returns>
18147         </member>
18148         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.GetProcessesToIgnoreKey(System.Int64,System.Int64,System.Int32)">
18149             <summary>
18150             Generate a string from task host context and the remote process to be used as key to lookup processes we have already
18151             attempted to connect to or are already connected to
18152             </summary>
18153         </member>
18154         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.TryConnectToProcess(System.Int32,System.Int32,System.Int64,System.Int64)">
18155             <summary>
18156             Attempts to connect to the specified process.
18157             </summary>
18158         </member>
18159         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.LaunchNode(System.String,System.String)">
18160             <summary>
18161             Creates a new MSBuild process
18162             </summary>
18163         </member>
18164         <member name="T:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext">
18165             <summary>
18166             Class which wraps up the communications infrastructure for a given node.
18167             </summary>
18168         </member>
18169         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.s_trace">
18170             <summary>
18171             Whether to trace communications.
18172             Stored here as a field to avoid a function call when writing packets
18173             </summary>
18174         </member>
18175         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._packetFactory">
18176             <summary>
18177             The factory used to create packets from data read off the pipe.
18178             </summary>
18179         </member>
18180         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._nodeId">
18181             <summary>
18182             The node id assigned by the node provider.
18183             </summary>
18184         </member>
18185         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._processId">
18186             <summary>
18187             The process id
18188             </summary>
18189         </member>
18190         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._headerByte">
18191             <summary>
18192             An array used to store the header byte for each packet when read.
18193             </summary>
18194         </member>
18195         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._smallReadBuffer">
18196             <summary>
18197             A buffer typically big enough to handle a packet body.
18198             </summary>
18199         </member>
18200         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._nodeTerminated">
18201             <summary>
18202             Event indicating the node has terminated.
18203             </summary>
18204         </member>
18205         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._terminateDelegate">
18206             <summary>
18207             Delegate called when the context terminates.
18208             </summary>
18209         </member>
18210         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext._sharedReadBuffer">
18211             <summary>
18212             Per node read buffers
18213             </summary>
18214         </member>
18215         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.#ctor(System.Int32,System.Int32,System.IO.Stream,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContextTerminateDelegate)">
18216             <summary>
18217             Constructor.
18218             </summary>
18219         </member>
18220         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.BeginAsyncPacketRead">
18221             <summary>
18222             Starts a new asynchronous read operation for this node.
18223             </summary>
18224         </member>
18225         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.SendData(Microsoft.Build.BackEnd.INodePacket)">
18226             <summary>
18227             Sends the specified packet to this node.
18228             </summary>
18229             <param name="packet">The packet to send.</param>
18230         </member>
18231         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.Close">
18232             <summary>
18233             Closes the node's context, disconnecting it from the node.
18234             </summary>
18235         </member>
18236         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.PacketWriteComplete(System.IAsyncResult)">
18237             <summary>
18238             Completes the asynchronous packet write to the node.
18239             </summary>
18240         </member>
18241         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.HeaderReadComplete(System.IAsyncResult)">
18242             <summary>
18243             Callback invoked by the completion of a read of a header byte on one of the named pipes.
18244             </summary>
18245         </member>
18246         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcBase.NodeContext.BodyReadComplete(System.IAsyncResult)">
18247             <summary>
18248             Method called when the body of a packet has been read.
18249             </summary>
18250         </member>
18251         <member name="T:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost">
18252             <summary>
18253             The provider for out-of-proc nodes.  This manages the lifetime of external MSBuild.exe processes
18254             which act as child nodes for the build system.
18255             </summary>
18256         </member>
18257         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.MaxNodeCount">
18258             <summary>
18259             The maximum number of nodes that this provider supports. Should 
18260             always be equivalent to the number of different TaskHostContexts 
18261             that exist. 
18262             </summary>
18263         </member>
18264         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_baseTaskHostPath">
18265             <summary>
18266             Store the path for MSBuild / MSBuildTaskHost so that we don't have to keep recalculating it. 
18267             </summary>
18268         </member>
18269         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_baseTaskHostPath64">
18270             <summary>
18271             Store the 64-bit path for MSBuild / MSBuildTaskHost so that we don't have to keep recalculating it. 
18272             </summary>
18273         </member>
18274         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_pathToX32Clr2">
18275             <summary>
18276             Store the path for the 32-bit MSBuildTaskHost so that we don't have to keep re-calculating it. 
18277             </summary>
18278         </member>
18279         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_pathToX64Clr2">
18280             <summary>
18281             Store the path for the 64-bit MSBuildTaskHost so that we don't have to keep re-calculating it. 
18282             </summary>
18283         </member>
18284         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_pathToX32Clr4">
18285             <summary>
18286             Store the path for the 32-bit MSBuild so that we don't have to keep re-calculating it. 
18287             </summary>
18288         </member>
18289         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_pathToX64Clr4">
18290             <summary>
18291             Store the path for the 64-bit MSBuild so that we don't have to keep re-calculating it. 
18292             </summary>
18293         </member>
18294         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_msbuildName">
18295             <summary>
18296             Name for MSBuild.exe
18297             </summary>
18298         </member>
18299         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.s_msbuildTaskHostName">
18300             <summary>
18301             Name for MSBuildTaskHost.exe
18302             </summary>
18303         </member>
18304         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._noNodesActiveEvent">
18305             <summary>
18306             Are there any active nodes? 
18307             </summary>
18308         </member>
18309         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._nodeContexts">
18310             <summary>
18311             A mapping of all the nodes managed by this provider.
18312             </summary>
18313         </member>
18314         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._nodeIdToPacketFactory">
18315             <summary>
18316             A mapping of all of the INodePacketFactories wrapped by this provider. 
18317             </summary>
18318         </member>
18319         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._nodeIdToPacketHandler">
18320             <summary>
18321             A mapping of all of the INodePacketHandlers wrapped by this provider. 
18322             </summary>
18323         </member>
18324         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._activeNodes">
18325             <summary>
18326             Keeps track of the set of nodes for which we have not yet received shutdown notification.
18327             </summary>
18328         </member>
18329         <member name="F:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost._localPacketFactory">
18330             <summary>
18331             Packet factory we use if there's not already one associated with a particular context. 
18332             </summary>
18333         </member>
18334         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.#ctor">
18335             <summary>
18336             Constructor.
18337             </summary>
18338         </member>
18339         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.ProviderType">
18340             <summary>
18341             Returns the node provider type.
18342             </summary>
18343         </member>
18344         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.AvailableNodes">
18345             <summary>
18346             Returns the number of available nodes.
18347             </summary>
18348         </member>
18349         <member name="P:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.TaskHostNameForClr2TaskHost">
18350             <summary>
18351             Returns the name of the CLR2 Task Host executable
18352             </summary>
18353         </member>
18354         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.CreateNode(System.Int32,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.NodeConfiguration)">
18355             <summary>
18356             Instantiates a new MSBuild process acting as a child node.
18357             </summary>
18358         </member>
18359         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
18360             <summary>
18361             Sends data to the specified node.
18362             </summary>
18363             <param name="nodeId">The node to which data shall be sent.</param>
18364             <param name="packet">The packet to send.</param>
18365         </member>
18366         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.SendData(Microsoft.Build.Internal.TaskHostContext,Microsoft.Build.BackEnd.INodePacket)">
18367             <summary>
18368             Sends data to the specified node.
18369             </summary>
18370             <param name="hostContext">The node to which data shall be sent.</param>
18371             <param name="packet">The packet to send.</param>
18372         </member>
18373         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.ShutdownConnectedNodes(System.Boolean)">
18374             <summary>
18375             Shuts down all of the connected managed nodes.
18376             </summary>
18377             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
18378         </member>
18379         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.ShutdownAllNodes">
18380             <summary>
18381             Shuts down all of the managed nodes permanently.
18382             </summary>
18383         </member>
18384         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
18385             <summary>
18386             Initializes the component.
18387             </summary>
18388             <param name="host">The component host.</param>
18389         </member>
18390         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.ShutdownComponent">
18391             <summary>
18392             Shuts down the component
18393             </summary>
18394         </member>
18395         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
18396             <summary>
18397             Registers the specified handler for a particular packet type.
18398             </summary>
18399             <param name="packetType">The packet type.</param>
18400             <param name="factory">The factory for packets of the specified type.</param>
18401             <param name="handler">The handler to be called when packets of the specified type are received.</param>
18402         </member>
18403         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
18404             <summary>
18405             Unregisters a packet handler.
18406             </summary>
18407             <param name="packetType">The packet type.</param>
18408         </member>
18409         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
18410             <summary>
18411             Takes a serializer, deserializes the packet and routes it to the appropriate handler.
18412             </summary>
18413             <param name="nodeId">The node from which the packet was received.</param>
18414             <param name="packetType">The packet type.</param>
18415             <param name="translator">The translator containing the data from which the packet should be reconstructed.</param>
18416         </member>
18417         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
18418             <summary>
18419             Routes the specified packet
18420             </summary>
18421             <param name="nodeId">The node from which the packet was received.</param>
18422             <param name="packet">The packet to route.</param>
18423         </member>
18424         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
18425             <summary>
18426             This method is invoked by the NodePacketRouter when a packet is received and is intended for
18427             this recipient.
18428             </summary>
18429             <param name="node">The node from which the packet was received.</param>
18430             <param name="packet">The packet.</param>
18431         </member>
18432         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
18433             <summary>
18434             Static factory for component creation.
18435             </summary>
18436         </member>
18437         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.ClearCachedTaskHostPaths">
18438             <summary>
18439             Clears out our cached values for the various task host names and paths. 
18440             FOR UNIT TESTING ONLY
18441             </summary>
18442         </member>
18443         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.GetTaskHostNameFromHostContext(Microsoft.Build.Internal.TaskHostContext)">
18444             <summary>
18445             Given a TaskHostContext, returns the name of the executable we should be searching for. 
18446             </summary>
18447         </member>
18448         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.GetMSBuildLocationFromHostContext(Microsoft.Build.Internal.TaskHostContext)">
18449             <summary>
18450             Given a TaskHostContext, return the appropriate location of the 
18451             executable (MSBuild or MSBuildTaskHost) that we wish to use, or null
18452             if that location cannot be resolved.  
18453             </summary>
18454         </member>
18455         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.AcquireAndSetUpHost(Microsoft.Build.Internal.TaskHostContext,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.INodePacketHandler,Microsoft.Build.BackEnd.TaskHostConfiguration)">
18456             <summary>
18457             Make sure a node in the requested context exists.  
18458             </summary>
18459         </member>
18460         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.DisconnectFromHost(Microsoft.Build.Internal.TaskHostContext)">
18461             <summary>
18462             Expected to be called when TaskHostTask is done with host of the given context.  
18463             </summary>
18464         </member>
18465         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.CreateNode(Microsoft.Build.Internal.TaskHostContext,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.INodePacketHandler,Microsoft.Build.BackEnd.TaskHostConfiguration)">
18466             <summary>
18467             Instantiates a new MSBuild or MSBuildTaskHost process acting as a child node.
18468             </summary>
18469         </member>
18470         <member name="M:Microsoft.Build.BackEnd.NodeProviderOutOfProcTaskHost.NodeContextTerminated(System.Int32)">
18471             <summary>
18472             Method called when a context terminates.
18473             </summary>
18474         </member>
18475         <member name="T:Microsoft.Build.BackEnd.BatchingEngine">
18476             <summary>
18477             This class is used by objects in the build engine that have the ability to execute themselves in batches, to partition the
18478             items they consume into "buckets", based on the values of select item metadata.
18479             </summary>
18480             <remarks>
18481             What batching does
18482             
18483             Batching partitions the items consumed by the batchable object into buckets, where each bucket 
18484             contains a set of items that have the same value set on all item metadata consumed by the object. 
18485             Metadata consumed may be unqualified, for example %(m), or qualified by the item list to which it 
18486             refers, for example %(a.m).
18487             
18488             If metadata is qualified, for example %(a.m), then this is considered distinct to metadata with the 
18489             same name on a different item type. For example, %(a.m) is distinct to %(b.m), and items of type â€˜b’ 
18490             are considered to always have a blank value for %(a.m). This means items of type â€˜b’ will only be 
18491             placed in buckets where %(a.m) is blank. However %(a.m) is equivalent to %(m) on items of type â€˜a’.
18492             
18493             There is an extra ambiguity rule: every items consumed by the object must have an explicit value for 
18494             every piece of unqualified metadata. For example, if @(a), %(m), and %(a.n) are consumed, every item 
18495             of type â€˜a’ must have a value for the metadata â€˜m’ but need not all necessarily have a value for the 
18496             metadata â€˜n’. This rule eliminates ambiguity about whether items that do not define values for an 
18497             unqualified metadata should go in all buckets, or just into buckets with a blank value for 
18498             that metadata.
18499             
18500             For example 
18501             
18502             <ItemGroup>
18503             <a Include='a1;a2'>
18504               <n>m0</n>
18505             </a>
18506             <a Include='a3'>
18507               <n>m1</n>
18508             </a>
18509             <b Include='b1'>
18510               <n>n0</n>
18511             </b>
18512             <b Include='b2;b3'>
18513               <n>n1</n>
18514             </b>
18515             <b Include='b4'/>
18516             </ItemGroup>
18517             
18518             <Target Name="t" >
18519               <Message Text="a={@(a).%(a.n)} b={@(b).%(b.n)}" />
18520             </Target>
18521             
18522             Will produce 5 buckets: 
18523             
18524             a={a1;a2.m0} b={.}
18525             a={a3.m1} b={.}
18526             a={.} b={b1.n0}
18527             a={.} b={b2;b3.n1}
18528             a={.} b={b4.}
18529             
18530             </remarks>
18531         </member>
18532         <member name="M:Microsoft.Build.BackEnd.BatchingEngine.PrepareBatchingBuckets(System.Collections.Generic.List{System.String},Microsoft.Build.BackEnd.Lookup,Microsoft.Build.Construction.ElementLocation)">
18533             <summary>
18534             Determines how many times the batchable object needs to be executed (each execution is termed a "batch"), and prepares
18535             buckets of items to pass to the object in each batch.
18536             </summary>
18537             <returns>ArrayList containing ItemBucket objects, each one representing an execution batch.</returns>
18538         </member>
18539         <member name="M:Microsoft.Build.BackEnd.BatchingEngine.PrepareBatchingBuckets(System.Collections.Generic.List{System.String},Microsoft.Build.BackEnd.Lookup,System.String,Microsoft.Build.Construction.ElementLocation)">
18540             <summary>
18541             Determines how many times the batchable object needs to be executed (each execution is termed a "batch"), and prepares
18542             buckets of items to pass to the object in each batch.
18543             </summary>
18544             <param name="elementLocation"></param>
18545             <param name="batchableObjectParameters"></param>
18546             <param name="lookup"></param>
18547             <param name="implicitBatchableItemType">Any item type that can be considered an implicit input to this batchable object.
18548             This is useful for items inside targets, where the item name is plainly an item type that's an "input" to the object.</param>
18549             <returns>ArrayList containing ItemBucket objects, each one representing an execution batch.</returns>
18550         </member>
18551         <member name="M:Microsoft.Build.BackEnd.BatchingEngine.GetItemListsToBeBatched(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.MetadataReference},System.Collections.Generic.HashSet{System.String},Microsoft.Build.BackEnd.Lookup,Microsoft.Build.Construction.ElementLocation)">
18552             <summary>
18553             Of all the item lists that are referenced in this batchable object, which ones should we
18554             batch on, and which ones should we just pass in wholesale to every invocation of the 
18555             target/task?
18556             
18557             Rule #1.  If the user has referenced any *qualified* item metadata such as %(EmbeddedResource.Culture),
18558             then that item list "EmbeddedResource" will definitely get batched.
18559             
18560             Rule #2.  For all the unqualified item metadata such as %(Culture), we make sure that 
18561             every single item in every single item list being passed into the task contains a value
18562             for that metadata.  If not, it's an error.  If so, we batch all of those item lists.
18563             
18564             All other item lists will not be batched, and instead will be passed in wholesale to all buckets.
18565             </summary>
18566             <returns>Dictionary containing the item names that should be batched.  If the items match unqualified metadata,
18567             the entire list of items will be returned in the Value.  Otherwise, the Value will be empty, indicating only the
18568             qualified item set (in the Key) should be batched.
18569             </returns>
18570         </member>
18571         <member name="M:Microsoft.Build.BackEnd.BatchingEngine.BucketConsumedItems(Microsoft.Build.BackEnd.Lookup,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.ICollection{Microsoft.Build.Execution.ProjectItemInstance}},System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.MetadataReference},Microsoft.Build.Construction.ElementLocation)">
18572             <summary>
18573             Partitions the items consumed by the batchable object into buckets, where each bucket contains a set of items that
18574             have the same value set on all item metadata consumed by the object.
18575             </summary>
18576             <remarks>
18577             PERF NOTE: Given n items and m batching metadata that produce l buckets, it is usually the case that n > l > m,
18578             because a batchable object typically uses one or two item metadata to control batching, and only has a handful of
18579             buckets. The number of buckets is typically only large if a batchable object is using single-item batching
18580             (where l == n). Any algorithm devised for bucketing therefore, should try to minimize n and l in its complexity
18581             equation. The algorithm below has a complexity of O(n*lg(l)*m/2) in its comparisons, and is effectively O(n) when
18582             l is small, and O(n*lg(n)) in the worst case as l -> n. However, note that the comparison complexity is not the
18583             same as the operational complexity for this algorithm. The operational complexity of this algorithm is actually
18584             O(n*m + n*lg(l)*m/2 + n*l/2 + n + l), which is effectively O(n^2) in the worst case. The additional complexity comes
18585             from the array and metadata operations that are performed. However, those operations are extremely cheap compared
18586             to the comparison operations, which dominate the time spent in this method.
18587             </remarks>
18588             <returns>ArrayList containing ItemBucket objects (can be empty), each one representing an execution batch.</returns>
18589         </member>
18590         <member name="M:Microsoft.Build.BackEnd.BatchingEngine.GetItemMetadataValues(Microsoft.Build.Execution.ProjectItemInstance,System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.MetadataReference},Microsoft.Build.Construction.ElementLocation)">
18591             <summary>
18592             Gets the values of the specified metadata for the given item.
18593             The keys in the dictionary returned may be qualified and/or unqualified, exactly
18594             as they are found in the metadata reference. 
18595             For example if %(x) is found, the key is "x", if %(z.x) is found, the key is "z.x".
18596             This dictionary in each bucket is used by Expander to expand exactly the same metadata references, so
18597             %(x) is expanded using the key "x", and %(z.x) is expanded using the key "z.x".
18598             </summary>
18599             <returns>the metadata values</returns>
18600         </member>
18601         <member name="T:Microsoft.Build.BackEnd.IntrinsicTask">
18602             <summary>
18603             A class that evaluates an ItemGroup or PropertyGroup that is within a target.
18604             </summary>
18605         </member>
18606         <member name="M:Microsoft.Build.BackEnd.IntrinsicTask.#ctor(Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.Boolean)">
18607             <summary>
18608             Initializes this base class.
18609             </summary>
18610             <param name="loggingContext">The logging context</param>
18611             <param name="projectInstance">The project instance</param>
18612             <param name="logTaskInputs">Flag to determine whether or not to log task inputs.</param>
18613         </member>
18614         <member name="P:Microsoft.Build.BackEnd.IntrinsicTask.LoggingContext">
18615             <summary>
18616             Gets or sets the logging context.
18617             </summary>
18618         </member>
18619         <member name="P:Microsoft.Build.BackEnd.IntrinsicTask.Project">
18620             <summary>
18621             Gets or sets the project instance.
18622             </summary>
18623         </member>
18624         <member name="P:Microsoft.Build.BackEnd.IntrinsicTask.LogTaskInputs">
18625             <summary>
18626             Flag to determine whether or not to log task inputs.
18627             </summary>
18628         </member>
18629         <member name="M:Microsoft.Build.BackEnd.IntrinsicTask.InstantiateTask(Microsoft.Build.Execution.ProjectTargetInstanceChild,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.Boolean)">
18630             <summary>
18631             Factory for intrinsic tasks.
18632             </summary>
18633             <param name="taskInstance">The task instance object.</param>
18634             <param name="loggingContext">The logging context.</param>
18635             <param name="projectInstance">The project instance.</param>
18636             <param name="logTaskInputs"><code>true</code> to log task inputs, otherwise <code>false</code>.</param>
18637             <returns>An instantiated intrinsic task.</returns>
18638         </member>
18639         <member name="M:Microsoft.Build.BackEnd.IntrinsicTask.ExecuteTask(Microsoft.Build.BackEnd.Lookup)">
18640             <summary>
18641             Called to execute a task within a target. This method instantiates the task, sets its parameters, and executes it. 
18642             </summary>
18643             <param name="lookup">The lookup used for expansion and to receive created items and properties.</param>
18644         </member>
18645         <member name="M:Microsoft.Build.BackEnd.IntrinsicTask.AddIfNotEmptyString(System.Collections.Generic.List{System.String},System.String)">
18646             <summary>
18647             If value is not an empty string, adds it to list.
18648             </summary>
18649             <param name="list">The list of strings to which this should be added, if it is not empty.</param>
18650             <param name="value">The string to add.</param>
18651         </member>
18652         <member name="T:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask">
18653             <summary>
18654             Implementation of the ItemGroup intrinsic task
18655             </summary>
18656         </member>
18657         <member name="F:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask._taskInstance">
18658             <summary>
18659             The task instance data
18660             </summary>
18661         </member>
18662         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.#ctor(Microsoft.Build.Execution.ProjectItemGroupTaskInstance,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.Boolean)">
18663             <summary>
18664             Instantiates an ItemGroup task
18665             </summary>
18666             <param name="taskInstance">The original task instance data</param>
18667             <param name="loggingContext">The logging context</param>
18668             <param name="projectInstance">The project instance</param>
18669             <param name="logTaskInputs">Flag to determine whether or not to log task inputs.</param>
18670         </member>
18671         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.ExecuteTask(Microsoft.Build.BackEnd.Lookup)">
18672             <summary>
18673             Execute an ItemGroup element, including each child item expression
18674             </summary>
18675             <param name="lookup">The lookup used for evaluation and as a destination for these items.</param>
18676         </member>
18677         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.ExecuteAdd(Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance,Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.ISet{System.String},System.Collections.Generic.ISet{System.String})">
18678             <summary>
18679             Add items to the world. This is the in-target equivalent of an item include expression outside of a target.
18680             </summary>
18681             <param name="child">The item specification to evaluate and add.</param>
18682             <param name="bucket">The batching bucket.</param>
18683             <param name="keepMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to keep.</param>
18684             <param name="removeMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to remove.</param>
18685         </member>
18686         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.ExecuteRemove(Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance,Microsoft.Build.BackEnd.ItemBucket)">
18687             <summary>
18688             Remove items from the world. Removes to items that are part of the project manifest are backed up, so 
18689             they can be reverted when the project is reset after the end of the build.
18690             </summary>
18691             <param name="child">The item specification to evaluate and remove.</param>
18692             <param name="bucket">The batching bucket.</param>
18693         </member>
18694         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.ExecuteModify(Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance,Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.ISet{System.String},System.Collections.Generic.ISet{System.String})">
18695             <summary>
18696             Modifies items in the world - specifically, changes their metadata. Changes to items that are part of the project manifest are backed up, so 
18697             they can be reverted when the project is reset after the end of the build.
18698             </summary>
18699             <param name="child">The item specification to evaluate and modify.</param>
18700             <param name="bucket">The batching bucket.</param>
18701             <param name="keepMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to keep.</param>
18702             <param name="removeMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to remove.</param>
18703         </member>
18704         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.GetBatchableValuesFromBuildItemGroupChild(System.Collections.Generic.List{System.String},Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance)">
18705             <summary>
18706             Adds batchable parameters from an item element into the list. If the item element was a task, these
18707             would be its raw parameter values.
18708             </summary>
18709             <param name="parameterValues">The list of batchable values</param>
18710             <param name="child">The item from which to find batchable values</param>
18711         </member>
18712         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.ExpandItemIntoItems(Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance,Microsoft.Build.Evaluation.Expander{Microsoft.Build.Execution.ProjectPropertyInstance,Microsoft.Build.Execution.ProjectItemInstance},System.Collections.Generic.ISet{System.String},System.Collections.Generic.ISet{System.String})">
18713             <summary>
18714             Takes an item specification, evaluates it and expands it into a list of items
18715             </summary>
18716             <param name="originalItem">The original item data</param>
18717             <param name="expander">The expander to use.</param>
18718             <param name="keepMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to keep.</param>
18719             <param name="removeMetadata">An <see cref="T:System.Collections.Generic.ISet`1"/> of metadata names to remove.</param>
18720             <remarks>
18721             This code is very close to that which exists in the Evaluator.EvaluateItemXml method.  However, because
18722             it invokes type constructors, and those constructors take arguments of fundamentally different types, it has not
18723             been refactored.
18724             </remarks>
18725             <returns>A list of items.</returns>
18726         </member>
18727         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.FindItemsMatchingSpecification(System.Collections.Generic.ICollection{Microsoft.Build.Execution.ProjectItemInstance},System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Evaluation.Expander{Microsoft.Build.Execution.ProjectPropertyInstance,Microsoft.Build.Execution.ProjectItemInstance})">
18728             <summary>
18729             Returns a list of all items in the provided item group whose itemspecs match the specification, after it is split and any wildcards are expanded.
18730             If no items match, returns null.
18731             </summary>
18732             <param name="items">The items to match</param>
18733             <param name="specification">The specification to match against the items.</param>
18734             <param name="specificationLocation">The specification to match against the provided items</param>
18735             <param name="expander">The expander to use</param>
18736             <returns>A list of matching items</returns>
18737         </member>
18738         <member name="T:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable">
18739             <summary>
18740             This class is used during ItemGroup intrinsic tasks to resolve metadata references.  It consists of three tables:
18741             1. The metadata added during evaluation.
18742             1. The metadata table created for the bucket, may be null.
18743             2. The metadata table derived from the item definition group, may be null.
18744             </summary>
18745         </member>
18746         <member name="F:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable._addTable">
18747             <summary>
18748             The table for all metadata added during expansion
18749             </summary>
18750         </member>
18751         <member name="F:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable._bucketTable">
18752             <summary>
18753             The table for metadata which was generated for this batch bucket.
18754             May be null.
18755             </summary>
18756         </member>
18757         <member name="F:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable._itemDefinitionTable">
18758             <summary>
18759             The table for metadata from the item definition
18760             May be null.
18761             </summary>
18762         </member>
18763         <member name="F:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable._itemType">
18764             <summary>
18765             The item type to which this metadata applies.
18766             </summary>
18767         </member>
18768         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.#ctor(System.String,Microsoft.Build.Evaluation.IMetadataTable,Microsoft.Build.Evaluation.IMetadataTable)">
18769             <summary>
18770             Creates a new metadata table aggregating the bucket and item definition tables.
18771             </summary>
18772             <param name="itemType">The type of item for which we are doing evaluation.</param>
18773             <param name="bucketTable">The metadata table created for this batch bucket.  May be null.</param>
18774             <param name="itemDefinitionTable">The metadata table for the item definition representing this item.  May be null.</param>
18775         </member>
18776         <member name="P:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.AddedMetadata">
18777             <summary>
18778             Retrieves the metadata table used to collect additions.
18779             </summary>
18780         </member>
18781         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.GetEscapedValue(System.String)">
18782             <summary>
18783             Gets the specified metadata value.  Returns an empty string if none is set.
18784             </summary>
18785         </member>
18786         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.GetEscapedValue(System.String,System.String)">
18787             <summary>
18788             Gets the specified metadata value for the qualified item type.  Returns an empty string if none is set.
18789             </summary>
18790         </member>
18791         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
18792             <summary>
18793             Gets the specified metadata value for the qualified item type.  Returns null if none is set.
18794             </summary>
18795         </member>
18796         <member name="M:Microsoft.Build.BackEnd.ItemGroupIntrinsicTask.NestedMetadataTable.SetValue(System.String,System.String)">
18797             <summary>
18798             Sets the metadata value.
18799             </summary>
18800         </member>
18801         <member name="T:Microsoft.Build.BackEnd.PropertyGroupIntrinsicTask">
18802             <summary>
18803             This class represents a PropertyGroup intrinsic task.
18804             </summary>
18805         </member>
18806         <member name="F:Microsoft.Build.BackEnd.PropertyGroupIntrinsicTask._taskInstance">
18807             <summary>
18808             The original task instance data.
18809             </summary>
18810         </member>
18811         <member name="M:Microsoft.Build.BackEnd.PropertyGroupIntrinsicTask.#ctor(Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.Boolean)">
18812             <summary>
18813             Create a new PropertyGroup task.
18814             </summary>
18815             <param name="taskInstance">The task instance data</param>
18816             <param name="loggingContext">The logging context</param>
18817             <param name="projectInstance">The project instance</param>
18818             <param name="logTaskInputs">Flag to determine whether or not to log task inputs.</param>
18819         </member>
18820         <member name="M:Microsoft.Build.BackEnd.PropertyGroupIntrinsicTask.ExecuteTask(Microsoft.Build.BackEnd.Lookup)">
18821             <summary>
18822             Execute a PropertyGroup element, including each child property
18823             </summary>
18824             <param name="lookup">The lookup use for evaluation and as a destination for these properties.</param>
18825         </member>
18826         <member name="M:Microsoft.Build.BackEnd.PropertyGroupIntrinsicTask.GetBatchableValuesFromProperty(System.Collections.Generic.List{System.String},Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance)">
18827             <summary>
18828             Adds batchable parameters from a property element into the list. If the property element was
18829             a task, these would be its raw parameter values.
18830             </summary>
18831             <param name="parameterValues">The list which will contain the batchable values.</param>
18832             <param name="property">The property from which to take the values.</param>
18833         </member>
18834         <member name="T:Microsoft.Build.BackEnd.ITargetBuilderCallback">
18835             <summary>
18836             Interface implemented by the Target Builder which allows tasks to invoke targets and build projects.
18837             </summary>
18838         </member>
18839         <member name="M:Microsoft.Build.BackEnd.ITargetBuilderCallback.LegacyCallTarget(System.String[],System.Boolean,Microsoft.Build.Construction.ElementLocation)">
18840             <summary>
18841             Invokes the specified targets using Dev9 behavior.  
18842             </summary>
18843             <param name="targets">The targets to build.</param>
18844             <param name="continueOnError">True to continue building the remaining targets if one fails.</param>
18845             <param name="referenceLocation">The <see cref="T:Microsoft.Build.Construction.ElementLocation"/> of the reference.</param>
18846             <returns>The results for each target.</returns>
18847             <remarks>
18848             The target is run using the data context of the Project, rather than the data context 
18849             of the current target.  This has the following effects:
18850             1. Data visible to the CALLING target at the time it was first invoked is the only
18851                data which the CALLED target can see.  No changes made between the time the CALLING
18852                target starts and the CALLED target starts are visible to the CALLED target.
18853             2. Items and Properties modified by the CALLED target are not visible to the CALLING
18854                target, even after the CALLED target returns.  However, any changes made to
18855                items and properties by the CALLING target will override any changes made by the
18856                CALLED target.
18857             </remarks>
18858         </member>
18859         <member name="T:Microsoft.Build.BackEnd.TargetSpecification">
18860             <summary>
18861             Contains information about a target name and reference location.
18862             </summary>
18863         </member>
18864         <member name="M:Microsoft.Build.BackEnd.TargetSpecification.#ctor(System.String,Microsoft.Build.Construction.ElementLocation)">
18865             <summary>
18866             Construct a target specification.
18867             </summary>
18868             <param name="targetName">The name of the target</param>
18869             <param name="referenceLocation">The location from which it was referred.</param>
18870         </member>
18871         <member name="P:Microsoft.Build.BackEnd.TargetSpecification.TargetName">
18872             <summary>
18873             Gets or sets the target name            
18874             </summary>
18875         </member>
18876         <member name="P:Microsoft.Build.BackEnd.TargetSpecification.ReferenceLocation">
18877             <summary>
18878             Gets or sets the reference location
18879             </summary>
18880         </member>
18881         <member name="T:Microsoft.Build.BackEnd.InProcNode">
18882             <summary>
18883             This class represents an implementation of INode for out-of-proc nodes.
18884             </summary>
18885         </member>
18886         <member name="F:Microsoft.Build.BackEnd.InProcNode._componentHost">
18887             <summary>
18888             The build component host.
18889             </summary>
18890         </member>
18891         <member name="F:Microsoft.Build.BackEnd.InProcNode._savedEnvironment">
18892             <summary>
18893             The environment at the time the build is started.
18894             </summary>
18895         </member>
18896         <member name="F:Microsoft.Build.BackEnd.InProcNode._savedCurrentDirectory">
18897             <summary>
18898             The current directory at the time the build is started.
18899             </summary>
18900         </member>
18901         <member name="F:Microsoft.Build.BackEnd.InProcNode._loggingContext">
18902             <summary>
18903             The node logging context.
18904             </summary>
18905         </member>
18906         <member name="F:Microsoft.Build.BackEnd.InProcNode._buildRequestEngine">
18907             <summary>
18908             The build request engine.
18909             </summary>
18910         </member>
18911         <member name="F:Microsoft.Build.BackEnd.InProcNode._currentConfiguration">
18912             <summary>
18913             The current node configuration
18914             </summary>
18915         </member>
18916         <member name="F:Microsoft.Build.BackEnd.InProcNode._receivedPackets">
18917             <summary>
18918             The queue of packets we have received but which have not yet been processed.
18919             </summary>
18920         </member>
18921         <member name="F:Microsoft.Build.BackEnd.InProcNode._packetReceivedEvent">
18922             <summary>
18923             The event which is set when we receive packets.
18924             </summary>
18925         </member>
18926         <member name="F:Microsoft.Build.BackEnd.InProcNode._shutdownEvent">
18927             <summary>
18928             The event which is set when we should shut down.
18929             </summary>
18930         </member>
18931         <member name="F:Microsoft.Build.BackEnd.InProcNode._shutdownReason">
18932             <summary>
18933             The reason we are shutting down.
18934             </summary>
18935         </member>
18936         <member name="F:Microsoft.Build.BackEnd.InProcNode._shutdownException">
18937             <summary>
18938             The exception, if any, which caused shutdown.
18939             </summary>
18940         </member>
18941         <member name="F:Microsoft.Build.BackEnd.InProcNode._configurationProjectsLoaded">
18942             <summary>
18943             The set of configurations which have had projects loaded.
18944             </summary>
18945         </member>
18946         <member name="F:Microsoft.Build.BackEnd.InProcNode._nodeEndpoint">
18947             <summary>
18948             The node endpoint
18949             </summary>
18950         </member>
18951         <member name="F:Microsoft.Build.BackEnd.InProcNode._engineExceptionEventHandler">
18952             <summary>
18953             Handler for engine exceptions.
18954             </summary>
18955         </member>
18956         <member name="F:Microsoft.Build.BackEnd.InProcNode._newConfigurationRequestEventHandler">
18957             <summary>
18958             Handler for new configuration requests.
18959             </summary>
18960         </member>
18961         <member name="F:Microsoft.Build.BackEnd.InProcNode._requestBlockedEventHandler">
18962             <summary>
18963             Handler for blocked request events.
18964             </summary>
18965         </member>
18966         <member name="F:Microsoft.Build.BackEnd.InProcNode._requestCompleteEventHandler">
18967             <summary>
18968             Handler for request completed events.
18969             </summary>
18970         </member>
18971         <member name="M:Microsoft.Build.BackEnd.InProcNode.#ctor(Microsoft.Build.BackEnd.IBuildComponentHost,Microsoft.Build.BackEnd.INodeEndpoint)">
18972             <summary>
18973             Constructor.
18974             </summary>
18975         </member>
18976         <member name="M:Microsoft.Build.BackEnd.InProcNode.Run(System.Exception@)">
18977             <summary>
18978             Starts up the node and processes messages until the node is requested to shut down.
18979             </summary>
18980             <param name="shutdownException">The exception which caused shutdown, if any.</param>
18981             <returns>The reason for shutting down.</returns>
18982         </member>
18983         <member name="M:Microsoft.Build.BackEnd.InProcNode.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
18984             <summary>
18985             Not necessary for in-proc node - we don't serialize.
18986             </summary>
18987         </member>
18988         <member name="M:Microsoft.Build.BackEnd.InProcNode.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
18989             <summary>
18990             Not necessary for in-proc node - we don't serialize.
18991             </summary>
18992         </member>
18993         <member name="M:Microsoft.Build.BackEnd.InProcNode.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
18994             <summary>
18995             Not necessary for in-proc node - we don't serialize.
18996             </summary>
18997         </member>
18998         <member name="M:Microsoft.Build.BackEnd.InProcNode.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
18999             <summary>
19000             Routes the packet to the appropriate handler.
19001             </summary>
19002             <param name="nodeId">The node id.</param>
19003             <param name="packet">The packet.</param>
19004         </member>
19005         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnRequestComplete(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
19006             <summary>
19007             Event handler for the BuildEngine's OnRequestComplete event.
19008             </summary>
19009         </member>
19010         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnNewRequest(Microsoft.Build.BackEnd.BuildRequestBlocker)">
19011             <summary>
19012             Event handler for the BuildEngine's OnNewRequest event.
19013             </summary>
19014         </member>
19015         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnNewConfigurationRequest(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
19016             <summary>
19017             Event handler for the BuildEngine's OnNewConfigurationRequest event.
19018             </summary>
19019         </member>
19020         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnLoggingThreadException(System.Exception)">
19021             <summary>
19022             Event handler for the LoggingService's OnLoggingThreadException event.
19023             </summary>
19024         </member>
19025         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnEngineException(System.Exception)">
19026             <summary>
19027             Event handler for the BuildEngine's OnEngineException event.
19028             </summary>
19029         </member>
19030         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleShutdown(System.Exception@)">
19031             <summary>
19032             Perform necessary actions to shut down the node.
19033             </summary>
19034         </member>
19035         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandlePacket(Microsoft.Build.BackEnd.INodePacket)">
19036             <summary>
19037             Dispatches the packet to the correct handler.
19038             </summary>
19039         </member>
19040         <member name="M:Microsoft.Build.BackEnd.InProcNode.OnLinkStatusChanged(Microsoft.Build.BackEnd.INodeEndpoint,Microsoft.Build.BackEnd.LinkStatus)">
19041             <summary>
19042             Event handler for the node endpoint's LinkStatusChanged event.
19043             </summary>
19044         </member>
19045         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleBuildRequest(Microsoft.Build.BackEnd.BuildRequest)">
19046             <summary>
19047             Handles the BuildRequest packet.
19048             </summary>
19049         </member>
19050         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleBuildRequestConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
19051             <summary>
19052             Handles the BuildRequestConfiguration packet.
19053             </summary>
19054         </member>
19055         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleBuildRequestConfigurationResponse(Microsoft.Build.BackEnd.BuildRequestConfigurationResponse)">
19056             <summary>
19057             Handles the BuildRequestConfigurationResponse packet.
19058             </summary>
19059         </member>
19060         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleBuildResult(Microsoft.Build.BackEnd.BuildRequestUnblocker)">
19061             <summary>
19062             Handles the BuildResult packet.
19063             </summary>
19064         </member>
19065         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleNodeConfiguration(Microsoft.Build.BackEnd.NodeConfiguration)">
19066             <summary>
19067             Handles the NodeConfiguration packet.
19068             </summary>
19069         </member>
19070         <member name="M:Microsoft.Build.BackEnd.InProcNode.HandleNodeBuildComplete(Microsoft.Build.BackEnd.NodeBuildComplete)">
19071             <summary>
19072             Handles the NodeBuildComplete packet.
19073             </summary>
19074         </member>
19075         <member name="T:Microsoft.Build.BackEnd.NodeConfiguration">
19076             <summary>
19077             NodeConfiguration contains all of the information necessary for a node to configure itself for building.
19078             </summary>
19079         </member>
19080         <member name="F:Microsoft.Build.BackEnd.NodeConfiguration._nodeId">
19081             <summary>
19082             The node id
19083             </summary>
19084         </member>
19085         <member name="F:Microsoft.Build.BackEnd.NodeConfiguration._buildParameters">
19086             <summary>
19087             The system parameters which were defined on the host.
19088             </summary>
19089         </member>
19090         <member name="F:Microsoft.Build.BackEnd.NodeConfiguration._appDomainSetup">
19091             <summary>
19092             The app domain information needed for setting up AppDomain-isolated tasks.
19093             </summary>
19094         </member>
19095         <member name="F:Microsoft.Build.BackEnd.NodeConfiguration._forwardingLoggers">
19096             <summary>
19097             The forwarding loggers to use.
19098             </summary>
19099         </member>
19100         <member name="M:Microsoft.Build.BackEnd.NodeConfiguration.#ctor(System.Int32,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.Logging.LoggerDescription[],System.AppDomainSetup)">
19101             <summary>
19102             Constructor
19103             </summary>
19104             <param name="nodeId">The node id.</param>
19105             <param name="buildParameters">The build parameters</param>
19106             <param name="forwardingLoggers">The forwarding loggers.</param>
19107             <param name="appDomainSetup">The AppDomain setup information.</param>
19108         </member>
19109         <member name="M:Microsoft.Build.BackEnd.NodeConfiguration.#ctor">
19110             <summary>
19111             Private constructor for deserialization
19112             </summary>
19113         </member>
19114         <member name="P:Microsoft.Build.BackEnd.NodeConfiguration.NodeId">
19115             <summary>
19116             Gets or sets the node id
19117             </summary>
19118         </member>
19119         <member name="P:Microsoft.Build.BackEnd.NodeConfiguration.BuildParameters">
19120             <summary>
19121             Retrieves the system parameters.
19122             </summary>
19123         </member>
19124         <member name="P:Microsoft.Build.BackEnd.NodeConfiguration.LoggerDescriptions">
19125             <summary>
19126             Retrieves the logger descriptions.
19127             </summary>
19128         </member>
19129         <member name="P:Microsoft.Build.BackEnd.NodeConfiguration.AppDomainSetup">
19130             <summary>
19131             Retrieves the app domain setup information.
19132             </summary>
19133         </member>
19134         <member name="P:Microsoft.Build.BackEnd.NodeConfiguration.Type">
19135             <summary>
19136             Retrieves the packet type.
19137             </summary>
19138         </member>
19139         <member name="M:Microsoft.Build.BackEnd.NodeConfiguration.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
19140             <summary>
19141             Translates the packet to/from binary form.
19142             </summary>
19143             <param name="translator">The translator to use.</param>
19144         </member>
19145         <member name="M:Microsoft.Build.BackEnd.NodeConfiguration.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
19146             <summary>
19147             Factory for deserialization.
19148             </summary>
19149         </member>
19150         <member name="M:Microsoft.Build.BackEnd.NodeConfiguration.Clone">
19151             <summary>
19152             We need to clone this object since it gets modified for each node which is launched.
19153             </summary>
19154         </member>
19155         <member name="T:Microsoft.Build.BackEnd.NativeMethods">
19156             <summary>
19157             Native methods used by the backend. This was copied from the oldOM so we can make it stylecop compliant and allow
19158             easier deletion of the native code in the old OM
19159             </summary>
19160         </member>
19161         <member name="F:Microsoft.Build.BackEnd.NativeMethods.NullPtr">
19162             <summary>
19163             Null Pointer
19164             </summary>
19165         </member>
19166         <member name="F:Microsoft.Build.BackEnd.NativeMethods.InvalidHandle">
19167             <summary>
19168             Invalid Handle
19169             </summary>
19170         </member>
19171         <member name="F:Microsoft.Build.BackEnd.NativeMethods.NORMALPRIORITYCLASS">
19172             <summary>
19173             Start the process with a normal priority class
19174             </summary>
19175         </member>
19176         <member name="F:Microsoft.Build.BackEnd.NativeMethods.CREATENOWINDOW">
19177             <summary>
19178             Do not create a window
19179             </summary>
19180         </member>
19181         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTFUSESTDHANDLES">
19182             <summary>
19183             Use the standard handles
19184             </summary>
19185         </member>
19186         <member name="F:Microsoft.Build.BackEnd.NativeMethods.CREATE_NEW_CONSOLE">
19187             <summary>
19188             Create a new console.
19189             </summary>
19190         </member>
19191         <member name="M:Microsoft.Build.BackEnd.NativeMethods.CreateProcess(System.String,System.String,Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES@,Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES@,System.Boolean,System.UInt32,System.IntPtr,System.String,Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO@,Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION@)">
19192             <summary>
19193             Create a new process
19194             </summary>
19195         </member>
19196         <member name="T:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO">
19197             <summary>
19198             Structure that contains the startupinfo
19199             Represents STARTUP_INFO in win32
19200             </summary>
19201         </member>
19202         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.cb">
19203             <summary>
19204             The size of the structure, in bytes.
19205             </summary>
19206         </member>
19207         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.lpReserved">
19208             <summary>
19209             Reserved; must be NULL
19210             </summary>
19211         </member>
19212         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.lpDesktop">
19213             <summary>
19214             The name of the desktop, or the name of both the desktop and window station for this process.
19215             A backslash in the string indicates that the string includes both the desktop and window station names
19216             </summary>
19217         </member>
19218         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.lpTitle">
19219             <summary>
19220             For console processes, this is the title displayed in the title bar if a new console window is created. 
19221             If NULL, the name of the executable file is used as the window title instead. 
19222             This parameter must be NULL for GUI or console processes that do not create a new console window
19223             </summary>
19224         </member>
19225         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwX">
19226             <summary>
19227             If dwFlags specifies STARTF_USEPOSITION, this member is the x offset of the upper left corner of a window if a new window is created, in pixels. Otherwise, this member is ignored
19228             </summary>
19229         </member>
19230         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwY">
19231             <summary>
19232             If dwFlags specifies STARTF_USEPOSITION, this member is the y offset of the upper left corner of a window if a new window is created, in pixels. Otherwise, this member is ignored.
19233             </summary>
19234         </member>
19235         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwXSize">
19236             <summary>
19237             If dwFlags specifies STARTF_USESIZE, this member is the width of the window if a new window is created, in pixels. Otherwise, this member is ignored. 
19238             </summary>
19239         </member>
19240         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwYSize">
19241             <summary>
19242             If dwFlags specifies STARTF_USESIZE, this member is the height of the window if a new window is created, in pixels. Otherwise, this member is ignored.
19243             </summary>
19244         </member>
19245         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwXCountChars">
19246             <summary>
19247             If dwFlags specifies STARTF_USECOUNTCHARS, if a new console window is created in a console process, this member specifies the screen buffer width, in character columns. Otherwise, this member is ignored.
19248             </summary>
19249         </member>
19250         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwYCountChars">
19251             <summary>
19252             If dwFlags specifies STARTF_USECOUNTCHARS, if a new console window is created in a console process, this member specifies the screen buffer height, in character rows. Otherwise, this member is ignored.dwFillAttribute 
19253             </summary>
19254         </member>
19255         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwFillAttribute">
19256             <summary>
19257             If dwFlags specifies STARTF_USEFILLATTRIBUTE, this member is the initial text and background colors if a new console window is created in a console application. Otherwise, this member is ignored. 
19258             </summary>
19259         </member>
19260         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.dwFlags">
19261             <summary>
19262             A bit field that determines whether certain STARTUPINFO members are used when the process creates a window
19263             </summary>
19264         </member>
19265         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.wShowWindow">
19266             <summary>
19267             If dwFlags specifies STARTF_USESHOWWINDOW, this member can be any of the SW_ constants defined in Winuser.h. Otherwise, this member is ignored.
19268             </summary>
19269         </member>
19270         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.cbReserved2">
19271             <summary>
19272             Reserved for use by the C Run-time; must be zero.
19273             </summary>
19274         </member>
19275         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.lpReserved2">
19276             <summary>
19277             Reserved for use by the C Run-time; must be NULL.
19278             </summary>
19279         </member>
19280         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.hStdInput">
19281             <summary>
19282             If dwFlags specifies STARTF_USESTDHANDLES, this member is the standard input handle for the process. Otherwise, this member is ignored and the default for standard input is the keyboard buffer.
19283             </summary>
19284         </member>
19285         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.hStdOutput">
19286             <summary>
19287             If dwFlags specifies STARTF_USESTDHANDLES, this member is the standard output handle for the process. Otherwise, this member is ignored and the default for standard output is the console window's buffer.
19288             </summary>
19289         </member>
19290         <member name="F:Microsoft.Build.BackEnd.NativeMethods.STARTUP_INFO.hStdError">
19291             <summary>
19292             If dwFlags specifies STARTF_USESTDHANDLES, this member is the standard error handle for the process. Otherwise, this member is ignored and the default for standard error is the console window's buffer.
19293             </summary>
19294         </member>
19295         <member name="T:Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES">
19296             <summary>
19297             Structure to contain security attributes from the create process call represents
19298             SECURITY_ATTRIBUTE in win32
19299             </summary>
19300         </member>
19301         <member name="F:Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES.nLength">
19302             <summary>
19303             The size, in bytes, of this structure. Set this value to the size of the SECURITY_ATTRIBUTES structure
19304             </summary>
19305         </member>
19306         <member name="F:Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES.lpSecurityDescriptor">
19307             <summary>
19308             A pointer to a security descriptor for the object that controls the sharing of it.
19309             If NULL is specified for this member, the object is assigned the default security descriptor of the calling process. 
19310             This is not the same as granting access to everyone by assigning a NULL discretionary access control list (DACL). 
19311             The default security descriptor is based on the default DACL of the access token belonging to the calling process.
19312             By default, the default DACL in the access token of a process allows access only to the user represented by the access token. 
19313             If other users must access the object, you can either create a security descriptor with the appropriate access, 
19314             or add ACEs to the DACL that grants access to a group of users. 
19315             </summary>
19316         </member>
19317         <member name="F:Microsoft.Build.BackEnd.NativeMethods.SECURITY_ATTRIBUTES.bInheritHandle">
19318             <summary>
19319             A Boolean value that specifies whether the returned handle is inherited when a new process is created.
19320             If this member is TRUE, the new process inherits the handle.
19321             </summary>
19322         </member>
19323         <member name="T:Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION">
19324             <summary>
19325             Process information from the create process call
19326             Represents PROCESS_INFORMATION in win32
19327             </summary>
19328         </member>
19329         <member name="F:Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION.hProcess">
19330             <summary>
19331             A handle to the newly created process. The handle is used to specify the process in all functions that perform operations on the process object.
19332             </summary>
19333         </member>
19334         <member name="F:Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION.hThread">
19335             <summary>
19336             A handle to the primary thread of the newly created process. The handle is used to specify the thread in all functions that perform operations on the thread object
19337             </summary>
19338         </member>
19339         <member name="F:Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION.dwProcessId">
19340             <summary>
19341             A value that can be used to identify a process.
19342             The value is valid from the time the process is created until all handles to the process are closed and 
19343             the process object is freed; at this point, the identifier may be reused.
19344             </summary>
19345         </member>
19346         <member name="F:Microsoft.Build.BackEnd.NativeMethods.PROCESS_INFORMATION.dwThreadId">
19347             <summary>
19348             A value that can be used to identify a thread. The value is valid from the time the thread is created until all handles to the thread are closed and the thread object is freed; at this point, the identifier may be reused.
19349             </summary>
19350         </member>
19351         <member name="T:Microsoft.Build.BackEnd.NewBuildRequestsDelegate">
19352             <summary>
19353             Delegate for event raised when a new build request needs to be issued.
19354             </summary>
19355             <param name="sourceEntry">The entry issuing the request.</param>
19356             <param name="requests">The request to be issued.</param>
19357         </member>
19358         <member name="T:Microsoft.Build.BackEnd.BuildRequestCompletedDelegate">
19359             <summary>
19360             Delegate for event raised when a build request has completed.
19361             </summary>
19362             <param name="completedEntry">The entry which completed.</param>
19363         </member>
19364         <member name="T:Microsoft.Build.BackEnd.BuildRequestBlockedDelegate">
19365             <summary>
19366             Delegate for event raised when a build request is blocked on another request which is in progress.
19367             </summary>
19368             <param name="sourceEntry">The build request entry which is being blocked.</param>
19369             <param name="blockingGlobalRequestId">The request on which we are blocked.</param>
19370             <param name="blockingTarget">The target on which we are blocked.</param>
19371         </member>
19372         <member name="T:Microsoft.Build.BackEnd.IRequestBuilder">
19373             <summary>
19374             Represents a class which is capable of building BuildRequestEntries.
19375             </summary>
19376         </member>
19377         <member name="E:Microsoft.Build.BackEnd.IRequestBuilder.OnNewBuildRequests">
19378             <summary>
19379             Raised when a new build request is to be issued.
19380             </summary>
19381         </member>
19382         <member name="E:Microsoft.Build.BackEnd.IRequestBuilder.OnBuildRequestCompleted">
19383             <summary>
19384             Raised when the build request is complete.
19385             </summary>
19386         </member>
19387         <member name="E:Microsoft.Build.BackEnd.IRequestBuilder.OnBuildRequestBlocked">
19388             <summary>
19389             Raised when a build request is blocked on another one in progress.
19390             </summary>
19391         </member>
19392         <member name="M:Microsoft.Build.BackEnd.IRequestBuilder.BuildRequest(Microsoft.Build.BackEnd.Logging.NodeLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry)">
19393             <summary>
19394             Builds the request contained in the specified entry.
19395             </summary>
19396             <param name="nodeLoggingContext">The logging context for the node.</param>
19397             <param name="entry">The entry to be built.</param>
19398         </member>
19399         <member name="M:Microsoft.Build.BackEnd.IRequestBuilder.ContinueRequest">
19400             <summary>
19401             Continues building a request which was previously waiting for results.
19402             </summary>
19403         </member>
19404         <member name="M:Microsoft.Build.BackEnd.IRequestBuilder.CancelRequest">
19405             <summary>
19406             Cancels an existing request.
19407             </summary>
19408         </member>
19409         <member name="M:Microsoft.Build.BackEnd.IRequestBuilder.BeginCancel">
19410             <summary>
19411             Starts to cancel an existing request.
19412             </summary>
19413             <remarks>
19414             This method should return immediately after signal the cancel event.
19415             "CancelRequest()" is equal to call "BeginCancel()" and "WaitForCancelCompletion()".
19416             We break "CancelRequest()" to 2 phases, so that we could signal cancel event
19417             to a bunch of requests without waiting, in order to optimize the "cancel build" scenario.
19418             </remarks>
19419         </member>
19420         <member name="M:Microsoft.Build.BackEnd.IRequestBuilder.WaitForCancelCompletion">
19421             <summary>
19422             Waits for the cancellation until it's completed, and cleans up the internal states.
19423             </summary>
19424         </member>
19425         <member name="T:Microsoft.Build.BackEnd.IRequestBuilderCallback">
19426             <summary>
19427             This interface is passed to objects which might need to call back into the request builder, such as the Target and Task builders
19428             </summary>
19429         </member>
19430         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.BuildProjects(System.String[],Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance}[],System.String[],System.String[],System.Boolean)">
19431             <summary>
19432             This method instructs the request builder to build the specified projects using the specified parameters.  This is
19433             what is ultimately used by something like an MSBuild task which needs to invoke a project-to-project reference.  IBuildEngine
19434             and IBuildEngine2 have BuildProjectFile methods which boil down to an invocation of this method as well.
19435             </summary>
19436             <param name="projectFiles">An array of projects to be built.</param>
19437             <param name="properties">The property groups to use for each project.  Must be the same number as there are project files.</param>
19438             <param name="toolsVersions">The tools version to use for each project.  Must be the same number as there are project files.</param>
19439             <param name="targets">The targets to be built.  Each project will be built with the same targets.</param>
19440             <param name="waitForResults">True to wait for the results </param>
19441             <returns>An Task representing the work which will be done.</returns>
19442         </member>
19443         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.BlockOnTargetInProgress(System.Int32,System.String)">
19444             <summary>
19445             This method instructs the request builder that the target builder is blocked on a target which is already in progress on the
19446             configuration due to another request.
19447             </summary>
19448             <param name="blockingRequestId">The request on which we are blocked.</param>
19449             <param name="blockingTarget">The target on which we are blocked.</param>
19450         </member>
19451         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.Yield">
19452             <summary>
19453             Instructs the RequestBuilder that it may yield its control of the node.
19454             </summary>
19455         </member>
19456         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.Reacquire">
19457             <summary>
19458             Instructs the RequestBuilder to suspend until the node is reacquired.
19459             </summary>
19460         </member>
19461         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.EnterMSBuildCallbackState">
19462             <summary>
19463             Instructs the RequestBuilder that next Build request from a task should post its request
19464             and immediately return so that the thread may be freed up.  May not be nested.
19465             </summary>
19466         </member>
19467         <member name="M:Microsoft.Build.BackEnd.IRequestBuilderCallback.ExitMSBuildCallbackState">
19468             <summary>
19469             Exits the previous MSBuild callback state.
19470             </summary>
19471         </member>
19472         <member name="T:Microsoft.Build.BackEnd.ITargetBuilder">
19473             <summary>
19474             Represents an object which can build targets for a project.
19475             </summary>
19476         </member>
19477         <member name="M:Microsoft.Build.BackEnd.ITargetBuilder.BuildTargets(Microsoft.Build.BackEnd.Logging.ProjectLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.IRequestBuilderCallback,System.String[],Microsoft.Build.BackEnd.Lookup,System.Threading.CancellationToken)">
19478             <summary>
19479             Builds the specified targets.
19480             </summary>
19481             <param name="projectLoggingContext">The logging context for the project.</param>
19482             <param name="entry">The BuildRequestEntry for which we are building targets.</param>
19483             <param name="callback">The callback to be used to handle new project build requests.</param>
19484             <param name="targets">The targets to build.</param>
19485             <param name="baseLookup">The Lookup containing all current items and properties for this target.</param>
19486             <param name="cancellationToken">The cancellation token used to cancel processing of targets.</param>
19487             <returns>A Task representing the work to be done.</returns>
19488         </member>
19489         <member name="T:Microsoft.Build.BackEnd.TaskExecutionMode">
19490             <summary>
19491             Flags indicating the mode in which the task builder should operate.
19492             </summary>
19493         </member>
19494         <member name="F:Microsoft.Build.BackEnd.TaskExecutionMode.Invalid">
19495             <summary>
19496             This entry is necessary to use the enum with binary math. It is never used outside 
19497             intermediate calculations.
19498             </summary>
19499         </member>
19500         <member name="F:Microsoft.Build.BackEnd.TaskExecutionMode.ExecuteTaskAndGatherOutputs">
19501             <summary>
19502             In this mode, the task engine actually runs the task and retrieves its outputs.
19503             </summary>
19504         </member>
19505         <member name="F:Microsoft.Build.BackEnd.TaskExecutionMode.InferOutputsOnly">
19506             <summary>
19507             In this mode, the task engine only infers the task's outputs from its &lt;Output&gt; tags.
19508             </summary>
19509         </member>
19510         <member name="T:Microsoft.Build.BackEnd.ITaskBuilder">
19511             <summary>
19512             Interface representing an object which can build tasks.
19513             </summary>
19514         </member>
19515         <member name="M:Microsoft.Build.BackEnd.ITaskBuilder.ExecuteTask(Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.ITargetBuilderCallback,Microsoft.Build.Execution.ProjectTargetInstanceChild,Microsoft.Build.BackEnd.TaskExecutionMode,Microsoft.Build.BackEnd.Lookup,Microsoft.Build.BackEnd.Lookup,System.Threading.CancellationToken)">
19516             <summary>
19517             Executes the specified task, batching it is necessary.
19518             </summary>
19519             <param name="targetLoggingContext">The logging context for the target</param>
19520             <param name="requestEntry">The build request entry</param>
19521             <param name="targetBuilderCallback">The callback to use for handling new build requests.</param>
19522             <param name="task">The node for the task</param>
19523             <param name="mode">The mode to use when executing the task.</param>
19524             <param name="lookupForInference">The lookup used when we are inferring outputs from inputs.</param>
19525             <param name="lookupForExecution">The lookup used when executing the task to get its outputs.</param>
19526             <param name="cancellationToken">The cancellation token used to cancel processing of the task.</param>
19527             <returns>A Task representing the work to be done.</returns>
19528         </member>
19529         <member name="T:Microsoft.Build.BackEnd.ItemBucket">
19530             <summary>
19531             This class represents a collection of items that are homogeneous w.r.t.
19532             a certain set of metadata.
19533             </summary>
19534         </member>
19535         <member name="F:Microsoft.Build.BackEnd.ItemBucket._expander">
19536             <summary>
19537             This single object contains all of the data necessary to perform expansion of metadata, properties,
19538             and items.
19539             </summary>
19540         </member>
19541         <member name="F:Microsoft.Build.BackEnd.ItemBucket._metadata">
19542             <summary>
19543             Metadata in this bucket
19544             </summary>
19545         </member>
19546         <member name="F:Microsoft.Build.BackEnd.ItemBucket._lookup">
19547             <summary>
19548             The items for this bucket.
19549             </summary>
19550         </member>
19551         <member name="F:Microsoft.Build.BackEnd.ItemBucket._bucketSequenceNumber">
19552             <summary>
19553             When buckets are being created for batching purposes, this indicates which order the 
19554             buckets were created in, so that the target/task being batched gets called with the items
19555             in the same order as they were declared in the project file.  For example, the first
19556             bucket created gets bucketSequenceNumber=0, the second bucket created gets 
19557             bucketSequenceNumber=1, etc.
19558             </summary>
19559         </member>
19560         <member name="F:Microsoft.Build.BackEnd.ItemBucket._lookupEntry">
19561             <summary>
19562             The entry we enter when we create the bucket.
19563             </summary>
19564         </member>
19565         <member name="M:Microsoft.Build.BackEnd.ItemBucket.#ctor">
19566             <summary>
19567             Private default constructor disallows parameterless instantiation.
19568             </summary>
19569         </member>
19570         <member name="M:Microsoft.Build.BackEnd.ItemBucket.#ctor(System.Collections.Generic.ICollection{System.String},System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Build.BackEnd.Lookup,System.Int32)">
19571             <summary>
19572             Creates an instance of this class using the given bucket data.
19573             </summary>
19574             <param name="itemNames">Item types being batched on: null indicates no batching is occurring</param>
19575             <param name="metadata">Hashtable of item metadata values: null indicates no batching is occurring</param>
19576             <param name="lookup">The <see cref="P:Microsoft.Build.BackEnd.ItemBucket.Lookup"/> to use for the items in the bucket.</param>
19577             <param name="bucketSequenceNumber">A sequence number indication what order the buckets were created in.</param>
19578         </member>
19579         <member name="M:Microsoft.Build.BackEnd.ItemBucket.CompareTo(System.Object)">
19580             <summary>
19581             Compares this item bucket against the given one. The comparison is
19582             solely based on the values of the item metadata in the buckets.
19583             </summary>
19584             <param name="obj"></param>
19585             <returns>
19586             -1, if this bucket is "less than" the second one
19587              0, if this bucket is equivalent to the second one
19588             +1, if this bucket is "greater than" the second one
19589             </returns>
19590         </member>
19591         <member name="M:Microsoft.Build.BackEnd.ItemBucket.GetDummyBucketForComparisons(System.Collections.Generic.Dictionary{System.String,System.String})">
19592             <summary>
19593             Constructs a token bucket object that can be compared against other
19594             buckets. This dummy bucket is a patently invalid bucket, and cannot
19595             be used for any other operations besides comparison.
19596             </summary>
19597             <remarks>
19598             PERF NOTE: A dummy bucket is intentionally very light-weight, and it
19599             allocates a minimum of memory compared to a real bucket.
19600             </remarks>
19601             <returns>An item bucket that is invalid for everything except comparisons.</returns>
19602         </member>
19603         <member name="P:Microsoft.Build.BackEnd.ItemBucket.Expander">
19604             <summary>
19605             Returns the object that knows how to handle all kinds of expansion for this bucket.
19606             </summary>
19607         </member>
19608         <member name="P:Microsoft.Build.BackEnd.ItemBucket.BucketSequenceNumber">
19609             <summary>
19610             When buckets are being created for batching purposes, this indicates which order the 
19611             buckets were created in, so that the target/task being batched gets called with the items
19612             in the same order as they were declared in the project file.  For example, the first
19613             bucket created gets bucketSequenceNumber=0, the second bucket created gets 
19614             bucketSequenceNumber=1, etc.
19615             </summary>
19616         </member>
19617         <member name="P:Microsoft.Build.BackEnd.ItemBucket.Lookup">
19618             <summary>
19619             The items for this bucket.
19620             </summary>
19621         </member>
19622         <member name="M:Microsoft.Build.BackEnd.ItemBucket.AddItem(Microsoft.Build.Execution.ProjectItemInstance)">
19623             <summary>
19624             Adds a new item to this bucket.
19625             </summary>
19626         </member>
19627         <member name="M:Microsoft.Build.BackEnd.ItemBucket.LeaveScope">
19628             <summary>
19629             Leaves the lookup scope created for this bucket.
19630             </summary>
19631         </member>
19632         <member name="T:Microsoft.Build.BackEnd.Lookup">
19633             <summary>
19634             Contains a list of item and property collections, optimized to allow
19635                 - very fast "cloning"
19636                 - quick lookups
19637                 - scoping down of item subsets in nested scopes (useful for batches)
19638                 - isolation of adds, removes, modifies, and property sets inside nested scopes
19639                 
19640             When retrieving the item group for an item type, each table is consulted in turn,
19641             starting with the primary table (the "top" or "innermost" table), until a table is found that has an entry for that type.
19642             When an entry is found, it is returned without looking deeper.
19643             This makes it possible to let callers see only a subset of items without affecting or cloning the original item groups,
19644             by populating a scope with item groups that are empty or contain subsets of items in lower scopes.
19645             
19646             Instances of this class can be cloned with Clone() to share between batches.
19647             
19648             When EnterScope() is called, a fresh primary table is inserted, and all adds and removes will be invisible to
19649             any clones made before the scope was entered and anyone who has access to item groups in lower tables.
19650             
19651             When LeaveScope() is called, the primary tables are merged into the secondary tables, and the primary tables are discarded.
19652             This makes the adds and removes in the primary tables visible to clones made during the previous scope.
19653             
19654             Scopes can be populated (before Adds, Removes, and Lookups) using PopulateWithItem(). This reduces the set of items of a particular
19655             type that are visible in a scope, because lookups of items of this type will stop at this level and see the subset, rather than the
19656             larger set in a scope below.
19657             
19658             Items can be added or removed by calling AddNewItem() and RemoveItem(). Only the primary level is modified.
19659             When items are added or removed they enter into a primary table exclusively for adds or removes, instead of the main primary table.
19660             This allows the adds and removes to be applied to the scope below on LeaveScope(). Even when LeaveScope() is called, the adds and removes
19661             stay in their separate add and remove tables: if they were applied to a main table, they could truncate the downward traversal performed by lookups
19662             and hide items in a lower main table. Only on the final call of LeaveScope() can all adds and removes be applied to the outermost table, i.e., the project.
19663             
19664             Much the same applies to properties.
19665             
19666             For sensible semantics, only the current primary scope can be modified at any point.
19667             </summary>
19668         </member>
19669         <member name="F:Microsoft.Build.BackEnd.Lookup._lookupScopes">
19670             <summary>
19671             Ordered list of scope used for lookup.
19672             Each scope contains multiple tables:
19673              - the main item table (populated with subsets of lists, in order to create batches)
19674              - the add table (items that have been added during execution)
19675              - the remove table (items that have been removed during execution)
19676              - the modify table (item metadata modifications)
19677              - the main property table (populated with properties that are visible in this scope)
19678              - the property set table (changes made to properties)
19679             All have to be consulted to find the items and properties available in the current scope.
19680             We have to keep them separate, because the adds and removes etc need to be applied to the table
19681             below when we leave a scope.
19682             </summary>
19683         </member>
19684         <member name="F:Microsoft.Build.BackEnd.Lookup._cloneTable">
19685             <summary>
19686             When we are asked for all the items of a certain type using the GetItems() method, we may have to handle items
19687             that have been modified earlier with ModifyItems(). These pending modifications can't be applied immediately to
19688             the item because that would affect other batches. Instead we clone the item, apply the modification, and hand that over.
19689             The problem is that later we might get asked to remove or modify that item. We want to make sure that we record that as
19690             a remove or modify of the real item, not the clone we handed over. So we keep a lookup of (clone, original) to consult.
19691             </summary>
19692         </member>
19693         <member name="F:Microsoft.Build.BackEnd.Lookup._readOnlyLookup">
19694             <summary>
19695             Read-only wrapper around this lookup.
19696             </summary>
19697         </member>
19698         <member name="F:Microsoft.Build.BackEnd.Lookup._globalsForDebugging">
19699             <summary>
19700             A dictionary of named values for debugger display only. If 
19701             not debugging, this should be null.
19702             </summary>
19703         </member>
19704         <member name="M:Microsoft.Build.BackEnd.Lookup.#ctor(Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Collections.Generic.IDictionary{System.String,System.Object})">
19705             <summary>
19706             Construct a lookup over specified items and properties.
19707             Accept a dictionary of named values for debugger display only. If 
19708             not debugging, this should be null.
19709             </summary>
19710         </member>
19711         <member name="M:Microsoft.Build.BackEnd.Lookup.#ctor(Microsoft.Build.BackEnd.Lookup)">
19712             <summary>
19713             Copy constructor (called via Clone() - clearer semantics)
19714             </summary>
19715         </member>
19716         <member name="P:Microsoft.Build.BackEnd.Lookup.ReadOnlyLookup">
19717             <summary>
19718             Returns a read-only wrapper around this lookup
19719             </summary>
19720         </member>
19721         <member name="P:Microsoft.Build.BackEnd.Lookup.GlobalsForDebugging">
19722             <summary>
19723             A dictionary of named values for debugger display only. If 
19724             not debugging, this should be null.
19725             </summary>
19726         </member>
19727         <member name="M:Microsoft.Build.BackEnd.Lookup.GetPropertyOverrideMessages(System.Collections.Generic.Dictionary{System.String,System.String})">
19728             <summary>
19729             Compares the primary property sets of the passed in lookups to determine if there are properties which are shared between
19730             the lookups. We find these shared property names because this indicates that the current Lookup is overriding the property value of another Lookup
19731             When an override is detected a messages is generated to inform the users that the property is being changed between batches
19732             </summary>
19733             <returns>array or error messages to log </returns>
19734         </member>
19735         <member name="M:Microsoft.Build.BackEnd.Lookup.Clone">
19736             <summary>
19737             Clones this object, to create another one with its own list, but the same contents.
19738             Then the clone can enter scope and have its own fresh primary list without affecting the other object.
19739             </summary>
19740         </member>
19741         <member name="M:Microsoft.Build.BackEnd.Lookup.EnterScope(System.String)">
19742             <summary>
19743             Enters the scope using the specified description.
19744             Callers keep the scope in order to pass it to <see cref="M:Microsoft.Build.BackEnd.Lookup.LeaveScope(Microsoft.Build.BackEnd.Lookup.Scope)">LeaveScope</see>.
19745             </summary>
19746         </member>
19747         <member name="M:Microsoft.Build.BackEnd.Lookup.LeaveScope(Microsoft.Build.BackEnd.Lookup.Scope)">
19748             <summary>
19749             Leaves the specified scope, which must be the active one.
19750             Moves all tables up one: the tertiary table becomes the secondary table, and so on. The primary
19751             and secondary table are merged. This has the effect of "applying" the adds applied to the primary
19752             table into the secondary table.
19753             </summary>
19754         </member>
19755         <member name="M:Microsoft.Build.BackEnd.Lookup.MergeScopeIntoNotLastScope">
19756             <summary>
19757             Leaving an arbitrary scope, just merging all the adds, removes, modifies, and sets into the scope below.
19758             </summary>
19759         </member>
19760         <member name="M:Microsoft.Build.BackEnd.Lookup.MergeScopeIntoLastScope">
19761             <summary>
19762             Merge the current scope down into the base scope. This means applying the adds, removes, modifies, and sets
19763             directly into the item and property tables in this scope.
19764             </summary>
19765         </member>
19766         <member name="M:Microsoft.Build.BackEnd.Lookup.GetProperty(System.String,System.Int32,System.Int32)">
19767             <summary>
19768             Gets the effective property for the current scope.
19769             taking the name from the provided string within the specified start and end indexes.
19770             If no match is found, returns null.
19771             Caller must not modify the property returned.
19772             </summary>
19773         </member>
19774         <member name="M:Microsoft.Build.BackEnd.Lookup.GetProperty(System.String)">
19775             <summary>
19776             Gets the effective property for the current scope.
19777             If no match is found, returns null.
19778             Caller must not modify the property returned.
19779             </summary>
19780         </member>
19781         <member name="M:Microsoft.Build.BackEnd.Lookup.GetItems(System.String)">
19782             <summary>
19783             Gets the items of the specified type that are visible in the current scope.
19784             If no match is found, returns an empty list.
19785             Caller must not modify the group returned.
19786             </summary>
19787         </member>
19788         <member name="M:Microsoft.Build.BackEnd.Lookup.PopulateWithItems(System.String,System.Collections.Generic.ICollection{Microsoft.Build.Execution.ProjectItemInstance})">
19789             <summary>
19790             Populates with an item group. This is done before the item lookup is used in this scope.
19791             Assumes all the items in the group have the same, provided, type.
19792             Assumes there is no item group of this type in the primary table already.
19793             Should be used only by batching buckets, and if no items are passed,
19794             explicitly stores a marker for this item type indicating this.
19795             </summary>
19796         </member>
19797         <member name="M:Microsoft.Build.BackEnd.Lookup.PopulateWithItem(Microsoft.Build.Execution.ProjectItemInstance)">
19798             <summary>
19799             Populates with an item. This is done before the item lookup is used in this scope.
19800             There may or may not already be a group for it.
19801             </summary>
19802         </member>
19803         <member name="M:Microsoft.Build.BackEnd.Lookup.SetProperty(Microsoft.Build.Execution.ProjectPropertyInstance)">
19804             <summary>
19805             Apply a property to this scope.
19806             </summary>
19807         </member>
19808         <member name="M:Microsoft.Build.BackEnd.Lookup.AddNewItemsOfItemType(System.String,System.Collections.Generic.ICollection{Microsoft.Build.Execution.ProjectItemInstance},System.Boolean)">
19809             <summary>
19810             Implements a true add, an item that has been created in a batch.
19811             </summary>
19812         </member>
19813         <member name="M:Microsoft.Build.BackEnd.Lookup.AddNewItem(Microsoft.Build.Execution.ProjectItemInstance)">
19814             <summary>
19815             Implements a true add, an item that has been created in a batch.
19816             </summary>
19817         </member>
19818         <member name="M:Microsoft.Build.BackEnd.Lookup.RemoveItems(System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance})">
19819             <summary>
19820             Remove a bunch of items from this scope
19821             </summary>
19822         </member>
19823         <member name="M:Microsoft.Build.BackEnd.Lookup.RemoveItem(Microsoft.Build.Execution.ProjectItemInstance)">
19824             <summary>
19825             Remove an item from this scope
19826             </summary>
19827         </member>
19828         <member name="M:Microsoft.Build.BackEnd.Lookup.ModifyItems(System.String,System.Collections.Generic.ICollection{Microsoft.Build.Execution.ProjectItemInstance},Microsoft.Build.BackEnd.Lookup.MetadataModifications)">
19829             <summary>
19830             Modifies items in this scope with the same set of metadata modifications.
19831             Assumes all the items in the group have the same, provided, type.
19832             </summary>
19833         </member>
19834         <member name="M:Microsoft.Build.BackEnd.Lookup.ApplyModifies(Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance},System.Collections.Generic.Dictionary{Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.BackEnd.Lookup.MetadataModifications})">
19835             <summary>
19836             Apply modifies to a temporary result group.
19837             Items to be modified are virtual-cloned so the original isn't changed.
19838             </summary>
19839         </member>
19840         <member name="M:Microsoft.Build.BackEnd.Lookup.ApplyMetadataModificationsToItem(Microsoft.Build.BackEnd.Lookup.MetadataModifications,Microsoft.Build.Execution.ProjectItemInstance)">
19841             <summary>
19842             Applies the specified modifications to the supplied item.
19843             </summary>
19844         </member>
19845         <member name="M:Microsoft.Build.BackEnd.Lookup.RetrieveOriginalFromCloneTable(Microsoft.Build.Execution.ProjectItemInstance)">
19846             <summary>
19847             Look up the "real" item by using its clone, and return the real item.
19848             See <see cref="F:Microsoft.Build.BackEnd.Lookup._cloneTable"/> for explanation of the clone table.
19849             </summary>
19850         </member>
19851         <member name="M:Microsoft.Build.BackEnd.Lookup.ApplyModificationsToTable(Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance},System.String,System.Collections.Generic.Dictionary{Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.BackEnd.Lookup.MetadataModifications})">
19852             <summary>
19853             Applies a list of modifications to the appropriate <see cref="T:Microsoft.Build.Collections.ItemDictionary`1" /> in a main table.
19854             If any modifications conflict, these modifications win.
19855             </summary>
19856         </member>
19857         <member name="M:Microsoft.Build.BackEnd.Lookup.MergeModificationsIntoModificationTable(System.Collections.Generic.Dictionary{Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.BackEnd.Lookup.MetadataModifications},System.Collections.Generic.KeyValuePair{Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.BackEnd.Lookup.MetadataModifications},Microsoft.Build.BackEnd.Lookup.ModifyMergeType)">
19858             <summary>
19859             Applies a modification to an item in a table of modifications.
19860             If the item already exists in the table, merges in the modifications; if there is a conflict
19861             the mergeType indicates which should win.
19862             </summary>
19863         </member>
19864         <member name="M:Microsoft.Build.BackEnd.Lookup.MustNotBeOuterScope">
19865             <summary>
19866             Add/remove/modify/set directly on an outer scope would need to be handled separately - it would apply
19867             directly to the main tables. Our code isn't expected to do this.
19868             </summary>
19869         </member>
19870         <member name="T:Microsoft.Build.BackEnd.Lookup.ModifyMergeType">
19871             <summary>
19872             When merging metadata, we can deal with a conflict two different ways:
19873             FirstWins = any previous metadata with the name takes precedence
19874             SecondWins = the new metadata with the name takes precedence
19875             </summary>
19876         </member>
19877         <member name="T:Microsoft.Build.BackEnd.Lookup.MetadataModifications">
19878             <summary>
19879             A class representing a set of additions, modifications or removal of metadata from items.
19880             </summary>
19881         </member>
19882         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModifications._keepOnlySpecified">
19883             <summary>
19884             Flag indicating if the modifications should be interpreted such that the lack of an explicit entry for a metadata name
19885             means that that metadata should be removed.
19886             </summary>
19887         </member>
19888         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModifications._modifications">
19889             <summary>
19890             A set of explicitly-specified modifications.
19891             </summary>
19892         </member>
19893         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.#ctor(System.Boolean)">
19894             <summary>
19895             Constructor.
19896             </summary>
19897             <param name="keepOnlySpecified">When true, metadata which is not explicitly-specified here but which is present on the target
19898             item should be removed.  When false, only explicitly-specified modifications apply.</param>
19899         </member>
19900         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.#ctor(Microsoft.Build.BackEnd.Lookup.MetadataModifications)">
19901             <summary>
19902             Cloning constructor.
19903             </summary>
19904             <param name="other">The metadata modifications to clone.</param>
19905         </member>
19906         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.Clone">
19907             <summary>
19908             Clones this modification set.
19909             </summary>
19910             <returns>A copy of the modifications.</returns>
19911         </member>
19912         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.HasChanges">
19913             <summary>
19914             A flag indicating whether or not there are any changes which might apply.
19915             </summary>
19916         </member>
19917         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.KeepOnlySpecified">
19918             <summary>
19919             A flag indicating whether only those metadata explicitly-specified should be retained on a target item.
19920             </summary>
19921         </member>
19922         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.ApplyModifications(Microsoft.Build.BackEnd.Lookup.MetadataModifications)">
19923             <summary>
19924             Applies the modifications from the specified modifications to this one, performing a proper merge.
19925             </summary>
19926             <param name="other">The set of metadata modifications to merge into this one.</param>
19927         </member>
19928         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.ContainsExplicitModification(System.String)">
19929             <summary>
19930             Returns true if this block contains an explicitly-specified modification for the provided metadata name.
19931             </summary>
19932             <param name="metadataName">The name of the metadata.</param>
19933             <returns>True if there is an explicit modification for this metadata, false otherwise.</returns>
19934             <remarks>The return value of this method is unaffected by the <see cref="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.KeepOnlySpecified"/> property.</remarks>
19935         </member>
19936         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModifications.Add(System.String,System.String)">
19937             <summary>
19938             Adds metadata to the modification table.
19939             </summary>
19940             <param name="metadataName">The name of the metadata to add (or change) in the target item.</param>
19941             <param name="metadataValue">The metadata value.</param>
19942         </member>
19943         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.ExplicitModifications">
19944             <summary>
19945             Provides an enumeration of the explicit metadata modifications.
19946             </summary>
19947         </member>
19948         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.Item(System.String)">
19949             <summary>
19950             Sets or retrieves a modification from the modifications table.
19951             </summary>
19952             <param name="metadataName">The metadata name.</param>
19953             <returns>If <see cref="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.KeepOnlySpecified"/> is true, this will return a modification with <see cref="P:Microsoft.Build.BackEnd.Lookup.MetadataModification.Remove"/>
19954             set to true if the metadata has no other explicitly-specified modification.  Otherwise it will return only the explicitly-specified
19955             modification if one exists.</returns>
19956             <exception cref="T:System.Collections.Generic.KeyNotFoundException">When <see cref="P:Microsoft.Build.BackEnd.Lookup.MetadataModifications.KeepOnlySpecified"/> if false, this is thrown if the metadata
19957             specified does not exist when attempting to retrieve a metadata modification.</exception>
19958         </member>
19959         <member name="T:Microsoft.Build.BackEnd.Lookup.ModificationType">
19960             <summary>
19961             A type of metadata modification.
19962             </summary>
19963         </member>
19964         <member name="F:Microsoft.Build.BackEnd.Lookup.ModificationType.Keep">
19965             <summary>
19966             Indicates the metadata value should be kept unchanged.
19967             </summary>
19968         </member>
19969         <member name="F:Microsoft.Build.BackEnd.Lookup.ModificationType.Update">
19970             <summary>
19971             Indicates the metadata value should be changed.
19972             </summary>
19973         </member>
19974         <member name="F:Microsoft.Build.BackEnd.Lookup.ModificationType.Remove">
19975             <summary>
19976             Indicates the metadata value should be removed.
19977             </summary>
19978         </member>
19979         <member name="T:Microsoft.Build.BackEnd.Lookup.MetadataModification">
19980             <summary>
19981             Represents a modification for a single metadata.
19982             </summary>
19983         </member>
19984         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModification._remove">
19985             <summary>
19986             When true, indicates the metadata should be removed from the target item.
19987             </summary>
19988         </member>
19989         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModification._newValue">
19990             <summary>
19991             The value to which the metadata should be set.  If null, the metadata value should be retained unmodified.
19992             </summary>
19993         </member>
19994         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModification.s_keepModification">
19995             <summary>
19996             A modification which indicates the metadata value should be retained without modification.
19997             </summary>
19998         </member>
19999         <member name="F:Microsoft.Build.BackEnd.Lookup.MetadataModification.s_removeModification">
20000             <summary>
20001             A modification which indicates the metadata should be removed.
20002             </summary>
20003         </member>
20004         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModification.#ctor(Microsoft.Build.BackEnd.Lookup.ModificationType)">
20005             <summary>
20006             Constructor for metadata modifications of type Keep or Remove.
20007             </summary>
20008             <param name="modificationType">The type of modification to make.</param>
20009         </member>
20010         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModification.#ctor(System.String)">
20011             <summary>
20012             Constructor for metadata modifications of type Update.
20013             </summary>
20014             <param name="value">The new value for the metadata.</param>
20015         </member>
20016         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModification.CreateFromNoChange">
20017             <summary>
20018             Creates a metadata modification of type Keep.
20019             </summary>
20020             <returns>The metadata modification.</returns>
20021         </member>
20022         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModification.CreateFromNewValue(System.String)">
20023             <summary>
20024             Creates a metadata modification of type Update with the specified metadata value.
20025             </summary>
20026             <param name="newValue">The new metadata value.</param>
20027             <returns>The metadata modification.</returns>
20028         </member>
20029         <member name="M:Microsoft.Build.BackEnd.Lookup.MetadataModification.CreateFromRemove">
20030             <summary>
20031             Creates a metadata modification of type Remove.
20032             </summary>
20033             <returns>The metadata modification.</returns>
20034         </member>
20035         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModification.Remove">
20036             <summary>
20037             When true, this modification indicates the associated metadata should be removed.
20038             </summary>
20039         </member>
20040         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModification.KeepValue">
20041             <summary>
20042             When true, this modification indicates the associated metadata should retain its existing value.
20043             </summary>
20044         </member>
20045         <member name="P:Microsoft.Build.BackEnd.Lookup.MetadataModification.NewValue">
20046             <summary>
20047             The new value of the metadata.  Only valid when <see cref="P:Microsoft.Build.BackEnd.Lookup.MetadataModification.Remove"/> is false.
20048             </summary>
20049         </member>
20050         <member name="T:Microsoft.Build.BackEnd.Lookup.Scope">
20051             <summary>
20052             Represents an entry in the lookup list.
20053             Class rather than a struct so that it can be modified in the list.
20054             </summary>
20055         </member>
20056         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._items">
20057             <summary>
20058             Contains all of the original items at this level in the Lookup
20059             </summary>
20060         </member>
20061         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._adds">
20062             <summary>
20063             Contains all of the items which have been added at this level in the Lookup
20064             </summary>
20065         </member>
20066         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._removes">
20067             <summary>
20068             Contails all of the items which have been removed at this level in the Lookup
20069             </summary>
20070         </member>
20071         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._modifies">
20072             <summary>
20073             Contains all of the metadata which has been changed for items at this level in the Lookup.
20074             Schema: { K=type, V= { K=item, V=table of { K=metadata name, V=metadata value }}}
20075             </summary>
20076         </member>
20077         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._properties">
20078             <summary>
20079             Contains all of the original properties at this level in the Lookup
20080             </summary>
20081         </member>
20082         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._propertySets">
20083             <summary>
20084             Contains all of the properties which have been set at this level or above in the Lookup
20085             </summary>
20086         </member>
20087         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._threadIdThatEnteredScope">
20088             <summary>
20089             The managed thread id which entered this scope.
20090             </summary>
20091         </member>
20092         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._description">
20093             <summary>
20094             A description of this scope, for error checking
20095             </summary>
20096         </member>
20097         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._owningLookup">
20098             <summary>
20099             The lookup which owns this scope, for error checking.
20100             </summary>
20101         </member>
20102         <member name="F:Microsoft.Build.BackEnd.Lookup.Scope._truncateLookupsAtThisScope">
20103             <summary>
20104             Indicates whether or not further levels in the Lookup should be consulted beyond this one
20105             to find the actual value for the desired item or property.
20106             </summary>
20107         </member>
20108         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Items">
20109             <summary>
20110             The main table, populated with items that
20111             are initially visible in this scope. Does not 
20112             include adds or removes unless it's the table in 
20113             the outermost scope.
20114             </summary>
20115         </member>
20116         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Adds">
20117             <summary>
20118             Adds made in this scope or above.
20119             </summary>
20120         </member>
20121         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Removes">
20122             <summary>
20123             Removes made in this scope or above.
20124             </summary>
20125         </member>
20126         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Modifies">
20127             <summary>
20128             Modifications made in this scope or above.
20129             </summary>
20130         </member>
20131         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Properties">
20132             <summary>
20133             The main property table, populated with properties
20134             that are initially visible in this scope. Does not
20135             include sets unless it's the table in the outermost scope.
20136             </summary>
20137         </member>
20138         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.PropertySets">
20139             <summary>
20140             Properties set in this scope or above.
20141             </summary>
20142         </member>
20143         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.ThreadIdThatEnteredScope">
20144             <summary>
20145             ID of thread owning this scope
20146             </summary>
20147         </member>
20148         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.TruncateLookupsAtThisScope">
20149             <summary>
20150             Whether to stop lookups going beyond this scope downwards
20151             </summary>
20152         </member>
20153         <member name="P:Microsoft.Build.BackEnd.Lookup.Scope.Description">
20154             <summary>
20155             The description assigned to this scope.
20156             </summary>
20157         </member>
20158         <member name="M:Microsoft.Build.BackEnd.Lookup.Scope.LeaveScope">
20159             <summary>
20160             Leaves the current lookup scope.
20161             </summary>
20162         </member>
20163         <member name="T:Microsoft.Build.BackEnd.ReadOnlyLookup">
20164             <summary>
20165             Read-only wrapper around a lookup.
20166             Passed to Expander and ItemExpander, which only need to
20167             use a lookup in a read-only fashion, thus increasing 
20168             encapsulation of the data in the Lookup.
20169             </summary>
20170         </member>
20171         <member name="T:Microsoft.Build.BackEnd.RequestBuilder">
20172             <summary>
20173             Implementation of IRequestBuilder
20174             </summary>
20175         </member>
20176         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._terminateEvent">
20177             <summary>
20178             The event used to signal that this request should immediately terminate.
20179             </summary>
20180         </member>
20181         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._continueEvent">
20182             <summary>
20183             The event used to signal that this request should wake up from its wait state.
20184             </summary>
20185         </member>
20186         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._continueResults">
20187             <summary>
20188             The results used when a build request entry continues.
20189             </summary>
20190         </member>
20191         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._requestTask">
20192             <summary>
20193             The task representing the currently-executing build request.
20194             </summary>
20195         </member>
20196         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._cancellationTokenSource">
20197             <summary>
20198             The cancellation token source for the currently-executing build request.
20199             </summary>
20200         </member>
20201         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._requestEntry">
20202             <summary>
20203             The build request entry being built.
20204             </summary>
20205         </member>
20206         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._componentHost">
20207             <summary>
20208             The component host.
20209             </summary>
20210         </member>
20211         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._nodeLoggingContext">
20212             <summary>
20213             The node logging context
20214             </summary>
20215         </member>
20216         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._projectLoggingContext">
20217             <summary>
20218             The project logging context
20219             </summary>
20220         </member>
20221         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._targetBuilder">
20222             <summary>
20223             The target builder.
20224             </summary>
20225         </member>
20226         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._blockType">
20227             <summary>
20228             Block type
20229             </summary>
20230         </member>
20231         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._inMSBuildCallback">
20232             <summary>
20233             Flag indicating we are in an MSBuild callback
20234             </summary>
20235         </member>
20236         <member name="F:Microsoft.Build.BackEnd.RequestBuilder._isZombie">
20237             <summary>
20238             Flag indicating whether this request builder has been zombied by a cancellation request.
20239             </summary>
20240         </member>
20241         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.#ctor">
20242             <summary>
20243             Creates a new request builder.
20244             </summary>
20245         </member>
20246         <member name="E:Microsoft.Build.BackEnd.RequestBuilder.OnNewBuildRequests">
20247             <summary>
20248             The event raised when a new build request should be issued.
20249             </summary>
20250         </member>
20251         <member name="E:Microsoft.Build.BackEnd.RequestBuilder.OnBuildRequestCompleted">
20252             <summary>
20253             The event raised when the build request has completed.
20254             </summary>
20255         </member>
20256         <member name="E:Microsoft.Build.BackEnd.RequestBuilder.OnBuildRequestBlocked">
20257             <summary>
20258             The event raised when the build request has completed.
20259             </summary>
20260         </member>
20261         <member name="T:Microsoft.Build.BackEnd.RequestBuilder.BlockType">
20262             <summary>
20263             The current block type
20264             </summary>
20265         </member>
20266         <member name="F:Microsoft.Build.BackEnd.RequestBuilder.BlockType.BlockedOnTargetInProgress">
20267             <summary>
20268             We are blocked waiting on a target in progress.
20269             </summary>
20270         </member>
20271         <member name="F:Microsoft.Build.BackEnd.RequestBuilder.BlockType.BlockedOnChildRequests">
20272             <summary>
20273             We are blocked waiting for results from child requests.
20274             </summary>
20275         </member>
20276         <member name="F:Microsoft.Build.BackEnd.RequestBuilder.BlockType.Yielded">
20277             <summary>
20278             We are blocked because we have yielded control
20279             </summary>
20280         </member>
20281         <member name="F:Microsoft.Build.BackEnd.RequestBuilder.BlockType.Unblocked">
20282             <summary>
20283             We are not blocked at all.
20284             </summary>
20285         </member>
20286         <member name="P:Microsoft.Build.BackEnd.RequestBuilder.RequestEntry">
20287             <summary>
20288             Retrieves the request entry associated with this RequestBuilder.
20289             </summary>
20290         </member>
20291         <member name="P:Microsoft.Build.BackEnd.RequestBuilder.HasActiveBuildRequest">
20292             <summary>
20293             Returns true if this RequestBuilder has an active build request
20294             </summary>
20295         </member>
20296         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BuildRequest(Microsoft.Build.BackEnd.Logging.NodeLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry)">
20297             <summary>
20298             Starts a build request
20299             </summary>
20300             <param name="loggingContext">The logging context for the node.</param>
20301             <param name="entry">The entry to build.</param>
20302         </member>
20303         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ContinueRequest">
20304             <summary>
20305             Continues a build request
20306             </summary>
20307         </member>
20308         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.CancelRequest">
20309             <summary>
20310             Terminates the build request
20311             </summary>
20312             <remarks>
20313             Once we have entered this method, no more methods will be invoked on this class (save ShutdownComponent)
20314             as we should no longer be receiving any messages from the BuildManager.
20315             </remarks>
20316         </member>
20317         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BeginCancel">
20318             <summary>
20319             Starts to cancel an existing request.
20320             </summary>
20321         </member>
20322         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.WaitForCancelCompletion">
20323             <summary>
20324             Waits for the cancellation until it's completed, and cleans up the internal states.
20325             </summary>
20326         </member>
20327         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BuildProjects(System.String[],Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance}[],System.String[],System.String[],System.Boolean)">
20328             <summary>
20329             This method instructs the request builder to build the specified projects using the specified parameters.  This is
20330             what is ultimately used by something like an MSBuild task which needs to invoke a project-to-project reference.  IBuildEngine
20331             and IBuildEngine2 have BuildProjectFile methods which boil down to an invocation of this method as well.
20332             </summary>
20333             <param name="projectFiles">An array of projects to be built.</param>
20334             <param name="properties">The property groups to use for each project.  Must be the same number as there are project files.</param>
20335             <param name="toolsVersions">The tools version to use for each project.  Must be the same number as there are project files.</param>
20336             <param name="targets">The targets to be built.  Each project will be built with the same targets.</param>
20337             <param name="waitForResults">True to wait for the results </param>
20338             <returns>True if the requests were satisfied, false if they were aborted.</returns>
20339         </member>
20340         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BlockOnTargetInProgress(System.Int32,System.String)">
20341             <summary>
20342             This method is called when the current request needs to build a target which is already in progress on this configuration, but which
20343             is being built by another request.
20344             </summary>
20345             <param name="blockingGlobalRequestId">The id of the request on which we are blocked.</param>
20346             <param name="blockingTarget">The target on which we are blocked.</param>
20347         </member>
20348         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.Yield">
20349             <summary>
20350             Yields the node.
20351             </summary>
20352         </member>
20353         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.Reacquire">
20354             <summary>
20355             Waits for the node to be reacquired.
20356             </summary>
20357         </member>
20358         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.EnterMSBuildCallbackState">
20359             <summary>
20360             Enters the state where we are going to perform a build request callback.
20361             </summary>
20362         </member>
20363         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ExitMSBuildCallbackState">
20364             <summary>
20365             Exits the build request callback state.
20366             </summary>
20367         </member>
20368         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
20369             <summary>
20370             Sets the component host.
20371             </summary>
20372             <param name="host">The component host.</param>
20373         </member>
20374         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ShutdownComponent">
20375             <summary>
20376             Shuts down this component
20377             </summary>
20378         </member>
20379         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.IsBuilderUsingLegacyThreadingSemantics(Microsoft.Build.BackEnd.IBuildComponentHost,Microsoft.Build.BackEnd.BuildRequestEntry)">
20380             <summary>
20381             Returns true if this builder is using legacy threading semantics.
20382             </summary>
20383         </member>
20384         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.WaitWithBuilderThreadStart(System.Threading.WaitHandle[],System.Boolean,Microsoft.Build.Execution.LegacyThreadingData,System.Int32)">
20385             <summary>
20386             This method waits for the specified handles, but will also spawn a request builder "thread" if that event is set.
20387             This mechanism is used to implement running RequestBuilder threads on the main UI thread in VS.
20388             </summary>
20389             <returns>The index of the handle which was signaled.</returns>
20390         </member>
20391         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
20392             <summary>
20393             Class factory for component creation.
20394             </summary>
20395         </member>
20396         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.StartBuilderThread">
20397             <summary>
20398             Starts the thread used to build
20399             </summary>
20400         </member>
20401         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.SetCommonWorkerThreadParameters">
20402             <summary>
20403             Set some parameters common to all worker threads we use
20404             </summary>
20405         </member>
20406         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.VerifyEntryInReadyState">
20407             <summary>
20408             Asserts that the entry is in the ready state.
20409             </summary>
20410         </member>
20411         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.VerifyEntryInActiveState">
20412             <summary>
20413             Asserts that the entry is in the active state.
20414             </summary>
20415         </member>
20416         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.RequestThreadProc(System.Boolean)">
20417             <summary>
20418             The entry point for the request builder thread.
20419             </summary>
20420         </member>
20421         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BuildAndReport">
20422             <summary>
20423             Launch the project and gather the results, reporting them back to the BuildRequestEngine.
20424             </summary>
20425         </member>
20426         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ReportResultAndCleanUp(Microsoft.Build.Execution.BuildResult)">
20427             <summary>
20428             Reports this result to the engine and cleans up.
20429             </summary>
20430         </member>
20431         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.StartNewBuildRequests(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[])">
20432             <summary>
20433             This is called back when this request needs to issue new requests and possible wait on them.  This method will
20434             block the builder's thread if any of the requests require us to wait for their results.
20435             </summary>
20436             <param name="requests">The list of build requests to be built.</param>
20437             <returns>The results, or null if the build should terminate.</returns>
20438         </member>
20439         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.GetResultsForContinuation(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[],System.Boolean)">
20440             <summary>
20441             Gets the results uses to continue the current build request.
20442             </summary>
20443         </member>
20444         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.RaiseOnNewBuildRequests(Microsoft.Build.BackEnd.FullyQualifiedBuildRequest[])">
20445             <summary>
20446             Invokes the OnNewBuildRequests event
20447             </summary>
20448             <param name="requests">The requests to be fulfilled.</param>
20449         </member>
20450         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.RaiseBuildRequestCompleted(Microsoft.Build.BackEnd.BuildRequestEntry)">
20451             <summary>
20452             Invokes the OnBuildRequestCompleted event
20453             </summary>
20454         </member>
20455         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.RaiseOnBlockedRequest(System.Int32,System.String)">
20456             <summary>
20457             Invokes the OnBlockedRequest event
20458             </summary>
20459         </member>
20460         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.SetProjectCurrentDirectory">
20461             <summary>
20462             This method is called to reset the current directory to the one appropriate for this project.  It should be called any time
20463             the project is resumed.
20464             If the directory does not exist, does nothing.
20465             This is because if the project has not been saved, this directory may not exist, yet it is often useful to still be able to build the project. 
20466             No errors are masked by doing this: errors loading the project from disk are reported at load time, if necessary.
20467             </summary>
20468         </member>
20469         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.BuildProject">
20470             <summary>
20471             Kicks off the build of the project file.  Doesn't return until the build is complete (or aborted.)
20472             </summary>
20473         </member>
20474         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.LoadProjectIntoConfiguration">
20475             <summary>
20476             Loads the project specified by the configuration's parameters into the configuration block.
20477             </summary>
20478         </member>
20479         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.SaveOperatingEnvironment">
20480             <summary>
20481             Saves the current operating environment.
20482             </summary>
20483         </member>
20484         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.InitializeOperatingEnvironment">
20485             <summary>
20486             Sets the operationg environment to the initial build environment.
20487             </summary>
20488         </member>
20489         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.RestoreOperatingEnvironment">
20490             <summary>
20491             Restores a previously saved operating environment.
20492             </summary>
20493         </member>
20494         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.SetEnvironmentVariableBlock(System.Collections.Generic.IDictionary{System.String,System.String})">
20495             <summary>
20496             Sets the environment block to the set of saved variables.
20497             </summary>
20498         </member>
20499         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ClearVariablesNotInEnvironment(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
20500             <summary>
20501             Clears from the current environment any variables which do not exist in the saved environment
20502             </summary>
20503         </member>
20504         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.UpdateEnvironmentVariables(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
20505             <summary>
20506             Updates the current environment with values in the saved environment which differ or are not yet set.
20507             </summary>
20508         </member>
20509         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.VerifyIsNotZombie">
20510             <summary>
20511             Throws if the RequestBuilder has been zombied.
20512             </summary>
20513         </member>
20514         <member name="M:Microsoft.Build.BackEnd.RequestBuilder.ConfigureWarningsAsErrorsAndMessages">
20515             <summary>
20516             Configure warnings as messages and errors based on properties defined in the project.
20517             </summary>
20518         </member>
20519         <member name="T:Microsoft.Build.BackEnd.TargetBuilder">
20520             <summary>
20521             The Target Builder is responsible for building a single target within a given project.
20522             </summary>
20523             <remarks>
20524             The Target Builder is a stack machine which builds project targets.  Each time a target needs to be built, it is
20525             pushed onto the stack.  The main loop for the Target Builder simply evaluates the top item on the stack to determine
20526             which action to take.  These actions comprise the target state machine, as represented by the states of the
20527             TargetEntry object.
20528             
20529             When a target completes, all of its outputs are available in the Lookup contained in the TargetEntry.  In fact, everything that it changed
20530             in the global state is available by virtue of its Lookup being merged with the current Target's lookup.
20531             
20532             For CallTarget tasks, this behavior is not the same.  Rather the Lookup from a CallTarget call does not get merged until the calling 
20533             Target has completed.  This is considered erroneous behavior and 'normal' version of CallTarget will be implemented which does not exhibit
20534             this.
20535             </remarks>
20536         </member>
20537         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._cancellationToken">
20538             <summary>
20539             The cancellation token.
20540             </summary>
20541         </member>
20542         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._targetsToBuild">
20543             <summary>
20544             The current stack of targets and dependents.  The top-most entry on the stack is the target
20545             currently being built.
20546             </summary>
20547         </member>
20548         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._componentHost">
20549             <summary>
20550             The component host.
20551             </summary>
20552         </member>
20553         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._requestEntry">
20554             <summary>
20555             The BuildRequestEntry for which we are building targets.
20556             </summary>
20557         </member>
20558         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._baseLookup">
20559             <summary>
20560             The lookup representing the project's state.
20561             </summary>
20562         </member>
20563         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._requestBuilderCallback">
20564             <summary>
20565             The callback interface used to invoke new project builds.
20566             </summary>
20567         </member>
20568         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._projectLoggingContext">
20569             <summary>
20570             The project logging context
20571             </summary>
20572         </member>
20573         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._buildResult">
20574             <summary>
20575             The aggregate build result from running the targets
20576             </summary>
20577         </member>
20578         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._projectInstance">
20579             <summary>
20580             The project instance we are building
20581             </summary>
20582         </member>
20583         <member name="F:Microsoft.Build.BackEnd.TargetBuilder._legacyCallTargetContinueOnError">
20584             <summary>
20585             Flag indicating whether we are under the influence of the legacy CallTarget's ContinueOnError behavior.
20586             </summary>
20587         </member>
20588         <member name="T:Microsoft.Build.BackEnd.TargetBuilder.TargetPushType">
20589             <summary>
20590             Enum describing the type of targets we are pushing on the stack.
20591             </summary>
20592         </member>
20593         <member name="F:Microsoft.Build.BackEnd.TargetBuilder.TargetPushType.BeforeTargets">
20594             <summary>
20595             We are pushing BeforeTargets.  When pushed, if these are already executing, we ignore them.
20596             </summary>
20597         </member>
20598         <member name="F:Microsoft.Build.BackEnd.TargetBuilder.TargetPushType.AfterTargets">
20599             <summary>
20600             We are pushing AfterTargets.  When pushed, if they have already executed, we ignore them.
20601             </summary>
20602         </member>
20603         <member name="F:Microsoft.Build.BackEnd.TargetBuilder.TargetPushType.Normal">
20604             <summary>
20605             We are pushing normal targets.  We never ignore them.
20606             </summary>
20607         </member>
20608         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.BuildTargets(Microsoft.Build.BackEnd.Logging.ProjectLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.IRequestBuilderCallback,System.String[],Microsoft.Build.BackEnd.Lookup,System.Threading.CancellationToken)">
20609             <summary>
20610             Builds the specified targets.
20611             </summary>
20612             <param name="loggingContext">The logging context for the project.</param>
20613             <param name="entry">The BuildRequestEntry for which we are building targets.</param>
20614             <param name="callback">The callback to be used to handle new project build requests.</param>
20615             <param name="targetNames">The names of the targets to build.</param>
20616             <param name="baseLookup">The Lookup containing all current items and properties for this target.</param>
20617             <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use when building the targets.</param>
20618             <returns>The target's outputs and result codes</returns>
20619         </member>
20620         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
20621             <summary>
20622             Sets the component host.
20623             </summary>
20624             <param name="host">The component host.</param>
20625         </member>
20626         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.ShutdownComponent">
20627             <summary>
20628             Shuts down the component.
20629             </summary>
20630         </member>
20631         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#ITargetBuilderCallback#LegacyCallTarget(System.String[],System.Boolean,Microsoft.Build.Construction.ElementLocation)">
20632             <summary>
20633             Invokes the specified targets using Dev9 behavior.
20634             </summary>
20635             <param name="targets">The targets to build.</param>
20636             <param name="continueOnError">True to continue building the remaining targets if one fails.</param>
20637             <param name="taskLocation">The <see cref="T:Microsoft.Build.Construction.ElementLocation"/> of the task.</param>
20638             <returns>The results for each target.</returns>
20639             <remarks>
20640             Dev9 behavior refers to the following:
20641             1. The changes made during the calling target up to this point are NOT visible to this target.
20642             2. The changes made by this target are NOT visible to the calling target.
20643             3. Changes made by the calling target OVERRIDE changes made by this target.
20644             </remarks>
20645         </member>
20646         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#BuildProjects(System.String[],Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance}[],System.String[],System.String[],System.Boolean)">
20647             <summary>
20648             Forwarding implementation of BuildProjects
20649             </summary>
20650         </member>
20651         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#BlockOnTargetInProgress(System.Int32,System.String)">
20652             <summary>
20653             Required for interface - this should never be called.
20654             </summary>
20655         </member>
20656         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#Yield">
20657             <summary>
20658             Yields the node.
20659             </summary>
20660         </member>
20661         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#Reacquire">
20662             <summary>
20663             Reacquires the node.
20664             </summary>
20665         </member>
20666         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#EnterMSBuildCallbackState">
20667             <summary>
20668             Enters the MSBuild callback state for asynchronous processing of referenced projects.
20669             </summary>
20670         </member>
20671         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.Microsoft#Build#BackEnd#IRequestBuilderCallback#ExitMSBuildCallbackState">
20672             <summary>
20673             Exits the MSBuild callback state.
20674             </summary>
20675         </member>
20676         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
20677             <summary>
20678             Class factory for component creation.
20679             </summary>
20680         </member>
20681         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.ProcessTargetStack(Microsoft.Build.BackEnd.ITaskBuilder)">
20682             <summary>
20683             Processes the target stack until its empty or we hit a recursive break (due to CallTarget etc.)
20684             </summary>
20685         </member>
20686         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.CheckSkipTarget(System.Boolean@,Microsoft.Build.BackEnd.TargetEntry)">
20687             <summary>
20688             Determines if the current target should be skipped, and logs the appropriate message.
20689             </summary>
20690             <returns>True to skip the target, false otherwise.</returns>
20691         </member>
20692         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.PopDependencyTargetsOnTargetFailure(Microsoft.Build.BackEnd.TargetEntry,Microsoft.Build.Execution.TargetResult,System.Boolean@)">
20693             <summary>
20694             When a target build fails, we don't just stop building that target; we also pop all of the other dependency targets of its 
20695             parent target off the stack. Extract that logic into a standalone method so that it can be used when dealing with targets that 
20696             are skipped-unsuccessful as well as first-time failures. 
20697             </summary>
20698         </member>
20699         <member name="M:Microsoft.Build.BackEnd.TargetBuilder.PushTargets(System.Collections.Generic.IList{Microsoft.Build.BackEnd.TargetSpecification},Microsoft.Build.BackEnd.TargetEntry,Microsoft.Build.BackEnd.Lookup,System.Boolean,System.Boolean,Microsoft.Build.BackEnd.TargetBuilder.TargetPushType)">
20700             <summary>
20701             Pushes the list of targets specified onto the target stack in reverse order specified, so that
20702             they will be built in the order specified.
20703             </summary>
20704             <param name="targets">List of targets to build.</param>
20705             <param name="parentTargetEntry">The target which should be considered the parent of these targets.</param>
20706             <param name="baseLookup">The lookup to be used to build these targets.</param>
20707             <param name="addAsErrorTarget">True if this should be considered an error target.</param>
20708             <param name="stopProcessingOnCompletion">True if target stack processing should terminate when the last target in the list is processed.</param>
20709             <param name="pushType">The <see cref="T:Microsoft.Build.BackEnd.TargetBuilder.TargetPushType"/> targets being pushed onto the stack.</param>
20710             <returns>True if we actually pushed any targets, false otherwise.</returns>
20711         </member>
20712         <member name="T:Microsoft.Build.BackEnd.TargetEntryState">
20713             <summary>
20714             Represents which state the target entry is currently in.
20715             </summary>
20716         </member>
20717         <member name="F:Microsoft.Build.BackEnd.TargetEntryState.Dependencies">
20718             <summary>
20719             The target's dependencies need to be evaluated and pushed onto the target stack.
20720             
20721             Transitions:
20722             Execution, ErrorExecution
20723             </summary>
20724         </member>
20725         <member name="F:Microsoft.Build.BackEnd.TargetEntryState.Execution">
20726             <summary>
20727             The target is ready to execute its tasks, batched as needed.
20728             
20729             Transitions:
20730             ErrorExecution, Completed
20731             </summary>
20732         </member>
20733         <member name="F:Microsoft.Build.BackEnd.TargetEntryState.ErrorExecution">
20734             <summary>
20735             The target is ready to provide error tasks.
20736             
20737             Transitions:
20738             None
20739             </summary>
20740         </member>
20741         <member name="F:Microsoft.Build.BackEnd.TargetEntryState.Completed">
20742             <summary>
20743             The target has finished building.  All of the results are in the Lookup.
20744             
20745             Transitions:
20746             None
20747             </summary>
20748         </member>
20749         <member name="T:Microsoft.Build.BackEnd.TargetEntry">
20750             <summary>
20751             This class represents a single target in the TargetBuilder.  It maintains the state machine for a particular target as well as
20752             relevant information on outputs generated while a target is running.
20753             </summary>
20754         </member>
20755         <member name="F:Microsoft.Build.BackEnd.TargetEntry._requestEntry">
20756             <summary>
20757             The BuildRequestEntry to which this target invocation belongs
20758             </summary>
20759         </member>
20760         <member name="F:Microsoft.Build.BackEnd.TargetEntry._targetSpecification">
20761             <summary>
20762             The specification of the target being built.
20763             </summary>
20764         </member>
20765         <member name="F:Microsoft.Build.BackEnd.TargetEntry._target">
20766             <summary>
20767             The Target being built.  This will be null until the GetTargetInstance() is called, which
20768             will cause us to attempt to resolve the actual project instance.  At that point
20769             if the target doesn't exist, we will throw an InvalidProjectFileException.  We do this lazy
20770             evaluation because the 'target doesn't exist' message is not supposed to be emitted until
20771             the target is actually needed, as opposed to when it is specified, such as in an OnError
20772             clause, DependsOnTargets or on the command-line.
20773             </summary>
20774         </member>
20775         <member name="F:Microsoft.Build.BackEnd.TargetEntry._state">
20776             <summary>
20777             The current state of this entry
20778             </summary>
20779         </member>
20780         <member name="F:Microsoft.Build.BackEnd.TargetEntry._targetResult">
20781             <summary>
20782             The completion state of the target.
20783             </summary>
20784         </member>
20785         <member name="F:Microsoft.Build.BackEnd.TargetEntry._parentTarget">
20786             <summary>
20787             The parent entry, which is waiting for us to complete before proceeding.
20788             </summary>
20789         </member>
20790         <member name="F:Microsoft.Build.BackEnd.TargetEntry._expander">
20791             <summary>
20792             The expander used to expand item and property markup to evaluated values.
20793             </summary>
20794         </member>
20795         <member name="F:Microsoft.Build.BackEnd.TargetEntry._baseLookup">
20796             <summary>
20797             The lookup containing our environment.
20798             </summary>
20799         </member>
20800         <member name="F:Microsoft.Build.BackEnd.TargetEntry._host">
20801             <summary>
20802             The build component host.
20803             </summary>
20804         </member>
20805         <member name="F:Microsoft.Build.BackEnd.TargetEntry._targetBuilderCallback">
20806             <summary>
20807             The target builder callback
20808             </summary>
20809         </member>
20810         <member name="F:Microsoft.Build.BackEnd.TargetEntry._legacyCallTargetScopes">
20811             <summary>
20812             A queue of legacy CallTarget lookup scopes to leave when this target is finished.
20813             </summary>
20814         </member>
20815         <member name="F:Microsoft.Build.BackEnd.TargetEntry._cancelLock">
20816             <summary>
20817             The lock taken when dealing with cancel-synchronized objects
20818             </summary>
20819         </member>
20820         <member name="F:Microsoft.Build.BackEnd.TargetEntry._cancellationToken">
20821             <summary>
20822             The cancellation token.
20823             </summary>
20824         </member>
20825         <member name="F:Microsoft.Build.BackEnd.TargetEntry._isExecuting">
20826             <summary>
20827             Flag indicating whether we are currently executing this target.  Used for assertions.
20828             </summary>
20829         </member>
20830         <member name="F:Microsoft.Build.BackEnd.TargetEntry._currentTaskBuilder">
20831             <summary>
20832             The current task builder.
20833             </summary>
20834         </member>
20835         <member name="M:Microsoft.Build.BackEnd.TargetEntry.#ctor(Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.ITargetBuilderCallback,Microsoft.Build.BackEnd.TargetSpecification,Microsoft.Build.BackEnd.Lookup,Microsoft.Build.BackEnd.TargetEntry,Microsoft.Build.BackEnd.IBuildComponentHost,System.Boolean)">
20836             <summary>
20837             The constructor.
20838             </summary>
20839             <param name="requestEntry">The build request entry for the target.</param>
20840             <param name="targetBuilderCallback">The target builder callback.</param>
20841             <param name="targetSpecification">The specification for the target to build.</param>
20842             <param name="baseLookup">The lookup to use.</param>
20843             <param name="parentTarget">The parent of this entry, if any.</param>
20844             <param name="host">The Build Component Host to use.</param>
20845             <param name="stopProcessingOnCompletion">True if the target builder should stop processing the current target stack when this target is complete.</param>
20846         </member>
20847         <member name="P:Microsoft.Build.BackEnd.TargetEntry.ErrorTarget">
20848             <summary>
20849             Gets or sets a flag indicating if this entry is the result of being listed as an error target in
20850             an OnError clause.
20851             </summary>
20852         </member>
20853         <member name="P:Microsoft.Build.BackEnd.TargetEntry.ReferenceLocation">
20854             <summary>
20855             Sets or sets the location from which this target was referred.
20856             </summary>
20857         </member>
20858         <member name="P:Microsoft.Build.BackEnd.TargetEntry.StopProcessingOnCompletion">
20859             <summary>
20860             Gets or sets a flag indicating that the target builder should stop processing the target
20861             stack when this target completes.
20862             </summary>
20863         </member>
20864         <member name="P:Microsoft.Build.BackEnd.TargetEntry.Name">
20865             <summary>
20866             Retrieves the name of the target.
20867             </summary>
20868         </member>
20869         <member name="P:Microsoft.Build.BackEnd.TargetEntry.State">
20870             <summary>
20871             Gets the current state of the target
20872             </summary>
20873         </member>
20874         <member name="P:Microsoft.Build.BackEnd.TargetEntry.Result">
20875             <summary>
20876             The result of this target.
20877             </summary>
20878         </member>
20879         <member name="P:Microsoft.Build.BackEnd.TargetEntry.Lookup">
20880             <summary>
20881             Retrieves the Lookup this target was initialized with, including any modifications which have 
20882             been made to it while running.
20883             </summary>
20884         </member>
20885         <member name="P:Microsoft.Build.BackEnd.TargetEntry.Target">
20886             <summary>
20887             The target contained by the entry.
20888             </summary>
20889         </member>
20890         <member name="P:Microsoft.Build.BackEnd.TargetEntry.RequestEntry">
20891             <summary>
20892             The build request entry to which this target belongs.
20893             </summary>
20894         </member>
20895         <member name="P:Microsoft.Build.BackEnd.TargetEntry.ParentEntry">
20896             <summary>
20897             The target entry for which we are a dependency.
20898             </summary>
20899         </member>
20900         <member name="M:Microsoft.Build.BackEnd.TargetEntry.Equals(Microsoft.Build.BackEnd.TargetEntry)">
20901             <summary>
20902             Determines equivalence of two target entries.  They are considered the same
20903             if their names are the same.
20904             </summary>
20905             <param name="other">The entry to which we compare this one.</param>
20906             <returns>True if they are equivalent, false otherwise.</returns>
20907         </member>
20908         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GetDependencies(Microsoft.Build.BackEnd.Logging.ProjectLoggingContext)">
20909             <summary>
20910             Retrieves the list of dependencies this target needs to have built and moves the target to the next state.
20911             Never returns null.
20912             </summary>
20913             <returns>A collection of targets on which this target depends.</returns>
20914         </member>
20915         <member name="M:Microsoft.Build.BackEnd.TargetEntry.ExecuteTarget(Microsoft.Build.BackEnd.ITaskBuilder,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.Logging.ProjectLoggingContext,System.Threading.CancellationToken)">
20916             <summary>
20917             Runs all of the tasks for this target, batched as necessary.
20918             </summary>
20919         </member>
20920         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GetErrorTargets(Microsoft.Build.BackEnd.Logging.ProjectLoggingContext)">
20921             <summary>
20922             Retrieves the error targets for this target.
20923             </summary>
20924             <param name="projectLoggingContext">The project logging context.</param>
20925             <returns>A list of error targets.</returns>
20926         </member>
20927         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GatherResults">
20928             <summary>
20929             Gathers the results from the target into the base lookup of the target.
20930             </summary>
20931             <returns>The base lookup for this target.</returns>
20932         </member>
20933         <member name="M:Microsoft.Build.BackEnd.TargetEntry.EnterLegacyCallTargetScope(Microsoft.Build.BackEnd.Lookup)">
20934             <summary>
20935             Enters a legacy calltarget scope.
20936             </summary>
20937             <param name="lookup">The lookup to enter with.</param>
20938         </member>
20939         <member name="M:Microsoft.Build.BackEnd.TargetEntry.MarkForError">
20940             <summary>
20941             This method is used by the Target Builder to indicate that the target should run in error mode rather than normal mode.
20942             </summary>
20943         </member>
20944         <member name="M:Microsoft.Build.BackEnd.TargetEntry.MarkForStop">
20945             <summary>
20946             This method is used by the Target Builder to indicate that a child of this target has failed and that work should not
20947             continue in Completed / Skipped mode. We do not want to mark the state to run in ErrorExecution mode so that the
20948             OnError targets do not run (the target was skipped due to condition so OnError targets should not run).
20949             </summary>
20950         </member>
20951         <member name="M:Microsoft.Build.BackEnd.TargetEntry.LeaveLegacyCallTargetScopes">
20952             <summary>
20953             Leaves all the call target scopes in the order they were entered.
20954             </summary>
20955         </member>
20956         <member name="M:Microsoft.Build.BackEnd.TargetEntry.ProcessBucket(Microsoft.Build.BackEnd.ITaskBuilder,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.BackEnd.TaskExecutionMode,Microsoft.Build.BackEnd.Lookup,Microsoft.Build.BackEnd.Lookup)">
20957             <summary>
20958             Walks through the set of tasks for this target and processes them by handing them off to the TaskBuilder.
20959             </summary>
20960             <returns>
20961             The result of the tasks, based on the last task which ran.
20962             </returns>
20963         </member>
20964         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GetTaskExecutionMode(Microsoft.Build.BackEnd.DependencyAnalysisResult)">
20965             <summary>
20966             Gets the task execution mode based 
20967             </summary>
20968             <param name="analysis">The result of the up-to-date check.</param>
20969             <returns>The mode to be used to execute tasks.</returns>
20970         </member>
20971         <member name="M:Microsoft.Build.BackEnd.TargetEntry.VerifyState(Microsoft.Build.BackEnd.TargetEntryState,Microsoft.Build.BackEnd.TargetEntryState)">
20972             <summary>
20973             Verifies that the target's state is as expected.
20974             </summary>
20975             <param name="actual">The actual value</param>
20976             <param name="expected">The expected value</param>
20977         </member>
20978         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GetBatchableParametersForTarget">
20979             <summary>
20980             Gets the list of parameters which are batchable for a target
20981             PERF: (Refactor) This used to be a method on the target, and it would 
20982             cache its values so this would only be computed once for each
20983             target.  We should consider doing something similar for perf reasons.
20984             </summary>
20985             <returns>A list of batchable parameters</returns>
20986         </member>
20987         <member name="M:Microsoft.Build.BackEnd.TargetEntry.GetTargetInstance">
20988             <summary>
20989             Resolves the target.  If it doesn't exist in the project, throws an InvalidProjectFileException.
20990             </summary>
20991         </member>
20992         <member name="T:Microsoft.Build.BackEnd.DependencyAnalysisResult">
20993             <summary>
20994             Enumeration of the results of target dependency analysis.
20995             </summary>
20996         </member>
20997         <member name="T:Microsoft.Build.BackEnd.TargetUpToDateChecker">
20998             <summary>
20999             This class is used for performing dependency analysis on targets to determine if they should be built/rebuilt/skipped.
21000             </summary>
21001         </member>
21002         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.#ctor(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectTargetInstance,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
21003             <summary>
21004             Creates an instance of this class for the given target.
21005             </summary>
21006         </member>
21007         <member name="P:Microsoft.Build.BackEnd.TargetUpToDateChecker.TargetToAnalyze">
21008             <summary>
21009             Gets the target to perform dependency analysis on.
21010             </summary>
21011             <value>Target object.</value>
21012         </member>
21013         <member name="P:Microsoft.Build.BackEnd.TargetUpToDateChecker.TargetInputSpecification">
21014             <summary>
21015             Gets the value of the target's "Inputs" attribute.
21016             </summary>
21017             <value>Input specification string (can be empty).</value>
21018         </member>
21019         <member name="P:Microsoft.Build.BackEnd.TargetUpToDateChecker.TargetOutputSpecification">
21020             <summary>
21021             Gets the value of the target's "Outputs" attribute.
21022             </summary>
21023             <value>Output specification string (can be empty).</value>
21024         </member>
21025         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysis(Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance}@,Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance}@)">
21026             <summary>
21027             Compares the target's inputs against its outputs to determine if the target needs to be built/rebuilt/skipped.
21028             </summary>
21029             <remarks>
21030             The collections of changed and up-to-date inputs returned from this method are valid IFF this method decides an
21031             incremental build is needed.
21032             </remarks>
21033             <param name="bucket"></param>
21034             <param name="changedTargetInputs"></param>
21035             <param name="upToDateTargetInputs"></param>
21036             <returns>
21037             DependencyAnalysisResult.SkipUpToDate, if target is up-to-date;
21038             DependencyAnalysisResult.SkipNoInputs, if target has no inputs;
21039             DependencyAnalysisResult.SkipNoOutputs, if target has no outputs;
21040             DependencyAnalysisResult.IncrementalBuild, if only some target outputs are out-of-date;
21041             DependencyAnalysisResult.FullBuild, if target is out-of-date
21042             </returns>
21043         </member>
21044         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.LogReasonForBuildingTarget(Microsoft.Build.BackEnd.DependencyAnalysisResult)">
21045             <summary>
21046             Does appropriate logging to indicate why this target is being built fully or partially.
21047             </summary>
21048             <param name="result"></param>
21049         </member>
21050         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.GetFullBuildReason(Microsoft.Build.BackEnd.DependencyAnalysisLogDetail)">
21051             <summary>
21052             Returns a string indicating why a full build is occurring.
21053             </summary>
21054         </member>
21055         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.GetIncrementalBuildReason(Microsoft.Build.BackEnd.DependencyAnalysisLogDetail)">
21056             <summary>
21057             Returns a string indicating why an incremental build is occurring.
21058             </summary>
21059         </member>
21060         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.LogUniqueInputsAndOutputs">
21061             <summary>
21062             Extract only the unique inputs and outputs from all the inputs and outputs gathered
21063             during depedency analysis
21064             </summary>
21065         </member>
21066         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.ParseTargetInputOutputSpecifications(Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}}@,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}}@,System.Collections.Generic.Dictionary{System.String,System.String}@,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}}@,System.Collections.Generic.Dictionary{System.String,System.String}@,System.Collections.Generic.List{System.String}@)">
21067             <summary>
21068             Parses the target's "Inputs" and "Outputs" attributes and gathers up referenced items.
21069             </summary>
21070             <param name="bucket"></param>
21071             <param name="itemVectorsInTargetInputs"></param>
21072             <param name="itemVectorTransformsInTargetInputs"></param>
21073             <param name="discreteItemsInTargetInputs"></param>
21074             <param name="itemVectorsInTargetOutputs"></param>
21075             <param name="discreteItemsInTargetOutputs"></param>
21076             <param name="targetOutputItemSpecs"></param>
21077         </member>
21078         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysisIfNoInputs">
21079             <summary>
21080             Determines if the target needs to be built/rebuilt/skipped if it has no inputs (because they evaluated to empty).
21081             </summary>
21082         </member>
21083         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysisIfNoOutputs">
21084             <summary>
21085             Determines if the target needs to be built/rebuilt/skipped if it has no outputs (because they evaluated to empty).
21086             </summary>
21087             <returns>Indication of how to build the target.</returns>
21088         </member>
21089         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysisIfDiscreteInputs(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.String},System.Collections.Generic.List{System.String},System.Collections.Generic.List{System.String})">
21090             <summary>
21091             Determines if the target needs to be built/rebuilt/skipped if it has discrete inputs.
21092             </summary>
21093             <param name="itemVectorsInTargetInputs"></param>
21094             <param name="itemVectorTransformsInTargetInputs"></param>
21095             <param name="discreteItemsInTargetInputs"></param>
21096             <param name="itemVectorsReferencedOnlyInTargetInputs"></param>
21097             <param name="targetOutputItemSpecs"></param>
21098             <returns>Indication of how to build the target.</returns>
21099         </member>
21100         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysisIfCorrelatedInputsOutputs(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.List{System.String},Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance}@,Microsoft.Build.Collections.ItemDictionary{Microsoft.Build.Execution.ProjectItemInstance}@)">
21101             <summary>
21102             Determines if the target needs to be built/rebuilt/skipped if its inputs and outputs can be correlated.
21103             </summary>
21104             <param name="itemVectorsInTargetInputs">The set of items which are in the inputs</param>
21105             <param name="itemVectorsInTargetOutputs">The set of items which are in the outputs.</param>
21106             <param name="itemVectorsReferencedInBothTargetInputsAndOutputs">A list of item types referenced in both the inputs and the outputs</param>
21107             <param name="changedTargetInputs">The inputs which are "changed" and require a build</param>
21108             <param name="upToDateTargetInputs">The inpurt which are "up to date" and do not require a build</param>
21109             <returns>Indication of how to build the target.</returns>
21110         </member>
21111         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.PerformDependencyAnalysisIfDiscreteOutputs(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.String},System.Collections.Generic.List{System.String})">
21112             <summary>
21113             Determines if the target needs to be built/rebuilt/skipped if it has discrete outputs.
21114             </summary>
21115             <param name="itemVectorsInTargetInputs"></param>
21116             <param name="itemVectorTransformsInTargetInputs"></param>
21117             <param name="discreteItemsInTargetInputs"></param>
21118             <param name="targetOutputItemSpecs"></param>
21119             <returns>Indication of how to build the target.</returns>
21120         </member>
21121         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.SeparateItemVectorsFromDiscreteItems(System.Collections.Generic.IList{System.String},Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}}@,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.Collections.Generic.Dictionary{System.String,System.String}@,Microsoft.Build.Construction.ElementLocation)">
21122             <summary>
21123             Separates item vectors from discrete items, and discards duplicates. If requested, item vector transforms are also
21124             separated out. The item vectors (and the transforms) are partitioned by type, since there can be more than one item
21125             vector of the same type.
21126             </summary>
21127             <remarks>
21128             The item vector collection is a table of tables, where the top-level table is indexed by item type, and
21129             each "partition" table is indexed by the item vector itself.
21130             </remarks>
21131             <param name="items"></param>
21132             <param name="bucket"></param>
21133             <param name="itemVectors">Collection for item vectors</param>
21134             <param name="itemVectorTransforms">Collection for transforms if they should be collected separately, else null</param>
21135             <param name="discreteItems"></param>
21136             <param name="elementLocation"></param>
21137         </member>
21138         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.GetItemSpecsFromItemVectors(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}})">
21139             <summary>
21140             Retrieves the item-specs of all items in the given item vector collection.
21141             </summary>
21142             <param name="itemVectors"></param>
21143             <returns>list of item-specs</returns>
21144         </member>
21145         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.GetItemSpecsFromItemVectors(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance}}},System.String)">
21146             <summary>
21147             Retrieves the item-specs of all items of the specified type in the given item vector collection.
21148             </summary>
21149             <param name="itemVectors"></param>
21150             <param name="itemType"></param>
21151             <returns>list of item-specs</returns>
21152         </member>
21153         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.DiffHashtables``2(System.Collections.Generic.IDictionary{``0,``1},System.Collections.Generic.IDictionary{``0,``1},System.Collections.Generic.List{``0}@,System.Collections.Generic.List{``0}@,System.Collections.Generic.List{``0}@)">
21154             <summary>
21155             Finds the differences in the keys between the two given hashtables.
21156             </summary>
21157             <param name="h1"></param>
21158             <param name="h2"></param>
21159             <param name="commonKeys"></param>
21160             <param name="uniqueKeysInH1"></param>
21161             <param name="uniqueKeysInH2"></param>
21162         </member>
21163         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.IsAnyOutOfDate``1(Microsoft.Build.BackEnd.DependencyAnalysisLogDetail@,System.String,System.Collections.Generic.IList{``0},System.Collections.Generic.IList{``0})">
21164             <summary>
21165             Compares the set of files/directories designated as "inputs" against the set of files/directories designated as
21166             "outputs", and indicates if any "output" file/directory is out-of-date w.r.t. any "input" file/directory.
21167             </summary>
21168             <remarks>
21169             NOTE: Internal for unit test purposes only.
21170             </remarks>
21171             <returns>true, if any "input" is newer than any "output", or if any input or output does not exist.</returns>
21172         </member>
21173         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.RecordUniqueInputsAndOutputs``1(System.Collections.Generic.IList{``0},System.Collections.Generic.IList{``0})">
21174             <summary>
21175             Record the unique input and output files so that the "up to date" message
21176             can list them in the log later.
21177             </summary>
21178         </member>
21179         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.IsOutOfDate(System.String,System.String,System.String,System.String)">
21180             <summary>
21181             Compares the file/directory designated as "input" against the file/directory designated as "output", and indicates if
21182             the "output" file/directory is out-of-date w.r.t. the "input" file/directory.
21183             </summary>
21184             <remarks>
21185             If the "input" does not exist on disk, we treat its disappearance as a change, and consider the "input" to be newer
21186             than the "output", regardless of whether the "output" itself exists.
21187             </remarks>
21188             <param name="input"></param>
21189             <param name="output"></param>
21190             <param name="inputItemName"></param>
21191             <param name="outputItemName"></param>
21192             <returns>true, if "input" is newer than "output"</returns>
21193         </member>
21194         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.RecordComparisonResults(System.String,System.String,System.String,System.String,System.Boolean,System.Boolean,System.Boolean)">
21195             <summary>
21196             Add timestamp comparison results to a list, to log them together later.
21197             </summary>
21198         </member>
21199         <member name="M:Microsoft.Build.BackEnd.TargetUpToDateChecker.CompareLastWriteTimes(System.String,System.String,System.Boolean@,System.Boolean@)">
21200             <summary>
21201             Compares the last-write times of the given files/directories.
21202             </summary>
21203             <remarks>
21204             Existing files/directories are always considered newer than non-existent ones, and two non-existent files/directories
21205             are considered to have the same last-write time.
21206             </remarks>
21207             <param name="path1"></param>
21208             <param name="path2"></param>
21209             <param name="path1DoesNotExist">[out] indicates if the first file/directory does not exist on disk</param>
21210             <param name="path2DoesNotExist">[out] indicates if the second file/directory does not exist on disk</param>
21211             <returns>
21212             -1  if the first file/directory is older than the second;
21213              0  if the files/directories were both last written to at the same time;
21214             +1  if the first file/directory is newer than the second
21215             </returns>
21216         </member>
21217         <member name="F:Microsoft.Build.BackEnd.TargetUpToDateChecker.s_sortInputsOutputs">
21218             <summary>
21219             By default we do not sort target inputs and outputs as it has significant perf impact.
21220             But allow suites to enable this so they get consistent results.
21221             </summary>
21222         </member>
21223         <member name="F:Microsoft.Build.BackEnd.TargetUpToDateChecker._uniqueTargetInputs">
21224             <summary>
21225             The unique target inputs.
21226             </summary>
21227         </member>
21228         <member name="F:Microsoft.Build.BackEnd.TargetUpToDateChecker._uniqueTargetOutputs">
21229             <summary>
21230             The unique target outputs.
21231             </summary>
21232         </member>
21233         <member name="T:Microsoft.Build.BackEnd.OutofdateReason">
21234             <summary>
21235             Why TLDA decided this entry was out of date
21236             </summary>
21237         </member>
21238         <member name="T:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail">
21239             <summary>
21240             A logging detail entry. Describes what TLDA decided about inputs / outputs
21241             </summary>
21242         </member>
21243         <member name="P:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.Reason">
21244             <summary>
21245             The reason that we are logging this entry
21246             </summary>
21247         </member>
21248         <member name="P:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.InputItemName">
21249             <summary>
21250             The input item name (can be null)
21251             </summary>
21252         </member>
21253         <member name="P:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.OutputItemName">
21254             <summary>
21255             The output item name (can be null)
21256             </summary>
21257         </member>
21258         <member name="P:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.Input">
21259             <summary>
21260             The input file
21261             </summary>
21262         </member>
21263         <member name="P:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.Output">
21264             <summary>
21265             The output file
21266             </summary>
21267         </member>
21268         <member name="M:Microsoft.Build.BackEnd.DependencyAnalysisLogDetail.#ctor(System.String,System.String,System.String,System.String,Microsoft.Build.BackEnd.OutofdateReason)">
21269             <summary>
21270             Construct a log detail element
21271             </summary>
21272             <param name="input">Input file</param>
21273             <param name="output">Output file</param>
21274             <param name="inputItemName">Input item name (can be null)</param>
21275             <param name="outputItemName">Output item name (can be null)</param>
21276             <param name="reason">The reason we are logging</param>
21277         </member>
21278         <member name="T:Microsoft.Build.BackEnd.ContinueOnError">
21279             <summary>
21280             The possible values for a task's ContinueOnError attribute.
21281             </summary>
21282         </member>
21283         <member name="F:Microsoft.Build.BackEnd.ContinueOnError.ErrorAndStop">
21284             <summary>
21285             If the task fails, error and stop.
21286             </summary>
21287         </member>
21288         <member name="F:Microsoft.Build.BackEnd.ContinueOnError.ErrorAndContinue">
21289             <summary>
21290             If the task fails, error and continue.
21291             </summary>
21292         </member>
21293         <member name="F:Microsoft.Build.BackEnd.ContinueOnError.WarnAndContinue">
21294             <summary>
21295             If the task fails, warn and continue.
21296             </summary>
21297         </member>
21298         <member name="T:Microsoft.Build.BackEnd.TaskBuilder">
21299             <summary>
21300             The TaskBuilder is one of two components related to building tasks, the other being the TaskExecutionHost.  The TaskBuilder is
21301             responsible for all parts dealing with the XML/task declaration.  It determines if the task is intrinsic or extrinsic, 
21302             looks up the task in the task registry, determines the task parameters and requests them to be set, and requests outputs
21303             when task execution has been completed.  It is not responsible for reflection over the task instance or anything which
21304             requires dealing with the task instance directly - those actions are handled by the TaskExecutionHost.
21305             </summary>
21306         </member>
21307         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._buildRequestEntry">
21308             <summary>
21309             The Build Request Entry for which this task is executing.
21310             </summary>
21311         </member>
21312         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._cancellationToken">
21313             <summary>
21314             The cancellation token
21315             </summary>
21316         </member>
21317         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._componentHost">
21318             <summary>
21319             The build component host.
21320             </summary>
21321         </member>
21322         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._targetChildInstance">
21323             <summary>
21324             The original target child instance
21325             </summary>
21326         </member>
21327         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._taskNode">
21328             <summary>
21329             The task instance for extrinsic tasks
21330             </summary> 
21331         </member>
21332         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._taskHostObject">
21333             <summary>
21334             Host callback for host-aware tasks.
21335             </summary>
21336         </member>
21337         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._continueOnError">
21338             <summary>
21339             indicates whether to ignore task execution failures
21340             </summary> 
21341         </member>
21342         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._targetLoggingContext">
21343             <summary>
21344             The logging context for the target in which we are executing.
21345             </summary>
21346         </member>
21347         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._projectFullPath">
21348             <summary>
21349             Full path to the project, for errors
21350             </summary>
21351         </member>
21352         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._targetBuilderCallback">
21353             <summary>
21354             The target builder callback.
21355             </summary>
21356         </member>
21357         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._taskExecutionHost">
21358             <summary>
21359             The task execution host for in-proc tasks.
21360             </summary>
21361         </member>
21362         <member name="F:Microsoft.Build.BackEnd.TaskBuilder._taskExecutionHostSync">
21363             <summary>
21364             The object used to synchronize access to the task execution host.
21365             </summary>
21366         </member>
21367         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.#ctor">
21368             <summary>
21369             Constructor
21370             </summary>
21371         </member>
21372         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteTask(Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.BackEnd.ITargetBuilderCallback,Microsoft.Build.Execution.ProjectTargetInstanceChild,Microsoft.Build.BackEnd.TaskExecutionMode,Microsoft.Build.BackEnd.Lookup,Microsoft.Build.BackEnd.Lookup,System.Threading.CancellationToken)">
21373             <summary>
21374             Builds the task specified by the XML.
21375             </summary>
21376             <param name="loggingContext">The logging context of the target</param>
21377             <param name="requestEntry">The build request entry being built</param>
21378             <param name="targetBuilderCallback">The target builder callback.</param>
21379             <param name="taskInstance">The task instance.</param>
21380             <param name="mode">The mode in which to execute tasks.</param>
21381             <param name="inferLookup">The lookup to be used for inference.</param>
21382             <param name="executeLookup">The lookup to be used during execution.</param>
21383             <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use when executing the task.</param>
21384             <returns>The result of running the task batch.</returns>
21385             <remarks>
21386             The ExecuteTask method takes a task as specified by XML and executes it.  This procedure is comprised 
21387             of the following steps:
21388             1. Loading the Task from its containing assembly by looking it up in the task registry
21389             2. Determining if the task is batched.  If it is, create the batches and execute each as if it were a non-batched task
21390             3. If the task is not batched, execute it.
21391             4. If the task was batched, hold on to its Lookup until all of the natches are done, then merge them.
21392             </remarks>
21393         </member>
21394         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
21395             <summary>
21396             Sets the build component host.
21397             </summary>
21398             <param name="host">The component host.</param>
21399         </member>
21400         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ShutdownComponent">
21401             <summary>
21402             Shuts down the component.
21403             </summary>
21404         </member>
21405         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
21406             <summary>
21407             Class factory for component creation.
21408             </summary>
21409         </member>
21410         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.CreateListOfParameterValues">
21411             <summary>
21412             Build up a list of all parameters on the task, including those in any Output tags,
21413             in order to find batchable metadata references
21414             </summary>
21415             <returns>The list of parameter values</returns>
21416         </member>
21417         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteTask(Microsoft.Build.BackEnd.TaskExecutionMode,Microsoft.Build.BackEnd.Lookup)">
21418             <summary>
21419             Called to execute a task within a target. This method instantiates the task, sets its parameters, and executes it. 
21420             </summary>
21421             <returns>true, if successful</returns>
21422         </member>
21423         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteBucket(Microsoft.Build.BackEnd.TaskHost,Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.BackEnd.TaskExecutionMode,System.Collections.Generic.Dictionary{System.String,System.String})">
21424             <summary>
21425             Execute a single bucket
21426             </summary>
21427             <returns>true if execution succeeded</returns>        
21428         </member>
21429         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.GatherTaskIdentityParameters(Microsoft.Build.Evaluation.Expander{Microsoft.Build.Execution.ProjectPropertyInstance,Microsoft.Build.Execution.ProjectItemInstance})">
21430             <summary>
21431             Returns the set of parameters that can contribute to a task's identity, and their values for this particular task.  
21432             </summary>
21433         </member>
21434         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteTaskInSTAThread(Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.BackEnd.Logging.TaskLoggingContext,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.BackEnd.TaskHost,Microsoft.Build.BackEnd.TaskExecutionMode)">
21435             <summary>
21436             Executes the task using an STA thread.
21437             </summary>
21438             <comment>
21439             STA thread launching also being used in XMakeCommandLine\OutOfProcTaskAppDomainWrapperBase.cs, InstantiateAndExecuteTaskInSTAThread method.  
21440             Any bug fixes made to this code, please ensure that you also fix that code.  
21441             </comment>
21442         </member>
21443         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.LogSkippedTask(Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.BackEnd.TaskExecutionMode)">
21444             <summary>
21445             Logs a task skipped message if necessary.
21446             </summary>
21447         </member>
21448         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteIntrinsicTask(Microsoft.Build.BackEnd.ItemBucket)">
21449             <summary>
21450             Runs an intrinsic task.
21451             </summary>
21452         </member>
21453         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.InitializeAndExecuteTask(Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.BackEnd.TaskHost,Microsoft.Build.BackEnd.TaskExecutionMode)">
21454             <summary>
21455             Initializes and executes the task.
21456             </summary>
21457         </member>
21458         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.UpdateContinueOnError(Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.BackEnd.TaskHost)">
21459             <summary>
21460             Recomputes the task's "ContinueOnError" setting.
21461             </summary>
21462             <param name="bucket">The bucket being executed.</param>
21463             <param name="taskHost">The task host to use.</param>
21464             <remarks>
21465             There are four possible values:
21466             false - Error and stop if the task fails.
21467             true - Warn and continue if the task fails.
21468             ErrorAndContinue - Error and continue if the task fails.
21469             WarnAndContinue - Same as true.
21470             </remarks>
21471         </member>
21472         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(Microsoft.Build.BackEnd.ITaskExecutionHost,Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.TaskHost,Microsoft.Build.BackEnd.ItemBucket,Microsoft.Build.BackEnd.TaskExecutionMode)">
21473             <summary>
21474             Execute a task object for a given bucket.
21475             </summary>
21476             <param name="taskExecutionHost">The host used to execute the task.</param>
21477             <param name="taskLoggingContext">The logging context.</param>
21478             <param name="taskHost">The task host for the task.</param>
21479             <param name="bucket">The batching bucket</param>
21480             <param name="howToExecuteTask">The task execution mode</param>
21481             <returns>The result of running the task.</returns>
21482         </member>
21483         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.GatherTaskOutputs(Microsoft.Build.BackEnd.ITaskExecutionHost,Microsoft.Build.BackEnd.TaskExecutionMode,Microsoft.Build.BackEnd.ItemBucket)">
21484             <summary>
21485             Gathers task outputs in two ways:
21486             1) Given an instantiated task that has finished executing, it extracts the outputs using .NET reflection.
21487             2) Otherwise, it parses the task's output specifications and (statically) infers the outputs.
21488             </summary>
21489             <param name="taskExecutionHost">The task execution host.</param>
21490             <param name="howToExecuteTask">The task execution mode</param>
21491             <param name="bucket">The bucket to which the task execution belongs.</param>
21492             <returns>true, if successful</returns>
21493         </member>
21494         <member name="M:Microsoft.Build.BackEnd.TaskBuilder.InferTaskOutputs(Microsoft.Build.BackEnd.Lookup,Microsoft.Build.Execution.ProjectTaskInstanceChild,System.String,System.String,System.String,Microsoft.Build.BackEnd.ItemBucket)">
21495             <summary>
21496             Uses the given task output specification to (statically) infer the task's outputs.
21497             </summary>
21498             <param name="lookup">The lookup</param>
21499             <param name="taskOutputSpecification">The task output specification</param>
21500             <param name="taskParameterName">The task parameter name</param>
21501             <param name="itemName">can be null</param>
21502             <param name="propertyName">can be null</param>
21503             <param name="bucket">The bucket for the batch.</param>
21504         </member>
21505         <member name="T:Microsoft.Build.BackEnd.TaskHost">
21506             <summary>
21507             The task host object which allows tasks to interface with the rest of the build system.
21508             Implementation of IBuildEngineX is thread-safe, so, for example, tasks can log concurrently on multiple threads.
21509             </summary>
21510         </member>
21511         <member name="F:Microsoft.Build.BackEnd.TaskHost.s_onlyUseOutOfProcNodes">
21512             <summary>
21513             True if the "secret" environment variable MSBUILDNOINPROCNODE is set. 
21514             </summary>
21515         </member>
21516         <member name="F:Microsoft.Build.BackEnd.TaskHost.s_breakOnLogAfterTaskReturns">
21517             <summary>
21518             Help diagnose tasks that log after they return.
21519             </summary>
21520         </member>
21521         <member name="F:Microsoft.Build.BackEnd.TaskHost._host">
21522             <summary>
21523             The build component host
21524             </summary>
21525         </member>
21526         <member name="F:Microsoft.Build.BackEnd.TaskHost._requestEntry">
21527             <summary>
21528             The build request entry
21529             </summary>
21530         </member>
21531         <member name="F:Microsoft.Build.BackEnd.TaskHost._taskLocation">
21532             <summary>
21533             Location of the task node in the original file
21534             </summary>
21535         </member>
21536         <member name="F:Microsoft.Build.BackEnd.TaskHost._taskLoggingContext">
21537             <summary>
21538             The task logging context
21539             </summary>
21540         </member>
21541         <member name="F:Microsoft.Build.BackEnd.TaskHost._activeProxy">
21542             <summary>
21543             True if the task connected to this proxy is alive
21544             </summary>
21545         </member>
21546         <member name="F:Microsoft.Build.BackEnd.TaskHost._targetBuilderCallback">
21547             <summary>
21548             The callback used to invoke the target builder.
21549             </summary>
21550         </member>
21551         <member name="F:Microsoft.Build.BackEnd.TaskHost._callbackMonitor">
21552             <summary>
21553             This reference type is used to block access to a single entry methods of the interface
21554             </summary>
21555         </member>
21556         <member name="F:Microsoft.Build.BackEnd.TaskHost._sponsor">
21557             <summary>
21558             A client sponsor is a class
21559             which will respond to a lease renewal request and will
21560             increase the lease time allowing the object to stay in memory
21561             </summary>
21562         </member>
21563         <member name="F:Microsoft.Build.BackEnd.TaskHost._continueOnError">
21564             <summary>
21565             Legacy continue on error value per batch exposed via IBuildEngine
21566             </summary>
21567         </member>
21568         <member name="F:Microsoft.Build.BackEnd.TaskHost._convertErrorsToWarnings">
21569             <summary>
21570             Flag indicating if errors should be converted to warnings.
21571             </summary>
21572         </member>
21573         <member name="F:Microsoft.Build.BackEnd.TaskHost._yieldThreadId">
21574             <summary>
21575             The thread on which we yielded.
21576             </summary>
21577         </member>
21578         <member name="M:Microsoft.Build.BackEnd.TaskHost.#ctor(Microsoft.Build.BackEnd.IBuildComponentHost,Microsoft.Build.BackEnd.BuildRequestEntry,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.BackEnd.ITargetBuilderCallback)">
21579             <summary>
21580             Constructor
21581             </summary>
21582             <param name="host">The component host</param>
21583             <param name="requestEntry">The build request entry</param>
21584             <param name="taskLocation">The <see cref="T:Microsoft.Build.Construction.ElementLocation"/> of the task.</param>
21585             <param name="targetBuilderCallback">An <see cref="T:Microsoft.Build.BackEnd.ITargetBuilderCallback"/> to use to invoke targets and build projects.</param>
21586         </member>
21587         <member name="P:Microsoft.Build.BackEnd.TaskHost.IsRunningMultipleNodes">
21588             <summary>
21589             Returns true in the multiproc case
21590             </summary>
21591             <comment>
21592             If MSBUILDNOINPROCNODE is set, then even if there's only one node in the buildparameters, it will be an out-of-proc node.  
21593             </comment>
21594         </member>
21595         <member name="P:Microsoft.Build.BackEnd.TaskHost.ContinueOnError">
21596             <summary>
21597             Reflects the value of the ContinueOnError attribute.
21598             </summary>
21599         </member>
21600         <member name="P:Microsoft.Build.BackEnd.TaskHost.LineNumberOfTaskNode">
21601             <summary>
21602             The line number this task is on
21603             </summary>
21604         </member>
21605         <member name="P:Microsoft.Build.BackEnd.TaskHost.ColumnNumberOfTaskNode">
21606             <summary>
21607             The column number this task is on
21608             </summary>
21609         </member>
21610         <member name="P:Microsoft.Build.BackEnd.TaskHost.ProjectFileOfTaskNode">
21611             <summary>
21612             The project file this task is in.
21613             Typically this is an imported .targets file.
21614             Unfortunately the interface has shipped with a poor name, so we cannot change it.
21615             </summary>
21616         </member>
21617         <member name="P:Microsoft.Build.BackEnd.TaskHost.ConvertErrorsToWarnings">
21618             <summary>
21619             Indicates whether or not errors should be converted to warnings.
21620             </summary>
21621         </member>
21622         <member name="P:Microsoft.Build.BackEnd.TaskHost.LoggingContext">
21623             <summary>
21624             Sets or retrieves the logging context
21625             </summary>
21626         </member>
21627         <member name="P:Microsoft.Build.BackEnd.TaskHost.AppDomainSetup">
21628             <summary>
21629             For configuring child AppDomains.
21630             </summary>
21631         </member>
21632         <member name="P:Microsoft.Build.BackEnd.TaskHost.IsOutOfProc">
21633             <summary>
21634             Whether or not this is out of proc.
21635             </summary>
21636         </member>
21637         <member name="M:Microsoft.Build.BackEnd.TaskHost.BuildProjectFile(System.String,System.String[],System.Collections.IDictionary,System.Collections.IDictionary,System.String)">
21638             <summary>
21639             Builds a single project file
21640             Thread safe.
21641             </summary>
21642             <param name="projectFileName">The project file</param>
21643             <param name="targetNames">The list of targets to build</param>
21644             <param name="globalProperties">The global properties to use</param>
21645             <param name="targetOutputs">The outputs from the targets</param>
21646             <param name="toolsVersion">The tools version to use</param>
21647             <returns>True on success, false otherwise.</returns>
21648         </member>
21649         <member name="M:Microsoft.Build.BackEnd.TaskHost.BuildProjectFilesInParallel(System.String[],System.String[],System.Collections.IDictionary[],System.Collections.IDictionary[],System.String[],System.Boolean,System.Boolean)">
21650             <summary>
21651             Builds multiple project files in parallel.  This is the method the old MSBuild task invokes.
21652             Thread safe.
21653             </summary>
21654             <param name="projectFileNames">The list of projects to build</param>
21655             <param name="targetNames">The set of targets to build</param>
21656             <param name="globalProperties">The global properties to use for each project</param>
21657             <param name="targetOutputsPerProject">The outputs for each target on each project</param>
21658             <param name="toolsVersion">The tools versions to use</param>
21659             <param name="useResultsCache">Whether to use the results cache</param>
21660             <param name="unloadProjectsOnCompletion">Whether to unload projects when we are done.</param>
21661             <returns>True on success, false otherwise.</returns>
21662         </member>
21663         <member name="M:Microsoft.Build.BackEnd.TaskHost.BuildProjectFilesInParallel(System.String[],System.String[],System.Collections.IDictionary[],System.Collections.Generic.IList{System.String}[],System.String[],System.Boolean)">
21664             <summary>
21665             Builds multiple project files in parallel. 
21666             Thread safe.
21667             </summary>
21668             <param name="projectFileNames">The list of projects to build</param>
21669             <param name="targetNames">The set of targets to build</param>
21670             <param name="globalProperties">The global properties to use for each project</param>
21671             <param name="undefineProperties">The list of global properties to undefine</param>
21672             <param name="toolsVersion">The tools versions to use</param>
21673             <param name="returnTargetOutputs">Should the target outputs be returned in teh BuildEngineResult</param>
21674             <returns>A structure containing the result of the build, success or failure and the list of target outputs per project</returns>
21675         </member>
21676         <member name="M:Microsoft.Build.BackEnd.TaskHost.Yield">
21677             <summary>
21678             Requests to yield the node.
21679             Thread safe, however Yield cannot be called unless the
21680             last call to Yield or Reaquire was Reaquire.
21681             </summary>
21682         </member>
21683         <member name="M:Microsoft.Build.BackEnd.TaskHost.Reacquire">
21684             <summary>
21685             Requests to reacquire the node.
21686             Thread safe, however Reaquire cannot be called unless the
21687             last call to Yield or Reaquire was Yield.
21688             </summary>
21689         </member>
21690         <member name="M:Microsoft.Build.BackEnd.TaskHost.LogErrorEvent(Microsoft.Build.Framework.BuildErrorEventArgs)">
21691             <summary>
21692             Logs an error event for the current task
21693             Thread safe.
21694             </summary>
21695             <param name="e">The event args</param>
21696         </member>
21697         <member name="M:Microsoft.Build.BackEnd.TaskHost.LogWarningEvent(Microsoft.Build.Framework.BuildWarningEventArgs)">
21698             <summary>
21699             Logs a warning event for the current task
21700             Thread safe.
21701             </summary>
21702             <param name="e">The event args</param>
21703         </member>
21704         <member name="M:Microsoft.Build.BackEnd.TaskHost.LogMessageEvent(Microsoft.Build.Framework.BuildMessageEventArgs)">
21705             <summary>
21706             Logs a message event for the current task
21707             Thread safe.
21708             </summary>
21709             <param name="e">The event args</param>
21710         </member>
21711         <member name="M:Microsoft.Build.BackEnd.TaskHost.LogCustomEvent(Microsoft.Build.Framework.CustomBuildEventArgs)">
21712             <summary>
21713             Logs a custom event for the current task
21714             Thread safe.
21715             </summary>
21716             <param name="e">The event args</param>
21717         </member>
21718         <member name="M:Microsoft.Build.BackEnd.TaskHost.BuildProjectFile(System.String,System.String[],System.Collections.IDictionary,System.Collections.IDictionary)">
21719             <summary>
21720             Builds a single project file
21721             Thread safe.
21722             </summary>
21723             <param name="projectFileName">The project file name</param>
21724             <param name="targetNames">The set of targets to build.</param>
21725             <param name="globalProperties">The global properties to use</param>
21726             <param name="targetOutputs">The outputs from the targets</param>
21727             <returns>True on success, false otherwise.</returns>
21728         </member>
21729         <member name="M:Microsoft.Build.BackEnd.TaskHost.RegisterTaskObject(System.Object,System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime,System.Boolean)">
21730             <summary>
21731             Disposes of all of the objects with the specified lifetime.
21732             </summary>
21733         </member>
21734         <member name="M:Microsoft.Build.BackEnd.TaskHost.GetRegisteredTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
21735             <summary>
21736             Gets a previously registered task object.
21737             </summary>
21738         </member>
21739         <member name="M:Microsoft.Build.BackEnd.TaskHost.UnregisterTaskObject(System.Object,Microsoft.Build.Framework.RegisteredTaskObjectLifetime)">
21740             <summary>
21741             Unregisters a task object.
21742             </summary>
21743         </member>
21744         <member name="M:Microsoft.Build.BackEnd.TaskHost.LogTelemetry(System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
21745             <summary>
21746             Logs a telemetry event for the current task.
21747             </summary>
21748             <param name="eventName">The event name.</param>
21749             <param name="properties">The list of properties associated with the event.</param>
21750         </member>
21751         <member name="M:Microsoft.Build.BackEnd.TaskHost.InternalBuildProjects(System.String[],System.String[],System.Collections.IDictionary[],System.Collections.Generic.IList{System.String}[],System.String[],System.Boolean)">
21752             <summary>
21753             Called by the internal MSBuild task.
21754             Does not take the lock because it is called by another request builder thread.
21755             </summary>
21756         </member>
21757         <member name="M:Microsoft.Build.BackEnd.TaskHost.InitializeLifetimeService">
21758             <summary>
21759             InitializeLifetimeService is called when the remote object is activated. 
21760             This method will determine how long the lifetime for the object will be.
21761             </summary>
21762             <returns>The lease object to control this object's lifetime.</returns>
21763         </member>
21764         <member name="M:Microsoft.Build.BackEnd.TaskHost.MarkAsInactive">
21765             <summary>
21766             Indicates to the TaskHost that it is no longer needed.
21767             Called by TaskBuilder when the task using the EngineProxy is done.
21768             </summary>
21769         </member>
21770         <member name="M:Microsoft.Build.BackEnd.TaskHost.IsEventSerializable(Microsoft.Build.Framework.BuildEventArgs)">
21771             <summary>
21772             Determine if the event is serializable. If we are running with multiple nodes we need to make sure the logging events are serializable. If not
21773             we need to log a warning.
21774             </summary>
21775         </member>
21776         <member name="M:Microsoft.Build.BackEnd.TaskHost.BuildProjectFilesInParallelAsync(System.String[],System.String[],System.Collections.IDictionary[],System.Collections.Generic.IList{System.String}[],System.String[],System.Boolean)">
21777             <summary>
21778             Async version of BuildProjectFilesInParallel.
21779             </summary>
21780             <param name="projectFileNames">The list of projects to build</param>
21781             <param name="targetNames">The set of targets to build</param>
21782             <param name="globalProperties">The global properties to use for each project</param>
21783             <param name="undefineProperties">The list of global properties to undefine</param>
21784             <param name="toolsVersion">The tools versions to use</param>
21785             <param name="returnTargetOutputs">Should the target outputs be returned in teh BuildEngineResult</param>
21786             <returns>A Task returning a structure containing the result of the build, success or failure and the list of target outputs per project</returns>
21787         </member>
21788         <member name="M:Microsoft.Build.BackEnd.TaskHost.VerifyActiveProxy">
21789             <summary>
21790             Verify the task host is active or not
21791             Thread safe.
21792             </summary>
21793         </member>
21794         <member name="T:Microsoft.Build.BackEnd.BuildRequest">
21795             <summary>
21796             A build request contains information about the configuration used to build as well
21797             as which targets need to be built.
21798             </summary>
21799         </member>
21800         <member name="F:Microsoft.Build.BackEnd.BuildRequest.InvalidGlobalRequestId">
21801             <summary>
21802             The invalid global request id
21803             </summary>
21804         </member>
21805         <member name="F:Microsoft.Build.BackEnd.BuildRequest.InvalidNodeRequestId">
21806             <summary>
21807             The invalid node request id
21808             </summary>
21809         </member>
21810         <member name="F:Microsoft.Build.BackEnd.BuildRequest.ResultsTransferNodeRequestId">
21811             <summary>
21812             The results transfer request id
21813             </summary>
21814         </member>
21815         <member name="F:Microsoft.Build.BackEnd.BuildRequest._submissionId">
21816             <summary>
21817             The submission with which this request is associated.
21818             </summary>
21819         </member>
21820         <member name="F:Microsoft.Build.BackEnd.BuildRequest._configurationId">
21821             <summary>
21822             The configuration id.
21823             </summary>
21824         </member>
21825         <member name="F:Microsoft.Build.BackEnd.BuildRequest._globalRequestId">
21826             <summary>
21827             The global build request id, assigned by the Build Manager
21828             </summary>
21829         </member>
21830         <member name="F:Microsoft.Build.BackEnd.BuildRequest._parentGlobalRequestId">
21831             <summary>
21832             The global request id of the request which spawned this one.
21833             </summary>
21834         </member>
21835         <member name="F:Microsoft.Build.BackEnd.BuildRequest._nodeRequestId">
21836             <summary>
21837             The build request id assigned by the node originating this request.
21838             </summary>
21839         </member>
21840         <member name="F:Microsoft.Build.BackEnd.BuildRequest._targets">
21841             <summary>
21842             The targets specified when the request was made.  Doesn't include default or initial targets.
21843             </summary>
21844         </member>
21845         <member name="F:Microsoft.Build.BackEnd.BuildRequest._hostServices">
21846             <summary>
21847             The route for host-aware tasks back to the host
21848             </summary>
21849         </member>
21850         <member name="F:Microsoft.Build.BackEnd.BuildRequest._parentBuildEventContext">
21851             <summary>
21852             The build event context of the parent
21853             </summary>
21854         </member>
21855         <member name="F:Microsoft.Build.BackEnd.BuildRequest._buildEventContext">
21856             <summary>
21857             The build event context of this request
21858             </summary>
21859         </member>
21860         <member name="F:Microsoft.Build.BackEnd.BuildRequest._buildRequestDataFlags">
21861             <summary>
21862             Whether or not the <see cref="T:Microsoft.Build.Execution.BuildResult"/> issued in response to this request should include <see cref="P:Microsoft.Build.Execution.BuildResult.ProjectStateAfterBuild"/>.
21863             </summary>
21864         </member>
21865         <member name="M:Microsoft.Build.BackEnd.BuildRequest.#ctor">
21866             <summary>
21867             Constructor for serialization.
21868             </summary>
21869         </member>
21870         <member name="M:Microsoft.Build.BackEnd.BuildRequest.#ctor(System.Int32,System.Int32,System.Int32,System.Collections.Generic.ICollection{System.String},Microsoft.Build.Execution.HostServices,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildRequestDataFlags)">
21871             <summary>
21872             Initializes a build request with a parent context.
21873             </summary>
21874             <param name="submissionId">The id of the build submission.</param>
21875             <param name="nodeRequestId">The id of the node issuing the request</param>
21876             <param name="configurationId">The configuration id to use.</param>
21877             <param name="escapedTargets">The targets to be built</param>
21878             <param name="hostServices">Host services if any. May be null.</param>
21879             <param name="parentBuildEventContext">The build event context of the parent project.</param>
21880             <param name="parentRequest">The parent build request, if any.</param>
21881             <param name="buildRequestDataFlags">Additional flags for the request.</param>
21882         </member>
21883         <member name="M:Microsoft.Build.BackEnd.BuildRequest.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
21884             <summary>
21885             Private constructor for deserialization
21886             </summary>
21887         </member>
21888         <member name="P:Microsoft.Build.BackEnd.BuildRequest.IsConfigurationResolved">
21889             <summary>
21890             Returns true if the configuration has been resolved, false otherwise.
21891             </summary>
21892         </member>
21893         <member name="P:Microsoft.Build.BackEnd.BuildRequest.SubmissionId">
21894             <summary>
21895             Returns the submission id
21896             </summary>
21897         </member>
21898         <member name="P:Microsoft.Build.BackEnd.BuildRequest.ConfigurationId">
21899             <summary>
21900             Returns the configuration id
21901             </summary>
21902         </member>
21903         <member name="P:Microsoft.Build.BackEnd.BuildRequest.GlobalRequestId">
21904             <summary>
21905             Gets the global request id
21906             </summary>
21907         </member>
21908         <member name="P:Microsoft.Build.BackEnd.BuildRequest.ParentGlobalRequestId">
21909             <summary>
21910             Gets the global request id of the parent request.
21911             </summary>
21912         </member>
21913         <member name="P:Microsoft.Build.BackEnd.BuildRequest.NodeRequestId">
21914             <summary>
21915             Gets the node request id
21916             </summary>
21917         </member>
21918         <member name="P:Microsoft.Build.BackEnd.BuildRequest.Targets">
21919             <summary>
21920             Returns the set of unescaped targets to be built
21921             </summary>
21922         </member>
21923         <member name="P:Microsoft.Build.BackEnd.BuildRequest.Type">
21924             <summary>
21925             Returns the type of packet.
21926             </summary>
21927         </member>
21928         <member name="P:Microsoft.Build.BackEnd.BuildRequest.ParentBuildEventContext">
21929             <summary>
21930             Returns the build event context of the parent, if any.
21931             </summary>
21932         </member>
21933         <member name="P:Microsoft.Build.BackEnd.BuildRequest.BuildEventContext">
21934             <summary>
21935             Returns the build event context for this request, if any.
21936             </summary>
21937         </member>
21938         <member name="P:Microsoft.Build.BackEnd.BuildRequest.BuildRequestDataFlags">
21939             <summary>
21940             The set of flags specified in the BuildRequestData for this request.
21941             </summary>
21942         </member>
21943         <member name="P:Microsoft.Build.BackEnd.BuildRequest.HostServices">
21944             <summary>
21945             The route for host-aware tasks back to the host
21946             </summary>
21947         </member>
21948         <member name="P:Microsoft.Build.BackEnd.BuildRequest.IsRootRequest">
21949             <summary>
21950             Returns true if this is a root request (one which has no parent.)
21951             </summary>
21952         </member>
21953         <member name="M:Microsoft.Build.BackEnd.BuildRequest.ResolveConfiguration(System.Int32)">
21954             <summary>
21955             Sets the configuration id to a resolved id.
21956             </summary>
21957             <param name="newConfigId">The new configuration id for this request.</param>
21958         </member>
21959         <member name="M:Microsoft.Build.BackEnd.BuildRequest.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
21960             <summary>
21961             Reads/writes this packet
21962             </summary>
21963         </member>
21964         <member name="M:Microsoft.Build.BackEnd.BuildRequest.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
21965             <summary>
21966             Factory for serialization.
21967             </summary>
21968         </member>
21969         <member name="M:Microsoft.Build.BackEnd.BuildRequest.DoesResultApplyToRequest(Microsoft.Build.Execution.BuildResult)">
21970             <summary>
21971             Returns true if the result applies to this request.
21972             </summary>
21973         </member>
21974         <member name="T:Microsoft.Build.BackEnd.YieldAction">
21975             <summary>
21976             Indicates what the action is for requests which are yielding.
21977             </summary>
21978         </member>
21979         <member name="F:Microsoft.Build.BackEnd.YieldAction.Yield">
21980             <summary>
21981             The request is yielding its control of the node.
21982             </summary>
21983         </member>
21984         <member name="F:Microsoft.Build.BackEnd.YieldAction.Reacquire">
21985             <summary>
21986             The request is ready to reacquire control of the node.
21987             </summary>
21988         </member>
21989         <member name="F:Microsoft.Build.BackEnd.YieldAction.None">
21990             <summary>
21991             There is no yield action
21992             </summary>
21993         </member>
21994         <member name="T:Microsoft.Build.BackEnd.BuildRequestBlocker">
21995             <summary>
21996             This class is used to inform the Scheduler that a request on a node is being blocked from further progress.  There
21997             are two cases for this:
21998             1) The request may be blocked waiting for a target to complete in the same project but which is assigned to
21999                another request.
22000             2) The request may be blocked because it has child requests which need to be satisfied to proceed.
22001             </summary>
22002         </member>
22003         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._yieldAction">
22004             <summary>
22005             The yield action, if any.
22006             </summary>
22007         </member>
22008         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._blockedGlobalRequestId">
22009             <summary>
22010             The global request id of the request which is being blocked from continuing.
22011             </summary>
22012         </member>
22013         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._targetsInProgress">
22014             <summary>
22015             The set of targets which are currently in progress for the blocked global request ID.
22016             </summary>
22017         </member>
22018         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._blockingGlobalRequestId">
22019             <summary>
22020             The request on which we are blocked, if any.
22021             </summary>
22022         </member>
22023         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._blockingTarget">
22024             <summary>
22025             The name of the blocking target, if any.
22026             </summary>
22027         </member>
22028         <member name="F:Microsoft.Build.BackEnd.BuildRequestBlocker._buildRequests">
22029             <summary>
22030             The requests which need to be built to unblock the request, if any.
22031             </summary>
22032         </member>
22033         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
22034             <summary>
22035             Constructor for deserialization.
22036             </summary>
22037         </member>
22038         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(System.Int32,System.String[],System.Int32,System.String)">
22039             <summary>
22040             Constructor for the blocker where we are blocked waiting for a target.
22041             </summary>
22042         </member>
22043         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(System.Int32,System.String[],Microsoft.Build.BackEnd.BuildRequest[])">
22044             <summary>
22045             Constructor for the blocker where we are blocked waiting for requests to be satisfied.
22046             </summary>
22047         </member>
22048         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(System.Int32,System.String[],Microsoft.Build.BackEnd.YieldAction)">
22049             <summary>
22050             Constructor for a blocker used by yielding requests.
22051             </summary>
22052         </member>
22053         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(System.Int32)">
22054             <summary>
22055             Constructor for a blocker used by results-transfer requests
22056             </summary>
22057             <param name="blockedGlobalRequestId">The request needing results transferred</param>
22058         </member>
22059         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.#ctor(System.Int32,System.String[])">
22060             <summary>
22061             Constructor for common values.
22062             </summary>
22063         </member>
22064         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.Type">
22065             <summary>
22066             Returns the type of packet.
22067             </summary>
22068         </member>
22069         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.BlockedRequestId">
22070             <summary>
22071             Accessor for the blocked request id.
22072             </summary>
22073         </member>
22074         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.TargetsInProgress">
22075             <summary>
22076             Accessor for the set of targets currently in progress.
22077             </summary>
22078         </member>
22079         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.BlockingRequestId">
22080             <summary>
22081             Accessor for the blocking request id, if any.
22082             </summary>
22083         </member>
22084         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.BlockingTarget">
22085             <summary>
22086             Accessor for the blocking request id, if any.
22087             </summary>
22088         </member>
22089         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.BuildRequests">
22090             <summary>
22091             Accessor for the blocking build requests, if any.
22092             </summary>
22093         </member>
22094         <member name="P:Microsoft.Build.BackEnd.BuildRequestBlocker.YieldAction">
22095             <summary>
22096             Accessor for the yield action.
22097             </summary>
22098         </member>
22099         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
22100             <summary>
22101             Serialization method.
22102             </summary>
22103         </member>
22104         <member name="M:Microsoft.Build.BackEnd.BuildRequestBlocker.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
22105             <summary>
22106             Factory for serialization.
22107             </summary>
22108         </member>
22109         <member name="T:Microsoft.Build.BackEnd.BuildRequestConfiguration">
22110             <summary>
22111             A build request configuration represents all of the data necessary to know which project to build
22112             and the environment in which it should be built.
22113             </summary>
22114         </member>
22115         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration.InvalidConfigurationId">
22116             <summary>
22117             The invalid configuration id
22118             </summary>
22119         </member>
22120         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._configId">
22121             <summary>
22122             This is the ID of the configuration as set by the generator of the configuration.  When
22123             a node generates a configuration, this is set to a negative number.  The Build Manager will
22124             generate positive IDs
22125             </summary>
22126         </member>
22127         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._projectFullPath">
22128             <summary>
22129             The full path to the project to build.
22130             </summary>
22131         </member>
22132         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._toolsVersion">
22133             <summary>
22134             The tools version specified for the configuration.
22135             Always specified.
22136             May have originated from a /tv switch, or an MSBuild task,
22137             or a Project tag, or the default.
22138             </summary>
22139         </member>
22140         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._explicitToolsVersionSpecified">
22141             <summary>
22142             Whether the tools version was set by the /tv switch or passed in through an msbuild callback
22143             directly or indirectly.
22144             </summary>
22145         </member>
22146         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._globalProperties">
22147             <summary>
22148             The set of global properties which should be used when building this project.
22149             </summary>
22150         </member>
22151         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._isTraversalProject">
22152             <summary>
22153             Flag indicating if the project in this configuration is a traversal
22154             </summary>
22155         </member>
22156         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._syncLock">
22157             <summary>
22158             Synchronization object.  Currently this just prevents us from caching and uncaching at the
22159             same time, causing a race condition.  This class is not made 100% threadsafe by the presence
22160             and current usage of this lock.
22161             </summary>
22162         </member>
22163         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._project">
22164             <summary>
22165             The project object, representing the project to be built.
22166             </summary>
22167         </member>
22168         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._transferredState">
22169             <summary>
22170             The state of a project instance which has been transferred from one node to another.
22171             </summary>
22172         </member>
22173         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._transferredProperties">
22174             <summary>
22175             The project instance properties we should transfer.
22176             <see cref="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._transferredState"/> and <see cref="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._transferredProperties"/> are mutually exclud
22177             </summary>
22178         </member>
22179         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._projectInitialTargets">
22180             <summary>
22181             The initial targets for the project
22182             </summary>
22183         </member>
22184         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._projectDefaultTargets">
22185             <summary>
22186             The default targets for the project
22187             </summary>
22188         </member>
22189         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._baseLookup">
22190             <summary>
22191             This is the lookup representing the current project items and properties 'state'.
22192             </summary>
22193         </member>
22194         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._activelyBuildingTargets">
22195             <summary>
22196             This is the set of targets which are currently building but which have not yet completed.
22197             { targetName -> globalRequestId }
22198             </summary>
22199         </member>
22200         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._resultsNodeId">
22201             <summary>
22202             The node where this configuration's master results are stored.
22203             </summary>
22204         </member>
22205         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._savedEnvironmentVariables">
22206             <summary>
22207              Holds a snapshot of the environment at the time we blocked.
22208              </summary>
22209         </member>
22210         <member name="F:Microsoft.Build.BackEnd.BuildRequestConfiguration._savedCurrentDirectory">
22211             <summary>
22212             Holds a snapshot of the current working directory at the time we blocked.
22213             </summary>
22214         </member>
22215         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.TargetNames">
22216             <summary>
22217             The target names that were requested to execute.
22218             </summary>
22219         </member>
22220         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.#ctor(Microsoft.Build.Execution.BuildRequestData,System.String,Microsoft.Build.Internal.Utilities.GetToolset)">
22221             <summary>
22222             Initializes a configuration from a BuildRequestData structure.  Used by the BuildManager.
22223             Figures out the correct tools version to use, falling back to the provided default if necessary.
22224             May throw InvalidProjectFileException.
22225             </summary>
22226             <param name="data">The data containing the configuration information.</param>
22227             <param name="defaultToolsVersion">The default ToolsVersion to use as a fallback</param>
22228             <param name="getToolset">Callback used to get a Toolset based on a ToolsVersion</param>
22229         </member>
22230         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.#ctor(System.Int32,Microsoft.Build.Execution.BuildRequestData,System.String,Microsoft.Build.Internal.Utilities.GetToolset)">
22231             <summary>
22232             Initializes a configuration from a BuildRequestData structure.  Used by the BuildManager.
22233             Figures out the correct tools version to use, falling back to the provided default if necessary.
22234             May throw InvalidProjectFileException.
22235             </summary>
22236             <param name="configId">The configuration ID to assign to this new configuration.</param>
22237             <param name="data">The data containing the configuration information.</param>
22238             <param name="defaultToolsVersion">The default ToolsVersion to use as a fallback</param>
22239             <param name="getToolset">Callback used to get a Toolset based on a ToolsVersion</param>
22240         </member>
22241         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.#ctor(System.Int32,Microsoft.Build.Execution.ProjectInstance)">
22242             <summary>
22243             Creates a new BuildRequestConfiguration based on an existing project instance.
22244             Used by the BuildManager to populate configurations from a solution.
22245             </summary>
22246             <param name="configId">The configuration id</param>
22247             <param name="instance">The project instance.</param>
22248         </member>
22249         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.#ctor(System.Int32,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
22250             <summary>
22251             Creates a new configuration which is a clone of the old one but with a new id.
22252             </summary>
22253         </member>
22254         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
22255             <summary>
22256             Private constructor for deserialization
22257             </summary>
22258         </member>
22259         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.IsCacheable">
22260             <summary>
22261             Flag indicating whether the configuration is allowed to cache.  This does not mean that the configuration will
22262             actually cache - there are several criteria which must for that.
22263             </summary>
22264         </member>
22265         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ExplicitlyLoaded">
22266             <summary>
22267             When reset caches is false we need to only keep around the configurations which are being asked for during the design time build.
22268             Other configurations need to be cleared. If this configuration is marked as ExplicitlyLoadedConfiguration then it should not be cleared when 
22269             Reset Caches is false.
22270             </summary>
22271         </member>
22272         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.IsActivelyBuilding">
22273             <summary>
22274             Flag indicating whether or not the configuration is actually building.
22275             </summary>
22276         </member>
22277         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.IsLoaded">
22278             <summary>
22279             Flag indicating whether or not the configuration has been loaded before.
22280             </summary>
22281         </member>
22282         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.IsCached">
22283             <summary>
22284             Flag indicating if the configuration is cached or not.
22285             </summary>
22286         </member>
22287         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.IsTraversal">
22288             <summary>
22289             Flag indicating if this configuration represents a traversal project.  Traversal projects
22290             are projects which typically do little or no work themselves, but have references to other
22291             projects (and thus are used to find more work.)  The scheduler can treat these differently
22292             in order to fill its work queue with other options for scheduling.
22293             </summary>
22294         </member>
22295         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.WasGeneratedByNode">
22296             <summary>
22297             Returns true if this configuration was generated on a node and has not yet been resolved.
22298             </summary>
22299         </member>
22300         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ConfigurationId">
22301             <summary>
22302             Sets or returns the configuration id
22303             </summary>
22304         </member>
22305         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ProjectFullPath">
22306             <summary>
22307             Returns the filename of the project to build.
22308             </summary>
22309         </member>
22310         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ToolsVersion">
22311             <summary>
22312             The tools version specified for the configuration.
22313             Always specified.
22314             May have originated from a /tv switch, or an MSBuild task,
22315             or a Project tag, or the default.
22316             </summary>
22317         </member>
22318         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.GlobalProperties">
22319             <summary>
22320             Returns the global properties to use to build this project.
22321             </summary>
22322         </member>
22323         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.Project">
22324             <summary>
22325             Sets or returns the project to build.
22326             </summary>
22327         </member>
22328         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.HasTargetsResolved">
22329             <summary>
22330             Returns true if the default and initial targets have been resolved.
22331             </summary>
22332         </member>
22333         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ProjectInitialTargets">
22334             <summary>
22335             Gets the initial targets for the project
22336             </summary>
22337         </member>
22338         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ProjectDefaultTargets">
22339             <summary>
22340             Gets the default targets for the project
22341             </summary>
22342         </member>
22343         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.Type">
22344             <summary>
22345             Returns the node packet type
22346             </summary>
22347         </member>
22348         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.BaseLookup">
22349             <summary>
22350             Returns the lookup which collects all items and properties during the run of this project.
22351             </summary>
22352         </member>
22353         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ActivelyBuildingTargets">
22354             <summary>
22355             Retrieves the set of targets currently building, mapped to the request id building them.
22356             </summary>
22357         </member>
22358         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.SavedEnvironmentVariables">
22359             <summary>
22360             Holds a snapshot of the environment at the time we blocked.
22361             </summary>
22362         </member>
22363         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.SavedCurrentDirectory">
22364             <summary>
22365             Holds a snapshot of the current working directory at the time we blocked.
22366             </summary>
22367         </member>
22368         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ExplicitToolsVersionSpecified">
22369             <summary>
22370             Whether the tools version was set by the /tv switch or passed in through an msbuild callback
22371             directly or indirectly.
22372             </summary>
22373         </member>
22374         <member name="P:Microsoft.Build.BackEnd.BuildRequestConfiguration.ResultsNodeId">
22375             <summary>
22376             Gets or sets the node on which this configuration's results are stored.
22377             </summary>
22378         </member>
22379         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.op_Equality(Microsoft.Build.BackEnd.BuildRequestConfiguration,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
22380             <summary>
22381             Implementation of the equality operator.
22382             </summary>
22383             <param name="left">The left hand argument</param>
22384             <param name="right">The right hand argument</param>
22385             <returns>True if the objects are equivalent, false otherwise.</returns>
22386         </member>
22387         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.op_Inequality(Microsoft.Build.BackEnd.BuildRequestConfiguration,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
22388             <summary>
22389             Implementation of the inequality operator.
22390             </summary>
22391             <param name="left">The left-hand argument</param>
22392             <param name="right">The right-hand argument</param>
22393             <returns>True if the objects are not equivalent, false otherwise.</returns>
22394         </member>
22395         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.CacheIfPossible">
22396             <summary>
22397             Requests that the configuration be cached to disk.
22398             </summary>
22399         </member>
22400         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.RetrieveFromCache">
22401             <summary>
22402             Retrieves the configuration data from the cache.
22403             </summary>
22404         </member>
22405         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.GetTargetsUsedToBuildRequest(Microsoft.Build.BackEnd.BuildRequest)">
22406             <summary>
22407             Gets the list of targets which are used to build the specified request, including all initial and applicable default targets
22408             </summary>
22409             <param name="request">The request </param>
22410             <returns>An array of t</returns>
22411         </member>
22412         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.GetAfterTargetsForDefaultTargets(Microsoft.Build.BackEnd.BuildRequest)">
22413             <summary>
22414             Returns the list of targets that are AfterTargets (or AfterTargets of the AfterTargets) 
22415             of the entrypoint targets.  
22416             </summary>
22417         </member>
22418         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.GetHashCode">
22419             <summary>
22420             This override is used to provide a hash code for storage in dictionaries and the like.
22421             </summary>
22422             <remarks>
22423             If two objects are Equal, they must have the same hash code, for dictionaries to work correctly.
22424             Two configurations are Equal if their global properties are equivalent, not necessary reference equals.
22425             So only include filename and tools version in the hashcode.
22426             </remarks>
22427             <returns>A hash code</returns>
22428         </member>
22429         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.ToString">
22430             <summary>
22431             Returns a string representation of the object
22432             </summary>
22433             <returns>String representation of the object</returns>
22434         </member>
22435         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.Equals(System.Object)">
22436             <summary>
22437             Determines object equality
22438             </summary>
22439             <param name="obj">The object to compare with</param>
22440             <returns>True if they contain the same data, false otherwise</returns>
22441         </member>
22442         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.Equals(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
22443             <summary>
22444             Equality of the configuration is the product of the equality of its members.
22445             </summary>
22446             <param name="other">The other configuration to which we will compare ourselves.</param>
22447             <returns>True if equal, false otherwise.</returns>
22448         </member>
22449         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
22450             <summary>
22451             Reads or writes the packet to the serializer.
22452             </summary>
22453         </member>
22454         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
22455             <summary>
22456             Factory for serialization.
22457             </summary>
22458         </member>
22459         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.ApplyTransferredState(Microsoft.Build.Execution.ProjectInstance)">
22460             <summary>
22461             Applies the state from the specified instance to the loaded instance.  This overwrites the items and properties.
22462             </summary>
22463             <remarks>
22464             Used when we transfer results and state from a previous node to the current one.
22465             </remarks>
22466         </member>
22467         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.GetCacheFile">
22468             <summary>
22469             Gets the name of the cache file for this configuration.
22470             </summary>
22471         </member>
22472         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.ClearCacheFile">
22473             <summary>
22474             Deletes the cache file
22475             </summary>
22476         </member>
22477         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.ShallowCloneWithNewId(System.Int32)">
22478             <summary>
22479             Clones this BuildRequestConfiguration but sets a new configuration id.
22480             </summary>
22481         </member>
22482         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.InternalEquals(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
22483             <summary>
22484             Compares this object with another for equality
22485             </summary>
22486             <param name="other">The object with which to compare this one.</param>
22487             <returns>True if the objects contain the same data, false otherwise.</returns>
22488         </member>
22489         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.ResolveToolsVersion(Microsoft.Build.Execution.BuildRequestData,System.String,Microsoft.Build.Internal.Utilities.GetToolset)">
22490             <summary>
22491             Determines what the real tools version is.
22492             </summary>
22493         </member>
22494         <member name="M:Microsoft.Build.BackEnd.BuildRequestConfiguration.GetConfigurationTranslator(Microsoft.Build.BackEnd.TranslationDirection)">
22495             <summary>
22496             Gets the translator for this configuration.
22497             </summary>
22498         </member>
22499         <member name="T:Microsoft.Build.BackEnd.CircularDependencyException">
22500             <summary>
22501             An exception representing the case where a BuildRequest has caused a circular project dependency.  This is used to
22502             terminate the request builder which initiated the failure path.
22503             </summary>
22504             <remarks>
22505             If you add fields to this class, add a custom serialization constructor and override GetObjectData().
22506             </remarks>
22507         </member>
22508         <member name="M:Microsoft.Build.BackEnd.CircularDependencyException.#ctor">
22509             <summary>
22510             Constructs a standard BuildAbortedException.
22511             </summary>
22512         </member>
22513         <member name="M:Microsoft.Build.BackEnd.CircularDependencyException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
22514             <summary>
22515             Constructor for deserialization.
22516             </summary>
22517         </member>
22518         <member name="T:Microsoft.Build.BackEnd.BuildRequestUnblocker">
22519             <summary>
22520             This class is used by the Scheduler to unblock a blocked build request on the BuildRequestEngine.
22521             There are two cases:
22522             1. The request was blocked waiting on a target in the same project.  In this case this class will contain
22523                no information other than the request id.
22524             2. The request was blocked on some set of build requests.  This class will then contain the build results 
22525                needed to satisfy those requests.
22526             </summary>
22527         </member>
22528         <member name="F:Microsoft.Build.BackEnd.BuildRequestUnblocker._blockedGlobalRequestId">
22529             <summary>
22530             The node request id of the request which is blocked and now will either result or have results reported.
22531             </summary>
22532         </member>
22533         <member name="F:Microsoft.Build.BackEnd.BuildRequestUnblocker._buildResult">
22534             <summary>
22535             The build result which we wish to report.
22536             </summary>
22537         </member>
22538         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
22539             <summary>
22540             Constructor for deserialization.
22541             </summary>
22542         </member>
22543         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.#ctor(System.Int32)">
22544             <summary>
22545             Constructor for the unblocker where we are blocked waiting for a target.
22546             </summary>
22547         </member>
22548         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.#ctor(Microsoft.Build.Execution.BuildResult)">
22549             <summary>
22550             Constructor for the unblocker where we are blocked waiting for results.
22551             </summary>
22552         </member>
22553         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.#ctor(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
22554             <summary>
22555             Constructor for the unblocker for circular dependencies
22556             </summary>
22557         </member>
22558         <member name="P:Microsoft.Build.BackEnd.BuildRequestUnblocker.Type">
22559             <summary>
22560             Returns the type of packet.
22561             </summary>
22562         </member>
22563         <member name="P:Microsoft.Build.BackEnd.BuildRequestUnblocker.BlockedRequestId">
22564             <summary>
22565             Accessor for the blocked node request id.
22566             </summary>
22567         </member>
22568         <member name="P:Microsoft.Build.BackEnd.BuildRequestUnblocker.Result">
22569             <summary>
22570             Accessor for the build results, if any.
22571             </summary>
22572         </member>
22573         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
22574             <summary>
22575             Serialization method.
22576             </summary>
22577         </member>
22578         <member name="M:Microsoft.Build.BackEnd.BuildRequestUnblocker.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
22579             <summary>
22580             Factory for serialization.
22581             </summary>
22582         </member>
22583         <member name="T:Microsoft.Build.BackEnd.IBuildResults">
22584             <summary>
22585             An interface representing results for a build request
22586             </summary>
22587         </member>
22588         <member name="P:Microsoft.Build.BackEnd.IBuildResults.Exception">
22589             <summary>
22590             The exception, if any, generated while the build ran.
22591             </summary>
22592         </member>
22593         <member name="P:Microsoft.Build.BackEnd.IBuildResults.OverallResult">
22594             <summary>
22595             The overall build result code.
22596             </summary>
22597         </member>
22598         <member name="P:Microsoft.Build.BackEnd.IBuildResults.ResultsByTarget">
22599             <summary>
22600             Returns an enumerator for all target results in this build result
22601             </summary>
22602         </member>
22603         <member name="P:Microsoft.Build.BackEnd.IBuildResults.SavedEnvironmentVariables">
22604             <summary>
22605             Set of environment variables for the configuration this result came from
22606             </summary>
22607         </member>
22608         <member name="P:Microsoft.Build.BackEnd.IBuildResults.SavedCurrentDirectory">
22609             <summary>
22610             The current directory for the configuration this result came from
22611             </summary>
22612         </member>
22613         <member name="P:Microsoft.Build.BackEnd.IBuildResults.Item(System.String)">
22614             <summary>
22615             Gets the results for a target in the build request
22616             </summary>
22617             <param name="target">The target name</param>
22618             <returns>The target results</returns>
22619         </member>
22620         <member name="M:Microsoft.Build.BackEnd.IBuildResults.HasResultsForTarget(System.String)">
22621             <summary>
22622             Returns true if there are results for the specified target
22623             </summary>
22624             <param name="target">The target name</param>
22625             <returns>True if results exist, false otherwise.</returns>
22626         </member>
22627         <member name="T:Microsoft.Build.BackEnd.WorkUnitResultCode">
22628             <summary>
22629             The result of executing the task or target.
22630             </summary>
22631         </member>
22632         <member name="F:Microsoft.Build.BackEnd.WorkUnitResultCode.Skipped">
22633             <summary>
22634             The work unit was skipped.
22635             </summary>
22636         </member>
22637         <member name="F:Microsoft.Build.BackEnd.WorkUnitResultCode.Success">
22638             <summary>
22639             The work unit succeeded.
22640             </summary>
22641         </member>
22642         <member name="F:Microsoft.Build.BackEnd.WorkUnitResultCode.Failed">
22643             <summary>
22644             The work unit failed.
22645             </summary>
22646         </member>
22647         <member name="F:Microsoft.Build.BackEnd.WorkUnitResultCode.Canceled">
22648             <summary>
22649             The work unit was cancelled.
22650             </summary>
22651         </member>
22652         <member name="T:Microsoft.Build.BackEnd.WorkUnitActionCode">
22653             <summary>
22654             Indicates whether further work should be done.
22655             </summary>
22656         </member>
22657         <member name="F:Microsoft.Build.BackEnd.WorkUnitActionCode.Continue">
22658             <summary>
22659             Work should proceed with the next work unit.
22660             </summary>
22661         </member>
22662         <member name="F:Microsoft.Build.BackEnd.WorkUnitActionCode.Stop">
22663             <summary>
22664             No further work units should be executed.
22665             </summary>
22666         </member>
22667         <member name="T:Microsoft.Build.BackEnd.WorkUnitResult">
22668             <summary>
22669             A result of executing a target or task.
22670             </summary>
22671         </member>
22672         <member name="F:Microsoft.Build.BackEnd.WorkUnitResult._resultCode">
22673             <summary>
22674             The result.
22675             </summary>
22676         </member>
22677         <member name="F:Microsoft.Build.BackEnd.WorkUnitResult._actionCode">
22678             <summary>
22679             The next action to take.
22680             </summary>
22681         </member>
22682         <member name="F:Microsoft.Build.BackEnd.WorkUnitResult._exception">
22683             <summary>
22684             The exception from the failure, if any.
22685             </summary>
22686         </member>
22687         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.#ctor">
22688             <summary>
22689             Creates a new work result ready for aggregation during batches.
22690             </summary>
22691         </member>
22692         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.#ctor(Microsoft.Build.BackEnd.WorkUnitResultCode,Microsoft.Build.BackEnd.WorkUnitActionCode,System.Exception)">
22693             <summary>
22694             Creates a work result with the specified result codes.
22695             </summary>
22696         </member>
22697         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
22698             <summary>
22699             Translator constructor
22700             </summary>
22701         </member>
22702         <member name="P:Microsoft.Build.BackEnd.WorkUnitResult.ResultCode">
22703             <summary>
22704             Get the result code.
22705             </summary>
22706         </member>
22707         <member name="P:Microsoft.Build.BackEnd.WorkUnitResult.ActionCode">
22708             <summary>
22709             Get the action code.
22710             </summary>
22711         </member>
22712         <member name="P:Microsoft.Build.BackEnd.WorkUnitResult.Exception">
22713             <summary>
22714             Get the exception
22715             </summary>
22716         </member>
22717         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
22718             <summary>
22719             Translator.
22720             </summary>
22721         </member>
22722         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
22723             <summary>
22724             Factory for serialization.
22725             </summary>
22726         </member>
22727         <member name="M:Microsoft.Build.BackEnd.WorkUnitResult.AggregateResult(Microsoft.Build.BackEnd.WorkUnitResult)">
22728             <summary>
22729             Aggregates the specified result with this result and returns the aggregation.
22730             </summary>
22731             <remarks>
22732             The rules are:
22733             1. Errors take precedence over success.
22734             2. Success takes precedence over skipped.
22735             3. Stop takes precedence over continue.
22736             4. The first exception in the result wins.
22737             </remarks>
22738         </member>
22739         <member name="T:Microsoft.Build.BackEnd.RequestCompleteDelegate">
22740             <summary>
22741             Callback for event raised when a build request is completed
22742             </summary>
22743             <param name="request">The request which completed</param>
22744             <param name="result">The result for the request</param>
22745         </member>
22746         <member name="T:Microsoft.Build.BackEnd.RequestResumedDelegate">
22747             <summary>
22748             Callback for event raised when a request is resumed
22749             </summary>
22750             <param name="request">The request being resumed</param>
22751         </member>
22752         <member name="T:Microsoft.Build.BackEnd.RequestBlockedDelegate">
22753             <summary>
22754             Callback for event raised when a new build request is generated by an MSBuild callback
22755             </summary>
22756             <param name="blocker">Information about what is blocking the engine.</param>
22757         </member>
22758         <member name="T:Microsoft.Build.BackEnd.EngineStatusChangedDelegate">
22759             <summary>
22760             Callback for event raised when the build request engine's status changes.
22761             </summary>
22762             <param name="newStatus">The new status for the engine</param>
22763         </member>
22764         <member name="T:Microsoft.Build.BackEnd.NewConfigurationRequestDelegate">
22765             <summary>
22766             Callback for event raised when a new configuration needs an ID resolved.
22767             </summary>
22768             <param name="config">The configuration needing an ID</param>
22769         </member>
22770         <member name="T:Microsoft.Build.BackEnd.EngineExceptionDelegate">
22771             <summary>
22772             Callback for event raised when there is an unhandled exception in the engine.
22773             </summary>
22774             <param name="e">The exception.</param>
22775         </member>
22776         <member name="T:Microsoft.Build.BackEnd.BuildRequestEngineStatus">
22777             <summary>
22778             Status types for the build request engine
22779             </summary>
22780         </member>
22781         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngineStatus.Uninitialized">
22782             <summary>
22783             The engine has not yet been initialized, and cannot accept requests.
22784             </summary>
22785         </member>
22786         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngineStatus.Idle">
22787             <summary>
22788             The engine has no active or waiting build requests.
22789             </summary>
22790         </member>
22791         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngineStatus.Active">
22792             <summary>
22793             The engine is presently working on a build request.
22794             </summary>
22795         </member>
22796         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngineStatus.Waiting">
22797             <summary>
22798             The engine has only build requests which are waiting for build results to continue.
22799             </summary>
22800         </member>
22801         <member name="F:Microsoft.Build.BackEnd.BuildRequestEngineStatus.Shutdown">
22802             <summary>
22803             The engine has shut down.
22804             </summary>
22805         </member>
22806         <member name="T:Microsoft.Build.BackEnd.IBuildRequestEngine">
22807             <summary>
22808             Objects implementing this interface may be used by a Node to process build requests
22809             and generate build results.
22810             </summary>
22811         </member>
22812         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnRequestComplete">
22813             <summary>
22814             Raised when a build request is completed and results are available.
22815             </summary>
22816         </member>
22817         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnRequestResumed">
22818             <summary>
22819             Raised when a build request is resumed from a previously waiting state.
22820             </summary>
22821         </member>
22822         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnRequestBlocked">
22823             <summary>
22824             Raised when a new build request is generated by an MSBuild callback.
22825             </summary>
22826         </member>
22827         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnStatusChanged">
22828             <summary>
22829             Raised when the engine status changes.
22830             </summary>
22831         </member>
22832         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnNewConfigurationRequest">
22833             <summary>
22834             Raised when a configuration needs an id.
22835             </summary>
22836         </member>
22837         <member name="E:Microsoft.Build.BackEnd.IBuildRequestEngine.OnEngineException">
22838             <summary>
22839             Raised when an unhandled exception occurs in the engine.
22840             </summary>
22841         </member>
22842         <member name="P:Microsoft.Build.BackEnd.IBuildRequestEngine.Status">
22843             <summary>
22844             Gets the current engine status.
22845             </summary>
22846         </member>
22847         <member name="M:Microsoft.Build.BackEnd.IBuildRequestEngine.InitializeForBuild(Microsoft.Build.BackEnd.Logging.NodeLoggingContext)">
22848             <summary>
22849             Prepares the engine for a new build and spins up the engine thread.  
22850             The engine must be in the Idle state, and not already be initialized.
22851             </summary>
22852             <param name="loggingContext">The logging context for the node.</param>
22853         </member>
22854         <member name="M:Microsoft.Build.BackEnd.IBuildRequestEngine.CleanupForBuild">
22855             <summary>
22856             Cleans up after a build but leaves the engine thread running.  Aborts
22857             any outstanding requests.  Blocks until the engine has cleaned up
22858             everything.  After this method is called, InitializeForBuild may be
22859             called to start a new build, or the component may be shut down.
22860             </summary>
22861         </member>
22862         <member name="M:Microsoft.Build.BackEnd.IBuildRequestEngine.SubmitBuildRequest(Microsoft.Build.BackEnd.BuildRequest)">
22863             <summary>
22864             Submits the specified request to the build queue. 
22865             </summary>
22866             <param name="request">The request to build.</param>
22867             <remarks>It is only valid to call this method when the engine is in the Idle or
22868             Waiting state because the engine can only service one active request at a time.</remarks>
22869         </member>
22870         <member name="M:Microsoft.Build.BackEnd.IBuildRequestEngine.UnblockBuildRequest(Microsoft.Build.BackEnd.BuildRequestUnblocker)">
22871             <summary>
22872             Notifies the engine of a build result for a waiting build request.
22873             </summary>
22874             <param name="unblocker">The unblocking information</param>
22875         </member>
22876         <member name="M:Microsoft.Build.BackEnd.IBuildRequestEngine.ReportConfigurationResponse(Microsoft.Build.BackEnd.BuildRequestConfigurationResponse)">
22877             <summary>
22878             Notifies the engine of a configuration response packet, typically generated by the Build Request Manager.  This packet is used to set
22879             the global configuration ID for a specific configuration.
22880             </summary>
22881             <param name="response">The build configuration response.</param>
22882         </member>
22883         <member name="T:Microsoft.Build.BackEnd.INodeManager">
22884             <summary>
22885             Represents a collection of all node providers in the system.  Reports events concerning
22886             the topology of the system and provides a means to send and receive data to nodes.
22887             </summary>
22888         </member>
22889         <member name="M:Microsoft.Build.BackEnd.INodeManager.CreateNode(Microsoft.Build.BackEnd.NodeConfiguration,Microsoft.Build.Execution.NodeAffinity)">
22890             <summary>
22891             Requests that a new node be created.
22892             </summary>
22893             <param name="configuration">The configuration to use to create the node.</param>
22894             <param name="affinity">The <see cref="T:Microsoft.Build.Execution.NodeAffinity"/> to use.</param>
22895             <returns>Information about the node created</returns>
22896             <remarks>
22897             Throws an exception if the node could not be created.
22898             </remarks>
22899         </member>
22900         <member name="M:Microsoft.Build.BackEnd.INodeManager.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
22901             <summary>
22902             Sends a data packet to a specific node
22903             </summary>
22904             <param name="node">The node to which the data packet should be sent.</param>
22905             <param name="packet">The packet to send.</param>
22906         </member>
22907         <member name="M:Microsoft.Build.BackEnd.INodeManager.ShutdownConnectedNodes(System.Boolean)">
22908             <summary>
22909             Shuts down all of the managed nodes.  This is an asynchronous method - the nodes are
22910             not considered shut down until a NodeShutdown packet has been received.
22911             </summary>
22912             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
22913         </member>
22914         <member name="M:Microsoft.Build.BackEnd.INodeManager.ShutdownAllNodes">
22915             <summary>
22916             Shuts down all of the managed nodes permanently.  This is an asynchronous method - the nodes are
22917             not considered shut down until a NodeShutdown packet has been received.
22918             </summary>
22919         </member>
22920         <member name="M:Microsoft.Build.BackEnd.INodeManager.ClearPerBuildState">
22921             <summary>
22922             The node manager contains state which is not supposed to persist between builds, make sure this is cleared.
22923             </summary>
22924         </member>
22925         <member name="T:Microsoft.Build.BackEnd.NodeProviderType">
22926             <summary>
22927             The type of nodes provided by the node provider.
22928             </summary>
22929         </member>
22930         <member name="F:Microsoft.Build.BackEnd.NodeProviderType.InProc">
22931             <summary>
22932             The provider provides the in-proc node.
22933             </summary>
22934         </member>
22935         <member name="F:Microsoft.Build.BackEnd.NodeProviderType.OutOfProc">
22936             <summary>
22937             The provider provides out-of-proc nodes.
22938             </summary>
22939         </member>
22940         <member name="F:Microsoft.Build.BackEnd.NodeProviderType.Remote">
22941             <summary>
22942             The provider provides remote nodes.
22943             </summary>
22944         </member>
22945         <member name="T:Microsoft.Build.BackEnd.INodeProvider">
22946             <summary>
22947             This interface represents a collection of nodes in the system.  It provides methods to 
22948             enumerate active nodes as well as send data and receive events from those nodes.
22949             </summary>
22950         </member>
22951         <member name="P:Microsoft.Build.BackEnd.INodeProvider.ProviderType">
22952             <summary>
22953             The type of nodes provided by this node provider.
22954             </summary>
22955         </member>
22956         <member name="P:Microsoft.Build.BackEnd.INodeProvider.AvailableNodes">
22957             <summary>
22958             The number of nodes this provider can create.
22959             </summary>
22960         </member>
22961         <member name="M:Microsoft.Build.BackEnd.INodeProvider.CreateNode(System.Int32,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.NodeConfiguration)">
22962             <summary>
22963             Requests that a new node be created on the specified machine.
22964             </summary>
22965             <param name="nodeId">The id to assign to the node.</param>
22966             <param name="packetFactory">
22967             The packet factory used to create packets when data is
22968             received on this node.
22969             </param>
22970             <param name="configuration">The configuration to use to create the remote node.</param>
22971             <returns>True if the node was created, false otherwise.</returns>
22972         </member>
22973         <member name="M:Microsoft.Build.BackEnd.INodeProvider.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
22974             <summary>
22975             Sends data to a specific node.
22976             </summary>
22977             <param name="node">The node to which data should be sent.</param>
22978             <param name="packet">The packet to be sent.</param>
22979         </member>
22980         <member name="M:Microsoft.Build.BackEnd.INodeProvider.ShutdownConnectedNodes(System.Boolean)">
22981             <summary>
22982             Shuts down all of the connected, managed nodes.  This call will not return until all nodes are shut down.
22983             </summary>
22984             <param name="enableReuse">Flag indicating if nodes should prepare for reuse.</param>
22985         </member>
22986         <member name="M:Microsoft.Build.BackEnd.INodeProvider.ShutdownAllNodes">
22987             <summary>
22988             Shuts down all of the managed nodes.  This call will not return until all nodes are shut down.
22989             </summary>
22990         </member>
22991         <member name="T:Microsoft.Build.BackEnd.NodeEndpointInProc">
22992             <summary>
22993             This is an implementation of INodeEndpoint for in-proc nodes.  This endpoint can use either
22994             synchronous or asynchronous packet processing methods.  When synchronous processing methods are
22995             used, the SendData method will cause the OnDataReceived event on the receiving endpoint to be called
22996             on the same thread, blocking until the handler returns.  The asynchronous method more closely emulates
22997             the way other kinds of endpoints work, as the recipient processes the packet on a different thread
22998             than that from which the packet originated, but with the cost of the extra thread.
22999             </summary>
23000         </member>
23001         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc.s_locker">
23002             <summary>
23003             An object for the two inproc endpoints to synchronize on.
23004             </summary>
23005         </member>
23006         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._status">
23007             <summary>
23008             The current communication status of the node.
23009             </summary>
23010         </member>
23011         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._mode">
23012             <summary>
23013             The communications mode
23014             </summary>
23015         </member>
23016         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._peerEndpoint">
23017             <summary>
23018             The peer endpoint
23019             </summary>
23020         </member>
23021         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._componentHost">
23022             <summary>
23023             The build component host
23024             </summary>
23025         </member>
23026         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._packetFactory">
23027             <summary>
23028             The packet factory used to route packets.
23029             </summary>
23030         </member>
23031         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._asyncDataMonitor">
23032             <summary>
23033             Object used as a lock source for the async data
23034             </summary>
23035         </member>
23036         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._packetAvailable">
23037             <summary>
23038             Set when a packet is available in the packet queue
23039             </summary>      
23040         </member>
23041         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._terminatePacketPump">
23042             <summary>
23043             Set when the asynchronous packet pump should terminate
23044             </summary>
23045         </member>
23046         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._packetPump">
23047             <summary>
23048             The thread which runs the asynchronous packet pump
23049             </summary>
23050         </member>
23051         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._peerConnected">
23052             <summary>
23053             Set to true if our peer is connected to us.
23054             </summary>
23055         </member>
23056         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc._packetQueue">
23057             <summary>
23058             The asynchronous packet queue.  
23059             </summary>
23060             <remarks>
23061             Operations on this queue must be synchronized since it is accessible by multiple threads.
23062             Use a lock on the packetQueue itself.
23063             </remarks>
23064         </member>
23065         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.#ctor(Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointMode,Microsoft.Build.BackEnd.IBuildComponentHost)">
23066             <summary>
23067             Instantiates a Node and initializes it to unconnected.
23068             </summary>
23069             <param name="commMode">The communications mode for this endpoint.</param>
23070             <param name="host">The component host.</param>
23071         </member>
23072         <member name="E:Microsoft.Build.BackEnd.NodeEndpointInProc.OnLinkStatusChanged">
23073             <summary>
23074             Raised when the link status has changed.
23075             </summary>
23076         </member>
23077         <member name="T:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointMode">
23078             <summary>
23079             Represents the style of communications used by the in-proc endpoint.
23080             </summary>
23081         </member>
23082         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointMode.Synchronous">
23083             <summary>
23084             The DataReceived event is raised on the same thread as that which called SendData.
23085             </summary>
23086         </member>
23087         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointMode.Asynchronous">
23088             <summary>
23089             The DataReceived event is raised on a separate thread from that which called SendData
23090             </summary>
23091         </member>
23092         <member name="P:Microsoft.Build.BackEnd.NodeEndpointInProc.LinkStatus">
23093             <summary>
23094             Returns the link status of this node.
23095             </summary>
23096         </member>
23097         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.Listen(Microsoft.Build.BackEnd.INodePacketFactory)">
23098             <summary>
23099             Causes this endpoint to wait for the remote endpoint to connect
23100             </summary>
23101             <param name="factory">Unused</param>
23102         </member>
23103         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.Connect(Microsoft.Build.BackEnd.INodePacketFactory)">
23104             <summary>
23105             Causes this node to connect to the matched endpoint.  
23106             </summary>
23107             <param name="factory">Unused</param>
23108         </member>
23109         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.Disconnect">
23110             <summary>
23111             Shuts down the link
23112             </summary>
23113         </member>
23114         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.SendData(Microsoft.Build.BackEnd.INodePacket)">
23115             <summary>
23116             Sends data to the peer endpoint.
23117             </summary>
23118             <param name="packet">The packet to send.</param>
23119         </member>
23120         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.CreateInProcEndpoints(Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointMode,Microsoft.Build.BackEnd.IBuildComponentHost)">
23121             <summary>
23122             This method is used to create a matched pair of endpoints used by the Node Provider and
23123             the Node.  The inputs and outputs for each node are automatically configured.
23124             </summary>
23125             <param name="mode">The communications mode for the endpoints.</param>
23126             <param name="host">The component host.</param>
23127             <returns>A matched pair of endpoints.</returns>
23128         </member>
23129         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.RaiseLinkStatusChanged(Microsoft.Build.BackEnd.LinkStatus)">
23130             <summary>
23131             Invokes the OnLinkStatusChanged event in a thread-safe manner.
23132             </summary>
23133             <param name="newStatus">The new status of the endpoint link.</param>
23134         </member>
23135         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.SetPeerNodeConnected">
23136             <summary>
23137             This method is called by the other endpoint when it is ready to establish the connection.
23138             </summary>
23139         </member>
23140         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.SetPeerNodeDisconnected">
23141             <summary>
23142             This method is called by either side to notify this endpoint that the link is inactive.
23143             </summary>
23144         </member>
23145         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.InternalDisconnect">
23146             <summary>
23147             This does the actual work of changing the status and shutting down any threads we may have for
23148             disconnection.
23149             </summary>
23150         </member>
23151         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.ChangeLinkStatus(Microsoft.Build.BackEnd.LinkStatus)">
23152             <summary>
23153             Updates the current link status if it has changed and notifies any registered delegates.
23154             </summary>
23155             <param name="newStatus">The status the node should now be in.</param>
23156         </member>
23157         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.EnqueuePacket(Microsoft.Build.BackEnd.INodePacket)">
23158             <summary>
23159             Adds a packet to the packet queue when asynchronous mode is enabled.
23160             </summary>
23161             <param name="packet">The packet to be transmitted.</param>
23162         </member>
23163         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.InitializeAsyncPacketThread">
23164             <summary>
23165             Initializes the packet pump thread and the supporting events as well as the packet queue.
23166             </summary>
23167         </member>
23168         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.TerminateAsyncPacketThread">
23169             <summary>
23170             Shuts down the packet pump thread and cleans up associated data.
23171             </summary>
23172         </member>
23173         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.PacketPumpProc">
23174             <summary>
23175             This method handles the asynchronous message pump.  It waits for messages to show up on the queue
23176             and calls FireDataAvailable for each such packet.  It will terminate when the terminate event is
23177             set.
23178             </summary>
23179         </member>
23180         <member name="T:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointPair">
23181             <summary>
23182             Used to return a matched pair of endpoints for in-proc nodes to use with the Build Manager.
23183             </summary>
23184         </member>
23185         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointPair.NodeEndpoint">
23186             <summary>
23187             The endpoint destined for use by a node.
23188             </summary>
23189         </member>
23190         <member name="F:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointPair.ManagerEndpoint">
23191             <summary>
23192             The endpoint destined for use by the Build Manager
23193             </summary>
23194         </member>
23195         <member name="M:Microsoft.Build.BackEnd.NodeEndpointInProc.EndpointPair.#ctor(Microsoft.Build.BackEnd.NodeEndpointInProc,Microsoft.Build.BackEnd.NodeEndpointInProc)">
23196             <summary>
23197             Creates an endpoint pair
23198             </summary>
23199             <param name="node">The node-side endpoint.</param>
23200             <param name="manager">The manager-side endpoint.</param>
23201         </member>
23202         <member name="T:Microsoft.Build.BackEnd.NodeInfo">
23203             <summary>
23204             Contains information about the state of a node.
23205             </summary>
23206         </member>
23207         <member name="F:Microsoft.Build.BackEnd.NodeInfo._nodeId">
23208             <summary>
23209             The node ID
23210             </summary>
23211         </member>
23212         <member name="F:Microsoft.Build.BackEnd.NodeInfo._providerType">
23213             <summary>
23214             The provider type
23215             </summary>
23216         </member>
23217         <member name="F:Microsoft.Build.BackEnd.NodeInfo._configurationIDs">
23218             <summary>
23219             The configuration IDs the node knows about.  These are not necessarily the ones
23220             currently assigned to the node, as that can change.
23221             </summary>
23222         </member>
23223         <member name="M:Microsoft.Build.BackEnd.NodeInfo.#ctor(System.Int32,Microsoft.Build.BackEnd.NodeProviderType)">
23224             <summary>
23225             Constructor.
23226             </summary>
23227         </member>
23228         <member name="P:Microsoft.Build.BackEnd.NodeInfo.NodeId">
23229             <summary>
23230             The ID of the node.
23231             </summary>
23232         </member>
23233         <member name="P:Microsoft.Build.BackEnd.NodeInfo.ProviderType">
23234             <summary>
23235             The type of provider which manages this node.
23236             </summary>
23237         </member>
23238         <member name="M:Microsoft.Build.BackEnd.NodeInfo.AssignConfiguration(System.Int32)">
23239             <summary>
23240             Assigns the specific configuration ID to the node.
23241             </summary>
23242             <returns>
23243             True if the configuration is not already known to the node and must be sent to it, false otherwise.
23244             </returns>
23245         </member>
23246         <member name="M:Microsoft.Build.BackEnd.NodeInfo.HasConfiguration(System.Int32)">
23247             <summary>
23248             Determines whether the specified configuration if is known to the node.
23249             </summary>
23250         </member>
23251         <member name="M:Microsoft.Build.BackEnd.NodeInfo.CanServiceRequestWithAffinity(Microsoft.Build.Execution.NodeAffinity)">
23252             <summary>
23253             Returns true if this node can service requests with the specified affinity.
23254             </summary>
23255         </member>
23256         <member name="T:Microsoft.Build.BackEnd.NodeProviderInProc">
23257             <summary>
23258             An implementation of a node provider for in-proc nodes.
23259             </summary>
23260         </member>
23261         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc.InvalidInProcNodeId">
23262             <summary>
23263             The invalid in-proc node id
23264             </summary>
23265         </member>
23266         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._disposed">
23267             <summary>
23268             Flag indicating we have disposed.
23269             </summary>
23270         </member>
23271         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc.InProcNodeOwningOperatingEnvironment">
23272             <summary>
23273             Value used to ensure multiple in-proc nodes which save the operating environment are not created.
23274             </summary>
23275         </member>
23276         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._componentHost">
23277             <summary>
23278             The component host.
23279             </summary>
23280         </member>
23281         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._inProcNode">
23282             <summary>
23283             The in-proc node.
23284             </summary>
23285         </member>
23286         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._inProcNodeEndpoint">
23287             <summary>
23288             The in-proc node endpoint.
23289             </summary>
23290         </member>
23291         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._packetFactory">
23292             <summary>
23293             The packet factory used to route packets from the node.
23294             </summary>
23295         </member>
23296         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._inProcNodeThread">
23297             <summary>
23298             The in-proc node thread.
23299             </summary>
23300         </member>
23301         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._endpointConnectedEvent">
23302             <summary>
23303             Event which is raised when the in-proc endpoint is connected.
23304             </summary>
23305         </member>
23306         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._inProcNodeId">
23307             <summary>
23308             The ID of the in-proc node.
23309             </summary>
23310         </member>
23311         <member name="F:Microsoft.Build.BackEnd.NodeProviderInProc._exclusiveOperatingEnvironment">
23312             <summary>
23313             Check to allow the inproc node to have exclusive ownership of the operating environment
23314             </summary>
23315         </member>
23316         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.#ctor">
23317             <summary>
23318             Initializes the node provider.
23319             </summary>
23320         </member>
23321         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.Finalize">
23322             <summary>
23323             Finalizer
23324             </summary>
23325         </member>
23326         <member name="P:Microsoft.Build.BackEnd.NodeProviderInProc.ProviderType">
23327             <summary>
23328             Returns the type of nodes managed by this provider.
23329             </summary>
23330         </member>
23331         <member name="P:Microsoft.Build.BackEnd.NodeProviderInProc.AvailableNodes">
23332             <summary>
23333             Returns the number of nodes available to create on this provider.
23334             </summary>
23335         </member>
23336         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
23337             <summary>
23338             Sets the build component host.
23339             </summary>
23340             <param name="host">The component host.</param>
23341         </member>
23342         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.ShutdownComponent">
23343             <summary>
23344             Shuts down this component.
23345             </summary>
23346         </member>
23347         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.SendData(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
23348             <summary>
23349             Sends data to the specified node.
23350             </summary>
23351             <param name="nodeId">The node to which data should be sent.</param>
23352             <param name="packet">The data to send.</param>
23353         </member>
23354         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.ShutdownConnectedNodes(System.Boolean)">
23355             <summary>
23356             Causes all connected nodes to be shut down.
23357             </summary>
23358             <param name="enableReuse">Flag indicating if the nodes should prepare for reuse.</param>
23359         </member>
23360         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.ShutdownAllNodes">
23361             <summary>
23362             Causes all nodes to be shut down permanently - for InProc nodes it is the same as ShutdownConnectedNodes
23363             with enableReuse = false
23364             </summary>
23365         </member>
23366         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.CreateNode(System.Int32,Microsoft.Build.BackEnd.INodePacketFactory,Microsoft.Build.BackEnd.NodeConfiguration)">
23367             <summary>
23368             Requests that a node be created on the specified machine.
23369             </summary>
23370             <param name="nodeId">The id of the node to create.</param>
23371             <param name="factory">The factory to use to create packets from this node.</param>
23372             <param name="configuration">The configuration for the node.</param>
23373         </member>
23374         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
23375             <summary>
23376             Registers a packet handler.  Not used in the in-proc node.
23377             </summary>
23378         </member>
23379         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
23380             <summary>
23381             Unregisters a packet handler.  Not used in the in-proc node.
23382             </summary>
23383         </member>
23384         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
23385             <summary>
23386             Deserializes and routes a packet.  Not used in the in-proc node.
23387             </summary>
23388         </member>
23389         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
23390             <summary>
23391             Routes a packet.
23392             </summary>
23393             <param name="nodeId">The id of the node from which the packet is being routed.</param>
23394             <param name="packet">The packet to route.</param>
23395         </member>
23396         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.Dispose">
23397             <summary>
23398             IDisposable implementation
23399             </summary>
23400         </member>
23401         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.CreateComponent(Microsoft.Build.BackEnd.BuildComponentType)">
23402             <summary>
23403             Factory for component creation.
23404             </summary>
23405         </member>
23406         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.InstantiateNode(Microsoft.Build.BackEnd.INodePacketFactory)">
23407             <summary>
23408             Creates a new in-proc node.
23409             </summary>
23410         </member>
23411         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.InProcNodeThreadProc">
23412             <summary>
23413             Thread proc which runs the in-proc node.
23414             </summary>
23415         </member>
23416         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.InProcNodeEndpoint_OnLinkStatusChanged(Microsoft.Build.BackEnd.INodeEndpoint,Microsoft.Build.BackEnd.LinkStatus)">
23417             <summary>
23418             Callback invoked when the link status of the endpoint has changed.
23419             </summary>
23420             <param name="endpoint">The endpoint whose status has changed.</param>
23421             <param name="status">The new link status.</param>
23422         </member>
23423         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.InProcNodeShutdown(Microsoft.Build.Execution.NodeEngineShutdownReason,System.Exception)">
23424             <summary>
23425             Callback invoked when the endpoint shuts down.
23426             </summary>
23427             <param name="reason">The reason the endpoint is shutting down.</param>
23428             <param name="e">Any exception which was raised that caused the endpoint to shut down.</param>
23429         </member>
23430         <member name="M:Microsoft.Build.BackEnd.NodeProviderInProc.Dispose(System.Boolean)">
23431             <summary>
23432             Dispose implementation.
23433             </summary>
23434         </member>
23435         <member name="T:Microsoft.Build.BackEnd.IBuildComponent">
23436             <summary>
23437             Each component in the build system which is registered with the Build Manager or a Node must
23438             implement this interface.
23439             
23440             REFACTOR: Maybe these could all implement IDisposable.
23441             </summary>
23442         </member>
23443         <member name="M:Microsoft.Build.BackEnd.IBuildComponent.InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
23444             <summary>
23445             Called by the build component host when a component is first initialized
23446             </summary>
23447             <param name="host">The host for the component.</param>
23448         </member>
23449         <member name="M:Microsoft.Build.BackEnd.IBuildComponent.ShutdownComponent">
23450             <summary>
23451             Called by the build component host when the component host is about to shutdown
23452             </summary>
23453         </member>
23454         <member name="T:Microsoft.Build.BackEnd.BuildComponentFactoryDelegate">
23455             <summary>
23456             Factory delegate which instantiates a component of the type specified.
23457             </summary>
23458             <param name="type">The type of component to be instantiated.</param>
23459             <returns>An instance of the component.</returns>
23460         </member>
23461         <member name="T:Microsoft.Build.BackEnd.BuildComponentType">
23462             <summary>
23463             An enumeration of all component types recognized by the system    
23464             </summary>
23465         </member>
23466         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.RequestManager">
23467             <summary>
23468             Request Manager
23469             </summary>
23470         </member>
23471         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.Scheduler">
23472             <summary>
23473             Scheduler
23474             </summary>
23475         </member>
23476         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.ResultsCache">
23477             <summary>
23478             Results Cache
23479             </summary>
23480         </member>
23481         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.PropertyCache">
23482             <summary>
23483             Property Cache
23484             </summary>
23485         </member>
23486         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.ConfigCache">
23487             <summary>
23488             The Build Request Configuration Cache
23489             </summary>
23490         </member>
23491         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.NodeManager">
23492             <summary>
23493             Node Manager
23494             </summary>
23495         </member>
23496         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.InProcNodeProvider">
23497             <summary>
23498             InProcNodeProvider
23499             </summary>
23500         </member>
23501         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.OutOfProcNodeProvider">
23502             <summary>
23503             OutOfProcNodeProvider
23504             </summary>
23505         </member>
23506         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.RemoteNodeProvider">
23507             <summary>
23508             RemoteNodeProvider
23509             </summary>
23510         </member>
23511         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.NodePacketFactory">
23512             <summary>
23513             Node packet factory
23514             </summary>
23515         </member>
23516         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.RequestEngine">
23517             <summary>
23518             Request engine
23519             </summary>
23520         </member>
23521         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.FileMonitor">
23522             <summary>
23523             File monitor
23524             </summary>
23525         </member>
23526         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.NodeEndpoint">
23527             <summary>
23528             The endpoint on a Node
23529             </summary>
23530         </member>
23531         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.LoggingService">
23532             <summary>
23533             The logging service
23534             </summary>
23535         </member>
23536         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.RequestBuilder">
23537             <summary>
23538             The component responsible for building requests.
23539             </summary>
23540         </member>
23541         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.TargetBuilder">
23542             <summary>
23543             The component responsible for building targets.        
23544             </summary>
23545         </member>
23546         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.TaskBuilder">
23547             <summary>
23548             The component responsible for building tasks.
23549             </summary>
23550         </member>
23551         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.TestDataProvider">
23552             <summary>
23553             The component which is responsible for providing test data to the variour components
23554             </summary>
23555         </member>
23556         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.OutOfProcTaskHostNodeProvider">
23557             <summary>
23558             OutOfProcTaskHostNodeProvider
23559             </summary>
23560         </member>
23561         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.TaskHostNodeManager">
23562             <summary>
23563             Node manager for task host nodes
23564             </summary>
23565         </member>
23566         <member name="F:Microsoft.Build.BackEnd.BuildComponentType.RegisteredTaskObjectCache">
23567             <summary>
23568             The cache of registered disposable objects.
23569             </summary>
23570         </member>
23571         <member name="T:Microsoft.Build.BackEnd.IBuildComponentHost">
23572             <summary>
23573             This interface is implemented by objects which host build components.
23574             </summary>
23575         </member>
23576         <member name="P:Microsoft.Build.BackEnd.IBuildComponentHost.Name">
23577             <summary>
23578             Retrieves the name of the host.
23579             </summary>
23580         </member>
23581         <member name="P:Microsoft.Build.BackEnd.IBuildComponentHost.BuildParameters">
23582             <summary>
23583             Retrieves the BuildParameters used during the build.
23584             </summary>
23585         </member>
23586         <member name="P:Microsoft.Build.BackEnd.IBuildComponentHost.LegacyThreadingData">
23587             <summary>
23588             The data structure which holds the data for the use of legacy threading semantics
23589             </summary>
23590         </member>
23591         <member name="P:Microsoft.Build.BackEnd.IBuildComponentHost.LoggingService">
23592             <summary>
23593             Retrieves the logging service associated with a particular build
23594             </summary>
23595         </member>
23596         <member name="M:Microsoft.Build.BackEnd.IBuildComponentHost.RegisterFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate)">
23597             <summary>
23598             Registers a factory which will be used to create the necessary components of the build
23599             system.
23600             </summary>
23601             <param name="factoryType">The type which is created by this factory.</param>
23602             <param name="factory">The factory to be registered.</param>
23603             <remarks>
23604             It is not necessary to register any factories.  If no factory is registered for a specific kind
23605             of object, the system will use the default factory.
23606             </remarks>
23607         </member>
23608         <member name="M:Microsoft.Build.BackEnd.IBuildComponentHost.GetComponent(Microsoft.Build.BackEnd.BuildComponentType)">
23609             <summary>
23610             Gets an instance of the specified component type from the host.
23611             </summary>
23612             <param name="type">The component type to be retrieved</param>
23613             <returns>The component</returns>
23614         </member>
23615         <member name="T:Microsoft.Build.BackEnd.IScheduler">
23616             <summary>
23617             Represents an object which provides scheduling services for BuildRequests over Nodes.
23618             </summary>
23619         </member>
23620         <member name="P:Microsoft.Build.BackEnd.IScheduler.MinimumAssignableConfigurationId">
23621             <summary>
23622             Retrieves the minimum assignable configuration id
23623             </summary>
23624         </member>
23625         <member name="M:Microsoft.Build.BackEnd.IScheduler.IsCurrentlyBuildingConfiguration(System.Int32)">
23626             <summary>
23627             Determines if the specified configuration is currently being built
23628             </summary>
23629             <param name="configurationId">The configuration to query for</param>
23630             <returns>True if the configuration is being built somewhere, false otherwise.</returns>
23631         </member>
23632         <member name="M:Microsoft.Build.BackEnd.IScheduler.GetConfigurationIdFromPlan(System.String)">
23633             <summary>
23634             Retrieves a configuration id for a configuration which has a matching path
23635             </summary>
23636             <param name="configurationPath">The path for the configuration</param>
23637             <returns>A positive configuration id if one exists in the plan, 0 otherwise.</returns>
23638         </member>
23639         <member name="M:Microsoft.Build.BackEnd.IScheduler.ReportRequestBlocked(System.Int32,Microsoft.Build.BackEnd.BuildRequestBlocker)">
23640             <summary>
23641             Reports to the scheduler that a request is blocked.
23642             </summary>
23643             <param name="nodeId">The node making the report.</param>
23644             <param name="blocker">The thing blocking the active request on the node.</param>
23645             <returns>Action to be taken.</returns>
23646         </member>
23647         <member name="M:Microsoft.Build.BackEnd.IScheduler.ReportResult(System.Int32,Microsoft.Build.Execution.BuildResult)">
23648             <summary>
23649             Reports to the scheduler that a new result has been generated for a build request.
23650             </summary>
23651             <param name="nodeId">The node reporting the request.</param>
23652             <param name="result">The result.</param>
23653             <returns>Action to be taken.</returns>
23654         </member>
23655         <member name="M:Microsoft.Build.BackEnd.IScheduler.ReportNodesCreated(System.Collections.Generic.IEnumerable{Microsoft.Build.BackEnd.NodeInfo})">
23656             <summary>
23657             Reports to the scheduler that a node has been created.
23658             </summary>
23659             <param name="nodeInfo">Info about the created nodes.</param>
23660             <returns>Action to be taken.</returns>
23661         </member>
23662         <member name="M:Microsoft.Build.BackEnd.IScheduler.ReportBuildAborted(System.Int32)">
23663             <summary>
23664             Reports to the scheduler than a node aborted the build.
23665             </summary>
23666             <param name="nodeId">The node which aborted.</param>
23667         </member>
23668         <member name="M:Microsoft.Build.BackEnd.IScheduler.Reset">
23669             <summary>
23670             Resets the scheduler.
23671             </summary>
23672         </member>
23673         <member name="M:Microsoft.Build.BackEnd.IScheduler.WriteDetailedSummary(System.Int32)">
23674             <summary>
23675             Writes a detailed summary of the build state which includes informaiton about the scheduling plan.
23676             </summary>
23677         </member>
23678         <member name="T:Microsoft.Build.BackEnd.ScheduleActionType">
23679             <summary>
23680             The type of action to take in response to a scheduling request.
23681             </summary>
23682         </member>
23683         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.NoAction">
23684             <summary>
23685             The response indicates that no action should be taken.
23686             </summary>
23687         </member>
23688         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.Schedule">
23689             <summary>
23690             The response indicates that the request should be sent to the specified node.
23691             </summary>
23692         </member>
23693         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.ScheduleWithConfiguration">
23694             <summary>
23695             The response indicates that the request should be send to the specified node, 
23696             along with the configuration for the request.
23697             </summary>
23698         </member>
23699         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.ReportResults">
23700             <summary>
23701             The response has results for a particular blocked request
23702             </summary>
23703         </member>
23704         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.ResumeExecution">
23705             <summary>
23706             The specified request id should now resume execution
23707             </summary>
23708         </member>
23709         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.CreateNode">
23710             <summary>
23711             The response indicates that a new node should be created rather than scheduling this request.
23712             The request may be scheduled at a later time.
23713             </summary>
23714         </member>
23715         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.SubmissionComplete">
23716             <summary>
23717             The response indicates that the submission is complete.
23718             </summary>
23719         </member>
23720         <member name="F:Microsoft.Build.BackEnd.ScheduleActionType.CircularDependency">
23721             <summary>
23722             The last action caused a circular dependency which cannot be resolved.
23723             </summary>
23724         </member>
23725         <member name="T:Microsoft.Build.BackEnd.ScheduleResponse">
23726             <summary>
23727             A response from the scheduler indicating where a build request should be handled.
23728             </summary>
23729         </member>
23730         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.Action">
23731             <summary>
23732             The type of action to take on this response.
23733             </summary>
23734         </member>
23735         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.NodeId">
23736             <summary>
23737             The node ID to which the request should be sent.
23738             </summary>
23739         </member>
23740         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.BuildResult">
23741             <summary>
23742             The results for a completed submission.
23743             </summary>
23744         </member>
23745         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.BuildRequest">
23746             <summary>
23747             The build request to send.
23748             </summary>
23749         </member>
23750         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.Unblocker">
23751             <summary>
23752             The unblocking information.
23753             </summary>
23754         </member>
23755         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.RequiredNodeType">
23756             <summary>
23757             The type of node we must create.
23758             </summary>
23759         </member>
23760         <member name="F:Microsoft.Build.BackEnd.ScheduleResponse.NumberOfNodesToCreate">
23761             <summary>
23762             The number of nodes of the requested affinity to create.
23763             </summary>
23764         </member>
23765         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(Microsoft.Build.BackEnd.ScheduleActionType)">
23766             <summary>
23767             Constructs a response where no action should be taken.
23768             </summary>
23769         </member>
23770         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(Microsoft.Build.Execution.NodeAffinity,System.Int32)">
23771             <summary>
23772             Constructs a response indicating what type of node we need to create.
23773             </summary>
23774         </member>
23775         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(Microsoft.Build.Execution.BuildResult)">
23776             <summary>
23777             Constructs a response indicating that a specific submission has completed.
23778             </summary>
23779         </member>
23780         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(System.Int32,Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.BuildRequest)">
23781             <summary>
23782             Constructs a response indicating there is a circular dependency caused by the specified request.
23783             </summary>
23784         </member>
23785         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(System.Int32,Microsoft.Build.BackEnd.BuildRequest,System.Boolean)">
23786             <summary>
23787             Constructs a response where a request should be scheduled.
23788             </summary>
23789             <param name="node">The node ID to which the request should be sent.</param>
23790             <param name="request">The request to send.</param>
23791             <param name="sendConfiguration"><code>true</code> to send the configuration, otherwise <code>false</code>.</param>
23792         </member>
23793         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.#ctor(System.Int32,Microsoft.Build.BackEnd.BuildRequestUnblocker)">
23794             <summary>
23795             Constructs a response where a result should be sent or execution should be resumed.
23796             </summary>
23797             <param name="node">The node ID to which the result should be sent.</param>
23798             <param name="unblocker">The result to send.</param>
23799         </member>
23800         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateScheduleResponse(System.Int32,Microsoft.Build.BackEnd.BuildRequest,System.Boolean)">
23801             <summary>
23802             Creates a Schedule or ScheduleWithConfiguration response
23803             </summary>
23804             <param name="node">The node to which the response should be sent.</param>
23805             <param name="requestToSchedule">The request to be scheduled.</param>
23806             <param name="sendConfiguration">Flag indicating whether or not the configuration for the request must be sent to the node as well.</param>
23807             <returns>The ScheduleResponse.</returns>
23808         </member>
23809         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateReportResultResponse(System.Int32,Microsoft.Build.Execution.BuildResult)">
23810             <summary>
23811             Creates a ReportResult response.
23812             </summary>
23813             <param name="node">The node to which the response should be sent.</param>
23814             <param name="resultToReport">The result to be reported.</param>
23815             <returns>The ScheduleResponse.</returns>
23816         </member>
23817         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateResumeExecutionResponse(System.Int32,System.Int32)">
23818             <summary>
23819             Creates a ResumeExecution response.
23820             </summary>
23821             <param name="node">The node to which the response should be sent.</param>
23822             <param name="globalRequestIdToResume">The request which should resume executing.</param>
23823             <returns>The ScheduleResponse.</returns>
23824         </member>
23825         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateCircularDependencyResponse(System.Int32,Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.BackEnd.BuildRequest)">
23826             <summary>
23827             Creates a CircularDependency response.
23828             </summary>
23829             <param name="node">The node to which the response should be sent.</param>
23830             <param name="parentRequest">The request which attempted to invoke the request causing the circular dependency.</param>
23831             <param name="requestCausingCircularDependency">The request which caused the circular dependency.</param>
23832             <returns>The ScheduleResponse.</returns>
23833         </member>
23834         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateSubmissionCompleteResponse(Microsoft.Build.Execution.BuildResult)">
23835             <summary>
23836             Creates a SubmissionComplete response.
23837             </summary>
23838             <param name="rootRequestResult">The result for the submission's root request.</param>
23839             <returns>The ScheduleResponse.</returns>
23840         </member>
23841         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.CreateNewNodeResponse(Microsoft.Build.Execution.NodeAffinity,System.Int32)">
23842             <summary>
23843             Create a CreateNode response
23844             </summary>
23845             <param name="typeOfNodeToCreate">The type of node to create.</param>
23846             <param name="count">The number of new nodes of that particular affinity to create.</param>
23847             <returns>The ScheduleResponse.</returns>
23848         </member>
23849         <member name="M:Microsoft.Build.BackEnd.ScheduleResponse.ToString">
23850             <summary>
23851             Returns the schedule response as a descriptive string.
23852             </summary>
23853         </member>
23854         <member name="T:Microsoft.Build.BackEnd.NodeShutdownDelegate">
23855             <summary>
23856             Delegate is called when a node shuts down.
23857             </summary>
23858             <param name="reason">The reason for the shutdown</param>
23859             <param name="e">The exception which caused an unexpected shutdown, if any.</param>
23860         </member>
23861         <member name="T:Microsoft.Build.BackEnd.INode">
23862             <summary>
23863             This interface is implemented by a build node, and allows the host process to control its execution.
23864             </summary>
23865         </member>
23866         <member name="M:Microsoft.Build.BackEnd.INode.Run(System.Exception@)">
23867             <summary>
23868             Runs the Node.  Returns the reason the node shut down.
23869             </summary>
23870         </member>
23871         <member name="T:Microsoft.Build.BackEnd.TaskRequirements">
23872             <summary>
23873             Flags requrned by ITaskExecutionHost.FindTask().
23874             </summary>
23875         </member>
23876         <member name="F:Microsoft.Build.BackEnd.TaskRequirements.None">
23877             <summary>
23878             The task was not found.
23879             </summary>
23880         </member>
23881         <member name="F:Microsoft.Build.BackEnd.TaskRequirements.RequireSTAThread">
23882             <summary>
23883             The task must be executed on an STA thread.
23884             </summary>
23885         </member>
23886         <member name="F:Microsoft.Build.BackEnd.TaskRequirements.RequireSeparateAppDomain">
23887             <summary>
23888             The task must be executed in a separate AppDomain.
23889             </summary>
23890         </member>
23891         <member name="T:Microsoft.Build.BackEnd.ITaskExecutionHost">
23892             <summary>
23893             This interface represents the host for task execution.  When used in the in-proc scenario, these method calls essentially
23894             are pass-throughs to just set some member variables and call methods directly on the task and associated objects.
23895             In the out-of-proc/AppDomain-isolated case, the object implementing these methods may break apart the information
23896             in the parameters to be consumed by the IContract representing the remote object through MAF.
23897             
23898             REFACTOR - Eliminate this interface.
23899             </summary>
23900         </member>
23901         <member name="P:Microsoft.Build.BackEnd.ITaskExecutionHost.ProjectInstance">
23902             <summary>
23903             The associated project.
23904             </summary>
23905         </member>
23906         <member name="P:Microsoft.Build.BackEnd.ITaskExecutionHost.LogTaskInputs">
23907             <summary>
23908             Flag to determine whether or not to log task inputs.
23909             </summary>
23910         </member>
23911         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.InitializeForTask(Microsoft.Build.Framework.IBuildEngine2,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Framework.ITaskHost,System.Boolean,System.AppDomainSetup,System.Boolean,System.Threading.CancellationToken)">
23912             <summary>
23913             Initialize the host with the objects required to communicate with the host process.
23914             </summary>
23915         </member>
23916         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.FindTask(System.Collections.Generic.IDictionary{System.String,System.String})">
23917             <summary>
23918             Ask the task host to find its task in the registry and get it ready for initializing the batch
23919             </summary>
23920             <returns>The task requirements if the task is found, null otherwise.</returns>
23921         </member>
23922         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.InitializeForBatch(Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.IDictionary{System.String,System.String})">
23923             <summary>
23924             Initializes for running a particular batch
23925             </summary>
23926             <returns>True if the task is instantiated, false otherwise.</returns>
23927         </member>
23928         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.SetTaskParameters(System.Collections.Generic.IDictionary{System.String,System.Tuple{System.String,Microsoft.Build.Construction.ElementLocation}})">
23929             <summary>
23930             Sets a task parameter using an unevaluated value, which will be expanded by the batch bucket.
23931             </summary>
23932         </member>
23933         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.GatherTaskOutputs(System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean,System.String)">
23934             <summary>
23935             Gets all of the outputs and stores them in the batch bucket.
23936             </summary>
23937         </member>
23938         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.CleanupForBatch">
23939             <summary>
23940             Signal that we are done with this bucket.
23941             </summary>
23942         </member>
23943         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.CleanupForTask">
23944             <summary>
23945             Signal that we are done with this task.
23946             </summary>
23947         </member>
23948         <member name="M:Microsoft.Build.BackEnd.ITaskExecutionHost.Execute">
23949             <summary>
23950             Executes the task.
23951             </summary>
23952             <returns>
23953             True if execution succeeded, false otherwise.
23954             </returns>
23955         </member>
23956         <member name="T:Microsoft.Build.BackEnd.TaskExecutionHost">
23957             <summary>
23958             The TaskExecutionHost is responsible for instantiating tasks, setting their parameters and gathering outputs using
23959             reflection, and executing the task in the appropriate context.The TaskExecutionHost does not deal with any part of the task declaration or
23960             XML.
23961             </summary>
23962         </member>
23963         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost.CancelFirstWarningWaitInterval">
23964             <summary>
23965             Time interval in miliseconds to wait between receiving a cancelation signal and emitting the first warning that a non-cancelable task has not finished
23966             </summary>
23967         </member>
23968         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost.CancelWarningWaitInterval">
23969             <summary>
23970             Time interval in miliseconds between subsequent warnings that a non-cancelable task has not finished
23971             </summary>
23972         </member>
23973         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._logTaskInputs">
23974             <summary>
23975             Whether to log task input parameters.  Can either be set through an environment variable 
23976             or by the BuildParameters.
23977             </summary>
23978         </member>
23979         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._resolver">
23980             <summary>
23981             Resolver to assist in resolving types when a new appdomain is created
23982             </summary>
23983         </member>
23984         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._buildEngine">
23985             <summary>
23986             The interface used to call back into the build engine.
23987             </summary>
23988         </member>
23989         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._projectInstance">
23990             <summary>
23991             The project instance in whose context we are executing
23992             </summary>
23993         </member>
23994         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._targetLoggingContext">
23995             <summary>
23996             The logging context for the target.
23997             </summary>
23998         </member>
23999         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskLoggingContext">
24000             <summary>
24001             The logging context for the task.
24002             </summary>
24003         </member>
24004         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._cancellationTokenRegistration">
24005             <summary>
24006             The registration which handles the callback when task cancellation is invoked.
24007             </summary>
24008         </member>
24009         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskName">
24010             <summary>
24011             The name of the task to execute.
24012             </summary>
24013         </member>
24014         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskLocation">
24015             <summary>
24016             The XML location of the task element.
24017             </summary>
24018         </member>
24019         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskHost">
24020             <summary>
24021             The arbitrary task host object.
24022             </summary>
24023         </member>
24024         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._batchBucket">
24025             <summary>
24026             The bucket used to evaluate items and properties.
24027             </summary>
24028         </member>
24029         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskFactoryWrapper">
24030             <summary>
24031             The task type retrieved from the assembly.
24032             </summary>
24033         </member>
24034         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskInstance">
24035             <summary>
24036             The instantiated task class.
24037             </summary>
24038         </member>
24039         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._continueOnError">
24040             <summary>
24041             The continueOnError flag
24042             </summary>
24043         </member>
24044         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._cancelled">
24045             <summary>
24046             Set to true if the execution has been cancelled.
24047             </summary>
24048         </member>
24049         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._taskExecutionIdle">
24050             <summary>
24051             Event which is signalled when a task is not executing.  Used for cancellation.
24052             </summary>
24053         </member>
24054         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._remotedTaskItems">
24055             <summary>
24056             The task items that we remoted across the appdomain boundary
24057             we use this list to disconnect the task items once we're done.
24058             </summary>
24059         </member>
24060         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._buildComponentHost">
24061             <summary>
24062             We need access to the build component host so that we can get at the 
24063             task host node provider when running a task wrapped by TaskHostTask
24064             </summary>
24065         </member>
24066         <member name="F:Microsoft.Build.BackEnd.TaskExecutionHost._intrinsicTasks">
24067             <summary>
24068             The set of intrinsic tasks mapped for this process.
24069             </summary>
24070         </member>
24071         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.#ctor(Microsoft.Build.BackEnd.IBuildComponentHost)">
24072             <summary>
24073             Constructor
24074             </summary>
24075         </member>
24076         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.#ctor">
24077             <summary>
24078             Constructor, for unit testing only.  
24079             </summary>
24080         </member>
24081         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Finalize">
24082             <summary>
24083             Finalizer
24084             </summary>
24085         </member>
24086         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost.LogTaskInputs">
24087             <summary>
24088             Flag to determine whether or not to log task inputs.
24089             </summary>
24090         </member>
24091         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#ProjectInstance">
24092             <summary>
24093             The associated project.
24094             </summary>
24095         </member>
24096         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost.TaskInstance">
24097             <summary>
24098             Gets the task instance
24099             </summary>
24100         </member>
24101         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost._UNITTESTONLY_TaskFactoryWrapper">
24102             <summary>
24103             FOR UNIT TESTING ONLY
24104             </summary>
24105         </member>
24106         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost.AppDomainSetup">
24107             <summary>
24108             App domain configuration.
24109             </summary>
24110         </member>
24111         <member name="P:Microsoft.Build.BackEnd.TaskExecutionHost.IsOutOfProc">
24112             <summary>
24113             Whether or not this is out-of-proc.
24114             </summary>
24115         </member>
24116         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Dispose">
24117             <summary>
24118             Implementation of IDisposable
24119             </summary>
24120         </member>
24121         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#InitializeForTask(Microsoft.Build.Framework.IBuildEngine2,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Execution.ProjectInstance,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Framework.ITaskHost,System.Boolean,System.AppDomainSetup,System.Boolean,System.Threading.CancellationToken)">
24122             <summary>
24123             Initialize to run a specific task.
24124             </summary>
24125         </member>
24126         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#FindTask(System.Collections.Generic.IDictionary{System.String,System.String})">
24127             <summary>
24128             Ask the task host to find its task in the registry and get it ready for initializing the batch
24129             </summary>
24130             <returns>True if the task is found in the task registry false if otherwise.</returns>
24131         </member>
24132         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#InitializeForBatch(Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.ItemBucket,System.Collections.Generic.IDictionary{System.String,System.String})">
24133             <summary>
24134             Initialize to run a specific batch of the current task.
24135             </summary>
24136         </member>
24137         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#SetTaskParameters(System.Collections.Generic.IDictionary{System.String,System.Tuple{System.String,Microsoft.Build.Construction.ElementLocation}})">
24138             <summary>
24139             Sets all of the specified parameters on the task.
24140             </summary>
24141             <param name="parameters">The name/value pairs for the parameters.</param>
24142             <returns>True if the parameters were set correctly, false otherwise.</returns>
24143         </member>
24144         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#GatherTaskOutputs(System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean,System.String)">
24145             <summary>
24146             Retrieve the outputs from the task.
24147             </summary>
24148             <returns>True of the outputs were gathered successfully, false otherwise.</returns>
24149         </member>
24150         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#CleanupForBatch">
24151             <summary>
24152             Cleans up after running a batch.
24153             </summary>
24154         </member>
24155         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#CleanupForTask">
24156             <summary>
24157             Cleans up after running the task.
24158             </summary>
24159         </member>
24160         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft#Build#BackEnd#ITaskExecutionHost#Execute">
24161             <summary>
24162             Executes the task.
24163             </summary>
24164         </member>
24165         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Dispose(System.Boolean)">
24166             <summary>
24167             Implementation of IDisposable
24168             </summary>
24169         </member>
24170         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.CleanupCancellationToken">
24171             <summary>
24172             Disposes of the cancellation token registration.
24173             </summary>
24174         </member>
24175         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.Cancel">
24176             <summary>
24177             Cancels the currently-running task.
24178             Kick off a task to wait for the currently-running task and log the wait message.
24179             </summary>
24180         </member>
24181         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.SetTaskItemParameter(Microsoft.Build.Framework.TaskPropertyInfo,Microsoft.Build.Framework.ITaskItem,Microsoft.Build.Construction.ElementLocation)">
24182             <summary>
24183             Called on the local side.
24184             </summary>
24185         </member>
24186         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.SetValueParameter(Microsoft.Build.Framework.TaskPropertyInfo,System.Type,System.String,Microsoft.Build.Construction.ElementLocation)">
24187             <summary>
24188             Called on the local side.
24189             </summary>
24190         </member>
24191         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.SetParameterArray(Microsoft.Build.Framework.TaskPropertyInfo,System.Type,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectItemInstance.TaskItem},Microsoft.Build.Construction.ElementLocation)">
24192             <summary>
24193             Called on the local side.
24194             </summary>
24195         </member>
24196         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.RecordItemForDisconnectIfNecessary(Microsoft.Build.Execution.ProjectItemInstance.TaskItem)">
24197             <summary>
24198             Remember this TaskItem so that we can disconnect it when this Task has finished executing
24199             Only if we're passing TaskItems to another AppDomain is this necessary. This call
24200             Will make that determination for you.
24201             </summary>
24202         </member>
24203         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.GetItemOutputs(Microsoft.Build.Framework.TaskPropertyInfo,Microsoft.Build.Construction.ElementLocation)">
24204             <summary>
24205             Gets the outputs (as an array of ITaskItem) from the specified output parameter.
24206             </summary>
24207         </member>
24208         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.GetValueOutputs(Microsoft.Build.Framework.TaskPropertyInfo,Microsoft.Build.Construction.ElementLocation)">
24209             <summary>
24210             Gets the outputs (as an array of string values) from the specified output parameter.
24211             </summary>
24212         </member>
24213         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.FindTaskInRegistry(System.Collections.Generic.IDictionary{System.String,System.String})">
24214             <summary>
24215             Given the task name, this method tries to find the task. It uses the following search order:
24216             1) checks the tasks declared by the project, searching by exact name and task identity parameters
24217             2) checks the global task declarations (in *.TASKS in MSbuild bin dir), searching by exact name and task identity parameters
24218             3) checks the tasks declared by the project, searching by fuzzy match (missing namespace, etc.) and task identity parameters
24219             4) checks the global task declarations (in *.TASKS in MSbuild bin dir), searching by fuzzy match (missing namespace, etc.) and task identity parameters
24220             5) 1-4 again in order without the task identity parameters, to gather additional information for the user (if the task identity 
24221                parameters don't match, it is an error, but at least we can return them a more useful error in this case than just "could not 
24222                find task")
24223             
24224             The search ordering is meant to reduce the number of assemblies we scan, because loading assemblies can be expensive.
24225             The tasks and assemblies declared by the project are scanned first, on the assumption that if the project declared
24226             them, they are likely used.
24227             
24228             If the set of task identity parameters are defined, only tasks that match that identity are chosen. 
24229             </summary>
24230             <returns>The Type of the task, or null if it was not found.</returns>
24231         </member>
24232         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.InstantiateTask(System.Collections.Generic.IDictionary{System.String,System.String})">
24233             <summary>
24234             Instantiates the task.
24235             </summary>
24236         </member>
24237         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.SetTaskParameter(System.String,System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean,System.Boolean@)">
24238             <summary>
24239             Set the specified parameter based on its type.
24240             </summary>
24241         </member>
24242         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.InitializeTaskScalarParameter(Microsoft.Build.Framework.TaskPropertyInfo,System.Type,System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean@)">
24243             <summary>
24244             Given an instantiated task, this helper method sets the specified scalar parameter based on its type.
24245             </summary>
24246         </member>
24247         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.InitializeTaskVectorParameter(Microsoft.Build.Framework.TaskPropertyInfo,System.Type,System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean,System.Boolean@)">
24248              <summary>
24249              Given an instantiated task, this helper method sets the specified vector parameter. Vector parameters can be composed
24250              of multiple item vectors. The semicolon is the only separator allowed, and white space around the semicolon is
24251              ignored. Any item separator strings are not allowed, and embedded item vectors are not allowed.
24252              </summary>
24253              <remarks>This method is marked "internal" for unit-testing purposes only -- it should be "private" ideally.</remarks>
24254              <example>
24255              If @(CPPFiles) is a vector for the files a.cpp and b.cpp, and @(IDLFiles) is a vector for the files a.idl and b.idl:
24256             
24257                  "@(CPPFiles)"                               converts to     { a.cpp, b.cpp }
24258             
24259                  "@(CPPFiles); c.cpp; @(IDLFiles); c.idl"    converts to     { a.cpp, b.cpp, c.cpp, a.idl, b.idl, c.idl }
24260             
24261                  "@(CPPFiles,';')"                           converts to     &lt;error&gt;
24262             
24263                  "xxx@(CPPFiles)xxx"                         converts to     &lt;error&gt;
24264              </example>
24265         </member>
24266         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.InternalSetTaskParameter(Microsoft.Build.Framework.TaskPropertyInfo,System.Collections.IList)">
24267             <summary>
24268             Variation to handle arrays, to help with logging the parameters.
24269             </summary>
24270             <remarks>
24271             Logging currently enabled only by an env var.
24272             </remarks>
24273         </member>
24274         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.InternalSetTaskParameter(Microsoft.Build.Framework.TaskPropertyInfo,System.Object)">
24275             <summary>
24276             Given an instantiated task, this helper method sets the specified parameter
24277             </summary>
24278         </member>
24279         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.GatherTaskItemOutputs(System.Boolean,System.String,Microsoft.Build.Framework.ITaskItem[],Microsoft.Build.Construction.ElementLocation)">
24280             <summary>
24281             Gets task item outputs
24282             </summary>
24283         </member>
24284         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.GatherArrayStringAndValueOutputs(System.Boolean,System.String,Microsoft.Build.Framework.TaskPropertyInfo,System.String[],Microsoft.Build.Construction.ElementLocation)">
24285             <summary>
24286             Gather task outputs in array form
24287             </summary>
24288         </member>
24289         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.GetNamesOfPropertiesWithRequiredAttribute">
24290             <summary>
24291             Finds all the task properties that are required.
24292             Returns them as keys in a dictionary.
24293             </summary>
24294             <returns>Gets a list of properties which are required.</returns>
24295         </member>
24296         <member name="M:Microsoft.Build.BackEnd.TaskExecutionHost.DisplayCancelWaitMessage">
24297             <summary>
24298             Show a message that cancel has not yet finished.
24299             </summary>
24300         </member>
24301         <member name="T:Microsoft.Build.BackEnd.AssemblyTaskFactory">
24302             <summary>
24303             The assembly task factory is used to wrap and construct tasks which are from .net assemblies.
24304             </summary>
24305         </member>
24306         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._typeLoader">
24307             <summary>
24308             The type loader to load types which derrive from ITask or ITask2
24309             </summary>
24310         </member>
24311         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._taskName">
24312             <summary>
24313             Name of the task wrapped by the task factory
24314             </summary>
24315         </member>
24316         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._loadedType">
24317             <summary>
24318             The loaded type (type, assembly name / file) of the task wrapped by the factory
24319             </summary>
24320         </member>
24321         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._tasksAndAppDomains">
24322             <summary>
24323             A cache of tasks and the AppDomains they are loaded in.
24324             </summary>
24325         </member>
24326         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._factoryIdentityParameters">
24327             <summary>
24328              the set of parameters owned by this particular task host
24329             </summary>
24330         </member>
24331         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._taskHostFactoryExplicitlyRequested">
24332             <summary>
24333             Tracks whether, in the UsingTask invocation, we were specifically asked to use 
24334             the task host.  If so, that overrides all other concerns, and we will launch 
24335             the task host even if the requested runtime / architecture match that of the 
24336             current MSBuild process. 
24337             </summary>
24338         </member>
24339         <member name="F:Microsoft.Build.BackEnd.AssemblyTaskFactory._taskLoggingContext">
24340             <summary>
24341             Need to store away the taskloggingcontext used by CreateTaskInstance so that 
24342             TaskLoader will be able to call back with errors.  
24343             </summary>
24344         </member>
24345         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.#ctor">
24346             <summary>
24347             Initializes a new instance of the <see cref="T:Microsoft.Build.BackEnd.AssemblyTaskFactory"/> class.
24348             </summary>
24349         </member>
24350         <member name="P:Microsoft.Build.BackEnd.AssemblyTaskFactory.FactoryName">
24351             <summary>
24352             Name of the factory. In this case the name is the assembly name which is wrapped by the factory
24353             </summary>
24354         </member>
24355         <member name="P:Microsoft.Build.BackEnd.AssemblyTaskFactory.TaskType">
24356             <summary>
24357             Gets the type of task this factory creates.
24358             </summary>
24359         </member>
24360         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.Initialize(System.String,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Framework.TaskPropertyInfo},System.String,Microsoft.Build.Framework.IBuildEngine)">
24361             <summary>
24362             Initializes this factory for instantiating tasks with a particular inline task block.
24363             </summary>
24364             <param name="taskName">Name of the task.</param>
24365             <param name="parameterGroup">The parameter group.</param>
24366             <param name="taskBody">The task body.</param>
24367             <param name="taskFactoryLoggingHost">The task factory logging host.</param>
24368             <returns>A value indicating whether initialization was successful.</returns>
24369             <remarks>
24370             <para>MSBuild engine will call this to initialize the factory. This should initialize the factory enough so that the factory can be asked
24371             whether or not task names can be created by the factory.</para>
24372             <para>
24373             The taskFactoryLoggingHost will log messages in the context of the target where the task is first used.
24374             </para>
24375             </remarks>
24376         </member>
24377         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.Initialize(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Framework.TaskPropertyInfo},System.String,Microsoft.Build.Framework.IBuildEngine)">
24378             <summary>
24379             Initializes this factory for instantiating tasks with a particular inline task block and a set of UsingTask parameters.
24380             </summary>
24381             <param name="taskName">Name of the task.</param>
24382             <param name="factoryIdentityParameters">Special parameters that the task factory can use to modify how it executes tasks, 
24383             such as Runtime and Architecture.  The key is the name of the parameter and the value is the parameter's value. This 
24384             is the set of parameters that was set on the UsingTask using e.g. the UsingTask Runtime and Architecture parameters.</param>
24385             <param name="parameterGroup">The parameter group.</param>
24386             <param name="taskBody">The task body.</param>
24387             <param name="taskFactoryLoggingHost">The task factory logging host.</param>
24388             <returns>A value indicating whether initialization was successful.</returns>
24389             <remarks>
24390             <para>MSBuild engine will call this to initialize the factory. This should initialize the factory enough so that the 
24391             factory can be asked whether or not task names can be created by the factory.  If a task factory implements ITaskFactory2, 
24392             this Initialize method will be called in place of ITaskFactory.Initialize.</para>
24393             <para>
24394             The taskFactoryLoggingHost will log messages in the context of the target where the task is first used.
24395             </para>
24396             </remarks>
24397         </member>
24398         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.GetTaskParameters">
24399             <summary>
24400             Get a list of parameters for the task.
24401             </summary>
24402         </member>
24403         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.CreateTask(Microsoft.Build.Framework.IBuildEngine)">
24404             <summary>
24405             Create an instance of the task to be used.
24406             The task factory logging host will log messages in the context of the task.
24407             </summary>
24408             <param name="taskFactoryLoggingHost">
24409             The task factory logging host will log messages in the context of the task.
24410             </param>
24411             <returns>
24412             The generated task, or <c>null</c> if the task failed to be created.
24413             </returns>
24414         </member>
24415         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.CreateTask(Microsoft.Build.Framework.IBuildEngine,System.Collections.Generic.IDictionary{System.String,System.String})">
24416             <summary>
24417             Create an instance of the task to be used.
24418             </summary>
24419             <param name="taskFactoryLoggingHost">
24420             The task factory logging host will log messages in the context of the task.
24421             </param>
24422             <param name="taskIdentityParameters">
24423             Special parameters that the task factory can use to modify how it executes tasks, such as Runtime and Architecture.  
24424             The key is the name of the parameter and the value is the parameter's value.  This is the set of parameters that was 
24425             set to the task invocation itself, via e.g. the special MSBuildRuntime and MSBuildArchitecture parameters.  
24426             </param>
24427             <remarks>
24428             If a task factory implements ITaskFactory2, MSBuild will call this method instead of ITaskFactory.CreateTask.  
24429             </remarks>
24430             <returns>
24431             The generated task, or <c>null</c> if the task failed to be created.
24432             </returns>
24433         </member>
24434         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.CleanupTask(Microsoft.Build.Framework.ITask)">
24435             <summary>
24436             Cleans up any context or state that may have been built up for a given task.
24437             </summary>
24438             <param name="task">The task to clean up.</param>
24439             <remarks>
24440             For many factories, this method is a no-op.  But some factories may have built up
24441             an AppDomain as part of an individual task instance, and this is their opportunity
24442             to shutdown the AppDomain.
24443             </remarks>
24444         </member>
24445         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.InitializeFactory(Microsoft.Build.Shared.AssemblyLoadInfo,System.String,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Framework.TaskPropertyInfo},System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Boolean,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation,System.String)">
24446             <summary>
24447             Initialize the factory from the task registry
24448             </summary>
24449         </member>
24450         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.CreateTaskInstance(Microsoft.Build.Construction.ElementLocation,Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.IBuildComponentHost,System.Collections.Generic.IDictionary{System.String,System.String},System.AppDomainSetup,System.Boolean)">
24451             <summary>
24452             Create an instance of the wrapped ITask for a batch run of the task.
24453             </summary>
24454         </member>
24455         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.TaskNameCreatableByFactory(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation)">
24456             <summary>
24457             Is the given task name able to be created by the task factory. In the case of an assembly task factory 
24458             this question is answered by checking the assembly wrapped by the task factory to see if it exists. 
24459             </summary>
24460         </member>
24461         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.VerifyThrowIdentityParametersValid(System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.Shared.IElementLocation,System.String,System.String,System.String)">
24462             <summary>
24463             Validates the given set of parameters, logging the appropriate errors as necessary. 
24464             </summary>
24465         </member>
24466         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.TaskIdentityParametersMatchFactory(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
24467             <summary>
24468             Given the set of parameters that are set to the factory, and the set of parameters coming from the task invocation that we're searching for 
24469             a matching record to, determine whether the parameters match this record.  
24470             </summary>
24471         </member>
24472         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.MergeTaskFactoryParameterSets(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String})">
24473             <summary>
24474             Given a set of task parameters from the UsingTask and from the task invocation, generate a dictionary that combines the two, or throws if the merge
24475             is impossible (we shouldn't ever get to this point if it is ...)
24476             </summary>
24477         </member>
24478         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.TaskHostParametersMatchCurrentProcess(System.Collections.Generic.IDictionary{System.String,System.String})">
24479             <summary>
24480             Returns true if the provided set of task host parameters matches the current process, 
24481             and false otherwise. 
24482             </summary>
24483         </member>
24484         <member name="M:Microsoft.Build.BackEnd.AssemblyTaskFactory.ErrorLoggingDelegate(System.String,System.Int32,System.Int32,System.String,System.Object[])">
24485             <summary>
24486             Log errors from TaskLoader. 
24487             </summary>
24488         </member>
24489         <member name="T:Microsoft.Build.BackEnd.TaskHostTask">
24490             <summary>
24491             The wrapper task for tasks that wish to take advantage of the 
24492             task host factory feature.  Generated by AssemblyTaskFactory
24493             when it wants to run the loaded task in the task host. 
24494             </summary>
24495         </member>
24496         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._buildEngine">
24497             <summary>
24498             The IBuildEngine callback object.  
24499             </summary>
24500         </member>
24501         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._hostObject">
24502             <summary>
24503             The host object that can be passed to this task.  
24504             </summary>
24505         </member>
24506         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskLoggingContext">
24507             <summary>
24508             Logging context for logging errors / issues 
24509             encountered in the TaskHostTask itself. 
24510             </summary>
24511         </member>
24512         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskLocation">
24513             <summary>
24514             Location of the task in the project file. 
24515             </summary>
24516         </member>
24517         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._buildComponentHost">
24518             <summary>
24519              The provider for the task host nodes. 
24520             </summary>
24521         </member>
24522         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._packetFactory">
24523             <summary>
24524             The packet factory.
24525             </summary>
24526         </member>
24527         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._packetReceivedEvent">
24528             <summary>
24529             The event which is set when we receive packets.
24530             </summary>
24531         </member>
24532         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._receivedPackets">
24533             <summary>
24534             The packet that is the end result of the task host task execution process
24535             </summary>
24536         </member>
24537         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskHostParameters">
24538             <summary>
24539             The set of parameters used to decide which host to launch.  
24540             </summary>
24541         </member>
24542         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskType">
24543             <summary>
24544             The type of the task that we are wrapping.  
24545             </summary>
24546         </member>
24547         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._appDomainSetup">
24548             <summary>
24549             The AppDomainSetup we'll want to apply to the AppDomain that we may 
24550             want to load the OOP task into. 
24551             </summary>
24552         </member>
24553         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._requiredContext">
24554             <summary>
24555             The task host context of the task host we're launching -- used to 
24556             communicate with the task host. 
24557             </summary>
24558         </member>
24559         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._connectedToTaskHost">
24560             <summary>
24561             True if currently connected to the task host; false otherwise. 
24562             </summary>
24563         </member>
24564         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskHostProvider">
24565             <summary>
24566             The provider for task host nodes. 
24567             </summary>
24568         </member>
24569         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskHostLock">
24570             <summary>
24571             Lock object to serialize access to the task host. 
24572             </summary>
24573         </member>
24574         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskCancelled">
24575             <summary>
24576             Keeps track of whether the wrapped task has had cancel called against it. 
24577             </summary>
24578         </member>
24579         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._setParameters">
24580             <summary>
24581             The set of parameters that has been set to this wrapped task -- save them 
24582             here so that we can forward them on to the task host. 
24583             </summary>
24584         </member>
24585         <member name="F:Microsoft.Build.BackEnd.TaskHostTask._taskExecutionSucceeded">
24586             <summary>
24587             Did the task succeed? 
24588             </summary>
24589         </member>
24590         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.#ctor(Microsoft.Build.Shared.IElementLocation,Microsoft.Build.BackEnd.Logging.TaskLoggingContext,Microsoft.Build.BackEnd.IBuildComponentHost,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.Shared.LoadedType,System.AppDomainSetup)">
24591             <summary>
24592             Constructor
24593             </summary>
24594         </member>
24595         <member name="P:Microsoft.Build.BackEnd.TaskHostTask.BuildEngine">
24596             <summary>
24597             THe IBuildEngine callback object
24598             </summary>
24599         </member>
24600         <member name="P:Microsoft.Build.BackEnd.TaskHostTask.HostObject">
24601             <summary>
24602             The host object that can be passed to this task.  
24603             </summary>
24604         </member>
24605         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.SetPropertyValue(Microsoft.Build.Framework.TaskPropertyInfo,System.Object)">
24606             <summary>
24607             Sets the requested task parameter to the requested value. 
24608             </summary>
24609         </member>
24610         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.GetPropertyValue(Microsoft.Build.Framework.TaskPropertyInfo)">
24611             <summary>
24612             Returns the value of the requested task parameter
24613             </summary>
24614         </member>
24615         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.Cancel">
24616             <summary>
24617             Cancels the currently executing task
24618             </summary>
24619         </member>
24620         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.Execute">
24621             <summary>
24622             Executes the task.
24623             </summary>
24624         </member>
24625         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
24626             <summary>
24627             Registers the specified handler for a particular packet type.
24628             </summary>
24629             <param name="packetType">The packet type.</param>
24630             <param name="factory">The factory for packets of the specified type.</param>
24631             <param name="handler">The handler to be called when packets of the specified type are received.</param>
24632         </member>
24633         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
24634             <summary>
24635             Unregisters a packet handler.
24636             </summary>
24637             <param name="packetType">The packet type.</param>
24638         </member>
24639         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
24640             <summary>
24641             Takes a serializer, deserializes the packet and routes it to the appropriate handler.
24642             </summary>
24643             <param name="nodeId">The node from which the packet was received.</param>
24644             <param name="packetType">The packet type.</param>
24645             <param name="translator">The translator containing the data from which the packet should be reconstructed.</param>
24646         </member>
24647         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
24648             <summary>
24649             Routes the specified packet
24650             </summary>
24651             <param name="nodeId">The node from which the packet was received.</param>
24652             <param name="packet">The packet to route.</param>
24653         </member>
24654         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
24655             <summary>
24656             This method is invoked by the NodePacketRouter when a packet is received and is intended for
24657             this recipient.
24658             </summary>
24659             <param name="node">The node from which the packet was received.</param>
24660             <param name="packet">The packet.</param>
24661         </member>
24662         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.Cleanup">
24663             <summary>
24664             Called by TaskHostFactory to let the task know that if it needs to do any additional cleanup steps, 
24665             now would be the time.  
24666             </summary>
24667         </member>
24668         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.HandlePacket(Microsoft.Build.BackEnd.INodePacket,System.Boolean@)">
24669             <summary>
24670             Handles the packets received from the task host. 
24671             </summary>
24672         </member>
24673         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.HandleTaskHostTaskComplete(Microsoft.Build.BackEnd.TaskHostTaskComplete)">
24674             <summary>
24675             Task completed executing in the task host
24676             </summary>
24677         </member>
24678         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.HandleNodeShutdown(Microsoft.Build.BackEnd.NodeShutdown)">
24679             <summary>
24680             The task host node failed for some reason 
24681             </summary>
24682         </member>
24683         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.HandleLoggedMessage(Microsoft.Build.BackEnd.LogMessagePacket)">
24684             <summary>
24685             Handle logged messages from the task host.
24686             </summary>
24687         </member>
24688         <member name="M:Microsoft.Build.BackEnd.TaskHostTask.LogErrorUnableToCreateTaskHost(Microsoft.Build.Internal.TaskHostContext,System.String,System.String,Microsoft.Build.BackEnd.NodeFailedToLaunchException)">
24689             <summary>
24690             Since we log that we weren't able to connect to the task host in a couple of different places,
24691             extract it out into a separate method. 
24692             </summary>
24693         </member>
24694         <member name="T:Microsoft.Build.BackEnd.TaskFactoryLoggingHost">
24695             <summary>
24696             The host allows task factories access to method to allow them to log message during the construction of the task factories.
24697             </summary>
24698         </member>
24699         <member name="F:Microsoft.Build.BackEnd.TaskFactoryLoggingHost._elementLocation">
24700             <summary>
24701             Location of the task node in the original file
24702             </summary>
24703         </member>
24704         <member name="F:Microsoft.Build.BackEnd.TaskFactoryLoggingHost._loggingContext">
24705             <summary>
24706             The task factory logging context
24707             </summary>
24708         </member>
24709         <member name="F:Microsoft.Build.BackEnd.TaskFactoryLoggingHost._isRunningWithMultipleNodes">
24710             <summary>
24711             Is the system running in multi-process mode and requires events to be serializable
24712             </summary>
24713         </member>
24714         <member name="F:Microsoft.Build.BackEnd.TaskFactoryLoggingHost._sponsor">
24715             <summary>
24716             A client sponsor is a class
24717             which will respond to a lease renewal request and will
24718             increase the lease time allowing the object to stay in memory
24719             </summary>
24720         </member>
24721         <member name="F:Microsoft.Build.BackEnd.TaskFactoryLoggingHost._activeProxy">
24722             <summary>
24723             True if the task connected to this proxy is alive
24724             </summary>
24725         </member>
24726         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.#ctor(System.Boolean,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.BackEnd.Logging.BuildLoggingContext)">
24727             <summary>
24728             Constructor
24729             </summary>
24730         </member>
24731         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.IsRunningMultipleNodes">
24732             <summary>
24733             Returns true in the multiproc case
24734             REVIEW: Should this mean the same thing in the distributed build case?  If we have 
24735             a build which happens to be on a distributed cluster, but the build manager has only
24736             alotted a single machine to this build, is this true?  Because the build manager
24737             could later decide to add more nodes to this build.
24738             UNDONE: This means we are building with multiple processes. If we are building on 
24739             one machine then I think the maxcpu-count is still 1. In my mind this means multiple nodes either distributed or on the same machine.
24740             </summary>
24741         </member>
24742         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.ContinueOnError">
24743             <summary>
24744             Reflects the value of the ContinueOnError attribute.
24745             </summary>
24746         </member>
24747         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LineNumberOfTaskNode">
24748             <summary>
24749             The line number this task is on
24750             </summary>
24751         </member>
24752         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.ColumnNumberOfTaskNode">
24753             <summary>
24754             The column number this task is on
24755             </summary>
24756         </member>
24757         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.ProjectFileOfTaskNode">
24758             <summary>
24759             The project file this task is in.
24760             Typically this is an imported .targets file.
24761             Unfortunately the interface has shipped with a poor name, so we cannot change it.
24762             </summary>
24763         </member>
24764         <member name="P:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LoggingContext">
24765             <summary>
24766             Sets or retrieves the logging context
24767             </summary>
24768         </member>
24769         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LogErrorEvent(Microsoft.Build.Framework.BuildErrorEventArgs)">
24770             <summary>
24771             Logs an error event for the current task
24772             </summary>
24773             <param name="e">The event args</param>
24774         </member>
24775         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LogWarningEvent(Microsoft.Build.Framework.BuildWarningEventArgs)">
24776             <summary>
24777             Logs a warning event for the current task
24778             </summary>
24779             <param name="e">The event args</param>
24780         </member>
24781         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LogMessageEvent(Microsoft.Build.Framework.BuildMessageEventArgs)">
24782             <summary>
24783             Logs a message event for the current task
24784             </summary>
24785             <param name="e">The event args</param>
24786         </member>
24787         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.LogCustomEvent(Microsoft.Build.Framework.CustomBuildEventArgs)">
24788             <summary>
24789             Logs a custom event for the current task
24790             </summary>
24791             <param name="e">The event args</param>
24792         </member>
24793         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.BuildProjectFile(System.String,System.String[],System.Collections.IDictionary,System.Collections.IDictionary)">
24794             <summary>
24795             Builds a single project file
24796             </summary>
24797             <param name="projectFileName">The project file name</param>
24798             <param name="targetNames">The set of targets to build.</param>
24799             <param name="globalProperties">The global properties to use</param>
24800             <param name="targetOutputs">The outputs from the targets</param>
24801             <returns>True on success, false otherwise.</returns>
24802         </member>
24803         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.InitializeLifetimeService">
24804             <summary>
24805             InitializeLifetimeService is called when the remote object is activated. 
24806             This method will determine how long the lifetime for the object will be.
24807             </summary>
24808             <returns>The lease object to control this object's lifetime.</returns>
24809         </member>
24810         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.MarkAsInactive">
24811             <summary>
24812             Indicates to the TaskHost that it is no longer needed.
24813             Called by TaskBuilder when the task using the EngineProxy is done.
24814             </summary>
24815         </member>
24816         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.IsEventSerializable(Microsoft.Build.Framework.BuildEventArgs)">
24817             <summary>
24818             Determine if the event is serializable. If we are running with multiple nodes we need to make sure the logging events are serializable. If not
24819             we need to log a warning.
24820             </summary>
24821         </member>
24822         <member name="M:Microsoft.Build.BackEnd.TaskFactoryLoggingHost.VerifyActiveProxy">
24823             <summary>
24824             Verify the task host is active or not
24825             </summary>
24826         </member>
24827         <member name="T:Microsoft.Build.Utilities.Traits">
24828             <summary>
24829                 Represents toggleable features of the MSBuild engine
24830             </summary>
24831         </member>
24832         <member name="F:Microsoft.Build.Utilities.EscapeHatches.AlwaysUseContentTimestamp">
24833             <summary>
24834             Always use the accurate-but-slow CreateFile approach to timestamp extraction.
24835             </summary>
24836         </member>
24837         <member name="F:Microsoft.Build.Utilities.EscapeHatches.UseSymlinkTimeInsteadOfTargetTime">
24838             <summary>
24839             Never use the slow (but more accurate) CreateFile approach to timestamp extraction.
24840             </summary>
24841         </member>
24842         <member name="F:Microsoft.Build.Utilities.EscapeHatches.IgnoreEmptyImports">
24843             <summary>
24844             Whether or not to ignore imports that are considered empty.  See ProjectRootElement.IsEmptyXmlFile() for more info.
24845             </summary>
24846         </member>
24847         <member name="F:Microsoft.Build.Utilities.EscapeHatches.IgnoreTreatAsLocalProperty">
24848             <summary>
24849             Whether to to respect the TreatAsLocalProperty parameter on the Project tag. 
24850             </summary>
24851         </member>
24852         <member name="F:Microsoft.Build.Utilities.EscapeHatches.DebugEvaluation">
24853             <summary>
24854             Whether to write information about why we evaluate to debug output.
24855             </summary>
24856         </member>
24857         <member name="F:Microsoft.Build.Utilities.EscapeHatches.WarnOnUninitializedProperty">
24858             <summary>
24859             Whether to warn when we set a property for the first time, after it was previously used.
24860             </summary>
24861         </member>
24862         <member name="T:Microsoft.Build.Execution.NodeEngineShutdownReason">
24863             <summary>
24864             Reasons for a node to shutdown.
24865             </summary>
24866         </member>
24867         <member name="F:Microsoft.Build.Execution.NodeEngineShutdownReason.BuildComplete">
24868             <summary>
24869             The BuildManager sent a command instructing the node to terminate.
24870             </summary>
24871         </member>
24872         <member name="F:Microsoft.Build.Execution.NodeEngineShutdownReason.BuildCompleteReuse">
24873             <summary>
24874             The BuildManager sent a command instructing the node to terminate, but to restart for reuse.
24875             </summary>
24876         </member>
24877         <member name="F:Microsoft.Build.Execution.NodeEngineShutdownReason.ConnectionFailed">
24878             <summary>
24879             The communication link failed.
24880             </summary>
24881         </member>
24882         <member name="F:Microsoft.Build.Execution.NodeEngineShutdownReason.Error">
24883             <summary>
24884             The NodeEngine caught an exception which requires the Node to shut down.
24885             </summary>
24886         </member>
24887         <member name="T:Microsoft.Build.Execution.BuildManager">
24888             <summary>
24889             This class is the public entry point for executing builds.
24890             </summary>
24891         </member>
24892         <member name="F:Microsoft.Build.Execution.BuildManager.s_staticSyncLock">
24893             <summary>
24894             The object used for thread-safe synchronization of static members.
24895             </summary>
24896         </member>
24897         <member name="F:Microsoft.Build.Execution.BuildManager._syncLock">
24898             <summary>
24899             The object used for thread-safe synchronization of BuildManager shared data and the Scheduler.
24900             </summary>
24901         </member>
24902         <member name="F:Microsoft.Build.Execution.BuildManager.s_singletonInstance">
24903             <summary>
24904             The singleton instance for the BuildManager.
24905             </summary>
24906         </member>
24907         <member name="F:Microsoft.Build.Execution.BuildManager.s_nextBuildId">
24908             <summary>
24909             The next build id;
24910             </summary>
24911         </member>
24912         <member name="F:Microsoft.Build.Execution.BuildManager.s_nextBuildRequestConfigurationId">
24913             <summary>
24914             The next build request configuration ID to use.
24915             These must be unique across build managers, as they
24916             are used as part of cache file names, for example.
24917             </summary>
24918         </member>
24919         <member name="F:Microsoft.Build.Execution.BuildManager._configCache">
24920             <summary>
24921             The cache for build request configurations.
24922             </summary>
24923         </member>
24924         <member name="F:Microsoft.Build.Execution.BuildManager._resultsCache">
24925             <summary>
24926             The cache for build results.
24927             </summary>
24928         </member>
24929         <member name="F:Microsoft.Build.Execution.BuildManager._nodeManager">
24930             <summary>
24931             The object responsible for creating and managing nodes.
24932             </summary>
24933         </member>
24934         <member name="F:Microsoft.Build.Execution.BuildManager._taskHostNodeManager">
24935             <summary>
24936             The object responsible for creating and managing task host nodes.
24937             </summary>
24938         </member>
24939         <member name="F:Microsoft.Build.Execution.BuildManager._scheduler">
24940             <summary>
24941             The object which determines which projects to build, and where.
24942             </summary>
24943         </member>
24944         <member name="F:Microsoft.Build.Execution.BuildManager._nodeConfiguration">
24945             <summary>
24946             The node configuration to use for spawning new nodes.
24947             </summary>
24948         </member>
24949         <member name="F:Microsoft.Build.Execution.BuildManager._threadException">
24950             <summary>
24951             Any exception which occurs on a logging thread will go here.
24952             </summary>
24953         </member>
24954         <member name="F:Microsoft.Build.Execution.BuildManager._activeNodes">
24955             <summary>
24956             Set of active nodes in the system.
24957             </summary>
24958         </member>
24959         <member name="F:Microsoft.Build.Execution.BuildManager._noNodesActiveEvent">
24960             <summary>
24961             Event signalled when all nodes have shutdown.
24962             </summary>
24963         </member>
24964         <member name="F:Microsoft.Build.Execution.BuildManager._nodeIdToKnownConfigurations">
24965             <summary>
24966             Mapping of nodes to the configurations they know about.
24967             </summary>
24968         </member>
24969         <member name="F:Microsoft.Build.Execution.BuildManager._shuttingDown">
24970             <summary>
24971             Flag indicating if we are currently shutting down.  When set, we stop processing packets other than NodeShutdown.
24972             </summary>
24973         </member>
24974         <member name="F:Microsoft.Build.Execution.BuildManager._buildManagerState">
24975             <summary>
24976             The current state of the BuildManager.
24977             </summary>
24978         </member>
24979         <member name="F:Microsoft.Build.Execution.BuildManager._hostName">
24980             <summary>
24981             The name given to this BuildManager as the component host.
24982             </summary>
24983         </member>
24984         <member name="F:Microsoft.Build.Execution.BuildManager._buildParameters">
24985             <summary>
24986             The parameters with which the build was started.
24987             </summary>
24988         </member>
24989         <member name="F:Microsoft.Build.Execution.BuildManager._buildSubmissions">
24990             <summary>
24991             The current pending and active submissions.
24992             </summary>
24993             <remarks>
24994             { submissionId, BuildSubmission }
24995             </remarks>
24996         </member>
24997         <member name="F:Microsoft.Build.Execution.BuildManager._noActiveSubmissionsEvent">
24998             <summary>
24999             Event signalled when all build submissions are complete.
25000             </summary>
25001         </member>
25002         <member name="F:Microsoft.Build.Execution.BuildManager._overallBuildSuccess">
25003             <summary>
25004             The overall success of the build.
25005             </summary>
25006         </member>
25007         <member name="F:Microsoft.Build.Execution.BuildManager._nextBuildSubmissionId">
25008             <summary>
25009             The next build submission id.
25010             </summary>
25011         </member>
25012         <member name="F:Microsoft.Build.Execution.BuildManager._unnamedProjectInstanceToNames">
25013             <summary>
25014             Mapping of unnamed project instances to the file names assigned to them.
25015             </summary>
25016         </member>
25017         <member name="F:Microsoft.Build.Execution.BuildManager._nextUnnamedProjectId">
25018             <summary>
25019             The next ID to assign to a project which has no name.
25020             </summary>
25021         </member>
25022         <member name="F:Microsoft.Build.Execution.BuildManager._componentFactories">
25023             <summary>
25024             The build component factories.
25025             </summary>
25026         </member>
25027         <member name="F:Microsoft.Build.Execution.BuildManager._projectStartedEvents">
25028             <summary>
25029             Mapping of submission IDs to their first project started events.
25030             </summary>
25031         </member>
25032         <member name="F:Microsoft.Build.Execution.BuildManager._acquiredProjectRootElementCacheFromProjectInstance">
25033             <summary>
25034             Whether a cache has been provided by a project instance, meaning
25035             we've acquired at least one build submission that included a project instance.
25036             Once that has happened, we use the provided one, rather than our default.
25037             </summary>
25038         </member>
25039         <member name="F:Microsoft.Build.Execution.BuildManager._projectStartedEventHandler">
25040             <summary>
25041             The project started event handler
25042             </summary>
25043         </member>
25044         <member name="F:Microsoft.Build.Execution.BuildManager._projectFinishedEventHandler">
25045             <summary>
25046             The project finished event handler
25047             </summary>
25048         </member>
25049         <member name="F:Microsoft.Build.Execution.BuildManager._loggingThreadExceptionEventHandler">
25050             <summary>
25051             The logging exception event handler
25052             </summary>
25053         </member>
25054         <member name="F:Microsoft.Build.Execution.BuildManager._legacyThreadingData">
25055             <summary>
25056             Legacy threading semantic data associated with this build manager.
25057             </summary>
25058         </member>
25059         <member name="F:Microsoft.Build.Execution.BuildManager._workQueue">
25060             <summary>
25061             The worker queue.
25062             </summary>
25063         </member>
25064         <member name="F:Microsoft.Build.Execution.BuildManager._disposed">
25065             <summary>
25066             Flag indicating we have disposed. 
25067             </summary>
25068         </member>
25069         <member name="M:Microsoft.Build.Execution.BuildManager.#ctor">
25070             <summary>
25071             Creates a new unnamed build manager.
25072             Normally there is only one build manager in a process, and it is the default build manager.
25073             Access it with <see cref="P:Microsoft.Build.Execution.BuildManager.DefaultBuildManager"/>
25074             </summary>
25075         </member>
25076         <member name="M:Microsoft.Build.Execution.BuildManager.#ctor(System.String)">
25077             <summary>
25078             Creates a new build manager with an arbitrary distinct name.
25079             Normally there is only one build manager in a process, and it is the default build manager.
25080             Access it with <see cref="P:Microsoft.Build.Execution.BuildManager.DefaultBuildManager"/>
25081             </summary>
25082         </member>
25083         <member name="M:Microsoft.Build.Execution.BuildManager.Finalize">
25084             <summary>
25085             Finalizer
25086             </summary>
25087         </member>
25088         <member name="T:Microsoft.Build.Execution.BuildManager.BuildManagerState">
25089             <summary>
25090             Enumeration describing the current state of the build manager.
25091             </summary>
25092         </member>
25093         <member name="F:Microsoft.Build.Execution.BuildManager.BuildManagerState.Idle">
25094             <summary>
25095             This is the default state.  <see cref="M:Microsoft.Build.Execution.BuildManager.BeginBuild(Microsoft.Build.Execution.BuildParameters)"/> may be called in this state.  All other methods raise InvalidOperationException
25096             </summary>
25097         </member>
25098         <member name="F:Microsoft.Build.Execution.BuildManager.BuildManagerState.Building">
25099             <summary>
25100             This is the state the BuildManager is in after <see cref="M:Microsoft.Build.Execution.BuildManager.BeginBuild(Microsoft.Build.Execution.BuildParameters)"/> has been called but before <see cref="M:Microsoft.Build.Execution.BuildManager.EndBuild"/> has been called.
25101             <see cref="M:Microsoft.Build.Execution.BuildManager.PendBuildRequest(Microsoft.Build.Execution.BuildRequestData)"/>, <see cref="M:Microsoft.Build.Execution.BuildManager.BuildRequest(Microsoft.Build.Execution.BuildRequestData)"/> and <see cref="M:Microsoft.Build.Execution.BuildManager.EndBuild"/> may be called in this state.
25102             </summary>
25103         </member>
25104         <member name="F:Microsoft.Build.Execution.BuildManager.BuildManagerState.WaitingForBuildToComplete">
25105             <summary>
25106             This is the state the BuildManager is in after <see cref="M:Microsoft.Build.Execution.BuildManager.EndBuild"/> has been called but before all existing submissions have completed.
25107             </summary>
25108         </member>
25109         <member name="P:Microsoft.Build.Execution.BuildManager.DefaultBuildManager">
25110             <summary>
25111             Gets the singleton instance of the Build Manager.
25112             </summary>
25113         </member>
25114         <member name="P:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#LoggingService">
25115             <summary>
25116             Retrieves the logging service associated with a particular build
25117             </summary>
25118             <returns>The logging service.</returns>
25119         </member>
25120         <member name="P:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#Name">
25121             <summary>
25122             Retrieves the name of the component host.
25123             </summary>
25124         </member>
25125         <member name="P:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#BuildParameters">
25126             <summary>
25127             Retrieves the build parameters associated with this build.
25128             </summary>
25129             <returns>The build parameters.</returns>
25130         </member>
25131         <member name="P:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#LegacyThreadingData">
25132             <summary>
25133             Retrieves the LegacyThreadingData associated with a particular build manager
25134             </summary>
25135         </member>
25136         <member name="M:Microsoft.Build.Execution.BuildManager.BeginBuild(Microsoft.Build.Execution.BuildParameters)">
25137             <summary>
25138             Prepares the BuildManager to receive build requests.
25139             </summary>
25140             <param name="parameters">The build parameters.  May be null.</param>
25141             <exception cref="T:System.InvalidOperationException">Thrown if a build is already in progress.</exception>
25142         </member>
25143         <member name="M:Microsoft.Build.Execution.BuildManager.CancelAllSubmissions">
25144             <summary>
25145             Cancels all outstanding submissions asynchronously.
25146             </summary>
25147         </member>
25148         <member name="M:Microsoft.Build.Execution.BuildManager.ResetCaches">
25149             <summary>
25150             Clears out all of the cached information.
25151             </summary>
25152         </member>
25153         <member name="M:Microsoft.Build.Execution.BuildManager.GetProjectInstanceForBuild(Microsoft.Build.Evaluation.Project)">
25154             <summary>
25155             This methods requests the BuildManager to find a matching ProjectInstance in its cache of previously-built projects.
25156             If none exist, a new instance will be created from the specified project.
25157             </summary>
25158             <param name="project">The Project for which an instance should be retrieved.</param>
25159             <returns>The instance.</returns>
25160         </member>
25161         <member name="M:Microsoft.Build.Execution.BuildManager.PendBuildRequest(Microsoft.Build.Execution.BuildRequestData)">
25162             <summary>
25163             Submits a build request to the current build but does not start it immediately.  Allows the user to
25164             perform asynchronous execution or access the submission ID prior to executing the request.
25165             </summary>
25166             <exception cref="T:System.InvalidOperationException">Thrown if StartBuild has not been called or if EndBuild has been called.</exception>
25167         </member>
25168         <member name="M:Microsoft.Build.Execution.BuildManager.BuildRequest(Microsoft.Build.Execution.BuildRequestData)">
25169             <summary>
25170             Convenience method. Submits a build request and blocks until the results are available.
25171             </summary>
25172             <exception cref="T:System.InvalidOperationException">Thrown if StartBuild has not been called or if EndBuild has been called.</exception>
25173         </member>
25174         <member name="M:Microsoft.Build.Execution.BuildManager.EndBuild">
25175             <summary>
25176             Signals that no more build requests are expected (or allowed) and the BuildManager may clean up.
25177             </summary>
25178             <remarks>
25179             This call blocks until all currently pending requests are complete.
25180             </remarks>
25181             <exception cref="T:System.InvalidOperationException">Thrown if there is no build in progress.</exception>
25182         </member>
25183         <member name="M:Microsoft.Build.Execution.BuildManager.Build(Microsoft.Build.Execution.BuildParameters,Microsoft.Build.Execution.BuildRequestData)">
25184             <summary>
25185             Convenience method.  Submits a lone build request and blocks until results are available.
25186             </summary>
25187             <exception cref="T:System.InvalidOperationException">Thrown if a build is already in progress.</exception>
25188         </member>
25189         <member name="M:Microsoft.Build.Execution.BuildManager.ShutdownAllNodes">
25190             <summary>
25191             Shuts down all idle MSBuild nodes on the machine
25192             </summary>
25193         </member>
25194         <member name="M:Microsoft.Build.Execution.BuildManager.Dispose">
25195             <summary>
25196             Dispose of the build manager. 
25197             </summary>
25198         </member>
25199         <member name="M:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#INodePacketHandler#PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
25200             <summary>
25201             This method is invoked by the NodePacketRouter when a packet is received and is intended for
25202             this recipient.
25203             </summary>
25204             <param name="node">The node from which the packet was received.</param>
25205             <param name="packet">The packet.</param>
25206         </member>
25207         <member name="M:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#RegisterFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate)">
25208             <summary>
25209             Registers a factory which will be used to create the necessary components of the build
25210             system.
25211             </summary>
25212             <param name="componentType">The type which is created by this factory.</param>
25213             <param name="factory">The factory to be registered.</param>
25214             <remarks>
25215             It is not necessary to register any factories.  If no factory is registered for a specific kind
25216             of object, the system will use the default factory.
25217             </remarks>
25218         </member>
25219         <member name="M:Microsoft.Build.Execution.BuildManager.Microsoft#Build#BackEnd#IBuildComponentHost#GetComponent(Microsoft.Build.BackEnd.BuildComponentType)">
25220             <summary>
25221             Gets an instance of the specified component type from the host.
25222             </summary>
25223             <param name="type">The component type to be retrieved</param>
25224             <returns>The component</returns>
25225         </member>
25226         <member name="M:Microsoft.Build.Execution.BuildManager.ExecuteSubmission(Microsoft.Build.Execution.BuildSubmission,System.Boolean)">
25227             <summary>
25228             This method adds the request in the specified submission to the set of requests being handled by the scheduler.
25229             </summary>
25230         </member>
25231         <member name="M:Microsoft.Build.Execution.BuildManager.LoadSolutionIntoConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration,Microsoft.Build.Framework.BuildEventContext)">
25232             <summary>
25233             Creates the traversal and metaproject instances necessary to represent the solution and populates new configurations with them.
25234             </summary>
25235         </member>
25236         <member name="M:Microsoft.Build.Execution.BuildManager.GetNextBuildId">
25237             <summary>
25238             Gets the next build id.
25239             </summary>
25240         </member>
25241         <member name="M:Microsoft.Build.Execution.BuildManager.CreateConfiguration(Microsoft.Build.Evaluation.Project,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
25242             <summary>
25243             Creates and optionally populates a new configuration.
25244             </summary>
25245         </member>
25246         <member name="M:Microsoft.Build.Execution.BuildManager.ProcessWorkQueue(System.Action)">
25247             <summary>
25248             Processes the next action in the work queue.
25249             </summary>
25250             <param name="action">The action to be processed.</param>
25251         </member>
25252         <member name="M:Microsoft.Build.Execution.BuildManager.ProcessPacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
25253             <summary>
25254             Processes a packet
25255             </summary>
25256         </member>
25257         <member name="M:Microsoft.Build.Execution.BuildManager.HandleExecuteSubmissionException(Microsoft.Build.Execution.BuildSubmission,System.Exception)">
25258             <summary>
25259             Deals with exceptions that may be thrown as a result of ExecuteSubmission.
25260             </summary>
25261         </member>
25262         <member name="M:Microsoft.Build.Execution.BuildManager.IssueRequestToScheduler(Microsoft.Build.Execution.BuildSubmission,System.Boolean,Microsoft.Build.BackEnd.BuildRequestBlocker)">
25263             <summary>
25264             Sends the request to the scheduler with optional legacy threading semantics behavior.
25265             </summary>
25266         </member>
25267         <member name="M:Microsoft.Build.Execution.BuildManager.ShutdownConnectedNodesAsync(System.Boolean)">
25268             <summary>
25269             Asks the nodeManager to tell the currently connected nodes to shut down and sets a flag preventing all non-shutdown-related packets from
25270             being processed.
25271             </summary>
25272         </member>
25273         <member name="M:Microsoft.Build.Execution.BuildManager.GetNextSubmissionId">
25274             <summary>
25275             Retrieves the next build submission id.
25276             </summary>
25277         </member>
25278         <member name="M:Microsoft.Build.Execution.BuildManager.ErrorIfState(Microsoft.Build.Execution.BuildManager.BuildManagerState,System.String)">
25279             <summary>
25280             Errors if the BuildManager is in the specified state.
25281             </summary>
25282         </member>
25283         <member name="M:Microsoft.Build.Execution.BuildManager.RequireState(Microsoft.Build.Execution.BuildManager.BuildManagerState,System.String)">
25284             <summary>
25285             Verifies the BuildManager is in the required state, and throws a <see cref="T:System.InvalidOperationException"/> if it is not.
25286             </summary>
25287         </member>
25288         <member name="M:Microsoft.Build.Execution.BuildManager.VerifyStateInternal(Microsoft.Build.Execution.BuildManager.BuildManagerState)">
25289             <summary>
25290             Verifies the BuildManager is in the required state, and throws a <see cref="T:System.InvalidOperationException"/> if it is not.
25291             </summary>
25292         </member>
25293         <member name="M:Microsoft.Build.Execution.BuildManager.Reset">
25294             <summary>
25295             Method called to reset the state of the system after a build.
25296             </summary>
25297         </member>
25298         <member name="M:Microsoft.Build.Execution.BuildManager.GetNewConfigurationId">
25299             <summary>
25300             Returns a new, valid configuration id.
25301             </summary>
25302         </member>
25303         <member name="M:Microsoft.Build.Execution.BuildManager.ResolveConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration,Microsoft.Build.BackEnd.BuildRequestConfiguration,System.Boolean)">
25304             <summary>
25305             Finds a matching configuration in the cache and returns it, or stores the configuration passed in.
25306             </summary>
25307         </member>
25308         <member name="M:Microsoft.Build.Execution.BuildManager.HandleNewRequest(System.Int32,Microsoft.Build.BackEnd.BuildRequestBlocker)">
25309             <summary>
25310             Handles a new request coming from a node.
25311             </summary>
25312         </member>
25313         <member name="M:Microsoft.Build.Execution.BuildManager.HandleConfigurationRequest(System.Int32,Microsoft.Build.BackEnd.BuildRequestConfiguration)">
25314             <summary>
25315             Handles a configuration request coming from a node.
25316             </summary>
25317         </member>
25318         <member name="M:Microsoft.Build.Execution.BuildManager.HandleResult(System.Int32,Microsoft.Build.Execution.BuildResult)">
25319             <summary>
25320             Handles a build result coming from a node.
25321             </summary>
25322         </member>
25323         <member name="M:Microsoft.Build.Execution.BuildManager.HandleNodeShutdown(System.Int32,Microsoft.Build.BackEnd.NodeShutdown)">
25324             <summary>
25325             Handles the NodeShutdown packet
25326             </summary>
25327         </member>
25328         <member name="M:Microsoft.Build.Execution.BuildManager.CheckForActiveNodesAndCleanUpSubmissions">
25329             <summary>
25330             If there are no more active nodes, cleans up any remaining submissions.
25331             </summary>
25332             <remarks>
25333             Must only be called from within the sync lock.
25334             </remarks>
25335         </member>
25336         <member name="M:Microsoft.Build.Execution.BuildManager.PerformSchedulingActions(System.Collections.Generic.IEnumerable{Microsoft.Build.BackEnd.ScheduleResponse})">
25337             <summary>
25338             Carries out the actions specified by the scheduler.
25339             </summary>
25340         </member>
25341         <member name="M:Microsoft.Build.Execution.BuildManager.ReportResultsToSubmission(Microsoft.Build.Execution.BuildResult)">
25342             <summary>
25343             Completes a submission using the specified overall results.
25344             </summary>
25345         </member>
25346         <member name="M:Microsoft.Build.Execution.BuildManager.CheckSubmissionCompletenessAndRemove(Microsoft.Build.Execution.BuildSubmission)">
25347             <summary>
25348             Determines if the submission is fully completed.
25349             </summary>
25350         </member>
25351         <member name="M:Microsoft.Build.Execution.BuildManager.GetNodeConfiguration">
25352             <summary>
25353             Retrieves the configuration structure for a node.
25354             </summary>
25355         </member>
25356         <member name="M:Microsoft.Build.Execution.BuildManager.OnThreadException(System.Exception)">
25357             <summary>
25358             Handler for thread exceptions (logging thread, communications thread).  This handler will only get called if the exception did not previously
25359             get handled by a node exception handlers (for instance because the build is complete for the node.)  In this case we
25360             get the exception and will put it into the OverallBuildResult so that the host can see what happened.
25361             </summary>
25362         </member>
25363         <member name="M:Microsoft.Build.Execution.BuildManager.OnProjectFinished(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
25364             <summary>
25365             Raised when a project finished logging message has been processed.
25366             </summary>
25367         </member>
25368         <member name="M:Microsoft.Build.Execution.BuildManager.OnProjectStarted(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
25369             <summary>
25370             Raised when a project started logging message is about to be processed.
25371             </summary>
25372         </member>
25373         <member name="M:Microsoft.Build.Execution.BuildManager.CreateLoggingService(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord},System.Collections.Generic.ISet{System.String},System.Collections.Generic.ISet{System.String})">
25374             <summary>
25375             Creates a logging service around the specified set of loggers.
25376             </summary>
25377         </member>
25378         <member name="M:Microsoft.Build.Execution.BuildManager.ExpectPacketType``1(Microsoft.Build.BackEnd.INodePacket,Microsoft.Build.BackEnd.NodePacketType)">
25379             <summary>
25380             Ensures that the packet type matches the expected type
25381             </summary>
25382             <typeparam name="I">The instance-type of packet being expected</typeparam>
25383         </member>
25384         <member name="M:Microsoft.Build.Execution.BuildManager.SetOverallResultIfWarningsAsErrors(Microsoft.Build.Execution.BuildResult)">
25385             <summary>
25386             Sets the overall result of a build only if the user had specified /warnaserror and there were any errors.
25387             This ensures the old behavior stays intact where builds could succeed even if a failure was logged.
25388             </summary>
25389         </member>
25390         <member name="M:Microsoft.Build.Execution.BuildManager.ShutdownLoggingService(Microsoft.Build.BackEnd.Logging.ILoggingService)">
25391             <summary>
25392              Shutdown the logging service
25393             </summary>
25394         </member>
25395         <member name="M:Microsoft.Build.Execution.BuildManager.Dispose(System.Boolean)">
25396             <summary>
25397             Dispose implementation
25398             </summary>
25399         </member>
25400         <member name="T:Microsoft.Build.Execution.BuildManager.NullLogger">
25401             <summary>
25402             The logger registered to the logging service when no other one is.
25403             </summary>
25404         </member>
25405         <member name="P:Microsoft.Build.Execution.BuildManager.NullLogger.Verbosity">
25406             <summary>
25407             The logger verbosity.
25408             </summary>
25409         </member>
25410         <member name="P:Microsoft.Build.Execution.BuildManager.NullLogger.Parameters">
25411             <summary>
25412             The logger parameters.
25413             </summary>
25414         </member>
25415         <member name="M:Microsoft.Build.Execution.BuildManager.NullLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
25416             <summary>
25417             Initialize.
25418             </summary>
25419         </member>
25420         <member name="M:Microsoft.Build.Execution.BuildManager.NullLogger.Shutdown">
25421             <summary>
25422             Shutdown.
25423             </summary>
25424         </member>
25425         <member name="T:Microsoft.Build.Execution.BuildParameters">
25426             <summary>
25427             This class represents all of the settings which must be specified to start a build.
25428             </summary>
25429         </member>
25430         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultThreadStackSize">
25431             <summary>
25432             The default thread stack size for threads owned by MSBuild.
25433             </summary>
25434         </member>
25435         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultEndpointShutdownTimeout">
25436             <summary>
25437             The timeout for endpoints to shut down.
25438             </summary>
25439         </member>
25440         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultEngineShutdownTimeout">
25441             <summary>
25442             The timeout for the engine to shutdown.
25443             </summary>
25444         </member>
25445         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultLoggingThreadShutdownTimeout">
25446             <summary>
25447             The shutdown timeout for the logging thread.
25448             </summary>
25449         </member>
25450         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultRequestBuilderShutdownTimeout">
25451             <summary>
25452             The shutdown timeout for the request builder.
25453             </summary>
25454         </member>
25455         <member name="F:Microsoft.Build.Execution.BuildParameters.DefaultIdleRequestBuilderLimit">
25456             <summary>
25457             The maximum number of idle request builders to retain before we start discarding them.
25458             </summary>
25459         </member>
25460         <member name="F:Microsoft.Build.Execution.BuildParameters.s_startupDirectory">
25461             <summary>
25462             The startup directory.
25463             </summary>
25464         </member>
25465         <member name="F:Microsoft.Build.Execution.BuildParameters.s_warnOnUninitializedProperty">
25466             <summary>
25467             Indicates whether we should warn when a property is uninitialized when it is used.
25468             </summary>
25469         </member>
25470         <member name="F:Microsoft.Build.Execution.BuildParameters.s_dumpOpportunisticInternStats">
25471             <summary>
25472             Indicates if we should dump string interning stats.
25473             </summary>
25474         </member>
25475         <member name="F:Microsoft.Build.Execution.BuildParameters.s_debugExpansion">
25476             <summary>
25477             Indicates if we should debug the expander.
25478             </summary>
25479         </member>
25480         <member name="F:Microsoft.Build.Execution.BuildParameters.s_keepDuplicateOutputs">
25481             <summary>
25482             Indicates if we should keep duplicate target outputs.
25483             </summary>
25484         </member>
25485         <member name="F:Microsoft.Build.Execution.BuildParameters.s_enableBuildPlan">
25486             <summary>
25487             Indicates if we should enable the build plan
25488             </summary>
25489         </member>
25490         <member name="F:Microsoft.Build.Execution.BuildParameters.s_idleRequestBuilderLimit">
25491             <summary>
25492             The maximum number of idle request builders we will retain.
25493             </summary>
25494         </member>
25495         <member name="F:Microsoft.Build.Execution.BuildParameters.s_msbuildExeKnownToExistAt">
25496             <summary>
25497             Location that msbuild.exe was last successfully found at.
25498             </summary>
25499         </member>
25500         <member name="F:Microsoft.Build.Execution.BuildParameters._buildId">
25501             <summary>
25502             The build id
25503             </summary>
25504         </member>
25505         <member name="F:Microsoft.Build.Execution.BuildParameters._buildThreadPriority">
25506             <summary>
25507             The thread priority with which to run the in-proc node.
25508             </summary>
25509         </member>
25510         <member name="F:Microsoft.Build.Execution.BuildParameters._culture">
25511             <summary>
25512             The culture
25513             </summary>
25514         </member>
25515         <member name="F:Microsoft.Build.Execution.BuildParameters._defaultToolsVersion">
25516             <summary>
25517             The default tools version.
25518             </summary>
25519         </member>
25520         <member name="F:Microsoft.Build.Execution.BuildParameters._detailedSummary">
25521             <summary>
25522             When true, causes the build to emit a summary of project build information
25523             </summary>
25524         </member>
25525         <member name="F:Microsoft.Build.Execution.BuildParameters._enableNodeReuse">
25526             <summary>
25527             Flag indicating whether node reuse should be enabled.
25528             By default, it is enabled.
25529             </summary>
25530         </member>
25531         <member name="F:Microsoft.Build.Execution.BuildParameters._buildProcessEnvironment">
25532             <summary>
25533             The original process environment.
25534             </summary>
25535         </member>
25536         <member name="F:Microsoft.Build.Execution.BuildParameters._environmentProperties">
25537             <summary>
25538             The environment properties for the build.
25539             </summary>
25540         </member>
25541         <member name="F:Microsoft.Build.Execution.BuildParameters._forwardingLoggers">
25542             <summary>
25543             The forwarding logger records.
25544             </summary>
25545         </member>
25546         <member name="F:Microsoft.Build.Execution.BuildParameters._globalProperties">
25547             <summary>
25548             The build-global properties.
25549             </summary>
25550         </member>
25551         <member name="F:Microsoft.Build.Execution.BuildParameters._hostServices">
25552             <summary>
25553             The host services object.
25554             </summary>
25555         </member>
25556         <member name="F:Microsoft.Build.Execution.BuildParameters._loggers">
25557             <summary>
25558             The loggers.
25559             </summary>
25560         </member>
25561         <member name="F:Microsoft.Build.Execution.BuildParameters._maxNodeCount">
25562             <summary>
25563             The maximum number of nodes to use.
25564             </summary>
25565         </member>
25566         <member name="F:Microsoft.Build.Execution.BuildParameters._memoryUseLimit">
25567             <summary>
25568             The maximum amount of memory to use.
25569             </summary>
25570         </member>
25571         <member name="F:Microsoft.Build.Execution.BuildParameters._nodeExeLocation">
25572             <summary>
25573             The location of the node exe.  This is the full path including the exe file itself.
25574             </summary>
25575         </member>
25576         <member name="F:Microsoft.Build.Execution.BuildParameters._nodeId">
25577             <summary>
25578             The node id.
25579             </summary>
25580         </member>
25581         <member name="F:Microsoft.Build.Execution.BuildParameters._onlyLogCriticalEvents">
25582             <summary>
25583             Flag indicating if we should only log critical events.
25584             </summary>
25585         </member>
25586         <member name="F:Microsoft.Build.Execution.BuildParameters._warningsAsErrors">
25587             <summary>
25588             A list of warnings to treat as errors.
25589             </summary>
25590         </member>
25591         <member name="F:Microsoft.Build.Execution.BuildParameters._warningsAsMessages">
25592             <summary>
25593             A list of warnings to treat as low importance messages.
25594             </summary>
25595         </member>
25596         <member name="F:Microsoft.Build.Execution.BuildParameters._toolsetDefinitionLocations">
25597             <summary>
25598             The location of the toolset definitions.
25599             </summary>
25600         </member>
25601         <member name="F:Microsoft.Build.Execution.BuildParameters._uiCulture">
25602             <summary>
25603             The UI culture.
25604             </summary>
25605         </member>
25606         <member name="F:Microsoft.Build.Execution.BuildParameters._toolsetProvider">
25607             <summary>
25608             The toolset provider
25609             </summary>
25610         </member>
25611         <member name="F:Microsoft.Build.Execution.BuildParameters._saveOperatingEnvironment">
25612             <summary>
25613             Should the operating environment such as the current directory and environment be saved and restored between project builds and task invocations
25614             This should be defaulted to true as we should normally do this. This should be set to false for GlobalDTAR which could run at the same time in a different build manager.
25615             </summary>
25616         </member>
25617         <member name="F:Microsoft.Build.Execution.BuildParameters._useSynchronousLogging">
25618             <summary>
25619             Should the logging service be done Synchronously when the number of cps's is 1
25620             </summary>
25621         </member>
25622         <member name="F:Microsoft.Build.Execution.BuildParameters._shutdownInProcNodeOnBuildFinish">
25623             <summary>
25624             Should the inprocess node be shutdown when the build finishes. By default this is false
25625             since visual studio needs to keep the inprocess node around after the build has finished.
25626             </summary>
25627         </member>
25628         <member name="F:Microsoft.Build.Execution.BuildParameters._disableInProcNode">
25629             <summary>
25630             When true, the in-proc node will not be available.
25631             </summary>
25632         </member>
25633         <member name="F:Microsoft.Build.Execution.BuildParameters._logTaskInputs">
25634             <summary>
25635             When true, the build should log task inputs to the loggers.
25636             </summary>
25637         </member>
25638         <member name="F:Microsoft.Build.Execution.BuildParameters._logInitialPropertiesAndItems">
25639             <summary>
25640             When true, the build should log the input parameters.  Note - logging these is very expensive!
25641             </summary>
25642         </member>
25643         <member name="M:Microsoft.Build.Execution.BuildParameters.#ctor">
25644             <summary>
25645             Constructor for those who intend to set all properties themselves.
25646             </summary>
25647         </member>
25648         <member name="M:Microsoft.Build.Execution.BuildParameters.#ctor(Microsoft.Build.Evaluation.ProjectCollection)">
25649             <summary>
25650             Creates BuildParameters from a ProjectCollection.
25651             </summary>
25652             <param name="projectCollection">The ProjectCollection from which the BuildParameters should populate itself.</param>
25653         </member>
25654         <member name="M:Microsoft.Build.Execution.BuildParameters.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
25655             <summary>
25656             Private constructor for translation
25657             </summary>
25658         </member>
25659         <member name="M:Microsoft.Build.Execution.BuildParameters.#ctor(Microsoft.Build.Execution.BuildParameters)">
25660             <summary>
25661             Copy constructor
25662             </summary>
25663         </member>
25664         <member name="P:Microsoft.Build.Execution.BuildParameters.BuildThreadPriority">
25665             <summary>
25666             Sets the desired thread priority for building.
25667             </summary>
25668         </member>
25669         <member name="P:Microsoft.Build.Execution.BuildParameters.UseSynchronousLogging">
25670             <summary>
25671             By default if the number of processes is set to 1 we will use Asynchronous logging. However if we want to use synchronous logging when the number of cpu's is set to 1
25672             this property needs to be set to true.
25673             </summary>
25674         </member>
25675         <member name="P:Microsoft.Build.Execution.BuildParameters.BuildProcessEnvironment">
25676             <summary>
25677             Gets the environment variables which were set when this build was created.
25678             </summary>
25679         </member>
25680         <member name="P:Microsoft.Build.Execution.BuildParameters.Culture">
25681             <summary>
25682             The name of the culture to use during the build.
25683             </summary>
25684         </member>
25685         <member name="P:Microsoft.Build.Execution.BuildParameters.DefaultToolsVersion">
25686             <summary>
25687             The default tools version for the build.
25688             </summary>
25689         </member>
25690         <member name="P:Microsoft.Build.Execution.BuildParameters.DetailedSummary">
25691             <summary>
25692             When true, indicates that the build should emit a detailed summary at the end of the log.
25693             </summary>
25694         </member>
25695         <member name="P:Microsoft.Build.Execution.BuildParameters.DisableInProcNode">
25696             <summary>
25697             When true, indicates the in-proc node should not be used.
25698             </summary>
25699         </member>
25700         <member name="P:Microsoft.Build.Execution.BuildParameters.LogTaskInputs">
25701             <summary>
25702             When true, indicates that the task parameters should be logged.
25703             </summary>
25704         </member>
25705         <member name="P:Microsoft.Build.Execution.BuildParameters.LogInitialPropertiesAndItems">
25706             <summary>
25707             When true, indicates that the initial properties and items should be logged.
25708             </summary>
25709         </member>
25710         <member name="P:Microsoft.Build.Execution.BuildParameters.ResetCaches">
25711             <summary>
25712             Indicates that the build should reset the configuration and results caches.
25713             </summary>
25714         </member>
25715         <member name="P:Microsoft.Build.Execution.BuildParameters.EnableNodeReuse">
25716             <summary>
25717             Flag indicating whether out-of-proc nodes should remain after the build and wait for further builds.
25718             </summary>
25719         </member>
25720         <member name="P:Microsoft.Build.Execution.BuildParameters.EnvironmentProperties">
25721             <summary>
25722             Gets an immutable collection of environment properties.
25723             </summary>
25724             <remarks>
25725             This differs from the BuildProcessEnvironment in that there are certain MSBuild-specific properties which are added, and those environment variables which
25726             would not be valid as MSBuild properties are removed.
25727             </remarks>
25728         </member>
25729         <member name="P:Microsoft.Build.Execution.BuildParameters.ForwardingLoggers">
25730             <summary>
25731             The collection of forwarding logger descriptions.
25732             </summary>
25733         </member>
25734         <member name="P:Microsoft.Build.Execution.BuildParameters.GlobalProperties">
25735             <summary>
25736             Sets or retrieves an immutable collection of global properties.
25737             </summary>
25738         </member>
25739         <member name="P:Microsoft.Build.Execution.BuildParameters.HostServices">
25740             <summary>
25741             Interface allowing the host to provide additional control over the build process.
25742             </summary>
25743         </member>
25744         <member name="P:Microsoft.Build.Execution.BuildParameters.LegacyThreadingSemantics">
25745             <summary>
25746             Enables or disables legacy threading semantics
25747             </summary>
25748             <remarks>
25749             Legacy threading semantics indicate that if a submission is to be built  
25750             only on the in-proc node and the submission is executed synchronously, then all of its
25751             requests will be built on the thread which invoked the build rather than a 
25752             thread owned by the BuildManager.
25753             </remarks>
25754         </member>
25755         <member name="P:Microsoft.Build.Execution.BuildParameters.Loggers">
25756             <summary>
25757             The collection of loggers to use during the build.
25758             </summary>
25759         </member>
25760         <member name="P:Microsoft.Build.Execution.BuildParameters.MaxNodeCount">
25761             <summary>
25762             The maximum number of nodes this build may use.
25763             </summary>
25764         </member>
25765         <member name="P:Microsoft.Build.Execution.BuildParameters.MemoryUseLimit">
25766             <summary>
25767             The amount of memory the build should limit itself to using, in megabytes.
25768             </summary>
25769         </member>
25770         <member name="P:Microsoft.Build.Execution.BuildParameters.NodeExeLocation">
25771             <summary>
25772             The location of the build node executable.
25773             </summary>
25774         </member>
25775         <member name="P:Microsoft.Build.Execution.BuildParameters.OnlyLogCriticalEvents">
25776             <summary>
25777             Flag indicating if non-critical logging events should be discarded.
25778             </summary>
25779         </member>
25780         <member name="P:Microsoft.Build.Execution.BuildParameters.WarningsAsErrors">
25781             <summary>
25782             A list of warnings to treat as errors.  To treat all warnings as errors, set this to an empty <see cref="T:System.Collections.Generic.HashSet`1"/>.  
25783             </summary>
25784         </member>
25785         <member name="P:Microsoft.Build.Execution.BuildParameters.WarningsAsMessages">
25786             <summary>
25787             A list of warnings to treat as low importance messages.
25788             </summary>
25789         </member>
25790         <member name="P:Microsoft.Build.Execution.BuildParameters.ToolsetDefinitionLocations">
25791             <summary>
25792             Locations to search for toolsets.
25793             </summary>
25794         </member>
25795         <member name="P:Microsoft.Build.Execution.BuildParameters.Toolsets">
25796             <summary>
25797             Returns all of the toolsets.
25798             </summary>
25799             <comments>
25800             toolsetProvider.Toolsets is already a readonly collection. 
25801             </comments>
25802         </member>
25803         <member name="P:Microsoft.Build.Execution.BuildParameters.UICulture">
25804             <summary>
25805             The name of the UI culture to use during the build.
25806             </summary>
25807         </member>
25808         <member name="P:Microsoft.Build.Execution.BuildParameters.SaveOperatingEnvironment">
25809             <summary>
25810             Flag indicating if the operating environment such as the current directory and environment be saved and restored between project builds and task invocations.
25811             This should be set to false for any other build managers running in the system so that we do not have two build managers trampling on each others environment.
25812             </summary>
25813         </member>
25814         <member name="P:Microsoft.Build.Execution.BuildParameters.ShutdownInProcNodeOnBuildFinish">
25815             <summary>
25816             Shutdown the inprocess node when the build finishes. By default this is false 
25817             since visual studio needs to keep the inprocess node around after the build finishes.
25818             </summary>
25819         </member>
25820         <member name="P:Microsoft.Build.Execution.BuildParameters.ThreadStackSize">
25821             <summary>
25822             Gets the internal msbuild thread stack size.
25823             </summary>
25824         </member>
25825         <member name="P:Microsoft.Build.Execution.BuildParameters.EndpointShutdownTimeout">
25826             <summary>
25827             Gets or sets the endpoint shutdown timeout.
25828             </summary>
25829         </member>
25830         <member name="P:Microsoft.Build.Execution.BuildParameters.EngineShutdownTimeout">
25831             <summary>
25832             Gets or sets the engine shutdown timeout.
25833             </summary>
25834         </member>
25835         <member name="P:Microsoft.Build.Execution.BuildParameters.IdleRequestBuilderLimit">
25836             <summary>
25837             Gets the maximum number of idle request builders to retain.
25838             </summary>
25839         </member>
25840         <member name="P:Microsoft.Build.Execution.BuildParameters.LoggingThreadShutdownTimeout">
25841             <summary>
25842             Gets the logging thread shutdown timeout.
25843             </summary>
25844         </member>
25845         <member name="P:Microsoft.Build.Execution.BuildParameters.RequestBuilderShutdownTimeout">
25846             <summary>
25847             Gets or sets the request builder shutdown timeout.
25848             </summary>
25849         </member>
25850         <member name="P:Microsoft.Build.Execution.BuildParameters.StartupDirectory">
25851             <summary>
25852             Gets or sets the startup directory.
25853             </summary>
25854         </member>
25855         <member name="P:Microsoft.Build.Execution.BuildParameters.EnableBuildPlan">
25856             <summary>
25857             Indicates whether the build plan is enabled or not.
25858             </summary>
25859         </member>
25860         <member name="P:Microsoft.Build.Execution.BuildParameters.WarnOnUninitializedProperty">
25861             <summary>
25862             Indicates whether we should warn when a property is uninitialized when it is used.
25863             </summary>
25864         </member>
25865         <member name="P:Microsoft.Build.Execution.BuildParameters.DumpOpportunisticInternStats">
25866             <summary>
25867             Indicates whether we should dump string interning stats
25868             </summary>
25869         </member>
25870         <member name="P:Microsoft.Build.Execution.BuildParameters.DebugExpansion">
25871             <summary>
25872             Indicates whether we should dump debugging information about the expander
25873             </summary>
25874         </member>
25875         <member name="P:Microsoft.Build.Execution.BuildParameters.KeepDuplicateOutputs">
25876             <summary>
25877             Indicates whether we should keep duplicate target outputs
25878             </summary>
25879         </member>
25880         <member name="P:Microsoft.Build.Execution.BuildParameters.BuildId">
25881             <summary>
25882             Gets or sets the build id.
25883             </summary>
25884         </member>
25885         <member name="P:Microsoft.Build.Execution.BuildParameters.EnvironmentPropertiesInternal">
25886             <summary>
25887             Gets or sets the environment properties.
25888             </summary>
25889             <remarks>
25890             This is not the same as BuildProcessEnvironment.  See EnvironmentProperties.  These properties are those which
25891             are used during evaluation of a project, and exclude those properties which would not be valid MSBuild properties
25892             because they contain invalid characters (such as 'Program Files (x86)').
25893             </remarks>
25894         </member>
25895         <member name="P:Microsoft.Build.Execution.BuildParameters.GlobalPropertiesInternal">
25896             <summary>
25897             Gets the global properties.
25898             </summary>
25899         </member>
25900         <member name="P:Microsoft.Build.Execution.BuildParameters.NodeId">
25901             <summary>
25902             Gets or sets the node id.
25903             </summary>
25904         </member>
25905         <member name="P:Microsoft.Build.Execution.BuildParameters.ToolsetProvider">
25906             <summary>
25907             Gets the toolset provider.
25908             </summary>
25909         </member>
25910         <member name="P:Microsoft.Build.Execution.BuildParameters.ProjectRootElementCache">
25911             <summary>
25912             The one and only project root element cache to be used for the build.
25913             </summary>
25914         </member>
25915         <member name="P:Microsoft.Build.Execution.BuildParameters.AppDomainSetup">
25916             <summary>
25917             Information for configuring child AppDomains.
25918             </summary>
25919         </member>
25920         <member name="P:Microsoft.Build.Execution.BuildParameters.IsOutOfProc">
25921             <summary>
25922              (for diagnostic use) Whether or not this is out of proc
25923             </summary>
25924         </member>
25925         <member name="M:Microsoft.Build.Execution.BuildParameters.GetToolset(System.String)">
25926             <summary>
25927             Retrieves a toolset.
25928             </summary>
25929         </member>
25930         <member name="M:Microsoft.Build.Execution.BuildParameters.Clone">
25931             <summary>
25932             Creates a clone of this BuildParameters object.  This creates a clone of the logger collections, but does not deep clone
25933             the loggers within.
25934             </summary>
25935         </member>
25936         <member name="M:Microsoft.Build.Execution.BuildParameters.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
25937             <summary>
25938             Implementation of the serialization mechanism.
25939             </summary>
25940         </member>
25941         <member name="M:Microsoft.Build.Execution.BuildParameters.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
25942             <summary>
25943             The class factory for deserialization.
25944             </summary>
25945         </member>
25946         <member name="M:Microsoft.Build.Execution.BuildParameters.GetStaticBoolVariableOrDefault(System.String,System.Nullable{System.Boolean}@,System.Boolean)">
25947             <summary>
25948             Gets the value of a boolean environment setting which is not expected to change.
25949             </summary>
25950         </member>
25951         <member name="M:Microsoft.Build.Execution.BuildParameters.GetStaticIntVariableOrDefault(System.String,System.Nullable{System.Int32}@,System.Int32)">
25952             <summary>
25953             Gets the value of an integer environment variable, or returns the default if none is set or it cannot be converted.
25954             </summary>
25955         </member>
25956         <member name="M:Microsoft.Build.Execution.BuildParameters.Initialize(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Evaluation.ToolsetProvider)">
25957             <summary>
25958             Centralization of the common parts of construction.
25959             </summary>
25960         </member>
25961         <member name="M:Microsoft.Build.Execution.BuildParameters.EnsureToolsets">
25962             <summary>
25963             Loads the toolsets if we don't have them already.
25964             </summary>
25965         </member>
25966         <member name="M:Microsoft.Build.Execution.BuildParameters.FindMSBuildExe">
25967             <summary>
25968             This method determines where MSBuild.Exe is and sets the NodeExePath to that by default.
25969             </summary>
25970         </member>
25971         <member name="M:Microsoft.Build.Execution.BuildParameters.CheckMSBuildExeExistsAt(System.String)">
25972             <summary>
25973             Helper to avoid doing an expensive disk check for MSBuild.exe when
25974             we already checked in a previous build.
25975             This File.Exists otherwise can show up in profiles when there's a lot of 
25976             design time builds going on.
25977             </summary>
25978         </member>
25979         <member name="T:Microsoft.Build.Execution.BuildSubmissionCompleteCallback">
25980             <summary>
25981             A callback used to receive notification that a build has completed.
25982             </summary>
25983             <remarks>
25984             When this delegate is invoked, the WaitHandle on the BuildSubmission will have been be signalled and the OverallBuildResult will be valid.
25985             </remarks>
25986         </member>
25987         <member name="T:Microsoft.Build.Execution.BuildSubmission">
25988             <summary>
25989             A BuildSubmission represents an build request which has been submitted to the BuildManager for processing.  It may be used to
25990             execute synchronous or asynchronous build requests and provides access to the results upon completion.
25991             </summary>
25992             <remarks>
25993             This class is thread-safe.
25994             </remarks>
25995         </member>
25996         <member name="F:Microsoft.Build.Execution.BuildSubmission._completionCallback">
25997             <summary>
25998             The callback to invoke when the submission is complete.
25999             </summary>
26000         </member>
26001         <member name="F:Microsoft.Build.Execution.BuildSubmission._completionEvent">
26002             <summary>
26003             The completion event.
26004             </summary>
26005         </member>
26006         <member name="F:Microsoft.Build.Execution.BuildSubmission._loggingCompleted">
26007             <summary>
26008             Flag indicating if logging is done.
26009             </summary>
26010         </member>
26011         <member name="F:Microsoft.Build.Execution.BuildSubmission._completionInvoked">
26012             <summary>
26013             True if it has been invoked
26014             </summary>
26015         </member>
26016         <member name="F:Microsoft.Build.Execution.BuildSubmission._buildResult">
26017             <summary>
26018             The results of the build.
26019             </summary>
26020         </member>
26021         <member name="F:Microsoft.Build.Execution.BuildSubmission._legacyThreadingSemantics">
26022             <summary>
26023             Flag indicating whether synchronous wait should support legacy threading semantics.
26024             </summary>
26025         </member>
26026         <member name="M:Microsoft.Build.Execution.BuildSubmission.#ctor(Microsoft.Build.Execution.BuildManager,System.Int32,Microsoft.Build.Execution.BuildRequestData,System.Boolean)">
26027             <summary>
26028             Constructor
26029             </summary>
26030         </member>
26031         <member name="P:Microsoft.Build.Execution.BuildSubmission.BuildManager">
26032             <summary>
26033             The BuildManager with which this submission is associated.
26034             </summary>
26035         </member>
26036         <member name="P:Microsoft.Build.Execution.BuildSubmission.SubmissionId">
26037             <summary>
26038             An ID uniquely identifying this request from among other submissions within the same build.
26039             </summary>
26040         </member>
26041         <member name="P:Microsoft.Build.Execution.BuildSubmission.AsyncContext">
26042             <summary>
26043             The asynchronous context provided to <see cref="M:Microsoft.Build.Execution.BuildSubmission.ExecuteAsync(Microsoft.Build.Execution.BuildSubmissionCompleteCallback,System.Object)"/>, if any.
26044             </summary>
26045         </member>
26046         <member name="P:Microsoft.Build.Execution.BuildSubmission.WaitHandle">
26047             <summary>
26048             A <see cref="T:System.Threading.WaitHandle"/> which will be signalled when the build is complete.  Valid after <see cref="M:Microsoft.Build.Execution.BuildSubmission.Execute"/> or <see cref="M:Microsoft.Build.Execution.BuildSubmission.ExecuteAsync(Microsoft.Build.Execution.BuildSubmissionCompleteCallback,System.Object)"/> returns, otherwise null.
26049             </summary>
26050         </member>
26051         <member name="P:Microsoft.Build.Execution.BuildSubmission.IsCompleted">
26052             <summary>
26053             Returns true if this submission is complete.
26054             </summary>
26055         </member>
26056         <member name="P:Microsoft.Build.Execution.BuildSubmission.BuildResult">
26057             <summary>
26058             The result of the build.  Valid only after WaitHandle has become signalled.
26059             </summary>
26060         </member>
26061         <member name="P:Microsoft.Build.Execution.BuildSubmission.BuildRequestData">
26062             <summary>
26063             The BuildRequestData being used for this submission.
26064             </summary>
26065         </member>
26066         <member name="P:Microsoft.Build.Execution.BuildSubmission.BuildRequest">
26067             <summary>
26068             The build request for execution.
26069             </summary>
26070         </member>
26071         <member name="M:Microsoft.Build.Execution.BuildSubmission.Execute">
26072             <summary>
26073             Starts the request and blocks until results are available.
26074             </summary>
26075             <exception cref="T:System.InvalidOperationException">The request has already been started or is already complete.</exception>
26076         </member>
26077         <member name="M:Microsoft.Build.Execution.BuildSubmission.ExecuteAsync(Microsoft.Build.Execution.BuildSubmissionCompleteCallback,System.Object)">
26078             <summary>
26079             Starts the request asynchronously and immediately returns control to the caller.
26080             </summary>
26081             <exception cref="T:System.InvalidOperationException">The request has already been started or is already complete.</exception>
26082         </member>
26083         <member name="M:Microsoft.Build.Execution.BuildSubmission.CompleteResults(Microsoft.Build.Execution.BuildResult)">
26084             <summary>
26085             Sets the event signaling that the build is complete.
26086             </summary>
26087         </member>
26088         <member name="M:Microsoft.Build.Execution.BuildSubmission.CompleteLogging(System.Boolean)">
26089             <summary>
26090             Indicates that all logging events for this submission are complete.
26091             </summary>
26092         </member>
26093         <member name="M:Microsoft.Build.Execution.BuildSubmission.ExecuteAsync(Microsoft.Build.Execution.BuildSubmissionCompleteCallback,System.Object,System.Boolean)">
26094             <summary>
26095             Starts the request asynchronously and immediately returns control to the caller.
26096             </summary>
26097             <exception cref="T:System.InvalidOperationException">The request has already been started or is already complete.</exception>
26098         </member>
26099         <member name="M:Microsoft.Build.Execution.BuildSubmission.CheckForCompletion">
26100             <summary>
26101             Determines if we are completely done with this submission and can complete it so the user may access results.
26102             </summary>
26103         </member>
26104         <member name="T:Microsoft.Build.Execution.LegacyThreadingData">
26105             <summary>
26106             This class represents the data which is used for legacy threading semantics for the build
26107             </summary>
26108         </member>
26109         <member name="F:Microsoft.Build.Execution.LegacyThreadingData._legacyThreadingEventsById">
26110             <summary>
26111             Store the pair of start/end events used by a particular submission to track their ownership 
26112             of the legacy thread. 
26113             Item1: Start event, tracks when the submission has permission to start building. 
26114             Item2: End event, signalled when that submission is no longer using the legacy thread. 
26115             </summary>
26116         </member>
26117         <member name="F:Microsoft.Build.Execution.LegacyThreadingData._mainThreadSubmissionId">
26118             <summary>
26119             The current submission id building on the main thread, if any.
26120             </summary>
26121         </member>
26122         <member name="F:Microsoft.Build.Execution.LegacyThreadingData._instanceForMainThread">
26123             <summary>
26124             The instance to be used when the new request builder is started on the main thread.
26125             </summary>
26126         </member>
26127         <member name="F:Microsoft.Build.Execution.LegacyThreadingData._legacyThreadingEventsLock">
26128             <summary>
26129             Lock object for startNewRequestBuilderMainThreadEventsById, since it's possible for multiple submissions to be 
26130             submitted at the same time. 
26131             </summary>
26132         </member>
26133         <member name="P:Microsoft.Build.Execution.LegacyThreadingData.InstanceForMainThread">
26134             <summary>
26135             The instance to be used when the new request builder is started on the main thread.
26136             </summary>
26137         </member>
26138         <member name="P:Microsoft.Build.Execution.LegacyThreadingData.MainThreadSubmissionId">
26139             <summary>
26140             The current submission id building on the main thread, if any.
26141             </summary>
26142         </member>
26143         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.RegisterSubmissionForLegacyThread(System.Int32)">
26144             <summary>
26145             Given a submission ID, assign it "start" and "finish" events to track its use of 
26146             the legacy thread.
26147             </summary>
26148         </member>
26149         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.UnregisterSubmissionForLegacyThread(System.Int32)">
26150             <summary>
26151             This submission is completely done with the legacy thread, so unregister it 
26152             from the dictionary so that we don't leave random events lying around. 
26153             </summary>
26154         </member>
26155         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.GetStartRequestBuilderMainThreadEventForSubmission(System.Int32)">
26156             <summary>
26157             Given a submission ID, return the event being used to track when that submission is ready 
26158             to be executed on the legacy thread. 
26159             </summary>
26160         </member>
26161         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.GetLegacyThreadInactiveTask(System.Int32)">
26162             <summary>
26163             Given a submission ID, return the event being used to track when that submission is ready 
26164             to be executed on the legacy thread. 
26165             </summary>
26166         </member>
26167         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.SignalLegacyThreadStart(Microsoft.Build.BackEnd.RequestBuilder)">
26168             <summary>
26169             Signal that the legacy thread is starting work.
26170             </summary>
26171         </member>
26172         <member name="M:Microsoft.Build.Execution.LegacyThreadingData.SignalLegacyThreadEnd(System.Int32)">
26173             <summary>
26174             Signal that the legacy thread has finished its work.
26175             </summary>
26176         </member>
26177         <member name="T:Microsoft.Build.Execution.BuildRequestDataFlags">
26178             <summary>
26179             Flags providing additional control over the build request
26180             </summary>
26181         </member>
26182         <member name="F:Microsoft.Build.Execution.BuildRequestDataFlags.None">
26183             <summary>
26184             No flags.
26185             </summary>
26186         </member>
26187         <member name="F:Microsoft.Build.Execution.BuildRequestDataFlags.ReplaceExistingProjectInstance">
26188             <summary>
26189             When this flag is present, the existing ProjectInstance in the build will be replaced by this one.
26190             </summary>
26191         </member>
26192         <member name="F:Microsoft.Build.Execution.BuildRequestDataFlags.ProvideProjectStateAfterBuild">
26193             <summary>
26194             When this flag is present, <see cref="T:Microsoft.Build.Execution.BuildResult"/> issued in response to this request will
26195             include <see cref="P:Microsoft.Build.Execution.BuildResult.ProjectStateAfterBuild"/>.
26196             </summary>
26197         </member>
26198         <member name="F:Microsoft.Build.Execution.BuildRequestDataFlags.IgnoreExistingProjectState">
26199             <summary>
26200             When this flag is present and the project has previously been built on a node whose affinity is
26201             incompatible with the affinity this request requires, we will ignore the project state (but not
26202             target results) that were previously generated.
26203             </summary>
26204             <remarks>
26205             This usually is not desired behavior.  It is only provided for those cases where the client
26206             knows that the new build request does not depend on project state generated by a previous request.  Setting
26207             this flag can provide a performance boost in the case of incompatible node affinities, as MSBuild would
26208             otherwise have to serialize the project state from one node to another, which may be 
26209             expensive depending on how much data the project previously generated.
26210             
26211             This flag has no effect on target results, so if a previous request already built a target, the new 
26212             request will not re-build that target (nor will any of the project state mutations which previously
26213             occurred as a consequence of building that target be re-applied.)
26214             </remarks>
26215         </member>
26216         <member name="T:Microsoft.Build.Execution.BuildRequestData">
26217             <summary>
26218             BuildRequestData encapsulates all of the data needed to submit a build request.
26219             </summary>
26220         </member>
26221         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String[])">
26222             <summary>
26223             Constructs a BuildRequestData for build requests based on project instances.
26224             </summary>
26225             <param name="projectInstance">The instance to build.</param>
26226             <param name="targetsToBuild">The targets to build.</param>
26227         </member>
26228         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String[],Microsoft.Build.Execution.HostServices)">
26229             <summary>
26230             Constructs a BuildRequestData for build requests based on project instances.
26231             </summary>
26232             <param name="projectInstance">The instance to build.</param>
26233             <param name="targetsToBuild">The targets to build.</param>
26234             <param name="hostServices">The host services to use, if any.  May be null.</param>
26235         </member>
26236         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String[],Microsoft.Build.Execution.HostServices,Microsoft.Build.Execution.BuildRequestDataFlags)">
26237             <summary>
26238             Constructs a BuildRequestData for build requests based on project instances.
26239             </summary>
26240             <param name="projectInstance">The instance to build.</param>
26241             <param name="targetsToBuild">The targets to build.</param>
26242             <param name="hostServices">The host services to use, if any.  May be null.</param>
26243             <param name="flags">Flags controlling this build request.</param>
26244         </member>
26245         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String[],Microsoft.Build.Execution.HostServices,Microsoft.Build.Execution.BuildRequestDataFlags,System.Collections.Generic.IEnumerable{System.String})">
26246             <summary>
26247             Constructs a BuildRequestData for build requests based on project instances.
26248             </summary>
26249             <param name="projectInstance">The instance to build.</param>
26250             <param name="targetsToBuild">The targets to build.</param>
26251             <param name="hostServices">The host services to use, if any.  May be null.</param>
26252             <param name="flags">Flags controlling this build request.</param>
26253             <param name="propertiesToTransfer">The list of properties whose values should be transferred from the project to any out-of-proc node.</param>
26254         </member>
26255         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String[],Microsoft.Build.Execution.HostServices)">
26256             <summary>
26257             Constructs a BuildRequestData for build requests based on project files.
26258             </summary>
26259             <param name="projectFullPath">The full path to the project file.</param>
26260             <param name="globalProperties">The global properties which should be used during evaluation of the project.  Cannot be null.</param>
26261             <param name="toolsVersion">The tools version to use for the build.  May be null.</param>
26262             <param name="targetsToBuild">The targets to build.</param>
26263             <param name="hostServices">The host services to use.  May be null.</param>
26264         </member>
26265         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String[],Microsoft.Build.Execution.HostServices,Microsoft.Build.Execution.BuildRequestDataFlags)">
26266             <summary>
26267             Constructs a BuildRequestData for build requests based on project files.
26268             </summary>
26269             <param name="projectFullPath">The full path to the project file.</param>
26270             <param name="globalProperties">The global properties which should be used during evaluation of the project.  Cannot be null.</param>
26271             <param name="toolsVersion">The tools version to use for the build.  May be null.</param>
26272             <param name="targetsToBuild">The targets to build.</param>
26273             <param name="hostServices">The host services to use.  May be null.</param>
26274             <param name="flags">The <see cref="T:Microsoft.Build.Execution.BuildRequestDataFlags"/> to use.</param>
26275         </member>
26276         <member name="M:Microsoft.Build.Execution.BuildRequestData.#ctor(System.String[],Microsoft.Build.Execution.HostServices,Microsoft.Build.Execution.BuildRequestDataFlags)">
26277             <summary>
26278             Common constructor.
26279             </summary>
26280         </member>
26281         <member name="P:Microsoft.Build.Execution.BuildRequestData.ProjectInstance">
26282             <summary>
26283             The actual project, in the case where the project doesn't come from disk.
26284             May be null.
26285             </summary>
26286             <value>The project instance.</value>
26287         </member>
26288         <member name="P:Microsoft.Build.Execution.BuildRequestData.ProjectFullPath">
26289             <summary>The project file.</summary>
26290             <value>The project file to be built.</value>
26291         </member>
26292         <member name="P:Microsoft.Build.Execution.BuildRequestData.TargetNames">
26293             <summary>
26294             The name of the targets to build.
26295             </summary>
26296             <value>An array of targets in the project to be built.</value>
26297         </member>
26298         <member name="P:Microsoft.Build.Execution.BuildRequestData.Flags">
26299             <summary>
26300             Extra flags for this BuildRequest.
26301             </summary>
26302         </member>
26303         <member name="P:Microsoft.Build.Execution.BuildRequestData.GlobalProperties">
26304             <summary>
26305             The global properties to use.
26306             </summary>
26307             <value>The set of global properties to be used to build this request.</value>
26308         </member>
26309         <member name="P:Microsoft.Build.Execution.BuildRequestData.ExplicitlySpecifiedToolsVersion">
26310             <summary>
26311             The explicitly requested tools version to use.
26312             </summary>
26313         </member>
26314         <member name="P:Microsoft.Build.Execution.BuildRequestData.HostServices">
26315             <summary>
26316             Gets the HostServices object for this request.
26317             </summary>
26318         </member>
26319         <member name="P:Microsoft.Build.Execution.BuildRequestData.PropertiesToTransfer">
26320             <summary>
26321             Returns a list of properties to transfer out of proc for the build.
26322             </summary>
26323         </member>
26324         <member name="P:Microsoft.Build.Execution.BuildRequestData.ExplicitToolsVersionSpecified">
26325             <summary>
26326             Whether the tools version used originated from an explicit specification,
26327             for example from an MSBuild task or /tv switch.
26328             </summary>
26329         </member>
26330         <member name="P:Microsoft.Build.Execution.BuildRequestData.GlobalPropertiesDictionary">
26331             <summary>
26332             Returns the global properties as a dictionary.
26333             </summary>
26334         </member>
26335         <member name="T:Microsoft.Build.Execution.OutOfProcNode">
26336             <summary>
26337             This class represents an implementation of INode for out-of-proc nodes.
26338             </summary>
26339         </member>
26340         <member name="F:Microsoft.Build.Execution.OutOfProcNode.s_isOutOfProcNode">
26341             <summary>
26342             Whether the current appdomain has an out of proc node.
26343             For diagnostics.
26344             </summary>
26345         </member>
26346         <member name="F:Microsoft.Build.Execution.OutOfProcNode.s_projectRootElementCache">
26347             <summary>
26348             The one and only project root element cache to be used for the build
26349             on this out of proc node.
26350             </summary>
26351         </member>
26352         <member name="F:Microsoft.Build.Execution.OutOfProcNode._nodeEndpoint">
26353             <summary>
26354             The endpoint used to talk to the host.
26355             </summary>
26356         </member>
26357         <member name="F:Microsoft.Build.Execution.OutOfProcNode._savedEnvironment">
26358             <summary>
26359             The saved environment for the process.
26360             </summary>
26361         </member>
26362         <member name="F:Microsoft.Build.Execution.OutOfProcNode._componentFactories">
26363             <summary>
26364             The component factories.
26365             </summary>
26366         </member>
26367         <member name="F:Microsoft.Build.Execution.OutOfProcNode._buildParameters">
26368             <summary>
26369             The build system parameters.
26370             </summary>
26371         </member>
26372         <member name="F:Microsoft.Build.Execution.OutOfProcNode._loggingService">
26373             <summary>
26374             The logging service.
26375             </summary>
26376         </member>
26377         <member name="F:Microsoft.Build.Execution.OutOfProcNode._loggingContext">
26378             <summary>
26379             The node logging context.
26380             </summary>
26381         </member>
26382         <member name="F:Microsoft.Build.Execution.OutOfProcNode._globalConfigCache">
26383             <summary>
26384             The global config cache.
26385             </summary>
26386         </member>
26387         <member name="F:Microsoft.Build.Execution.OutOfProcNode._taskHostNodeManager">
26388             <summary>
26389             The global node manager
26390             </summary>
26391         </member>
26392         <member name="F:Microsoft.Build.Execution.OutOfProcNode._buildRequestEngine">
26393             <summary>
26394             The build request engine.
26395             </summary>
26396         </member>
26397         <member name="F:Microsoft.Build.Execution.OutOfProcNode._packetFactory">
26398             <summary>
26399             The packet factory.
26400             </summary>
26401         </member>
26402         <member name="F:Microsoft.Build.Execution.OutOfProcNode._currentConfiguration">
26403             <summary>
26404             The current node configuration
26405             </summary>
26406         </member>
26407         <member name="F:Microsoft.Build.Execution.OutOfProcNode._receivedPackets">
26408             <summary>
26409             The queue of packets we have received but which have not yet been processed.
26410             </summary>
26411         </member>
26412         <member name="F:Microsoft.Build.Execution.OutOfProcNode._packetReceivedEvent">
26413             <summary>
26414             The event which is set when we receive packets.
26415             </summary>
26416         </member>
26417         <member name="F:Microsoft.Build.Execution.OutOfProcNode._shutdownEvent">
26418             <summary>
26419             The event which is set when we should shut down.
26420             </summary>
26421         </member>
26422         <member name="F:Microsoft.Build.Execution.OutOfProcNode._shutdownReason">
26423             <summary>
26424             The reason we are shutting down.
26425             </summary>
26426         </member>
26427         <member name="F:Microsoft.Build.Execution.OutOfProcNode._shutdownException">
26428             <summary>
26429             The exception, if any, which caused shutdown.
26430             </summary>
26431         </member>
26432         <member name="F:Microsoft.Build.Execution.OutOfProcNode._debugCommunications">
26433             <summary>
26434             Flag indicating if we should debug communications or not.
26435             </summary>
26436         </member>
26437         <member name="F:Microsoft.Build.Execution.OutOfProcNode._legacyThreadingData">
26438             <summary>
26439             Data for the use of LegacyThreading semantics.
26440             </summary>
26441         </member>
26442         <member name="M:Microsoft.Build.Execution.OutOfProcNode.#ctor">
26443             <summary>
26444             Constructor.
26445             </summary>
26446         </member>
26447         <member name="P:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#LoggingService">
26448             <summary>
26449             Get the logging service for a build.
26450             </summary>
26451             <returns>The logging service.</returns>
26452         </member>
26453         <member name="P:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#LegacyThreadingData">
26454             <summary>
26455             Retrieves the LegacyThreadingData associated with a particular build manager
26456             </summary>
26457         </member>
26458         <member name="P:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#Name">
26459             <summary>
26460             Retrieves the name of this component host.
26461             </summary>
26462         </member>
26463         <member name="P:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#BuildParameters">
26464             <summary>
26465             Retrieves the build parameters for the current build.
26466             </summary>
26467             <returns>The build parameters.</returns>
26468         </member>
26469         <member name="P:Microsoft.Build.Execution.OutOfProcNode.IsOutOfProcNode">
26470             <summary>
26471             Whether the current appdomain has an out of proc node.
26472             </summary>
26473         </member>
26474         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Run(System.Exception@)">
26475             <summary>
26476             Starts up the node and processes messages until the node is requested to shut down.
26477             Assumes no node reuse.
26478             </summary>
26479             <param name="shutdownException">The exception which caused shutdown, if any.</param>
26480             <returns>The reason for shutting down.</returns>
26481         </member>
26482         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Run(System.Boolean,System.Exception@)">
26483             <summary>
26484             Starts up the node and processes messages until the node is requested to shut down.
26485             </summary>
26486             <param name="enableReuse">Whether this node is eligible for reuse later.</param>
26487             <param name="shutdownException">The exception which caused shutdown, if any.</param>
26488             <returns>The reason for shutting down.</returns>
26489         </member>
26490         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#RegisterFactory(Microsoft.Build.BackEnd.BuildComponentType,Microsoft.Build.BackEnd.BuildComponentFactoryDelegate)">
26491             <summary>
26492             Registers a factory with the component host.
26493             </summary>
26494             <param name="factoryType">The factory type to register.</param>
26495             <param name="factory">The factory method.</param>
26496         </member>
26497         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#IBuildComponentHost#GetComponent(Microsoft.Build.BackEnd.BuildComponentType)">
26498             <summary>
26499             Get a component from the host.
26500             </summary>
26501             <param name="type">The component type to get.</param>
26502             <returns>The component.</returns>
26503         </member>
26504         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#INodePacketFactory#RegisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.NodePacketFactoryMethod,Microsoft.Build.BackEnd.INodePacketHandler)">
26505             <summary>
26506             Registers a packet handler.
26507             </summary>
26508             <param name="packetType">The packet type for which the handler should be registered.</param>
26509             <param name="factory">The factory used to create packets.</param>
26510             <param name="handler">The handler for the packets.</param>
26511         </member>
26512         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#INodePacketFactory#UnregisterPacketHandler(Microsoft.Build.BackEnd.NodePacketType)">
26513             <summary>
26514             Unregisters a packet handler.
26515             </summary>
26516             <param name="packetType">The type of packet for which the handler should be unregistered.</param>
26517         </member>
26518         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#INodePacketFactory#DeserializeAndRoutePacket(System.Int32,Microsoft.Build.BackEnd.NodePacketType,Microsoft.Build.BackEnd.INodePacketTranslator)">
26519             <summary>
26520             Deserializes and routes a packer to the appropriate handler.
26521             </summary>
26522             <param name="nodeId">The node from which the packet was received.</param>
26523             <param name="packetType">The packet type.</param>
26524             <param name="translator">The translator to use as a source for packet data.</param>
26525         </member>
26526         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#INodePacketFactory#RoutePacket(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
26527             <summary>
26528             Routes a packet to the appropriate handler.
26529             </summary>
26530             <param name="nodeId">The node id from which the packet was received.</param>
26531             <param name="packet">The packet to route.</param>
26532         </member>
26533         <member name="M:Microsoft.Build.Execution.OutOfProcNode.Microsoft#Build#BackEnd#INodePacketHandler#PacketReceived(System.Int32,Microsoft.Build.BackEnd.INodePacket)">
26534             <summary>
26535             Called when a packet has been received.
26536             </summary>
26537             <param name="node">The node from which the packet was received.</param>
26538             <param name="packet">The packet.</param>
26539         </member>
26540         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnRequestComplete(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult)">
26541             <summary>
26542             Event handler for the BuildEngine's OnRequestComplete event.
26543             </summary>
26544         </member>
26545         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnNewRequest(Microsoft.Build.BackEnd.BuildRequestBlocker)">
26546             <summary>
26547             Event handler for the BuildEngine's OnNewRequest event.
26548             </summary>
26549         </member>
26550         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnNewConfigurationRequest(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
26551             <summary>
26552             Event handler for the BuildEngine's OnNewConfigurationRequest event.
26553             </summary>
26554         </member>
26555         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnLoggingThreadException(System.Exception)">
26556             <summary>
26557             Event handler for the LoggingService's OnLoggingThreadException event.
26558             </summary>
26559         </member>
26560         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnEngineException(System.Exception)">
26561             <summary>
26562             Event handler for the BuildEngine's OnEngineException event.
26563             </summary>
26564         </member>
26565         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleShutdown(System.Exception@)">
26566             <summary>
26567             Perform necessary actions to shut down the node.
26568             </summary>
26569         </member>
26570         <member name="M:Microsoft.Build.Execution.OutOfProcNode.CleanupCaches">
26571             <summary>
26572             Clears all the caches used during the build.
26573             </summary>
26574         </member>
26575         <member name="M:Microsoft.Build.Execution.OutOfProcNode.OnLinkStatusChanged(Microsoft.Build.BackEnd.INodeEndpoint,Microsoft.Build.BackEnd.LinkStatus)">
26576             <summary>
26577             Event handler for the node endpoint's LinkStatusChanged event.
26578             </summary>
26579         </member>
26580         <member name="M:Microsoft.Build.Execution.OutOfProcNode.SendLoggingPacket(Microsoft.Build.BackEnd.INodePacket)">
26581             <summary>
26582             Callback for logging packets to be sent.
26583             </summary>
26584         </member>
26585         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandlePacket(Microsoft.Build.BackEnd.INodePacket)">
26586             <summary>
26587             Dispatches the packet to the correct handler.
26588             </summary>
26589         </member>
26590         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleBuildRequest(Microsoft.Build.BackEnd.BuildRequest)">
26591             <summary>
26592             Handles the BuildRequest packet.
26593             </summary>
26594         </member>
26595         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleBuildRequestConfiguration(Microsoft.Build.BackEnd.BuildRequestConfiguration)">
26596             <summary>
26597             Handles the BuildRequestConfiguration packet.
26598             </summary>
26599         </member>
26600         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleBuildRequestConfigurationResponse(Microsoft.Build.BackEnd.BuildRequestConfigurationResponse)">
26601             <summary>
26602             Handles the BuildRequestConfigurationResponse packet.
26603             </summary>
26604         </member>
26605         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleBuildRequestUnblocker(Microsoft.Build.BackEnd.BuildRequestUnblocker)">
26606             <summary>
26607             Handles the BuildResult packet.
26608             </summary>
26609         </member>
26610         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleNodeConfiguration(Microsoft.Build.BackEnd.NodeConfiguration)">
26611             <summary>
26612             Handles the NodeConfiguration packet.
26613             </summary>
26614         </member>
26615         <member name="M:Microsoft.Build.Execution.OutOfProcNode.HandleNodeBuildComplete(Microsoft.Build.BackEnd.NodeBuildComplete)">
26616             <summary>
26617             Handles the NodeBuildComplete packet.
26618             </summary>
26619         </member>
26620         <member name="T:Microsoft.Build.Execution.BuildResultCode">
26621             <summary>
26622             Overall results for targets and requests
26623             </summary>
26624         </member>
26625         <member name="F:Microsoft.Build.Execution.BuildResultCode.Success">
26626             <summary>
26627             The target or request was a complete success.
26628             </summary>
26629         </member>
26630         <member name="F:Microsoft.Build.Execution.BuildResultCode.Failure">
26631             <summary>
26632             The target or request failed in some way.
26633             </summary>
26634         </member>
26635         <member name="T:Microsoft.Build.Execution.BuildResult">
26636             <summary>
26637             Contains the current results for all of the targets which have produced results for a particular configuration.
26638             </summary>
26639         </member>
26640         <member name="F:Microsoft.Build.Execution.BuildResult._submissionId">
26641             <summary>
26642             The submission with which this result is associated.
26643             </summary>
26644         </member>
26645         <member name="F:Microsoft.Build.Execution.BuildResult._configurationId">
26646             <summary>
26647             The configuration ID with which this result is associated.
26648             </summary>
26649         </member>
26650         <member name="F:Microsoft.Build.Execution.BuildResult._globalRequestId">
26651             <summary>
26652             The global build request ID for which these results are intended.
26653             </summary>
26654         </member>
26655         <member name="F:Microsoft.Build.Execution.BuildResult._parentGlobalRequestId">
26656             <summary>
26657             The global build request ID which issued the request leading to this result.
26658             </summary>
26659         </member>
26660         <member name="F:Microsoft.Build.Execution.BuildResult._nodeRequestId">
26661             <summary>
26662             The build request ID on the originating node.
26663             </summary>
26664         </member>
26665         <member name="F:Microsoft.Build.Execution.BuildResult._initialTargets">
26666             <summary>
26667             The first build request to generate results for a configuration will set this so that future
26668             requests may be properly satisfied from the cache.
26669             </summary>
26670         </member>
26671         <member name="F:Microsoft.Build.Execution.BuildResult._defaultTargets">
26672             <summary>
26673             The first build request to generate results for a configuration will set this so that future
26674             requests may be properly satisfied from the cache.
26675             </summary>
26676         </member>
26677         <member name="F:Microsoft.Build.Execution.BuildResult._resultsByTarget">
26678             <summary>
26679             The set of results for each target.
26680             </summary>
26681         </member>
26682         <member name="F:Microsoft.Build.Execution.BuildResult._circularDependency">
26683             <summary>
26684             The request caused a circular dependency in scheduling.
26685             </summary>
26686         </member>
26687         <member name="F:Microsoft.Build.Execution.BuildResult._requestException">
26688             <summary>
26689             The exception generated while this request was running, if any.
26690             Note that this can be set if the request itself fails, or if it receives
26691             an exception from a target or task.
26692             </summary>
26693         </member>
26694         <member name="F:Microsoft.Build.Execution.BuildResult._baseOverallResult">
26695             <summary>
26696             The overall result calculated in the constructor.
26697             </summary>
26698         </member>
26699         <member name="F:Microsoft.Build.Execution.BuildResult._savedEnvironmentVariables">
26700             <summary>
26701             Snapshot of the environment from the configuration this results comes from.
26702             This should only be populated when the configuration for this result is moved between nodes.
26703             </summary>
26704         </member>
26705         <member name="F:Microsoft.Build.Execution.BuildResult._savedCurrentDirectory">
26706             <summary>
26707             Snapshot of the current directory from the configuration this result comes from.
26708             This should only be populated when the configuration for this result is moved between nodes.
26709             </summary>
26710         </member>
26711         <member name="F:Microsoft.Build.Execution.BuildResult._projectStateAfterBuild">
26712             <summary>
26713             <see cref="T:Microsoft.Build.Execution.ProjectInstance"/> state after the build. This is only provided if <see cref="P:Microsoft.Build.BackEnd.BuildRequest.BuildRequestDataFlags"/>
26714             includes <see cref="F:Microsoft.Build.Execution.BuildRequestDataFlags.ProvideProjectStateAfterBuild"/> for the build request which this object is a result of, 
26715             and will be <c>null</c> otherwise.  In general, where available, it may be a non buildable-dummy object, and should only
26716             be used to retrieve <see cref="P:Microsoft.Build.Execution.ProjectInstance.Properties"/>, <see cref="P:Microsoft.Build.Execution.ProjectInstance.GlobalProperties"/> and
26717             <see cref="P:Microsoft.Build.Execution.ProjectInstance.Items"/> from it. Any other operation is not guaranteed to be supported.
26718             </summary>
26719         </member>
26720         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor">
26721             <summary>
26722             Constructor for serialization.
26723             </summary>
26724         </member>
26725         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.BuildRequest)">
26726             <summary>
26727             Constructor creates an empty build result
26728             </summary>
26729             <param name="request">The build request to which these results should be associated.</param>
26730         </member>
26731         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.BuildRequest,System.Exception)">
26732             <summary>
26733             Constructs a build result with an exception
26734             </summary>
26735             <param name="request">The build request to which these results should be associated.</param>
26736             <param name="exception">The exception, if any.</param>
26737         </member>
26738         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.BuildRequest,System.Boolean)">
26739             <summary>
26740             Constructor creates a build result indicating a circular dependency was created.
26741             </summary>
26742             <param name="request">The build request to which these results should be associated.</param>
26743             <param name="circularDependency">Set to true if a circular dependency was detected.</param>
26744         </member>
26745         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.Execution.BuildResult,System.String[])">
26746             <summary>
26747             Constructs a new build result based on existing results, but filtered by a specified set of target names
26748             </summary>
26749             <param name="existingResults">The existing results.</param>
26750             <param name="targetNames">The target names whose results we will take from the existing results, if they exist.</param>
26751         </member>
26752         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult,System.Exception)">
26753             <summary>
26754             Constructs a new build result with existing results, but associated with the specified request.
26755             </summary>
26756             <param name="request">The build request with which these results should be associated.</param>
26757             <param name="existingResults">The existing results, if any.</param>
26758             <param name="exception">The exception, if any</param>
26759         </member>
26760         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.BuildRequest,Microsoft.Build.Execution.BuildResult,System.String[],System.Collections.Generic.List{System.String},System.Exception)">
26761             <summary>
26762             Constructs a new build result with existing results, but associated with the specified request.
26763             </summary>
26764             <param name="request">The build request with which these results should be associated.</param>
26765             <param name="existingResults">The existing results, if any.</param>
26766             <param name="targetNames">The list of target names that are the subset of results that should be returned.</param>
26767             <param name="additionalTargetsToCheck">The additional targets that need to be taken into account when computing the overall result, if any.</param>
26768             <param name="exception">The exception, if any</param>
26769         </member>
26770         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.Execution.BuildResult,System.Int32)">
26771             <summary>
26772             Constructor which allows reporting results for a different nodeRequestId
26773             </summary>
26774         </member>
26775         <member name="M:Microsoft.Build.Execution.BuildResult.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
26776             <summary>
26777             Constructor for deserialization
26778             </summary>
26779         </member>
26780         <member name="P:Microsoft.Build.Execution.BuildResult.SubmissionId">
26781             <summary>
26782             Returns the submission id.
26783             </summary>
26784         </member>
26785         <member name="P:Microsoft.Build.Execution.BuildResult.ConfigurationId">
26786             <summary>
26787             Returns the configuration ID for this result.
26788             </summary>
26789         </member>
26790         <member name="P:Microsoft.Build.Execution.BuildResult.GlobalRequestId">
26791             <summary>
26792             Returns the build request id for which this result was generated
26793             </summary>
26794         </member>
26795         <member name="P:Microsoft.Build.Execution.BuildResult.ParentGlobalRequestId">
26796             <summary>
26797             Returns the build request id for the parent of the request for which this result was generated
26798             </summary>
26799         </member>
26800         <member name="P:Microsoft.Build.Execution.BuildResult.NodeRequestId">
26801             <summary>
26802             Returns the node build request id for which this result was generated
26803             </summary>
26804         </member>
26805         <member name="P:Microsoft.Build.Execution.BuildResult.Exception">
26806             <summary>
26807             Returns the exception generated while this result was run, if any. 
26808             </summary>
26809         </member>
26810         <member name="P:Microsoft.Build.Execution.BuildResult.CircularDependency">
26811             <summary>
26812             Returns a flag indicating if a circular dependency was detected.
26813             </summary>
26814         </member>
26815         <member name="P:Microsoft.Build.Execution.BuildResult.OverallResult">
26816             <summary>
26817             Returns the overall result for this result set.
26818             </summary>
26819         </member>
26820         <member name="P:Microsoft.Build.Execution.BuildResult.ResultsByTarget">
26821             <summary>
26822             Returns an enumerator for all target results in this build result
26823             </summary>
26824         </member>
26825         <member name="P:Microsoft.Build.Execution.BuildResult.ProjectStateAfterBuild">
26826             <summary>
26827             <see cref="T:Microsoft.Build.Execution.ProjectInstance"/> state after the build. In general, it may be a non buildable-dummy object, and should only
26828             be used to retrieve <see cref="P:Microsoft.Build.Execution.ProjectInstance.Properties"/>, <see cref="P:Microsoft.Build.Execution.ProjectInstance.GlobalProperties"/> and
26829             <see cref="P:Microsoft.Build.Execution.ProjectInstance.Items"/> from it. Any other operation is not guaranteed to be supported.
26830             </summary>
26831         </member>
26832         <member name="P:Microsoft.Build.Execution.BuildResult.Microsoft#Build#BackEnd#INodePacket#Type">
26833             <summary>
26834             Returns the node packet type.
26835             </summary>
26836         </member>
26837         <member name="P:Microsoft.Build.Execution.BuildResult.Microsoft#Build#BackEnd#IBuildResults#SavedEnvironmentVariables">
26838             <summary>
26839             Holds a snapshot of the environment at the time we blocked.
26840             </summary>
26841         </member>
26842         <member name="P:Microsoft.Build.Execution.BuildResult.Microsoft#Build#BackEnd#IBuildResults#SavedCurrentDirectory">
26843             <summary>
26844             Holds a snapshot of the current working directory at the time we blocked.
26845             </summary>
26846         </member>
26847         <member name="P:Microsoft.Build.Execution.BuildResult.InitialTargets">
26848             <summary>
26849             Returns the initial targets for the configuration which requested these results.
26850             </summary>
26851         </member>
26852         <member name="P:Microsoft.Build.Execution.BuildResult.DefaultTargets">
26853             <summary>
26854             Returns the default targets for the configuration which requested these results.
26855             </summary>
26856         </member>
26857         <member name="P:Microsoft.Build.Execution.BuildResult.ResultBelongsToRootRequest">
26858             <summary>
26859             Returns true if this result belongs to a root request (that is, no node is waiting for 
26860             these results.
26861             </summary>
26862         </member>
26863         <member name="P:Microsoft.Build.Execution.BuildResult.Item(System.String)">
26864             <summary>
26865             Indexer which sets or returns results for the specified target
26866             </summary>
26867             <param name="target">The target</param>
26868             <returns>The results for the specified target</returns>
26869             <exception>KeyNotFoundException is returned if the specified target doesn't exist when reading this property.</exception>
26870             <exception>ArgumentException is returned if the specified target already has results.</exception>
26871         </member>
26872         <member name="M:Microsoft.Build.Execution.BuildResult.AddResultsForTarget(System.String,Microsoft.Build.Execution.TargetResult)">
26873             <summary>
26874             Adds the results for the specified target to this result collection.
26875             </summary>
26876             <param name="target">The target to which these results apply.</param>
26877             <param name="result">The results for the target.</param>
26878         </member>
26879         <member name="M:Microsoft.Build.Execution.BuildResult.MergeResults(Microsoft.Build.Execution.BuildResult)">
26880             <summary>
26881             Merges the specified results with the results contained herein.
26882             </summary>
26883             <param name="results">The results to merge in.</param>
26884         </member>
26885         <member name="M:Microsoft.Build.Execution.BuildResult.HasResultsForTarget(System.String)">
26886             <summary>
26887             Determines if there are any results for the specified target.
26888             </summary>
26889             <param name="target">The target for which results are desired.</param>
26890             <returns>True if results exist, false otherwise.</returns>
26891         </member>
26892         <member name="M:Microsoft.Build.Execution.BuildResult.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
26893             <summary>
26894             Reads or writes the packet to the serializer.
26895             </summary>
26896         </member>
26897         <member name="M:Microsoft.Build.Execution.BuildResult.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
26898             <summary>
26899             Factory for serialization
26900             </summary>
26901         </member>
26902         <member name="M:Microsoft.Build.Execution.BuildResult.CacheIfPossible">
26903             <summary>
26904             Caches all of the targets results we can.
26905             </summary>
26906         </member>
26907         <member name="M:Microsoft.Build.Execution.BuildResult.ClearCachedFiles">
26908             <summary>
26909             Clear cached files from disk.
26910             </summary>
26911         </member>
26912         <member name="M:Microsoft.Build.Execution.BuildResult.Clone">
26913             <summary>
26914             Clones the build result (the resultsByTarget field is only a shallow copy).
26915             </summary>
26916         </member>
26917         <member name="M:Microsoft.Build.Execution.BuildResult.SetOverallResult(System.Boolean)">
26918             <summary>
26919             Sets the overall result.
26920             </summary>
26921             <param name="overallResult"><code>true</code> if the result is success, otherwise <code>false</code>.</param>
26922         </member>
26923         <member name="M:Microsoft.Build.Execution.BuildResult.CreateTargetResultDictionary(System.Int32)">
26924             <summary>
26925             Creates the target result dictionary.
26926             </summary>
26927         </member>
26928         <member name="M:Microsoft.Build.Execution.BuildResult.CreateTargetResultDictionaryWithContents(Microsoft.Build.Execution.BuildResult,System.String[])">
26929             <summary>
26930             Creates the target result dictionary and populates it with however many target results are 
26931             available given the list of targets passed. 
26932             </summary>
26933         </member>
26934         <member name="T:Microsoft.Build.Execution.TargetResultCode">
26935             <summary>
26936             The result code for a given target.
26937             </summary>
26938         </member>
26939         <member name="F:Microsoft.Build.Execution.TargetResultCode.Skipped">
26940             <summary>
26941             The target was skipped because its condition was not met.
26942             </summary>
26943         </member>
26944         <member name="F:Microsoft.Build.Execution.TargetResultCode.Success">
26945             <summary>
26946             The target successfully built.
26947             </summary>
26948         </member>
26949         <member name="F:Microsoft.Build.Execution.TargetResultCode.Failure">
26950             <summary>
26951             The target failed to build.
26952             </summary>
26953         </member>
26954         <member name="T:Microsoft.Build.Execution.ITargetResult">
26955             <summary>
26956             An interface representing results for a specific target
26957             </summary>
26958         </member>
26959         <member name="P:Microsoft.Build.Execution.ITargetResult.Exception">
26960             <summary>
26961             The exception generated when the target ran, if any.
26962             </summary>
26963         </member>
26964         <member name="P:Microsoft.Build.Execution.ITargetResult.Items">
26965             <summary>
26966             The set of build items output by the target.
26967             These are ITaskItem's, so they have no item-type.
26968             </summary>
26969         </member>
26970         <member name="P:Microsoft.Build.Execution.ITargetResult.ResultCode">
26971             <summary>
26972             The result code for the target run.
26973             </summary>
26974         </member>
26975         <member name="T:Microsoft.Build.Execution.TargetResult">
26976             <summary>
26977             Contains the result items for a single target as well as the overall result code.
26978             </summary>
26979         </member>
26980         <member name="F:Microsoft.Build.Execution.TargetResult._result">
26981             <summary>
26982             The result for this target.
26983             </summary>
26984         </member>
26985         <member name="F:Microsoft.Build.Execution.TargetResult._targetFailureDoesntCauseBuildFailure">
26986             <summary>
26987             Flag indicating whether to consider this target failure as having caused a build failure.
26988             </summary>
26989         </member>
26990         <member name="F:Microsoft.Build.Execution.TargetResult._itemsStore">
26991             <summary>
26992             The store of items in this result.
26993             </summary>
26994         </member>
26995         <member name="F:Microsoft.Build.Execution.TargetResult._cacheInfo">
26996             <summary>
26997             The context under which these results have been cached.
26998             </summary>
26999         </member>
27000         <member name="M:Microsoft.Build.Execution.TargetResult.#ctor(Microsoft.Build.Execution.ProjectItemInstance.TaskItem[],Microsoft.Build.BackEnd.WorkUnitResult)">
27001             <summary>
27002             Initializes the results with specified items and result.
27003             </summary>
27004             <param name="items">The items produced by the target.</param>
27005             <param name="result">The overall result for the target.</param>
27006         </member>
27007         <member name="M:Microsoft.Build.Execution.TargetResult.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
27008             <summary>
27009             Private constructor for deserialization
27010             </summary>
27011         </member>
27012         <member name="P:Microsoft.Build.Execution.TargetResult.Exception">
27013             <summary>
27014             Returns the exception which aborted this target, if any.
27015             </summary>
27016             <value>The exception which aborted this target, if any.</value>
27017         </member>
27018         <member name="P:Microsoft.Build.Execution.TargetResult.Items">
27019             <summary>
27020             Returns the items produced by the target.
27021             These are ITaskItem's, so they have no item-type.
27022             </summary>
27023             <value>The items produced by the target.</value>
27024         </member>
27025         <member name="P:Microsoft.Build.Execution.TargetResult.ResultCode">
27026             <summary>
27027             Returns the result code for the target.
27028             </summary>
27029             <value>The result code for the target.</value>
27030         </member>
27031         <member name="P:Microsoft.Build.Execution.TargetResult.WorkUnitResult">
27032             <summary>
27033             Returns the internal result for the target.
27034             </summary>
27035         </member>
27036         <member name="P:Microsoft.Build.Execution.TargetResult.TargetFailureDoesntCauseBuildFailure">
27037             <summary>
27038             Sets or gets a flag indicating whether or not a failure results should cause the build to fail.
27039             </summary>
27040         </member>
27041         <member name="M:Microsoft.Build.Execution.TargetResult.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
27042             <summary>
27043             Reads or writes the packet to the serializer.
27044             </summary>
27045         </member>
27046         <member name="M:Microsoft.Build.Execution.TargetResult.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
27047             <summary>
27048             Factory for serialization.
27049             </summary>
27050         </member>
27051         <member name="M:Microsoft.Build.Execution.TargetResult.GetCacheFile(System.Int32,System.String)">
27052             <summary>
27053             Gets the name of the cache file for this configuration.
27054             </summary>
27055         </member>
27056         <member name="M:Microsoft.Build.Execution.TargetResult.GetCacheDirectory(System.Int32,System.String)">
27057             <summary>
27058             Gets the name of the cache file for this configuration.
27059             </summary>
27060         </member>
27061         <member name="M:Microsoft.Build.Execution.TargetResult.CacheItems(System.Int32,System.String)">
27062             <summary>
27063             Cache the items.
27064             </summary>
27065         </member>
27066         <member name="M:Microsoft.Build.Execution.TargetResult.InternalTranslate(Microsoft.Build.BackEnd.INodePacketTranslator)">
27067             <summary>
27068             Performs the actual translation
27069             </summary>
27070         </member>
27071         <member name="M:Microsoft.Build.Execution.TargetResult.RetrieveItemsFromCache">
27072             <summary>
27073             Retrieve the items from the cache.
27074             </summary>
27075         </member>
27076         <member name="M:Microsoft.Build.Execution.TargetResult.GetResultsCacheTranslator(System.Int32,System.String,Microsoft.Build.BackEnd.TranslationDirection)">
27077             <summary>
27078             Gets the translator for this configuration.
27079             </summary>
27080         </member>
27081         <member name="T:Microsoft.Build.Execution.TargetResult.CacheInfo">
27082             <summary>
27083             Information about where the cache for the items in this result are stored.
27084             </summary>
27085         </member>
27086         <member name="F:Microsoft.Build.Execution.TargetResult.CacheInfo._configId">
27087             <summary>
27088             The configuration ID for these results.
27089             </summary>
27090         </member>
27091         <member name="F:Microsoft.Build.Execution.TargetResult.CacheInfo._targetName">
27092             <summary>
27093             The target with which these results are associated.
27094             </summary>
27095         </member>
27096         <member name="M:Microsoft.Build.Execution.TargetResult.CacheInfo.#ctor(System.Int32,System.String)">
27097             <summary>
27098             Constructor.
27099             </summary>
27100         </member>
27101         <member name="P:Microsoft.Build.Execution.TargetResult.CacheInfo.ConfigId">
27102             <summary>
27103             Retrieves the configuration id.
27104             </summary>
27105         </member>
27106         <member name="P:Microsoft.Build.Execution.TargetResult.CacheInfo.TargetName">
27107             <summary>
27108             Retrieves the target name.
27109             </summary>
27110         </member>
27111         <member name="T:Microsoft.Build.Execution.TargetResult.ItemsStore">
27112             <summary>
27113             The store of items for the target result.  This class is responsible for the serialization of the items collection, which is 
27114             useful to keep separate as it is where we spend most of our time serializing for large projects, and these are the bits
27115             we throw out of memory when the cache gets collected.
27116             </summary>
27117         </member>
27118         <member name="F:Microsoft.Build.Execution.TargetResult.ItemsStore.DefaultCompressionThreshold">
27119             <summary>
27120             The default compression threshold.
27121             </summary>
27122         </member>
27123         <member name="F:Microsoft.Build.Execution.TargetResult.ItemsStore.s_compressionThreshold">
27124             <summary>
27125             The count of items we will store before we start using compression.
27126             </summary>
27127             <remarks>
27128             This value was determined empirically by looking at how many items tend to be transmitted for "normal" projects versus the ones
27129             which benefit from this technique.
27130             </remarks>
27131         </member>
27132         <member name="F:Microsoft.Build.Execution.TargetResult.ItemsStore._compressedItems">
27133             <summary>
27134             The compressed set of items, if any.
27135             </summary>
27136         </member>
27137         <member name="F:Microsoft.Build.Execution.TargetResult.ItemsStore._itemsCount">
27138             <summary>
27139             The count of items, stored here so that we don't have to decompress the items if we are
27140             only looking at the count.
27141             </summary>
27142         </member>
27143         <member name="F:Microsoft.Build.Execution.TargetResult.ItemsStore._uncompressedItems">
27144             <summary>
27145             The items produced by this target.
27146             </summary>
27147         </member>
27148         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.#cctor">
27149             <summary>
27150             Static constructor.
27151             </summary>
27152         </member>
27153         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.#ctor(Microsoft.Build.Execution.ProjectItemInstance.TaskItem[])">
27154             <summary>
27155             Constructor
27156             </summary>
27157         </member>
27158         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
27159             <summary>
27160             Constructor for serialization.
27161             </summary>
27162         </member>
27163         <member name="P:Microsoft.Build.Execution.TargetResult.ItemsStore.ItemsCount">
27164             <summary>
27165             Gets the count of items.
27166             </summary>
27167         </member>
27168         <member name="P:Microsoft.Build.Execution.TargetResult.ItemsStore.Items">
27169             <summary>
27170             Retrieves the items.
27171             </summary>
27172             <remarks>
27173             It's important not to call this method merely to get a count of the items held in the collection.
27174             Instead use ItemsCount (above) for that.
27175             </remarks>
27176         </member>
27177         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.ReleaseItems">
27178             <summary>
27179             Throws out the deserialized items.
27180             </summary>
27181             <remarks>
27182             Not presently used, but could be used for a multi-stage caching mechanism which first throws out decompressed items,
27183             then if more space is needed, starts throwing out the compressed ones.
27184             </remarks>
27185         </member>
27186         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
27187             <summary>
27188             Translates an items store.
27189             </summary>
27190         </member>
27191         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
27192             <summary>
27193             Factory for the serializer.
27194             </summary>
27195         </member>
27196         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.CompressItemsIfNecessary">
27197             <summary>
27198             Compresses the items, but only if we have reached the threshold where it makes sense to do so.
27199             </summary>
27200         </member>
27201         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.DecompressItems">
27202             <summary>
27203             Decompresses the items.
27204             </summary>
27205         </member>
27206         <member name="M:Microsoft.Build.Execution.TargetResult.ItemsStore.CompressItems">
27207             <summary>
27208             Compresses the items.
27209             </summary>
27210         </member>
27211         <member name="T:Microsoft.Build.Execution.ReflectableTaskPropertyInfo">
27212             <summary>
27213             A reflection-generated TaskPropertyInfo instance.
27214             </summary>
27215         </member>
27216         <member name="F:Microsoft.Build.Execution.ReflectableTaskPropertyInfo._propertyInfo">
27217             <summary>
27218             The reflection-produced PropertyInfo.
27219             </summary>
27220         </member>
27221         <member name="F:Microsoft.Build.Execution.ReflectableTaskPropertyInfo._taskType">
27222             <summary>
27223             The type of the generated tasks.
27224             </summary>
27225         </member>
27226         <member name="M:Microsoft.Build.Execution.ReflectableTaskPropertyInfo.#ctor(Microsoft.Build.Framework.TaskPropertyInfo,System.Type)">
27227             <summary>
27228             Initializes a new instance of the <see cref="T:Microsoft.Build.Execution.ReflectableTaskPropertyInfo"/> class.
27229             </summary>
27230             <param name="taskPropertyInfo">The original property info that generated this instance.</param>
27231             <param name="taskType">The type to reflect over to get the reflection propertyinfo later.</param>
27232         </member>
27233         <member name="M:Microsoft.Build.Execution.ReflectableTaskPropertyInfo.#ctor(System.Reflection.PropertyInfo)">
27234             <summary>
27235             Initializes a new instance of the <see cref="T:Microsoft.Build.Execution.ReflectableTaskPropertyInfo"/> class.
27236             </summary>
27237             <param name="propertyInfo">The PropertyInfo used to discover this task property.</param>
27238         </member>
27239         <member name="P:Microsoft.Build.Execution.ReflectableTaskPropertyInfo.Reflection">
27240             <summary>
27241             Gets or sets the reflection-produced PropertyInfo.
27242             </summary>
27243         </member>
27244         <member name="T:Microsoft.Build.Execution.NodeAffinity">
27245             <summary>
27246             Controls where projects must be built.
27247             </summary>
27248         </member>
27249         <member name="F:Microsoft.Build.Execution.NodeAffinity.InProc">
27250             <summary>
27251             The project may only be scheduled on the in-proc node.  This happens automatically if there is a host object or if a ProjectInstance
27252             was specified.  A host may wish to specify it if they know a task depends explicitly on shared static data or other host-provided
27253             objects.
27254             </summary>
27255         </member>
27256         <member name="F:Microsoft.Build.Execution.NodeAffinity.OutOfProc">
27257             <summary>
27258             The project may only be scheduled on an out-of-proc node.  A host may wish to specify this if it is known the project being built
27259             could contaminate the host environment (or the host contaminates the environment while a build is proceeding.)
27260             </summary>
27261         </member>
27262         <member name="F:Microsoft.Build.Execution.NodeAffinity.Any">
27263             <summary>
27264             The project may be scheduled anywhere.
27265             </summary>
27266         </member>
27267         <member name="T:Microsoft.Build.Execution.HostServices">
27268             <summary>
27269             Implementation of HostServices that
27270             mediates access from the build to the host.
27271             </summary>
27272         </member>
27273         <member name="F:Microsoft.Build.Execution.HostServices._hostObjectMap">
27274             <summary>
27275             Collection storing host objects for particular project/task/target combinations.
27276             </summary>
27277         </member>
27278         <member name="F:Microsoft.Build.Execution.HostServices._projectAffinities">
27279             <summary>
27280             A mapping of project file names to their node affinities.  An entry for String.Empty means that
27281             all projects which don't otherwise have an affinity should use that affinity.
27282             </summary>
27283         </member>
27284         <member name="M:Microsoft.Build.Execution.HostServices.GetHostObject(System.String,System.String,System.String)">
27285             <summary>
27286             Gets any host object applicable to this task name
27287             where the task appears within a target and project with the specified names.
27288             If no host object exists, returns null.
27289             </summary>
27290         </member>
27291         <member name="M:Microsoft.Build.Execution.HostServices.RegisterHostObject(System.String,System.String,System.String,Microsoft.Build.Framework.ITaskHost)">
27292             <summary>
27293             Register a host object for a particular task/target pair.
27294             Overwrites any existing host object.
27295             </summary>
27296         </member>
27297         <member name="M:Microsoft.Build.Execution.HostServices.UnregisterProject(System.String)">
27298             <summary>
27299             Unregister the project's host objects, if any and remove any node affinities associated with it.
27300             </summary>
27301         </member>
27302         <member name="M:Microsoft.Build.Execution.HostServices.GetNodeAffinity(System.String)">
27303             <summary>
27304             Retrieves the node affinity for a particular project file.
27305             </summary>
27306         </member>
27307         <member name="M:Microsoft.Build.Execution.HostServices.SetNodeAffinity(System.String,Microsoft.Build.Execution.NodeAffinity)">
27308             <summary>
27309             Sets the node affinity for a particular project file.
27310             </summary>
27311             <param name="projectFile">
27312             The project file.  If set to String.Empty, all projects will use the specified affinity.  If set to null, all affinities will be cleared.
27313             </param>
27314             <param name="nodeAffinity">The <see cref="T:Microsoft.Build.Execution.NodeAffinity"/> to set.</param>
27315         </member>
27316         <member name="M:Microsoft.Build.Execution.HostServices.OnRenameProject(System.String,System.String)">
27317             <summary>
27318             Updates the host object table when a project is renamed.
27319             Old full path may be null.
27320             </summary>
27321         </member>
27322         <member name="M:Microsoft.Build.Execution.HostServices.HasHostObject(System.String)">
27323             <summary>
27324             Returns true if there is any host object registered for this project file.
27325             </summary>
27326         </member>
27327         <member name="M:Microsoft.Build.Execution.HostServices.GetNodeAffinity(System.String,System.Boolean@)">
27328             <summary>
27329             Retrieves the node affinity for a particular project file.
27330             </summary>
27331         </member>
27332         <member name="T:Microsoft.Build.Execution.HostServices.HostObjects">
27333             <summary>
27334             Bag holding host object information for a single project file.
27335             </summary>
27336         </member>
27337         <member name="F:Microsoft.Build.Execution.HostServices.HostObjects._hostObjects">
27338             <summary>
27339             The mapping of targets and tasks to host objects.
27340             </summary>
27341         </member>
27342         <member name="M:Microsoft.Build.Execution.HostServices.HostObjects.#ctor">
27343             <summary>
27344             Constructor
27345             </summary>
27346         </member>
27347         <member name="P:Microsoft.Build.Execution.HostServices.HostObjects.HasRegisteredHostObjects">
27348             <summary>
27349             Accessor which indicates if there are any registered host objects.
27350             </summary>
27351         </member>
27352         <member name="M:Microsoft.Build.Execution.HostServices.HostObjects.RegisterHostObject(System.String,System.String,Microsoft.Build.Framework.ITaskHost)">
27353             <summary>
27354             Registers a host object for this project file
27355             </summary>
27356         </member>
27357         <member name="M:Microsoft.Build.Execution.HostServices.HostObjects.GetAnyMatchingHostObject(System.String,System.String)">
27358             <summary>
27359             Gets any host object for this project file matching the task and target names specified.
27360             </summary>
27361         </member>
27362         <member name="T:Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey">
27363             <summary>
27364             Equatable key for the table
27365             </summary>
27366         </member>
27367         <member name="F:Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey._targetName">
27368             <summary>
27369             Target name
27370             </summary>
27371         </member>
27372         <member name="F:Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey._taskName">
27373             <summary>
27374             Task name
27375             </summary>
27376         </member>
27377         <member name="M:Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey.#ctor(System.String,System.String)">
27378             <summary>
27379             Constructor
27380             </summary>
27381         </member>
27382         <member name="M:Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey.Equals(Microsoft.Build.Execution.HostServices.HostObjects.TargetTaskKey)">
27383             <summary>
27384             Implementation of IEquatable.
27385             </summary>
27386         </member>
27387         <member name="T:Microsoft.Build.Execution.ProjectTargetInstanceChild">
27388             <summary>
27389             Type for ProjectTaskInstance and ProjectPropertyGroupTaskInstance and ProjectItemGroupTaskInstance
27390             allowing them to be used in a single collection of target children
27391             </summary>
27392         </member>
27393         <member name="P:Microsoft.Build.Execution.ProjectTargetInstanceChild.Condition">
27394             <summary>
27395             Condition on the element
27396             </summary>
27397         </member>
27398         <member name="P:Microsoft.Build.Execution.ProjectTargetInstanceChild.FullPath">
27399             <summary>
27400             Full path to the file in which the originating element was originally 
27401             defined.
27402             If it originated in a project that was not loaded and has never been 
27403             given a path, returns an empty string.
27404             </summary>
27405         </member>
27406         <member name="P:Microsoft.Build.Execution.ProjectTargetInstanceChild.Location">
27407             <summary>
27408             Location of the original element
27409             </summary>
27410         </member>
27411         <member name="P:Microsoft.Build.Execution.ProjectTargetInstanceChild.ConditionLocation">
27412             <summary>
27413             Location of the original condition attribute
27414             if any
27415             </summary>
27416         </member>
27417         <member name="T:Microsoft.Build.Execution.ProjectTaskInstanceChild">
27418             <summary>
27419             Type for TaskOutputItem and TaskOutputProperty
27420             allowing them to be used in a single collection
27421             </summary>
27422         </member>
27423         <member name="P:Microsoft.Build.Execution.ProjectTaskInstanceChild.Condition">
27424             <summary>
27425             Condition on the element
27426             </summary>
27427         </member>
27428         <member name="P:Microsoft.Build.Execution.ProjectTaskInstanceChild.Location">
27429             <summary>
27430             Location of the original element
27431             </summary>
27432         </member>
27433         <member name="P:Microsoft.Build.Execution.ProjectTaskInstanceChild.TaskParameterLocation">
27434             <summary>
27435             Location of the TaskParameter attribute
27436             </summary>
27437         </member>
27438         <member name="P:Microsoft.Build.Execution.ProjectTaskInstanceChild.ConditionLocation">
27439             <summary>
27440             Location of the original condition attribute, if any
27441             </summary>
27442         </member>
27443         <member name="T:Microsoft.Build.Execution.ProjectInstanceSettings">
27444             <summary>
27445             Enum for controlling project instance creation
27446             </summary>
27447         </member>
27448         <member name="F:Microsoft.Build.Execution.ProjectInstanceSettings.None">
27449             <summary>
27450             no options
27451             </summary>
27452         </member>
27453         <member name="F:Microsoft.Build.Execution.ProjectInstanceSettings.Immutable">
27454             <summary>
27455             create immutable version of project instance
27456             </summary>
27457         </member>
27458         <member name="F:Microsoft.Build.Execution.ProjectInstanceSettings.ImmutableWithFastItemLookup">
27459             <summary>
27460             create project instance with some look up table that improves performance
27461             </summary>
27462         </member>
27463         <member name="T:Microsoft.Build.Execution.ProjectInstance">
27464             <summary>
27465             What the user gets when they clone off a ProjectInstance.
27466             They can hold onto this, change/query items and properties,
27467             and call it several times to build it.
27468             </summary>
27469             <comments>
27470             Neither this class nor none of its constituents are allowed to have 
27471             references to any of the Construction or Evaluation objects.
27472             This class is immutable except for adding instance items and setting instance properties.
27473             It only exposes items and properties: targets, host services, and the task registry are not exposed as they are only the concern of build.
27474             Constructors are internal in order to direct users to Project class instead; these are only createable via Project objects.
27475             </comments>
27476         </member>
27477         <member name="F:Microsoft.Build.Execution.ProjectInstance._actualTargets">
27478             <summary>
27479             Targets in the project after overrides have been resolved.
27480             This is an unordered collection keyed by target name.
27481             Only the wrapper around this collection is exposed.
27482             </summary>
27483         </member>
27484         <member name="F:Microsoft.Build.Execution.ProjectInstance._targets">
27485             <summary>
27486             Targets in the project after overrides have been resolved.
27487             This is an immutable, unordered collection keyed by target name.
27488             It is just a wrapper around <see cref="F:Microsoft.Build.Execution.ProjectInstance._actualTargets">actualTargets</see>.
27489             </summary>
27490         </member>
27491         <member name="F:Microsoft.Build.Execution.ProjectInstance._globalProperties">
27492             <summary>
27493             The global properties evaluation occurred with.
27494             Needed by the build as they traverse between projects.
27495             </summary>
27496         </member>
27497         <member name="F:Microsoft.Build.Execution.ProjectInstance._globalPropertiesToTreatAsLocal">
27498             <summary>
27499             List of names of the properties that, while global, are still treated as overridable 
27500             </summary>
27501         </member>
27502         <member name="F:Microsoft.Build.Execution.ProjectInstance._explicitToolsVersionSpecified">
27503             <summary>
27504             Whether the tools version used originated from an explicit specification,
27505             for example from an MSBuild task or /tv switch.
27506             </summary>
27507         </member>
27508         <member name="F:Microsoft.Build.Execution.ProjectInstance._properties">
27509             <summary>
27510             Properties in the project. This is a dictionary of name, value pairs.
27511             </summary>
27512         </member>
27513         <member name="F:Microsoft.Build.Execution.ProjectInstance._environmentVariableProperties">
27514             <summary>
27515             Properties originating from environment variables, gotten from the project collection
27516             </summary>
27517         </member>
27518         <member name="F:Microsoft.Build.Execution.ProjectInstance._items">
27519             <summary>
27520             Items in the project. This is a dictionary of ordered lists of a single type of items keyed by item type.
27521             </summary>
27522         </member>
27523         <member name="F:Microsoft.Build.Execution.ProjectInstance._itemsByEvaluatedInclude">
27524             <summary>
27525             Items organized by evaluatedInclude value
27526             </summary>
27527         </member>
27528         <member name="F:Microsoft.Build.Execution.ProjectInstance._initialGlobalsForDebugging">
27529             <summary>
27530             Items, properties and other project level values to display
27531             in the debugger, if we are being debugged.
27532             If not debugging, this is null.
27533             </summary>
27534         </member>
27535         <member name="F:Microsoft.Build.Execution.ProjectInstance._directory">
27536             <summary>
27537             The project's root directory, for evaluation of relative paths and
27538             setting the current directory during build.
27539             Is never null.
27540             If the project has not been loaded from disk and has not been given a path, returns the current directory from 
27541             the time the project was loaded - this is the same behavior as Whidbey/Orcas.
27542             If the project has not been loaded from disk but has been given a path, this path may not exist.
27543             </summary>
27544         </member>
27545         <member name="F:Microsoft.Build.Execution.ProjectInstance._projectFileLocation">
27546             <summary>
27547             The project file location, for logging.
27548             If the project has not been loaded from disk and has not been given a path, returns null.
27549             If the project has not been loaded from disk but has been given a path, this path may not exist.
27550             </summary>
27551         </member>
27552         <member name="F:Microsoft.Build.Execution.ProjectInstance._itemDefinitions">
27553             <summary>
27554             The item definitions from the parent Project.
27555             </summary>
27556         </member>
27557         <member name="F:Microsoft.Build.Execution.ProjectInstance._hostServices">
27558             <summary>
27559             The HostServices to use during a build.
27560             </summary>
27561         </member>
27562         <member name="F:Microsoft.Build.Execution.ProjectInstance._usingDifferentToolsVersionFromProjectFile">
27563             <summary>
27564             Whether when we read a ToolsVersion that is not equivalent to the current one on the Project tag, we 
27565             treat it as the current one.
27566             </summary>
27567         </member>
27568         <member name="F:Microsoft.Build.Execution.ProjectInstance._originalProjectToolsVersion">
27569             <summary>
27570             The toolsversion that was originally on the project's Project root element
27571             </summary>
27572         </member>
27573         <member name="F:Microsoft.Build.Execution.ProjectInstance._isImmutable">
27574             <summary>
27575             Whether the instance is immutable.
27576             The object is always mutable during evaluation.
27577             </summary>
27578         </member>
27579         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String)">
27580             <summary>
27581             Creates a ProjectInstance directly.
27582             No intermediate Project object is created.
27583             This is ideal if the project is simply going to be built, and not displayed or edited.
27584             Uses the default project collection.
27585             </summary>
27586             <param name="projectFile">The name of the project file.</param>
27587             <returns>A new project instance</returns>
27588         </member>
27589         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
27590             <summary>
27591             Creates a ProjectInstance directly.
27592             No intermediate Project object is created.
27593             This is ideal if the project is simply going to be built, and not displayed or edited.
27594             Uses the default project collection.
27595             </summary>
27596             <param name="projectFile">The name of the project file.</param>
27597             <param name="globalProperties">The global properties to use.</param>
27598             <param name="toolsVersion">The tools version.</param>
27599             <returns>A new project instance</returns>
27600         </member>
27601         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
27602             <summary>
27603             Creates a ProjectInstance directly.
27604             No intermediate Project object is created.
27605             This is ideal if the project is simply going to be built, and not displayed or edited.
27606             Global properties may be null.
27607             Tools version may be null.
27608             </summary>
27609             <param name="projectFile">The name of the project file.</param>
27610             <param name="globalProperties">The global properties to use.</param>
27611             <param name="toolsVersion">The tools version.</param>
27612             <param name="projectCollection">Project collection</param>
27613             <returns>A new project instance</returns>
27614         </member>
27615         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection)">
27616             <summary>
27617             Creates a ProjectInstance directly.
27618             No intermediate Project object is created.
27619             This is ideal if the project is simply going to be built, and not displayed or edited.
27620             Global properties may be null.
27621             Tools version may be null.
27622             </summary>
27623             <param name="projectFile">The name of the project file.</param>
27624             <param name="globalProperties">The global properties to use.</param>
27625             <param name="toolsVersion">The tools version.</param>
27626             <param name="subToolsetVersion">The sub-toolset version, used in tandem with the ToolsVersion to determine the set of toolset properties.</param>
27627             <param name="projectCollection">Project collection</param>
27628             <returns>A new project instance</returns>
27629         </member>
27630         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Construction.ProjectRootElement)">
27631             <summary>
27632             Creates a ProjectInstance directly.
27633             No intermediate Project object is created.
27634             This is ideal if the project is simply going to be built, and not displayed or edited.
27635             Uses the default project collection.
27636             </summary>
27637             <param name="xml">The project root element</param>
27638             <returns>A new project instance</returns>
27639         </member>
27640         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
27641             <summary>
27642             Creates a ProjectInstance directly.
27643             No intermediate Project object is created.
27644             This is ideal if the project is simply going to be built, and not displayed or edited.
27645             Global properties may be null.
27646             Tools version may be null.
27647             </summary>
27648             <param name="xml">The project root element</param>
27649             <param name="globalProperties">The global properties to use.</param>
27650             <param name="toolsVersion">The tools version.</param>
27651             <param name="projectCollection">Project collection</param>
27652             <returns>A new project instance</returns>
27653         </member>
27654         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection)">
27655             <summary>
27656             Creates a ProjectInstance directly.
27657             No intermediate Project object is created.
27658             This is ideal if the project is simply going to be built, and not displayed or edited.
27659             Global properties may be null.
27660             Tools version may be null.
27661             Sub-toolset version may be null, but if specified will override all other methods of determining the sub-toolset.
27662             </summary>
27663             <param name="xml">The project root element</param>
27664             <param name="globalProperties">The global properties to use.</param>
27665             <param name="toolsVersion">The tools version.</param>
27666             <param name="subToolsetVersion">The sub-toolset version, used in tandem with the ToolsVersion to determine the set of toolset properties.</param>
27667             <param name="projectCollection">Project collection</param>
27668             <returns>A new project instance</returns>
27669         </member>
27670         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String,Microsoft.Build.Execution.ProjectInstance,System.Collections.Generic.IDictionary{System.String,System.String})">
27671             <summary>
27672             Creates a ProjectInstance directly.  Used to generate solution metaprojects.
27673             </summary>
27674             <param name="projectFile">The full path to give to this project.</param>
27675             <param name="projectToInheritFrom">The traversal project from which global properties and tools version will be inherited.</param>
27676             <param name="globalProperties">An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing global properties.</param>
27677         </member>
27678         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.Int32,Microsoft.Build.Evaluation.ProjectCollection)">
27679             <summary>
27680             Creates a ProjectInstance directly.
27681             No intermediate Project object is created.
27682             This is ideal if the project is simply going to be built, and not displayed or edited.
27683             Global properties may be null.
27684             Tools version may be null.
27685             Used by SolutionProjectGenerator so that it can explicitly pass the vsVersionFromSolution in for use in 
27686             determining the sub-toolset version. 
27687             </summary>
27688             <param name="xml">The project root element</param>
27689             <param name="globalProperties">The global properties to use.</param>
27690             <param name="toolsVersion">The tools version.</param>
27691             <param name="visualStudioVersionFromSolution">The version of the solution, used to help determine which sub-toolset to use.</param>
27692             <param name="projectCollection">Project collection</param>
27693             <returns>A new project instance</returns>
27694         </member>
27695         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
27696             <summary>
27697             Creates a mutable ProjectInstance directly, using the specified logging service.
27698             Assumes the project path is already normalized.
27699             Used by the RequestBuilder.
27700             </summary>
27701         </member>
27702         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
27703             <summary>
27704             Creates a mutable ProjectInstance directly, using the specified logging service.
27705             Assumes the project path is already normalized.
27706             Used by this class when generating legacy solution wrappers.
27707             </summary>
27708         </member>
27709         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Evaluation.Project.Data,System.String,System.String,Microsoft.Build.Execution.HostServices,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Execution.ProjectInstanceSettings)">
27710             <summary>
27711             Constructor called by Project's constructor to create a fresh instance.
27712             Properties and items are cloned immediately and only the instance data is stored.
27713             </summary>
27714         </member>
27715         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
27716             <summary>
27717             Constructor for deserialization.
27718             </summary>
27719         </member>
27720         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Execution.ProjectInstance)">
27721             <summary>
27722             Deep clone of this object.
27723             Useful for compiling a single file; or for keeping resolved assembly references between builds
27724             Mutability is same as original.
27725             </summary>
27726         </member>
27727         <member name="M:Microsoft.Build.Execution.ProjectInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.Boolean)">
27728             <summary>
27729             Deep clone of this object.
27730             Useful for compiling a single file; or for keeping resolved assembly references between builds.
27731             </summary>
27732         </member>
27733         <member name="P:Microsoft.Build.Execution.ProjectInstance.GlobalProperties">
27734             <summary>
27735             Global properties this project was evaluated with, if any.
27736             Read only collection.
27737             Traverses project references.
27738             </summary>
27739             <remarks>
27740             This is the publicly exposed getter, that translates into a read-only dead IDictionary&lt;string, string&gt;.
27741             </remarks>
27742         </member>
27743         <member name="P:Microsoft.Build.Execution.ProjectInstance.ToolsVersion">
27744             <summary>
27745             The tools version this project was evaluated with, if any.
27746             Not necessarily the same as the tools version on the Project tag, if any;
27747             it may have been externally specified, for example with a /tv switch.
27748             </summary>
27749         </member>
27750         <member name="P:Microsoft.Build.Execution.ProjectInstance.ItemTypes">
27751             <summary>
27752             Enumerator over item types of the items in this project
27753             </summary>
27754         </member>
27755         <member name="P:Microsoft.Build.Execution.ProjectInstance.Properties">
27756             <summary>
27757             Enumerator over properties in this project
27758             </summary>
27759         </member>
27760         <member name="P:Microsoft.Build.Execution.ProjectInstance.Items">
27761             <summary>
27762             Enumerator over items in this project.
27763             </summary>
27764         </member>
27765         <member name="P:Microsoft.Build.Execution.ProjectInstance.EvaluatedItemElements">
27766             <summary>
27767             Gets a <see cref="T:System.Collections.Generic.List`1"/> object containing evaluated items.
27768             </summary>
27769         </member>
27770         <member name="P:Microsoft.Build.Execution.ProjectInstance.TranslateEntireState">
27771             <summary>
27772             Serialize the entire project instance state.
27773             
27774             When false, only a part of the project instance state is serialized (properties and items).
27775             In this case out of proc nodes re-evaluate the project instance from disk to obtain the un-serialized state.
27776             This partial state recombination may lead to build issues when the project instance state differs from what is on disk.
27777             </summary>
27778         </member>
27779         <member name="P:Microsoft.Build.Execution.ProjectInstance.EvaluationId">
27780             <summary>
27781             The ID of the evaluation that produced this ProjectInstance.
27782             
27783             See <see cref="P:Microsoft.Build.Evaluation.Project.LastEvaluationId"/>.
27784             </summary>
27785         </member>
27786         <member name="P:Microsoft.Build.Execution.ProjectInstance.Directory">
27787             <summary>
27788             The project's root directory, for evaluation of relative paths and
27789             setting the current directory during build.
27790             Is never null: projects not loaded from disk use the current directory from
27791             the time the build started.
27792             </summary>
27793         </member>
27794         <member name="P:Microsoft.Build.Execution.ProjectInstance.FullPath">
27795             <summary>
27796             The full path to the project, for logging.
27797             If the project was never given a path, returns empty string.
27798             </summary>
27799         </member>
27800         <member name="P:Microsoft.Build.Execution.ProjectInstance.ItemDefinitions">
27801             <summary>
27802             Read-only dictionary of item definitions in this project.
27803             Keyed by item type
27804             </summary>
27805         </member>
27806         <member name="P:Microsoft.Build.Execution.ProjectInstance.DefaultTargets">
27807             <summary>
27808             DefaultTargets specified in the project, or
27809             the logically first target if no DefaultTargets is
27810             specified in the project.
27811             The build builds these if no targets are explicitly specified
27812             to build.
27813             </summary>
27814         </member>
27815         <member name="P:Microsoft.Build.Execution.ProjectInstance.InitialTargets">
27816             <summary>
27817             InitialTargets specified in the project, plus those
27818             in all imports, gathered depth-first.
27819             The build runs these before anything else.
27820             </summary>
27821         </member>
27822         <member name="P:Microsoft.Build.Execution.ProjectInstance.Targets">
27823             <summary>
27824             Targets in the project. The build process can find one by looking for its name
27825             in the dictionary.
27826             This collection is read-only.
27827             </summary>
27828         </member>
27829         <member name="P:Microsoft.Build.Execution.ProjectInstance.IsImmutable">
27830             <summary>
27831             Whether the instance is immutable.
27832             This is set permanently when the instance is created.
27833             </summary>
27834         </member>
27835         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#TaskRegistry">
27836             <summary>
27837             Task classes and locations known to this project. 
27838             This is the project-specific task registry, which is consulted before
27839             the toolset's task registry.
27840             Only set during evaluation, so does not check for immutability.
27841             </summary>
27842         </member>
27843         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#Toolset">
27844             <summary>
27845             Gets the Toolset
27846             </summary>
27847         </member>
27848         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#SubToolsetVersion">
27849             <summary>
27850             The sub-toolset version we should use during the build, used to determine which set of sub-toolset
27851             properties we should merge into this toolset. 
27852             </summary>
27853         </member>
27854         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#ExplicitToolsVersion">
27855             <summary>
27856             The externally specified tools version, if any.
27857             For example, the tools version from a /tv switch.
27858             Not necessarily the same as the tools version from the project tag or of the toolset used.
27859             May be null.
27860             Flows through to called projects.
27861             </summary>
27862         </member>
27863         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#GlobalPropertiesDictionary">
27864             <summary>
27865             Gets the global properties
27866             </summary>
27867         </member>
27868         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#GlobalPropertiesToTreatAsLocal">
27869             <summary>
27870             List of names of the properties that, while global, are still treated as overridable 
27871             </summary>
27872         </member>
27873         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#Properties">
27874             <summary>
27875             Gets the global properties
27876             </summary>
27877         </member>
27878         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#ItemDefinitionsEnumerable">
27879             <summary>
27880             Gets the global properties
27881             </summary>
27882         </member>
27883         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#Items">
27884             <summary>
27885             Gets the items
27886             </summary>
27887         </member>
27888         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#InitialTargets">
27889             <summary>
27890             Sets the initial targets
27891             Only set during evaluation, so does not check for immutability.
27892             </summary>
27893         </member>
27894         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#DefaultTargets">
27895             <summary>
27896             Gets or sets the default targets
27897             Only set during evaluation, so does not check for immutability.
27898             </summary>
27899         </member>
27900         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#BeforeTargets">
27901             <summary>
27902             Gets or sets the before targets
27903             Only set during evaluation, so does not check for immutability.
27904             </summary>
27905         </member>
27906         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AfterTargets">
27907             <summary>
27908             Gets or sets the after targets
27909             Only set during evaluation, so does not check for immutability.
27910             </summary>
27911         </member>
27912         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#ConditionedProperties">
27913             <summary>
27914             List of possible values for properties inferred from certain conditions,
27915             keyed by the property name.
27916             </summary>
27917             <remarks>
27918             Because ShouldEvaluateForDesignTime returns false, this should not be called.
27919             </remarks>
27920         </member>
27921         <member name="P:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#ShouldEvaluateForDesignTime">
27922             <summary>
27923             Whether evaluation should collect items ignoring condition,
27924             as well as items respecting condition; and collect
27925             conditioned properties, as well as regular properties
27926             </summary>
27927         </member>
27928         <member name="P:Microsoft.Build.Execution.ProjectInstance.ProjectFileLocation">
27929             <summary>
27930             Location of the originating file itself, not any specific content within it.
27931             Never returns null, even if the file has not got a path yet.
27932             </summary>
27933         </member>
27934         <member name="P:Microsoft.Build.Execution.ProjectInstance.GlobalPropertiesDictionary">
27935             <summary>
27936             Gets the global properties this project was evaluated with, if any.
27937             Traverses project references.
27938             </summary>
27939         </member>
27940         <member name="P:Microsoft.Build.Execution.ProjectInstance.Toolset">
27941             <summary>
27942             The tools version we should use during the build, used to determine which toolset we should access.
27943             </summary>
27944         </member>
27945         <member name="P:Microsoft.Build.Execution.ProjectInstance.UsingDifferentToolsVersionFromProjectFile">
27946             <summary>
27947             If we are treating a missing toolset as the current ToolsVersion
27948             </summary>
27949         </member>
27950         <member name="P:Microsoft.Build.Execution.ProjectInstance.OriginalProjectToolsVersion">
27951             <summary>
27952             The toolsversion that was originally specified on the project's root element
27953             </summary>
27954         </member>
27955         <member name="P:Microsoft.Build.Execution.ProjectInstance.ExplicitToolsVersion">
27956             <summary>
27957             The externally specified tools version, if any.
27958             For example, the tools version from a /tv switch.
27959             Not necessarily the same as the tools version from the project tag or of the toolset used.
27960             May be null.
27961             Flows through to called projects.
27962             </summary>
27963         </member>
27964         <member name="P:Microsoft.Build.Execution.ProjectInstance.ExplicitToolsVersionSpecified">
27965             <summary>
27966             Whether the tools version used originated from an explicit specification,
27967             for example from an MSBuild task or /tv switch.
27968             </summary>
27969         </member>
27970         <member name="P:Microsoft.Build.Execution.ProjectInstance.SubToolsetVersion">
27971             <summary>
27972             The sub-toolset version we should use during the build, used to determine which set of sub-toolset
27973             properties we should merge into this toolset. 
27974             </summary>
27975         </member>
27976         <member name="P:Microsoft.Build.Execution.ProjectInstance.PropertiesToBuildWith">
27977             <summary>
27978             Actual collection of properties in this project,
27979             for the build to start with.
27980             </summary>
27981         </member>
27982         <member name="P:Microsoft.Build.Execution.ProjectInstance.ItemsToBuildWith">
27983             <summary>
27984             Actual collection of items in this project,
27985             for the build to start with.
27986             </summary>
27987         </member>
27988         <member name="P:Microsoft.Build.Execution.ProjectInstance.InitialGlobalsForDebugging">
27989             <summary>
27990             Items, properties and other project level values to display
27991             in the debugger, if we are being debugged.
27992             If not debugging, this is null.
27993             </summary>
27994         </member>
27995         <member name="P:Microsoft.Build.Execution.ProjectInstance.TaskRegistry">
27996             <summary>
27997             Task classes and locations known to this project. 
27998             This is the project-specific task registry, which is consulted before
27999             the toolset's task registry.
28000             </summary>
28001             <remarks>
28002             UsingTask tags have already been evaluated and entered into this task registry.
28003             </remarks>
28004         </member>
28005         <member name="P:Microsoft.Build.Execution.ProjectInstance.TargetsCount">
28006             <summary>
28007             Number of targets in the project. 
28008             </summary>
28009         </member>
28010         <member name="P:Microsoft.Build.Execution.ProjectInstance.ProjectRootElementCache">
28011             <summary>
28012             The project root element cache from the project collection
28013             that began the build. This is a thread-safe object.
28014             It's held here so it can get passed to the build.
28015             </summary>
28016         </member>
28017         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetEvaluatedItemIncludeEscaped(Microsoft.Build.Execution.ProjectItemInstance)">
28018             <summary>
28019             Returns the evaluated, escaped value of the provided item's include.
28020             </summary>
28021         </member>
28022         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetEvaluatedItemIncludeEscaped(Microsoft.Build.Execution.ProjectItemDefinitionInstance)">
28023             <summary>
28024             Returns the evaluated, escaped value of the provided item definition's include.
28025             </summary>
28026         </member>
28027         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetMetadataValueEscaped(Microsoft.Build.Execution.ProjectMetadataInstance)">
28028             <summary>
28029             Gets the escaped value of the provided metadatum. 
28030             </summary>
28031         </member>
28032         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetMetadataValueEscaped(Microsoft.Build.Execution.ProjectItemInstance,System.String)">
28033             <summary>
28034             Gets the escaped value of the metadatum with the provided name on the provided item. 
28035             </summary>
28036         </member>
28037         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetMetadataValueEscaped(Microsoft.Build.Execution.ProjectItemDefinitionInstance,System.String)">
28038             <summary>
28039             Gets the escaped value of the metadatum with the provided name on the provided item definition. 
28040             </summary>
28041         </member>
28042         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetPropertyValueEscaped(Microsoft.Build.Execution.ProjectPropertyInstance)">
28043             <summary>
28044             Get the escaped value of the provided property
28045             </summary>
28046         </member>
28047         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IItemProvider{Microsoft#Build#Execution#ProjectItemInstance}#GetItems(System.String)">
28048             <summary>
28049             Gets items of the specified type.
28050             For internal use.
28051             </summary>
28052             <comments>
28053             Already a readonly collection
28054             </comments>
28055         </member>
28056         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#InitializeForEvaluation(Microsoft.Build.Evaluation.IToolsetProvider)">
28057             <summary>
28058             Initializes the object for evaluation.
28059             Only called during evaluation, so does not check for immutability.
28060             </summary>
28061         </member>
28062         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#FinishEvaluation">
28063             <summary>
28064             Indicates to the data block that evaluation has completed,
28065             so for example it can mark datastructures read-only.
28066             </summary>
28067         </member>
28068         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddItem(Microsoft.Build.Execution.ProjectItemInstance)">
28069             <summary>
28070             Adds a new item
28071             Only called during evaluation, so does not check for immutability.
28072             </summary>
28073         </member>
28074         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddItemIgnoringCondition(Microsoft.Build.Execution.ProjectItemInstance)">
28075             <summary>
28076             Adds a new item to the collection of all items ignoring condition
28077             </summary>
28078             <remarks>
28079             Because ShouldEvaluateForDesignTime returns false, this should not be called.
28080             </remarks>
28081         </member>
28082         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddItemDefinition(System.String)">
28083             <summary>
28084             Adds a new item definition
28085             Only called during evaluation, so does not check for immutability.
28086             </summary>
28087         </member>
28088         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddToAllEvaluatedPropertiesList(Microsoft.Build.Execution.ProjectPropertyInstance)">
28089             <summary>
28090             Properties encountered during evaluation. These are read during the first evaluation pass.
28091             Unlike those returned by the Properties property, these are ordered, and include any properties that
28092             were subsequently overridden by others with the same name. It does not include any 
28093             properties whose conditions did not evaluate to true.
28094             </summary>
28095             <remarks>
28096             Because ShouldEvaluateForDesignTime returns false, this should not be called.
28097             </remarks>
28098         </member>
28099         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddToAllEvaluatedItemDefinitionMetadataList(Microsoft.Build.Execution.ProjectMetadataInstance)">
28100             <summary>
28101             Item definition metadata encountered during evaluation. These are read during the second evaluation pass.
28102             Unlike those returned by the ItemDefinitions property, these are ordered, and include any metadata that
28103             were subsequently overridden by others with the same name and item type. It does not include any 
28104             elements whose conditions did not evaluate to true.
28105             </summary>
28106             <remarks>
28107             Because ShouldEvaluateForDesignTime returns false, this should not be called.
28108             </remarks>
28109         </member>
28110         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddToAllEvaluatedItemsList(Microsoft.Build.Execution.ProjectItemInstance)">
28111             <summary>
28112             Items encountered during evaluation. These are read during the third evaluation pass.
28113             Unlike those returned by the Items property, these are ordered.
28114             It does not include any elements whose conditions did not evaluate to true.
28115             It does not include any items added since the last evaluation.
28116             </summary>
28117             <remarks>
28118             Because ShouldEvaluateForDesignTime returns false, this should not be called.
28119             </remarks>
28120         </member>
28121         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#GetItemDefinition(System.String)">
28122             <summary>
28123             Retrieves an existing item definition, if any.
28124             </summary>
28125         </member>
28126         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#SetProperty(System.String,System.String,System.Boolean,System.Boolean)">
28127             <summary>
28128             Sets a property which does not come from the Xml.
28129             This is where global, environment, and toolset properties are added to the project instance by the evaluator, and we mark them
28130             immutable if we are immutable.
28131             Only called during evaluation, so does not check for immutability.
28132             </summary>
28133         </member>
28134         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#SetProperty(Microsoft.Build.Construction.ProjectPropertyElement,System.String,Microsoft.Build.Execution.ProjectPropertyInstance)">
28135             <summary>
28136             Sets a property which comes from the Xml.
28137             Predecessor is discarded as it is a design time only artefact.
28138             Only called during evaluation, so does not check for immutability.
28139             </summary>
28140         </member>
28141         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#GetTarget(System.String)">
28142             <summary>
28143             Retrieves an existing target, if any.
28144             </summary>
28145         </member>
28146         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#AddTarget(Microsoft.Build.Execution.ProjectTargetInstance)">
28147             <summary>
28148             Adds a new target.
28149             Only called during evaluation, so does not check for immutability.
28150             </summary>
28151         </member>
28152         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#RecordImport(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
28153             <summary>
28154             Record an import opened during evaluation.
28155             Does nothing: not needed for project instances.
28156             </summary>
28157         </member>
28158         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Execution#ProjectPropertyInstance,Microsoft#Build#Execution#ProjectItemInstance,Microsoft#Build#Execution#ProjectMetadataInstance,Microsoft#Build#Execution#ProjectItemDefinitionInstance}#RecordImportWithDuplicates(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
28159             <summary>
28160             Record an import opened during evaluation. Include duplicates
28161             Does nothing: not needed for project instances.
28162             </summary>
28163         </member>
28164         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetProperty(System.String)">
28165             <summary>
28166             Get any property in the item that has the specified name,
28167             otherwise returns null
28168             </summary>
28169         </member>
28170         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#Evaluation#IPropertyProvider{Microsoft#Build#Execution#ProjectPropertyInstance}#GetProperty(System.String,System.Int32,System.Int32)">
28171             <summary>
28172             Get any property in the item that has the specified name,
28173             otherwise returns null.
28174             Name is the segment of the provided string with the provided start and end indexes.
28175             </summary>
28176         </member>
28177         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetPropertyValue(System.String)">
28178             <summary>
28179             Get the value of a property in this project, or 
28180             an empty string if it does not exist.
28181             </summary>
28182             <remarks>
28183             A property with a value of empty string and no property
28184             at all are not distinguished between by this method.
28185             This is because the build does not distinguish between the two.
28186             The reason this method exists when users can simply do GetProperty(..).EvaluatedValue,
28187             is that the caller would have to check for null every time. For properties, empty and undefined are 
28188             not distinguished, so it much more useful to also have a method that returns empty string in
28189             either case.
28190             This function returns the unescaped value.
28191             </remarks>
28192         </member>
28193         <member name="M:Microsoft.Build.Execution.ProjectInstance.SetProperty(System.String,System.String)">
28194             <summary>
28195             Add a property with the specified name and value.
28196             Overwrites any property with the same name already in the collection.
28197             </summary>
28198             <remarks>
28199             We don't take a ProjectPropertyInstance to make sure we don't have one that's already
28200             in use by another ProjectPropertyInstance.
28201             </remarks>
28202         </member>
28203         <member name="M:Microsoft.Build.Execution.ProjectInstance.AddItem(System.String,System.String)">
28204             <summary>
28205             Adds an item with no metadata to the project
28206             </summary>
28207             <remarks>
28208             We don't take a ProjectItemInstance to make sure we don't have one that's already
28209             in use by another ProjectInstance.
28210             </remarks>
28211             <comments>
28212             For purposes of declaring the project that defined this item (for use with e.g. the 
28213             DeclaringProject* metadata), the entrypoint project is used for synthesized items 
28214             like those added by this API. 
28215             </comments>
28216         </member>
28217         <member name="M:Microsoft.Build.Execution.ProjectInstance.AddItem(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
28218             <summary>
28219             Adds an item with metadata to the project.
28220             Metadata may be null.
28221             </summary>
28222             <remarks>
28223             We don't take a ProjectItemInstance to make sure we don't have one that's already
28224             in use by another ProjectInstance.
28225             </remarks>
28226             <comments>
28227             For purposes of declaring the project that defined this item (for use with e.g. the 
28228             DeclaringProject* metadata), the entrypoint project is used for synthesized items 
28229             like those added by this API. 
28230             </comments>
28231         </member>
28232         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetItems(System.String)">
28233             <summary>
28234             Get a list of all the items in the project of the specified
28235             type, or an empty list if there are none.
28236             This is a read-only list.
28237             </summary>
28238         </member>
28239         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetItemsByItemTypeAndEvaluatedInclude(System.String,System.String)">
28240             <summary>
28241             get items by item type and evaluated include value
28242             </summary>
28243         </member>
28244         <member name="M:Microsoft.Build.Execution.ProjectInstance.RemoveItem(Microsoft.Build.Execution.ProjectItemInstance)">
28245             <summary>
28246             Removes an item from the project, if present.
28247             Returns true if it was present, false otherwise.
28248             </summary>
28249         </member>
28250         <member name="M:Microsoft.Build.Execution.ProjectInstance.RemoveProperty(System.String)">
28251             <summary>
28252             Removes any property with the specified name.
28253             Returns true if the property had a value (possibly empty string), otherwise false.
28254             </summary>
28255         </member>
28256         <member name="M:Microsoft.Build.Execution.ProjectInstance.DeepCopy">
28257             <summary>
28258             Create an independent, deep clone of this object and everything in it.
28259             Useful for compiling a single file; or for keeping build results between builds.
28260             Clone has the same mutability as the original.
28261             </summary>
28262         </member>
28263         <member name="M:Microsoft.Build.Execution.ProjectInstance.DeepCopy(System.Boolean)">
28264             <summary>
28265             Create an independent, deep clone of this object and everything in it, with
28266             specified mutability.
28267             Useful for compiling a single file; or for keeping build results between builds.
28268             </summary>
28269         </member>
28270         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build">
28271             <summary>
28272             Build default target/s with loggers of the project collection.
28273             Returns true on success, false on failure.
28274             Only valid if mutable.
28275             </summary>
28276         </member>
28277         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
28278             <summary>
28279             Build default target/s with specified loggers.
28280             Returns true on success, false on failure.
28281             Loggers may be null.
28282             Only valid if mutable.
28283             </summary>
28284             <remarks>
28285             If any of the loggers supplied are already attached to the logging service we
28286             were passed, throws InvalidOperationException.
28287             </remarks>
28288         </member>
28289         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
28290             <summary>
28291             Build default target/s with specified loggers.
28292             Returns true on success, false on failure.
28293             Loggers may be null.
28294             Only valid if mutable.
28295             </summary>
28296             <remarks>
28297             If any of the loggers supplied are already attached to the logging service we
28298             were passed, throws InvalidOperationException.
28299             </remarks>
28300         </member>
28301         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String,System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
28302             <summary>
28303             Build a target with specified loggers.
28304             Returns true on success, false on failure.
28305             Target may be null.
28306             Loggers may be null.
28307             Only valid if mutable.
28308             </summary>
28309             <remarks>
28310             If any of the loggers supplied are already attached to the logging service we
28311             were passed, throws InvalidOperationException.
28312             </remarks>
28313         </member>
28314         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String,System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
28315             <summary>
28316             Build a target with specified loggers.
28317             Returns true on success, false on failure.
28318             Target may be null.
28319             Loggers may be null.
28320             Remote loggers may be null.
28321             Only valid if mutable.
28322             </summary>
28323             <remarks>
28324             If any of the loggers supplied are already attached to the logging service we
28325             were passed, throws InvalidOperationException.
28326             </remarks>
28327         </member>
28328         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
28329             <summary>
28330             Build a list of targets with specified loggers.
28331             Returns true on success, false on failure.
28332             Targets may be null.
28333             Loggers may be null.
28334             Only valid if mutable.
28335             </summary>
28336             <remarks>
28337             If any of the loggers supplied are already attached to the logging service we
28338             were passed, throws InvalidOperationException.
28339             </remarks>
28340         </member>
28341         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
28342             <summary>
28343             Build a list of targets with specified loggers.
28344             Returns true on success, false on failure.
28345             Targets may be null.
28346             Loggers may be null.
28347             Remote loggers may be null.
28348             Only valid if mutable.
28349             </summary>
28350             <remarks>
28351             If any of the loggers supplied are already attached to the logging service we
28352             were passed, throws InvalidOperationException.
28353             </remarks>
28354         </member>
28355         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Execution.TargetResult}@)">
28356             <summary>
28357             Build a list of targets with specified loggers.
28358             Returns true on success, false on failure.
28359             Targets may be null.
28360             Loggers may be null.
28361             Only valid if mutable.
28362             </summary>
28363             <remarks>
28364             If any of the loggers supplied are already attached to the logging service we
28365             were passed, throws InvalidOperationException.
28366             </remarks>
28367         </member>
28368         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord},System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Execution.TargetResult}@)">
28369             <summary>
28370             Build a list of targets with specified loggers.
28371             Returns true on success, false on failure.
28372             Targets may be null.
28373             Loggers may be null.
28374             Remote loggers may be null.
28375             Only valid if mutable.
28376             </summary>
28377             <remarks>
28378             If any of the loggers supplied are already attached to the logging service we
28379             were passed, throws InvalidOperationException.
28380             </remarks>
28381         </member>
28382         <member name="M:Microsoft.Build.Execution.ProjectInstance.ExpandString(System.String)">
28383             <summary>
28384             Evaluates the provided string by expanding items and properties,
28385             using the current items and properties available.
28386             This is useful for some hosts, or for the debugger immediate window.
28387             Does not expand bare metadata expressions.
28388             </summary>
28389             <comment>
28390             Not for internal use.
28391             </comment>
28392         </member>
28393         <member name="M:Microsoft.Build.Execution.ProjectInstance.EvaluateCondition(System.String)">
28394             <summary>
28395             Evaluates the provided string as a condition by expanding items and properties,
28396             using the current items and properties available, then doing a logical evaluation.
28397             This is useful for the immediate window.
28398             Does not expand bare metadata expressions.
28399             </summary>
28400             <comment>
28401             Not for internal use.
28402             </comment>
28403         </member>
28404         <member name="M:Microsoft.Build.Execution.ProjectInstance.ToProjectRootElement">
28405             <summary>
28406             Creates a ProjectRootElement from the contents of this ProjectInstance.
28407             </summary>
28408             <returns>A ProjectRootElement which represents this instance.</returns>
28409         </member>
28410         <member name="M:Microsoft.Build.Execution.ProjectInstance.UpdateStateFrom(Microsoft.Build.Execution.ProjectInstance)">
28411             <summary>
28412             Replaces the project state (<see cref="P:Microsoft.Build.Execution.ProjectInstance.GlobalProperties"/>, <see cref="P:Microsoft.Build.Execution.ProjectInstance.Properties"/> and <see cref="P:Microsoft.Build.Execution.ProjectInstance.Items"/>) with that
28413             from the <see cref="T:Microsoft.Build.Execution.ProjectInstance"/> provided.
28414             </summary>
28415             <param name="projectState"><see cref="T:Microsoft.Build.Execution.ProjectInstance"/> with the state to use.</param>
28416         </member>
28417         <member name="M:Microsoft.Build.Execution.ProjectInstance.LateInitialize(Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Execution.HostServices)">
28418             <summary>
28419             When project instances get serialized between nodes, they need to be initialized with node specific information.
28420             The node specific information cannot come from the constructor, because that information is not available to INodePacketTranslators
28421             </summary>
28422         </member>
28423         <member name="M:Microsoft.Build.Execution.ProjectInstance.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
28424             <summary>
28425             Translate the project instance to or from a stream.
28426             Only translates global properties, properties, items, and mutability.
28427             </summary>
28428         </member>
28429         <member name="M:Microsoft.Build.Execution.ProjectInstance.LoadSolutionForBuild(System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.String,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Boolean,System.Collections.Generic.IReadOnlyCollection{System.String})">
28430             <summary>
28431             Creates a set of project instances which represent the project dependency graph for a solution build.
28432             </summary>
28433         </member>
28434         <member name="M:Microsoft.Build.Execution.ProjectInstance.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
28435             <summary>
28436             Factory for deserialization.
28437             </summary>
28438         </member>
28439         <member name="M:Microsoft.Build.Execution.ProjectInstance.VerifyThrowNotImmutable(System.Boolean)">
28440             <summary>
28441             Throws invalid operation exception if the project instance is immutable.
28442             Called before an edit.
28443             </summary>
28444         </member>
28445         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord},Microsoft.Build.BackEnd.Logging.ILoggingService,System.Int32,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Execution.TargetResult}@)">
28446             <summary>
28447             Builds a list of targets with the specified loggers.
28448             </summary>
28449         </member>
28450         <member name="M:Microsoft.Build.Execution.ProjectInstance.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord},Microsoft.Build.BackEnd.Logging.ILoggingService,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Execution.TargetResult}@)">
28451             <summary>
28452             Builds a list of targets with the specified loggers.
28453             </summary>
28454         </member>
28455         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetTargetsWhichRunBefore(System.String)">
28456             <summary>
28457             Retrieves the list of targets which should run before the specified target.
28458             Never returns null.
28459             </summary>
28460         </member>
28461         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetTargetsWhichRunAfter(System.String)">
28462             <summary>
28463             Retrieves the list of targets which should run after the specified target.
28464             Never returns null.
28465             </summary>
28466         </member>
28467         <member name="M:Microsoft.Build.Execution.ProjectInstance.Cache(Microsoft.Build.BackEnd.INodePacketTranslator)">
28468             <summary>
28469             Cache the contents of this project instance to the translator.
28470             The object is retained, but the bulk of its content is released.
28471             </summary>
28472         </member>
28473         <member name="M:Microsoft.Build.Execution.ProjectInstance.RetrieveFromCache(Microsoft.Build.BackEnd.INodePacketTranslator)">
28474             <summary>
28475             Retrieve the contents of this project from the translator.
28476             </summary>
28477         </member>
28478         <member name="M:Microsoft.Build.Execution.ProjectInstance.AddTarget(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.Boolean)">
28479             <summary>
28480             Adds the specified target to the instance.
28481             </summary>
28482         </member>
28483         <member name="M:Microsoft.Build.Execution.ProjectInstance.RemoveTarget(System.String)">
28484             <summary>
28485             Removes the specified target from the instance.
28486             </summary>
28487         </member>
28488         <member name="M:Microsoft.Build.Execution.ProjectInstance.VerifyThrowNotImmutable">
28489             <summary>
28490             Throws invalid operation exception if the project instance is immutable.
28491             Called before an edit.
28492             </summary>
28493         </member>
28494         <member name="M:Microsoft.Build.Execution.ProjectInstance.GenerateSolutionWrapper(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Collections.Generic.IReadOnlyCollection{System.String})">
28495             <summary>
28496             Generate a 4.0+-style solution wrapper project.
28497             </summary>
28498             <param name="projectFile">The solution file to generate a wrapper for.</param>
28499             <param name="globalProperties">The global properties of this solution.</param>
28500             <param name="toolsVersion">The ToolsVersion to use when generating the wrapper.</param>
28501             <param name="loggingService">The logging service used to log messages etc. from the solution wrapper generator.</param>
28502             <param name="projectBuildEventContext">The build event context in which this project is being constructed.</param>
28503             <param name="targetNames">A collection of target names that the user requested be built.</param>
28504             <returns>The ProjectRootElement for the root traversal and each of the metaprojects.</returns>
28505         </member>
28506         <member name="M:Microsoft.Build.Execution.ProjectInstance.GenerateSolutionWrapperUsingOldOM(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.Boolean)">
28507             <summary>
28508             Spawn the old engine to generate a solution wrapper project, so that our build ordering is somewhat more correct 
28509             when solutions with toolsVersions &lt; 4.0 are passed to us. 
28510             </summary>
28511             <comment>
28512             #############################################################################################
28513             #### Segregated into another method to avoid loading the old Engine in the regular case. ####
28514             ####################### Do not move back in to the main code path! ##########################
28515             #############################################################################################
28516              We have marked this method as NoInlining because we do not want Microsoft.Build.Engine.dll to be loaded unless we really execute this code path
28517             </comment>
28518             <param name="projectFile">The solution file to generate a wrapper for.</param>
28519             <param name="globalProperties">The global properties of this solution.</param>
28520             <param name="toolsVersion">The ToolsVersion to use when generating the wrapper.</param>
28521             <param name="projectRootElementCache">The root element cache which should be used for the generated project.</param>
28522             <param name="buildParameters">The build parameters.</param>
28523             <param name="loggingService">The logging service used to log messages etc. from the solution wrapper generator.</param>
28524             <param name="projectBuildEventContext">The build event context in which this project is being constructed.</param>
28525             <param name="isExplicitlyLoaded"><code>true</code> if the project is explicitly loaded, otherwise <code>false</code>.</param>
28526             <returns>An appropriate ProjectRootElement</returns>
28527         </member>
28528         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateCloneDictionary``1(System.Collections.Generic.IDictionary{System.String,``0},System.StringComparer)">
28529             <summary>
28530             Creates a copy of a dictionary and returns a read-only dictionary around the results.
28531             </summary>
28532             <typeparam name="TValue">The value stored in the dictionary</typeparam>
28533             <param name="dictionary">Dictionary to clone.</param>
28534             <param name="strComparer">The <see cref="T:System.StringComparer"/> to use for the cloned dictionary.</param>
28535         </member>
28536         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateCloneDictionary``1(System.Collections.Generic.IDictionary{System.String,``0})">
28537             <summary>
28538             Creates a copy of a dictionary and returns a read-only dictionary around the results.
28539             </summary>
28540             <typeparam name="TValue">The value stored in the dictionary</typeparam>
28541             <param name="dictionary">Dictionary to clone.</param>
28542         </member>
28543         <member name="M:Microsoft.Build.Execution.ProjectInstance.Initialize(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,System.Int32,Microsoft.Build.Execution.BuildParameters,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.BackEnd.SdkResolution)">
28544             <summary>
28545             Common code for the constructors that evaluate directly.
28546             Global properties may be null.
28547             Tools version may be null.
28548             Does not set mutability.
28549             </summary>
28550         </member>
28551         <member name="M:Microsoft.Build.Execution.ProjectInstance.GetItemsByEvaluatedInclude(System.String)">
28552             <summary>
28553             Get items by evaluatedInclude value
28554             </summary>
28555         </member>
28556         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateTargetsSnapshot(Microsoft.Build.Evaluation.Project.Data)">
28557             <summary>
28558             Create various target snapshots
28559             </summary>
28560         </member>
28561         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateEnvironmentVariablePropertiesSnapshot(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
28562             <summary>
28563             Create environment variable properties snapshot
28564             </summary>
28565         </member>
28566         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateGlobalPropertiesSnapshot(Microsoft.Build.Evaluation.Project.Data)">
28567             <summary>
28568             Create global properties snapshot
28569             </summary>
28570         </member>
28571         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateEvaluatedIncludeSnapshotIfRequested(System.Boolean,Microsoft.Build.Evaluation.Project.Data,System.Collections.Generic.Dictionary{Microsoft.Build.Evaluation.ProjectItem,Microsoft.Build.Execution.ProjectItemInstance})">
28572             <summary>
28573             Create evaluated include cache snapshot
28574             </summary>
28575         </member>
28576         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateItemsSnapshot(Microsoft.Build.Evaluation.Project.Data,System.Boolean)">
28577             <summary>
28578             Create Items snapshot
28579             </summary>
28580         </member>
28581         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreateItemDefinitionsSnapshot(Microsoft.Build.Evaluation.Project.Data)">
28582             <summary>
28583             Create ItemDefinitions snapshot
28584             </summary>
28585         </member>
28586         <member name="M:Microsoft.Build.Execution.ProjectInstance.CreatePropertiesSnapshot(Microsoft.Build.Evaluation.Project.Data,System.Boolean)">
28587             <summary>
28588             create property snapshot
28589             </summary>
28590         </member>
28591         <member name="T:Microsoft.Build.Execution.ProjectItemDefinitionInstance">
28592             <summary>
28593             An evaluated item definition for a particular item-type, divested of all references to XML.
28594             Immutable.
28595             </summary>
28596         </member>
28597         <member name="F:Microsoft.Build.Execution.ProjectItemDefinitionInstance._itemType">
28598             <summary>
28599             Item type, for example "Compile", that this item definition applies to
28600             </summary>
28601         </member>
28602         <member name="F:Microsoft.Build.Execution.ProjectItemDefinitionInstance._metadata">
28603             <summary>
28604             Collection of metadata that link the XML metadata and instance metadata
28605             Since evaluation has occurred, this is an unordered collection.
28606             Is never null or empty.
28607             </summary>
28608         </member>
28609         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String)">
28610             <summary>
28611             Constructs an empty project item definition instance.
28612             </summary>
28613             <param name="projectInstance">The project instance to which this item definition belongs.</param>
28614             <param name="itemType">The type of item this definition object represents.</param>
28615         </member>
28616         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Evaluation.ProjectItemDefinition)">
28617             <summary>
28618             Called when a ProjectInstance is created.
28619             </summary>
28620             <remarks>
28621             Assumes that the itemType string originated in a ProjectItemDefinitionElement and therefore
28622             was already validated.
28623             </remarks>
28624         </member>
28625         <member name="P:Microsoft.Build.Execution.ProjectItemDefinitionInstance.ItemType">
28626             <summary>
28627             Type of this item definition.
28628             </summary>
28629         </member>
28630         <member name="P:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Metadata">
28631             <summary>
28632             Metadata on the item definition.
28633             If there is no metadata, returns empty collection.
28634             This is a read-only collection.
28635             </summary>
28636         </member>
28637         <member name="P:Microsoft.Build.Execution.ProjectItemDefinitionInstance.MetadataCount">
28638             <summary>
28639             Number of pieces of metadata on this item definition.
28640             </summary>
28641         </member>
28642         <member name="P:Microsoft.Build.Execution.ProjectItemDefinitionInstance.MetadataNames">
28643             <summary>
28644             Names of all metadata on this item definition
28645             </summary>
28646         </member>
28647         <member name="P:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Microsoft#Build#Collections#IKeyed#Key">
28648             <summary>
28649             Implementation of IKeyed exposing the item type, so these 
28650             can be put in a dictionary conveniently.
28651             </summary>
28652         </member>
28653         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.GetMetadata(System.String)">
28654             <summary>
28655             Get any metadata in the item that has the specified name,
28656             otherwise returns null
28657             </summary>
28658         </member>
28659         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String)">
28660             <summary>
28661             Returns the specified metadata.
28662             </summary>
28663             <param name="name">The metadata name.</param>
28664             <returns>The metadata value, or an empty string if none exists.</returns>
28665         </member>
28666         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String,System.String)">
28667             <summary>
28668             Returns the metadata for the specified item type.
28669             </summary>
28670             <param name="specifiedItemType">The item type.</param>
28671             <param name="name">The metadata name.</param>
28672             <returns>The metadata value, or an empty string if none exists.</returns>
28673         </member>
28674         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValueIfPresent(System.String,System.String)">
28675             <summary>
28676             Returns the metadata for the specified item type.
28677             </summary>
28678             <param name="specifiedItemType">The item type.</param>
28679             <param name="name">The metadata name.</param>
28680             <returns>The metadata value, or an null if none exists.</returns>
28681         </member>
28682         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.Microsoft#Build#Evaluation#IItemDefinition{Microsoft#Build#Execution#ProjectMetadataInstance}#SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String,Microsoft.Build.Execution.ProjectMetadataInstance)">
28683             <summary>
28684             Sets a new metadata value.  Called by the evaluator only.
28685             Discards predecessor as this information is only useful at design time.
28686             </summary>
28687         </member>
28688         <member name="M:Microsoft.Build.Execution.ProjectItemDefinitionInstance.ToProjectItemDefinitionElement(Microsoft.Build.Construction.ProjectElementContainer)">
28689             <summary>
28690             Creates a ProjectItemDefinitionElement representing this instance.
28691             </summary>
28692         </member>
28693         <member name="T:Microsoft.Build.Execution.ProjectItemGroupTaskInstance">
28694             <summary>
28695             Wraps an unevaluated itemgroup under a target.
28696             Immutable.
28697             </summary>
28698         </member>
28699         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskInstance._condition">
28700             <summary>
28701             Condition, if any
28702             </summary>
28703         </member>
28704         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskInstance._items">
28705             <summary>
28706             Child items.
28707             Not ProjectItemInstances, as these are evaluated during the build.
28708             </summary>
28709         </member>
28710         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskInstance._location">
28711             <summary>
28712             Location of this element
28713             </summary>
28714         </member>
28715         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskInstance._conditionLocation">
28716             <summary>
28717             Location of the condition, if any
28718             </summary>
28719         </member>
28720         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.#ctor(System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,System.Collections.Generic.List{Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance})">
28721             <summary>
28722             Constructor called by the Evaluator.
28723             Assumes ProjectItemGroupTaskItemInstance is an immutable type.
28724             </summary>
28725         </member>
28726         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.#ctor(Microsoft.Build.Execution.ProjectItemGroupTaskInstance)">
28727             <summary>
28728             Cloning constructor
28729             </summary>
28730         </member>
28731         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.Condition">
28732             <summary>
28733             Condition, if any.
28734             May be empty string.
28735             </summary>
28736         </member>
28737         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.Items">
28738             <summary>
28739             Child items
28740             </summary>
28741         </member>
28742         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.Location">
28743             <summary>
28744             Location of the original element
28745             </summary>
28746         </member>
28747         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.ConditionLocation">
28748             <summary>
28749             Location of the condition, if any
28750             </summary>
28751         </member>
28752         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskInstance.DeepClone">
28753             <summary>
28754             Deep clone
28755             </summary>
28756         </member>
28757         <member name="T:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance">
28758             <summary>
28759             Wraps an unevaluated item under an itemgroup in a target.
28760             Immutable.
28761             </summary>
28762         </member>
28763         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._itemType">
28764             <summary>
28765             Item type, for example "Compile"
28766             </summary>
28767         </member>
28768         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._include">
28769             <summary>
28770             Unevaluated include
28771             </summary>
28772         </member>
28773         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._exclude">
28774             <summary>
28775             Unevaluated exclude
28776             </summary>
28777         </member>
28778         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._remove">
28779             <summary>
28780             Unevaluated remove
28781             </summary>
28782         </member>
28783         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._keepMetadata">
28784             <summary>
28785             The list of metadata to keep.
28786             </summary>
28787         </member>
28788         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._removeMetadata">
28789             <summary>
28790             The list of metadata to remove.
28791             </summary>
28792         </member>
28793         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._keepDuplicates">
28794             <summary>
28795             True to remove duplicates during the add.
28796             </summary>
28797         </member>
28798         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._condition">
28799             <summary>
28800             Unevaluated condition
28801             </summary>
28802         </member>
28803         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._location">
28804             <summary>
28805             Location of this element
28806             </summary>
28807         </member>
28808         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._includeLocation">
28809             <summary>
28810             Location of the include, if any
28811             </summary>
28812         </member>
28813         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._excludeLocation">
28814             <summary>
28815             Location of the exclude, if any
28816             </summary>
28817         </member>
28818         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._removeLocation">
28819             <summary>
28820             Location of the remove, if any
28821             </summary>
28822         </member>
28823         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._keepMetadataLocation">
28824             <summary>
28825             Location of keepMetadata, if any
28826             </summary>
28827         </member>
28828         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._removeMetadataLocation">
28829             <summary>
28830             Location of removeMetadata, if any
28831             </summary>
28832         </member>
28833         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._keepDuplicatesLocation">
28834             <summary>
28835             Location of keepDuplicates, if any
28836             </summary>
28837         </member>
28838         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._conditionLocation">
28839             <summary>
28840             Location of the condition, if any
28841             </summary>
28842         </member>
28843         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance._metadata">
28844             <summary>
28845             Ordered collection of unevaluated metadata.
28846             May be null.
28847             </summary>
28848             <remarks>
28849             There is no need for a PropertyDictionary here as the build always
28850             walks through all metadata sequentially.
28851             Lazily created, as so many items have no metadata at all.
28852             </remarks>
28853         </member>
28854         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.#ctor(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,System.Collections.Generic.List{Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance})">
28855             <summary>
28856             Constructor called by the Evaluator.
28857             Metadata may be null, indicating no metadata.
28858             Metadata collection is ordered.
28859             Assumes ProjectItemGroupTaskMetadataInstance is an immutable type.
28860             </summary>
28861         </member>
28862         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.#ctor(Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance)">
28863             <summary>
28864             Cloning constructor
28865             </summary>
28866         </member>
28867         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.ItemType">
28868             <summary>
28869             Item type, for example "Compile"
28870             </summary>
28871         </member>
28872         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Include">
28873             <summary>
28874             Unevaluated include value
28875             </summary>
28876         </member>
28877         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Exclude">
28878             <summary>
28879             Unevaluated exclude value
28880             </summary>
28881         </member>
28882         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Remove">
28883             <summary>
28884             Unevaluated remove value
28885             </summary>
28886         </member>
28887         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.KeepMetadata">
28888             <summary>
28889             Unevaluated keepMetadata value
28890             </summary>
28891         </member>
28892         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.RemoveMetadata">
28893             <summary>
28894             Unevaluated removeMetadata value
28895             </summary>
28896         </member>
28897         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.KeepDuplicates">
28898             <summary>
28899             Unevaluated keepDuplicates value
28900             </summary>
28901         </member>
28902         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Condition">
28903             <summary>
28904             Unevaluated condition value
28905             </summary>
28906         </member>
28907         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Metadata">
28908             <summary>
28909             Ordered collection of unevaluated metadata on the item.
28910             If there is no metadata, returns an empty collection.
28911             </summary>IEnumerable
28912         </member>
28913         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.Location">
28914             <summary>
28915             Location of the element
28916             </summary>
28917         </member>
28918         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.IncludeLocation">
28919             <summary>
28920             Location of the include attribute, if any
28921             </summary>
28922         </member>
28923         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.ExcludeLocation">
28924             <summary>
28925             Location of the exclude attribute, if any
28926             </summary>
28927         </member>
28928         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.RemoveLocation">
28929             <summary>
28930             Location of the remove attribute, if any
28931             </summary>
28932         </member>
28933         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.KeepMetadataLocation">
28934             <summary>
28935             Location of the keepMetadata attribute, if any
28936             </summary>
28937         </member>
28938         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.RemoveMetadataLocation">
28939             <summary>
28940             Location of the removeMetadata attribute, if any
28941             </summary>
28942         </member>
28943         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.KeepDuplicatesLocation">
28944             <summary>
28945             Location of the keepDuplicates attribute, if any
28946             </summary>
28947         </member>
28948         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.ConditionLocation">
28949             <summary>
28950             Location of the condition attribute if any
28951             </summary>
28952         </member>
28953         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskItemInstance.DeepClone">
28954             <summary>
28955             Deep clone
28956             </summary>
28957         </member>
28958         <member name="T:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance">
28959             <summary>
28960             Wraps an unevaluated metadatum under an item in an itemgroup in a target
28961             Immutable.
28962             </summary>
28963         </member>
28964         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance._name">
28965             <summary>
28966             Name of the metadatum
28967             </summary>
28968         </member>
28969         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance._value">
28970             <summary>
28971             Unevaluated value
28972             </summary>
28973         </member>
28974         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance._condition">
28975             <summary>
28976             Unevaluated condition
28977             </summary>
28978         </member>
28979         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance._location">
28980             <summary>
28981             Location of this element
28982             </summary>
28983         </member>
28984         <member name="F:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance._conditionLocation">
28985             <summary>
28986             Location of the condition, if any
28987             </summary>
28988         </member>
28989         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation)">
28990             <summary>
28991             Constructor called by the Evaluator.
28992             </summary>
28993         </member>
28994         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.#ctor(Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance)">
28995             <summary>
28996             Cloning constructor
28997             </summary>
28998         </member>
28999         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.Name">
29000             <summary>
29001             Name of the metadatum
29002             </summary>
29003         </member>
29004         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.Value">
29005             <summary>
29006             Unevaluated value
29007             </summary>
29008         </member>
29009         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.Condition">
29010             <summary>
29011             Unevaluated condition value
29012             </summary>
29013         </member>
29014         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.Location">
29015             <summary>
29016             Location of the element
29017             </summary>
29018         </member>
29019         <member name="P:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.ConditionLocation">
29020             <summary>
29021             Location of the condition attribute if any
29022             </summary>
29023         </member>
29024         <member name="M:Microsoft.Build.Execution.ProjectItemGroupTaskMetadataInstance.DeepClone">
29025             <summary>
29026             Deep clone
29027             </summary>
29028         </member>
29029         <member name="T:Microsoft.Build.Execution.ProjectItemInstance">
29030             <summary>
29031             Wraps an evaluated item for build purposes
29032             </summary>
29033             <remarks>
29034             Does not store XML location information. That is not needed by the build process as all correctness checks
29035             and evaluation has already been performed, so it is unnecessary bulk.
29036             </remarks>
29037         </member>
29038         <member name="F:Microsoft.Build.Execution.ProjectItemInstance._project">
29039             <summary>
29040             The project instance to which this item belongs.
29041             Never null.
29042             </summary>
29043         </member>
29044         <member name="F:Microsoft.Build.Execution.ProjectItemInstance._itemType">
29045             <summary>
29046             Item type, for example "Compile"
29047             Never null.
29048             </summary>
29049         </member>
29050         <member name="F:Microsoft.Build.Execution.ProjectItemInstance._taskItem">
29051             <summary>
29052             Backing task item holding the other data.
29053             Never null.
29054             </summary>
29055         </member>
29056         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String,System.String,System.String)">
29057             <summary>
29058             Constructor for items with no metadata.
29059             Include may be empty.
29060             Called before the build when virtual items are added, 
29061             and during the build when tasks emit items.
29062             Mutability follows the project.
29063             </summary>
29064         </member>
29065         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String,System.String,System.String,System.String)">
29066             <summary>
29067             Constructor for items with no metadata.
29068             Include may be empty.
29069             Called before the build when virtual items are added, 
29070             and during the build when tasks emit items.
29071             Mutability follows the project.
29072             </summary>
29073         </member>
29074         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String,System.String,System.String,Microsoft.Build.Collections.CopyOnWritePropertyDictionary{Microsoft.Build.Execution.ProjectMetadataInstance},System.Collections.Generic.List{Microsoft.Build.Execution.ProjectItemDefinitionInstance},System.String)">
29075             <summary>
29076             Constructor for items with metadata.
29077             Called before the build when virtual items are added, 
29078             and during the build when tasks emit items.
29079             Include may be empty.
29080             Direct metadata may be null, indicating no metadata. It will be cloned.
29081             Builtin metadata may be null, indicating it has not been populated. It will be cloned.
29082             Inherited item definition metadata may be null. It is assumed to ALREADY HAVE BEEN CLONED.
29083             Mutability follows the project.
29084             </summary>
29085             <remarks>
29086             Not public since the only creation scenario is setting on a project.
29087             </remarks>
29088         </member>
29089         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.String)">
29090             <summary>
29091             Constructor for items with metadata.
29092             Called when a ProjectInstance is created.
29093             Include may be empty.
29094             Direct metadata may be null, indicating no metadata. It will be cloned.
29095             Metadata collection provided is cloned.
29096             Mutability follows the project.
29097             </summary>
29098             <remarks>
29099             Not public since the only creation scenario is setting on a project.
29100             </remarks>
29101         </member>
29102         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectItemInstance)">
29103             <summary>
29104             Cloning constructor, retaining same parentage.
29105             </summary>
29106         </member>
29107         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.Execution.ProjectInstance)">
29108             <summary>
29109             Cloning constructor.
29110             </summary>
29111         </member>
29112         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.#ctor(Microsoft.Build.Execution.ProjectInstance)">
29113             <summary>
29114             Constructor for serialization
29115             </summary>
29116         </member>
29117         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Project">
29118             <summary>
29119             Owning project
29120             </summary>
29121         </member>
29122         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.ItemType">
29123             <summary>
29124             Item type, for example "Compile"
29125             </summary>
29126             <remarks>
29127             This cannot be set, as it is used as the key into 
29128             the project's items table.
29129             </remarks>
29130         </member>
29131         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.EvaluatedInclude">
29132             <summary>
29133             Evaluated include value.
29134             May be empty string.
29135             </summary>
29136         </member>
29137         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IItem#EvaluatedIncludeEscaped">
29138             <summary>
29139             Evaluated include value, escaped as necessary.
29140             May be empty string.
29141             </summary>
29142         </member>
29143         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem2#EvaluatedIncludeEscaped">
29144             <summary>
29145             Evaluated include value, escaped as necessary.
29146             May be empty string.
29147             </summary>
29148         </member>
29149         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Metadata">
29150             <summary>
29151             Unordered collection of evaluated metadata on the item.
29152             If there is no metadata, returns an empty collection.
29153             Does not include built-in metadata.
29154             Includes any from item definitions.
29155             This is a read-only collection. To modify the metadata, use <see cref="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadata(System.String,System.String)"/>.
29156             </summary>
29157             <comment>
29158             Computed, not necessarily fast.
29159             </comment>
29160         </member>
29161         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.DirectMetadataCount">
29162             <summary>
29163             Number of pieces of metadata on this item
29164             </summary>
29165         </member>
29166         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Collections#IKeyed#Key">
29167             <summary>
29168             Implementation of IKeyed exposing the item type
29169             </summary>
29170         </member>
29171         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.MetadataNames">
29172             <summary>
29173             Returns all the metadata names on this item.
29174             Includes names from any applicable item definitions.
29175             Includes names of built-in metadata.
29176             </summary>
29177             <comment>
29178             Computed, not necessarily fast.
29179             </comment>
29180         </member>
29181         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#ItemSpec">
29182             <summary>
29183             ITaskItem implementation
29184             </summary>
29185         </member>
29186         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#MetadataNames">
29187             <summary>
29188             ITaskItem implementation
29189             </summary>
29190             <comment>
29191             Computed, not necessarily fast.
29192             </comment>
29193         </member>
29194         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.MetadataCount">
29195             <summary>
29196             Returns the number of metadata entries.
29197             Includes any from applicable item definitions.
29198             Includes both custom and built-in metadata.
29199             </summary>
29200             <comment>
29201             Computed, not necessarily fast.
29202             </comment>
29203         </member>
29204         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IItem#ProjectDirectory">
29205             <summary>
29206             The directory of the project being built
29207             Never null: If there is no project filename yet, it will use the current directory
29208             </summary>
29209         </member>
29210         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.EqualityComparer">
29211             <summary>
29212             Retrieves the comparer used for determining equality between ProjectItemInstances.
29213             </summary>
29214         </member>
29215         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.ProjectFullPath">
29216             <summary>
29217             The full path to the project file being built
29218             Can be null: if the project hasn't been saved yet it will be null
29219             </summary>
29220         </member>
29221         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.GetMetadata(System.String)">
29222             <summary>
29223             Get any metadata in the item that has the specified name,
29224             otherwise returns null. 
29225             Includes any metadata inherited from item definitions.
29226             Includes any built-in metadata.
29227             </summary>
29228         </member>
29229         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.GetMetadataValue(System.String)">
29230             <summary>
29231             Get the value of a metadata on this item, or 
29232             String.Empty if it does not exist or has no value.
29233             Includes any metadata inherited from item definitions and any built-in metadata.
29234             To determine whether a piece of metadata is actually present
29235             but with an empty value, use <see cref="M:Microsoft.Build.Execution.ProjectItemInstance.HasMetadata(System.String)">HasMetadata</see>.
29236             </summary>
29237         </member>
29238         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.HasMetadata(System.String)">
29239             <summary>
29240             Returns true if a particular piece of metadata is defined on this item (even if
29241             its value is empty string) otherwise false.
29242             This includes built-in metadata and metadata from item definitions.
29243             </summary>
29244             <remarks>
29245             It has to include all of these because it's used for batching, which doesn't
29246             care where the metadata originated.
29247             </remarks>
29248         </member>
29249         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadata(System.String,System.String)">
29250             <summary>
29251             Add a metadata with the specified name and value.
29252             Overwrites any metadata with the same name already in the collection.
29253             </summary>
29254         </member>
29255         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadata(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
29256             <summary>
29257             Add a metadata with the specified names and values.
29258             Overwrites any metadata with the same name already in the collection.
29259             </summary>
29260         </member>
29261         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.RemoveMetadata(System.String)">
29262             <summary>
29263             Removes a metadatum with the specified name.
29264             Used by TaskItem
29265             </summary>
29266         </member>
29267         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.ToString">
29268             <summary>
29269             Produce a string representation.
29270             </summary>
29271         </member>
29272         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IItem#GetMetadataValueEscaped(System.String)">
29273             <summary>
29274             Get the value of a metadata on this item, or 
29275             String.Empty if it does not exist or has no value.
29276             Includes any metadata inherited from item definitions and any built-in metadata.
29277             To determine whether a piece of metadata is actually present
29278             but with an empty value, use <see cref="M:Microsoft.Build.Execution.ProjectItemInstance.HasMetadata(System.String)">HasMetadata</see>.
29279             </summary>
29280         </member>
29281         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IItem{Microsoft#Build#Execution#ProjectMetadataInstance}#SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
29282             <summary>
29283             Sets the specified metadata.  Discards the xml part except for the name.
29284             Discards the location of the original element. This is not interesting in the Execution world
29285             as it should never be needed for any messages, and is just extra bulk.
29286             Predecessor is discarded as it is only needed for design time.
29287             </summary>
29288         </member>
29289         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#GetMetadata(System.String)">
29290             <summary>
29291             ITaskItem implementation.
29292             </summary>
29293             <remarks>
29294             ITaskItem should not return null if metadata is not present.
29295             </remarks>
29296         </member>
29297         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem2#GetMetadataValueEscaped(System.String)">
29298             <summary>
29299             ITaskItem2 implementation.
29300             </summary>
29301             <remarks>
29302             ITaskItem2 should not return null if metadata is not present.
29303             </remarks>
29304         </member>
29305         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#SetMetadata(System.String,System.String)">
29306             <summary>
29307             ITaskItem implementation
29308             </summary>
29309             <comments>
29310             MetadataValue is assumed to be in its escaped form. 
29311             </comments>
29312         </member>
29313         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem2#SetMetadataValueLiteral(System.String,System.String)">
29314             <summary>
29315             ITaskItem2 implementation
29316             </summary>
29317             <comments>
29318             Assumes metadataValue is unescaped. 
29319             </comments>
29320         </member>
29321         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#CopyMetadataTo(Microsoft.Build.Framework.ITaskItem)">
29322             <summary>
29323             ITaskItem implementation
29324             </summary>
29325         </member>
29326         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem#CloneCustomMetadata">
29327             <summary>
29328             ITaskItem implementation
29329             </summary>
29330             <comments>
29331             Returns a dictionary of the UNESCAPED values of the metadata
29332             </comments>
29333         </member>
29334         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Framework#ITaskItem2#CloneCustomMetadataEscaped">
29335             <summary>
29336             ITaskItem2 implementation
29337             </summary>
29338             <comments>
29339             Returns a dictionary of the ESCAPED values of the metadata
29340             </comments>
29341         </member>
29342         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String)">
29343             <summary>
29344             Retrieves any value we have in our metadata table for the metadata name specified.
29345             If no value is available, returns empty string.
29346             </summary>
29347         </member>
29348         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String,System.String)">
29349             <summary>
29350             Retrieves any value we have in our metadata table for the metadata name and item type specified.
29351             If no value is available, returns empty string.
29352             If item type is null, it is ignored, otherwise it must match.
29353             </summary>
29354         </member>
29355         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValueIfPresent(System.String,System.String)">
29356             <summary>
29357             Returns the value if it exists.
29358             If no value is available, returns null.
29359             If item type is null, it is ignored, otherwise it must match.
29360             </summary>
29361         </member>
29362         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
29363             <summary>
29364             Translation method.
29365             </summary>
29366         </member>
29367         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.Microsoft#Build#Collections#IDeepCloneable{Microsoft#Build#Execution#ProjectItemInstance}#DeepClone">
29368             <summary>
29369             Deep clone the item.
29370             Any metadata inherited from item definitions are also copied.
29371             </summary>
29372         </member>
29373         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadata(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance})">
29374             <summary>
29375             Set all the supplied metadata on all the supplied items.
29376             </summary>
29377         </member>
29378         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Execution.ProjectInstance)">
29379             <summary>
29380             Factory for deserialization.
29381             </summary>
29382         </member>
29383         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadata(Microsoft.Build.Collections.CopyOnWritePropertyDictionary{Microsoft.Build.Execution.ProjectMetadataInstance})">
29384             <summary>
29385             Add a metadata with the specified names and values.
29386             Overwrites any metadata with the same name already in the collection.
29387             </summary>
29388         </member>
29389         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.SetMetadataOnTaskOutput(System.String,System.String)">
29390             <summary>
29391             Sets metadata where one built-in metadata is allowed to be set: RecursiveDir. 
29392             This is not normally legal to set outside of evaluation. However, the CreateItem
29393             needs to be able to set it as a task output, because it supports wildcards. So as a special exception we allow
29394             tasks to set this particular metadata as a task output.
29395             Other built in metadata names are ignored. That's because often task outputs are items that were passed in,
29396             which legally have built-in metadata. If necessary we can calculate it on the new items we're making if requested.
29397             We don't copy them too because tasks shouldn't set them (they might become inconsistent)
29398             </summary>
29399         </member>
29400         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.DeepClone">
29401             <summary>
29402             Deep clone the item.
29403             Any metadata inherited from item definitions are also copied.
29404             </summary>
29405         </member>
29406         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.DeepClone(Microsoft.Build.Execution.ProjectInstance)">
29407             <summary>
29408             Deep clone the item.
29409             Any metadata inherited from item definitions are also copied.
29410             </summary>
29411         </member>
29412         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.ToProjectItemElement(Microsoft.Build.Construction.ProjectElementContainer)">
29413             <summary>
29414             Generates a ProjectItemElement representing this instance.
29415             </summary>
29416             <param name="parent">The root element to which the element will belong.</param>
29417             <returns>The new element.</returns>
29418         </member>
29419         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.CommonConstructor(Microsoft.Build.Execution.ProjectInstance,System.String,System.String,System.String,Microsoft.Build.Collections.CopyOnWritePropertyDictionary{Microsoft.Build.Execution.ProjectMetadataInstance},System.Collections.Generic.List{Microsoft.Build.Execution.ProjectItemDefinitionInstance},System.String)">
29420             <summary>
29421             Common constructor code.
29422             Direct metadata may be null, indicating no metadata. It will be cloned.
29423             Builtin metadata may be null, indicating it has not been populated. It will be cloned.
29424             Inherited item definition metadata may be null. It is assumed to ALREADY HAVE BEEN CLONED.
29425             Mutability follows the project.
29426             </summary>
29427         </member>
29428         <member name="T:Microsoft.Build.Execution.ProjectItemInstance.TaskItem">
29429             <summary>
29430             An item without an item type. Cast to an ITaskItem, this is 
29431             what is given to tasks. It is also used for target outputs.
29432             </summary>
29433         </member>
29434         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._definingFileEscaped">
29435             <summary>
29436             The source file that defined this item.
29437             </summary>
29438         </member>
29439         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._includeEscaped">
29440             <summary>
29441             Evaluated include, escaped as necessary.
29442             </summary>
29443         </member>
29444         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._includeBeforeWildcardExpansionEscaped">
29445             <summary>
29446             The evaluated (escaped) include prior to wildcard expansion.  Used to determine the
29447             RecursiveDir build-in metadata value.
29448             </summary>
29449         </member>
29450         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._directMetadata">
29451             <summary>
29452             Evaluated metadata.
29453             May be null.
29454             </summary>
29455             <remarks>
29456             Lazily created, as there are huge numbers of items generated in
29457             a build that have no metadata at all.
29458             </remarks>
29459         </member>
29460         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._fullPath">
29461             <summary>
29462             Cached value of the fullpath metadata. All other metadata are computed on demand.
29463             </summary>
29464         </member>
29465         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._itemDefinitions">
29466             <summary>
29467             All the item definitions that apply to this item, in order of
29468             decreasing precedence. At the bottom will be an item definition
29469             that directly applies to the item type that produced this item. The others will
29470             be item definitions inherited from items that were
29471             used to create this item.
29472             </summary>
29473         </member>
29474         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._projectDirectory">
29475             <summary>
29476             Directory of the associated project. If this is available,
29477             it is used to calculate built-in metadata. Otherwise,
29478             the current directory is used.
29479             </summary>
29480         </member>
29481         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem._isImmutable">
29482             <summary>
29483             Whether the task item is immutable.
29484             </summary>
29485         </member>
29486         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(System.String,System.String)">
29487             <summary>
29488             Creates an instance of this class given the item-spec.
29489             </summary>
29490         </member>
29491         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(System.String,System.String,Microsoft.Build.Collections.CopyOnWritePropertyDictionary{Microsoft.Build.Execution.ProjectMetadataInstance},System.Collections.Generic.List{Microsoft.Build.Execution.ProjectItemDefinitionInstance},System.String,System.Boolean,System.String)">
29492             <summary>
29493             Creates an instance of this class given the item-spec and a built-in metadata collection.
29494             Parameters are assumed to be ALREADY CLONED.
29495             </summary>
29496         </member>
29497         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(Microsoft.Build.Execution.ProjectItemInstance)">
29498             <summary>
29499             Creates a task item by copying the information from a <see cref="T:Microsoft.Build.Execution.ProjectItemInstance"/>.
29500             Parameters are cloned.
29501             </summary>
29502         </member>
29503         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor">
29504             <summary>
29505             Constructor for deserialization only.
29506             </summary>
29507         </member>
29508         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(Microsoft.Build.Execution.ProjectItemInstance.TaskItem,System.Boolean)">
29509             <summary>
29510             Creates an instance of this class given the backing item.
29511             Does not copy immutability, since there is no connection with the original.
29512             </summary>
29513         </member>
29514         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
29515             <summary>
29516             Private constructor used for serialization.
29517             </summary>
29518         </member>
29519         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Collections.LookasideStringInterner)">
29520             <summary>
29521             Private constructor used for serialization.
29522             </summary>
29523         </member>
29524         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ItemSpec">
29525             <summary>
29526             Gets or sets the unescaped include, or "name", for the item.
29527             </summary>
29528             <comments>
29529             This one is a bit tricky.  Orcas assumed that the value being set was escaped, but 
29530             that the value being returned was unescaped.  Maintain that behaviour here.  To get
29531             the escaped value, use ITaskItem2.EvaluatedIncludeEscaped. 
29532             </comments>
29533         </member>
29534         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Framework#ITaskItem2#EvaluatedIncludeEscaped">
29535             <summary>
29536             Gets or sets the escaped include, or "name", for the item.
29537             </summary>
29538             <remarks>
29539             Taking the opportunity to fix the property name, although this doesn't
29540             make it obvious it's an improvement on ItemSpec.
29541             </remarks>
29542         </member>
29543         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.MetadataNames">
29544             <summary>
29545             Gets the names of metadata on the item.
29546             Includes all built-in metadata.
29547             Computed, not necessarily fast.
29548             </summary>
29549         </member>
29550         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.MetadataCount">
29551             <summary>
29552             Gets the number of metadata set on the item.
29553             Computed, not necessarily fast.
29554             </summary>
29555         </member>
29556         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.CustomMetadataNames">
29557             <summary>
29558             Gets the names of custom metadata on the item.
29559             If there is none, returns an empty collection.
29560             Does not include built-in metadata.
29561             Computed, not necessarily fast.
29562             </summary>
29563         </member>
29564         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.CustomMetadataCount">
29565             <summary>
29566             Gets the number of custom metadata set on the item.
29567             Does not include built-in metadata.
29568             Computed, not necessarily fast.
29569             </summary>
29570         </member>
29571         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem#EvaluatedInclude">
29572             <summary>
29573             Gets the evaluated include for this item, unescaped.
29574             </summary>
29575         </member>
29576         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem#EvaluatedIncludeEscaped">
29577             <summary>
29578             Gets the evaluated include for this item, escaped.
29579             </summary>
29580         </member>
29581         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem#ProjectDirectory">
29582             <summary>
29583             The directory of the project owning this TaskItem.
29584             May be null if this is not well defined.
29585             </summary>
29586         </member>
29587         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Collections#IKeyed#Key">
29588             <summary>
29589             Returns some value useful for a key in a dictionary
29590             </summary>
29591         </member>
29592         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.IncludeEscaped">
29593             <summary>
29594             The escaped include for this item
29595             </summary>
29596         </member>
29597         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.IncludeBeforeWildcardExpansionEscaped">
29598             <summary>
29599             The value of the include after evaluation but before wildcard expansion.
29600             Used to determine %(RecursiveDir)
29601             </summary>
29602         </member>
29603         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.DirectMetadataCount">
29604             <summary>
29605             Number of pieces of metadata directly on this item
29606             </summary>
29607         </member>
29608         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.MetadataCollection">
29609             <summary>
29610             Unordered collection of evaluated metadata on the item.
29611             If there is no metadata, returns an empty collection.
29612             Does not include built-in metadata.
29613             Includes any from item definitions not masked by directly set metadata.
29614             This is a read-only collection. To modify the metadata, use <see cref="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadata(System.String,System.String)"/>.
29615             Computed, not necessarily fast.
29616             </summary>
29617         </member>
29618         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.op_Explicit(Microsoft.Build.Execution.ProjectItemInstance.TaskItem)~System.String">
29619             <summary>
29620             This allows an explicit typecast from a "TaskItem" to a "string", returning the ItemSpec for this item.
29621             </summary>
29622         </member>
29623         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.op_Equality(Microsoft.Build.Execution.ProjectItemInstance.TaskItem,Microsoft.Build.Execution.ProjectItemInstance.TaskItem)">
29624             <summary>
29625             The equivalence operator.
29626             </summary>
29627             <param name="left">The left hand operand.</param>
29628             <param name="right">The right hand operand.</param>
29629             <returns>True if the items are equivalent, false otherwise.</returns>
29630         </member>
29631         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.op_Inequality(Microsoft.Build.Execution.ProjectItemInstance.TaskItem,Microsoft.Build.Execution.ProjectItemInstance.TaskItem)">
29632             <summary>
29633             The non-equivalence operator.
29634             </summary>
29635             <param name="left">The left hand operand.</param>
29636             <param name="right">The right hand operand.</param>
29637             <returns>False if the items are equivalent, true otherwise.</returns>
29638         </member>
29639         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ToString">
29640             <summary>
29641             Produce a string representation.
29642             </summary>
29643         </member>
29644         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.InitializeLifetimeService">
29645             <summary>
29646             Overridden to give this class infinite lease time. Otherwise we end up with a limited
29647             lease (5 minutes I think) and instances can expire if they take long time processing.
29648             </summary>
29649         </member>
29650         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem#GetMetadataValue(System.String)">
29651             <summary>
29652             Returns the metadata with the specified key.
29653             </summary>
29654         </member>
29655         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem#GetMetadataValueEscaped(System.String)">
29656             <summary>
29657             Returns the escaped value of the metadata with the specified key.
29658             </summary>
29659         </member>
29660         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Framework#ITaskItem2#GetMetadataValueEscaped(System.String)">
29661             <summary>
29662             Returns the escaped value of the metadata with the specified key.
29663             </summary>
29664         </member>
29665         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem{Microsoft#Build#Execution#ProjectMetadataInstance}#GetMetadata(System.String)">
29666             <summary>
29667             Gets any existing ProjectMetadata on the item, or
29668             else any on an applicable item definition.
29669             This is ONLY called during evaluation.
29670             </summary>
29671             <remarks>
29672             Evaluation never creates ITaskItems, so this should never be called.
29673             </remarks>
29674         </member>
29675         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Evaluation#IItem{Microsoft#Build#Execution#ProjectMetadataInstance}#SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
29676             <summary>
29677             Set metadata
29678             </summary>
29679         </member>
29680         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetMetadata(System.String)">
29681             <summary>
29682             ITaskItem implementation which returns the specified metadata value, unescaped.
29683             If metadata is not defined, returns empty string.
29684             </summary>
29685         </member>
29686         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetMetadataEscaped(System.String)">
29687             <summary>
29688             Returns the specified metadata value, escaped.
29689             If metadata is not defined, returns empty string.
29690             </summary>
29691         </member>
29692         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadata(System.String,System.String)">
29693             <summary>
29694             ITaskItem implementation which sets metadata.
29695             </summary>
29696             <comments>
29697             The value is assumed to be escaped. 
29698             </comments>
29699         </member>
29700         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Framework#ITaskItem2#SetMetadataValueLiteral(System.String,System.String)">
29701             <summary>
29702             ITaskItem2 implementation which sets the literal value of metadata -- it is escaped 
29703             internally as necessary.
29704             </summary>
29705         </member>
29706         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.RemoveMetadata(System.String)">
29707             <summary>
29708             ITaskItem implementation which removed the named piece of metadata.
29709             If the metadata is not present, does nothing.
29710             </summary>
29711         </member>
29712         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.CopyMetadataTo(Microsoft.Build.Framework.ITaskItem)">
29713             <summary>
29714             ITaskItem implementation which copies the metadata on this item to the specified item.
29715             Does not copy built-in metadata, and will not overwrite existing, non-empty metadata.
29716             If the destination implements ITaskItem2, this avoids losing the escaped nature of values.
29717             </summary>
29718         </member>
29719         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.CopyMetadataTo(Microsoft.Build.Framework.ITaskItem,System.Boolean)">
29720             <summary>
29721             ITaskItem implementation which copies the metadata on this item to the specified item.
29722             Copies direct and item definition metadata.
29723             Does not copy built-in metadata, and will not overwrite existing, non-empty metadata.
29724             If the destination implements ITaskItem2, this avoids losing the escaped nature of values.
29725             
29726             When copying metadata to a task item which can be accessed from a task (Utilities task item)
29727             this method will merge and expand any metadata originating with item definitions.
29728             </summary>
29729             <param name="destinationItem">destination item to copy the metadata from this to</param>
29730             <param name="addOriginalItemSpec">Whether the OriginalItemSpec should be added as a piece 
29731             of magic metadata. For copying of items this is useful but for cloning of items this adds 
29732             additional metadata which is not useful because the OriginalItemSpec will always be identical 
29733             to the ItemSpec, and the addition will and will cause copy-on-write to trigger.
29734             </param>
29735         </member>
29736         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.CloneCustomMetadata">
29737             <summary>
29738             ITaskItem implementation which returns a clone of the metadata on this object.
29739             Values returned are unescaped. To get the original escaped values, use ITaskItem2.CloneCustomMetadataEscaped instead.
29740             </summary>
29741             <returns>The cloned metadata.</returns>
29742         </member>
29743         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#Framework#ITaskItem2#CloneCustomMetadataEscaped">
29744             <summary>
29745             ITaskItem2 implementation which returns a clone of the metadata on this object.
29746             Values returned are in their original escaped form. 
29747             </summary>
29748             <returns>The cloned metadata.</returns>
29749         </member>
29750         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
29751             <summary>
29752             Reads or writes the packet to the serializer.
29753             Built-in metadata is not transmitted, but other metadata is.
29754             Does not lose escaped nature.
29755             </summary>
29756         </member>
29757         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetHashCode">
29758             <summary>
29759             Override of GetHashCode.
29760             </summary>
29761         </member>
29762         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Equals(System.Object)">
29763             <summary>
29764             Override of Equals
29765             </summary>
29766         </member>
29767         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.Equals(Microsoft.Build.Execution.ProjectItemInstance.TaskItem)">
29768             <summary>
29769             Test for item equivalence.  Items are equivalent if their item specs are the same,
29770             and they have the same custom metadata, case insensitive.
29771             </summary>
29772             <comments>
29773             The metadata value check has to be case insensitive as batching bucketing is case
29774             insensitive.
29775             </comments>
29776             <param name="other">The item against which to compare.</param>
29777             <returns>True if the items are equivalent, false otherwise.</returns>
29778         </member>
29779         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.HasMetadata(System.String)">
29780             <summary>
29781             Returns true if a particular piece of metadata is defined on this item (even if
29782             its value is empty string) otherwise false.
29783             This includes built-in metadata and metadata from item definitions.
29784             </summary>
29785             <remarks>
29786             It has to include all of these because it's used for batching, which doesn't
29787             care where the metadata originated.
29788             </remarks>
29789         </member>
29790         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadata(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
29791             <summary>
29792             Add a metadata with the specified names and values.
29793             Overwrites any metadata with the same name already in the collection.
29794             </summary>
29795             <comments>
29796             Assumes that metadataDictionary contains escaped values
29797             </comments>
29798         </member>
29799         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
29800             <summary>
29801             Factory for serialization.
29802             </summary>
29803         </member>
29804         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Collections.LookasideStringInterner)">
29805             <summary>
29806             Factory for serialization.
29807             </summary>
29808         </member>
29809         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TranslateWithInterning(Microsoft.Build.BackEnd.INodePacketTranslator,Microsoft.Build.Collections.LookasideStringInterner)">
29810             <summary>
29811             Reads or writes the task item to the translator using an interner for metadata.
29812             </summary>
29813         </member>
29814         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetMetadataObject(System.String)">
29815             <summary>
29816             Gets any metadata with the specified name.
29817             Does not include built-in metadata.
29818             </summary>
29819         </member>
29820         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadata(Microsoft.Build.Collections.CopyOnWritePropertyDictionary{Microsoft.Build.Execution.ProjectMetadataInstance})">
29821             <summary>
29822             Add a metadata with the specified name and value.
29823             Overwrites any metadata with the same name already in the collection.
29824             </summary>
29825         </member>
29826         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadataObject(System.String,System.String,System.Boolean)">
29827             <summary>
29828             Add a metadata with the specified name and value.
29829             Overwrites any metadata with the same name already in the collection.
29830             Does not allow built-in metadata unless allowItemSpecModifiers is set.
29831             </summary>
29832         </member>
29833         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.SetMetadataOnTaskOutput(System.String,System.String)">
29834             <summary>
29835             Sets metadata where one built-in metadata is allowed to be set: RecursiveDir. 
29836             This is not normally legal to set outside of evaluation. However, the CreateItem
29837             needs to be able to set it as a task output, because it supports wildcards. So as a special exception we allow
29838             tasks to set this particular metadata as a task output.
29839             Other built in metadata names are ignored. That's because often task outputs are items that were passed in,
29840             which legally have built-in metadata. If necessary we can calculate it on the new items we're making if requested.
29841             We don't copy them too because tasks shouldn't set them (they might become inconsistent)
29842             </summary>
29843         </member>
29844         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.DeepClone">
29845             <summary>
29846             Deep clone this into another TaskItem
29847             </summary>
29848         </member>
29849         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.DeepClone(System.Boolean)">
29850             <summary>
29851             Deep clone this into another TaskItem
29852             </summary>
29853         </member>
29854         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetBuiltInMetadataEscaped(System.String)">
29855             <summary>
29856             Helper to get the value of a built-in metadatum with
29857             the specified name, if any.
29858             If value is not available, returns empty string.
29859             </summary>
29860         </member>
29861         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.GetItemDefinitionMetadata(System.String)">
29862             <summary>
29863             Retrieves the named metadata from the item definition, if any.
29864             If it is not present, returns null.
29865             </summary>
29866         </member>
29867         <member name="T:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory">
29868             <summary>
29869             A class factory for instance model items.
29870             </summary>
29871         </member>
29872         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory._project">
29873             <summary>
29874             The project to which item instances created by this factory will belong.
29875             </summary>
29876         </member>
29877         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.#ctor(Microsoft.Build.Execution.ProjectInstance)">
29878             <summary>
29879             Constructor not taking an item type.
29880             This indicates that the user of this factory should set the item type
29881             on it before using it to create items.
29882             </summary>
29883         </member>
29884         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.#ctor(Microsoft.Build.Execution.ProjectInstance,System.String)">
29885             <summary>
29886             Constructor taking the itemtype for the generated items.
29887             </summary>
29888         </member>
29889         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.ItemType">
29890             <summary>
29891             The item type that generated items should have
29892             </summary>
29893         </member>
29894         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.ItemElement">
29895             <summary>
29896             Sets the item type via the item xml.
29897             Used by the evaluator only.
29898             </summary>
29899         </member>
29900         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.CreateItem(System.String,System.String)">
29901             <summary>
29902             Creates an instance-model item.
29903             </summary>
29904             <param name="include">The include.</param>
29905             <param name="definingProject">The project that defined the item.</param>
29906             <returns>A new instance item.</returns>
29907         </member>
29908         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.CreateItem(Microsoft.Build.Execution.ProjectItemInstance,System.String)">
29909             <summary>
29910             Create a ProjectItemInstance, changing the item type but keeping the include.
29911             This is to support the scenario Include="@(i)" where we are copying
29912             metadata.
29913             </summary>
29914         </member>
29915         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.CreateItem(System.String,Microsoft.Build.Execution.ProjectItemInstance,System.String)">
29916             <summary>
29917             Create a ProjectItemInstance, changing the item type and include but retaining the
29918             metadata of the original item.
29919             This is to support this scenario: Include="@(i->'xxx')"
29920             </summary>
29921         </member>
29922         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.CreateItem(System.String,System.String,System.String)">
29923             <summary>
29924             Create a new item from the specified include and include before wildcard expansion.
29925             This is to support the scenario Include="@(i)" where we are creating new items before adding metadata.
29926             </summary>
29927         </member>
29928         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.SetMetadata(System.Collections.Generic.IEnumerable{Microsoft.Build.Shared.Pair{Microsoft.Build.Construction.ProjectMetadataElement,System.String}},System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance})">
29929             <summary>
29930             Applies the supplied metadata to the destination item.
29931             </summary>
29932         </member>
29933         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.ProjectItemInstanceFactory.CreateItem(System.String,System.String,Microsoft.Build.Execution.ProjectItemInstance,System.String)">
29934             <summary>
29935             Create a ProjectItemInstance from another item, changing the item type and include.
29936             </summary>
29937         </member>
29938         <member name="T:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory">
29939             <summary>
29940             A class factory for task items.
29941             </summary>
29942         </member>
29943         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.s_instance">
29944             <summary>
29945             The singleton instance.
29946             </summary>
29947         </member>
29948         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.#ctor">
29949             <summary>
29950             Private constructor for singleton creation.
29951             </summary>
29952         </member>
29953         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.ItemType">
29954             <summary>
29955             The item type of items created by this factory.
29956             Since TaskItems don't have an item type, this returns null, and cannot be set.
29957             </summary>
29958         </member>
29959         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.ItemElement">
29960             <summary>
29961             The item xml for items in this factory.
29962             </summary>
29963         </member>
29964         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.Instance">
29965             <summary>
29966             The singleton instance. Can be cast to the interface required.
29967             </summary>
29968         </member>
29969         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(System.String,System.String)">
29970             <summary>
29971             Creates a taskitem.
29972             </summary>
29973             <param name="includeEscaped">The include.</param>
29974             <param name="definingProject">The project that defined the item.</param>
29975             <returns>A new instance item.</returns>
29976         </member>
29977         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(Microsoft.Build.Evaluation.ProjectItem,System.String)">
29978             <summary>
29979             Creates a task item from a ProjectItem
29980             </summary>
29981         </member>
29982         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(System.String,Microsoft.Build.Evaluation.ProjectItem,System.String)">
29983             <summary>
29984             Creates a task item from a ProjectItem but changing the itemspec
29985             </summary>
29986         </member>
29987         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(Microsoft.Build.Execution.ProjectItemInstance,System.String)">
29988             <summary>
29989             Create a task item from a ProjectItemInstance.
29990             </summary>
29991         </member>
29992         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(System.String,Microsoft.Build.Execution.ProjectItemInstance,System.String)">
29993             <summary>
29994             Creates a task item from a ProjectItem
29995             </summary>
29996         </member>
29997         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.CreateItem(System.String,System.String,System.String)">
29998             <summary>
29999             Creates a task item using the specified include and include before wildcard expansion.
30000             </summary>
30001         </member>
30002         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.TaskItemFactory.SetMetadata(System.Collections.Generic.IEnumerable{Microsoft.Build.Shared.Pair{Microsoft.Build.Construction.ProjectMetadataElement,System.String}},System.Collections.Generic.IEnumerable{Microsoft.Build.Execution.ProjectItemInstance.TaskItem})">
30003             <summary>
30004             Applies the supplied metadata to the destination item.
30005             </summary>
30006         </member>
30007         <member name="T:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable">
30008             <summary>
30009             Implementation of IMetadataTable that can be passed to expander to expose only built-in metadata on this item.
30010             Built-in metadata is stored in a separate table so it can be cleared out when the item is renamed, as this invalidates the values.
30011             Also, more importantly, because typically the same regular metadata values can be shared by many items, 
30012             and keeping item-specific metadata out of it could allow it to be implemented as a copy-on-write table.
30013             </summary>
30014         </member>
30015         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable._itemType">
30016             <summary>
30017             Item type
30018             </summary>
30019         </member>
30020         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable._item">
30021             <summary>
30022             Backing item
30023             </summary>
30024         </member>
30025         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable.#ctor(System.String,Microsoft.Build.Execution.ProjectItemInstance.TaskItem)">
30026             <summary>
30027             Constructor.
30028             </summary>
30029         </member>
30030         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable.GetEscapedValue(System.String)">
30031             <summary>
30032             Retrieves any value we have in our metadata table for the metadata name specified.
30033             If no value is available, returns empty string.
30034             </summary>
30035         </member>
30036         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable.GetEscapedValue(System.String,System.String)">
30037             <summary>
30038             Retrieves any value we have in our metadata table for the metadata name and item type specified.
30039             If item type is null, it is ignored.
30040             If no value is available, returns empty string.
30041             </summary>
30042         </member>
30043         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.TaskItem.BuiltInMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
30044             <summary>
30045             Returns the value if it exists, null otherwise.
30046             If item type is null, it is ignored.
30047             </summary>
30048         </member>
30049         <member name="T:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer">
30050             <summary>
30051             Implementation of a comparer that determines equality between ProjectItemInstances
30052             </summary>
30053         </member>
30054         <member name="F:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer.s_comparer">
30055             <summary>
30056             The singleton comparer.
30057             </summary>
30058         </member>
30059         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer.#ctor">
30060             <summary>
30061             Constructor.
30062             </summary>
30063         </member>
30064         <member name="P:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer.Default">
30065             <summary>
30066             Returns the default comparer instance.
30067             </summary>
30068         </member>
30069         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer.Equals(Microsoft.Build.Execution.ProjectItemInstance,Microsoft.Build.Execution.ProjectItemInstance)">
30070             <summary>
30071             Implemtnation of IEqualityComparer.Equals.
30072             </summary>
30073             <param name="x">The left hand side.</param>
30074             <param name="y">The right hand side.</param>
30075             <returns>True of the instances are equivalent, false otherwise.</returns>
30076         </member>
30077         <member name="M:Microsoft.Build.Execution.ProjectItemInstance.ProjectItemInstanceEqualityComparer.GetHashCode(Microsoft.Build.Execution.ProjectItemInstance)">
30078             <summary>
30079             Implementation of IEqualityComparer.GetHashCode.
30080             </summary>
30081             <param name="obj">The item instance.</param>
30082             <returns>The hash code of the instance.</returns>
30083         </member>
30084         <member name="T:Microsoft.Build.Execution.ProjectMetadataInstance">
30085             <summary>
30086             Wraps an evaluated piece of metadata for build purposes
30087             Added and removed via methods on the ProjectItemInstance object.
30088             IMMUTABLE OBJECT.
30089             </summary>
30090         </member>
30091         <member name="F:Microsoft.Build.Execution.ProjectMetadataInstance._name">
30092             <summary>
30093             Name of the metadatum
30094             </summary>
30095         </member>
30096         <member name="F:Microsoft.Build.Execution.ProjectMetadataInstance._escapedValue">
30097             <summary>
30098             Evaluated value
30099             Never null.
30100             </summary>
30101         </member>
30102         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.#ctor(System.String,System.String)">
30103             <summary>
30104             Constructor for metadata.
30105             Does not allow item spec modifiers.
30106             Discards the location of the original element. This is not interesting in the Execution world
30107             as it should never be needed for any subsequent messages, and is just extra bulk.
30108             IMMUTABLE OBJECT.
30109             </summary>
30110             <remarks>
30111             Not public since the only creation scenario is setting on an item
30112             </remarks>
30113         </member>
30114         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.#ctor(System.String,System.String,System.Boolean)">
30115             <summary>
30116             Constructor for metadata.
30117             Called when a ProjectInstance is created, before the build
30118             when virtual items are added, and during the build when tasks
30119             emit items.
30120             Discards the location of the original element. This is not interesting in the Execution world
30121             as it should never be needed for any subsequent messages, and is just extra bulk.
30122             IMMUTABLE OBJECT.
30123             If the value passed in is null, will be changed to String.Empty.
30124             </summary>
30125             <remarks>
30126             Not public since the only creation scenario is setting on an item
30127             </remarks>
30128         </member>
30129         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.#ctor(Microsoft.Build.Evaluation.ProjectMetadata)">
30130             <summary>
30131             Constructor for metadata from a ProjectMetadata.
30132             Called when a ProjectInstance is created.
30133             IMMUTABLE OBJECT.
30134             </summary>
30135         </member>
30136         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
30137             <summary>
30138             Private constructor used for serialization
30139             </summary>
30140         </member>
30141         <member name="P:Microsoft.Build.Execution.ProjectMetadataInstance.Name">
30142             <summary>
30143             Name of the metadata
30144             </summary>
30145             <remarks>
30146             This cannot be set, as it is used as the key into 
30147             the item's metadata table.
30148             </remarks>
30149         </member>
30150         <member name="P:Microsoft.Build.Execution.ProjectMetadataInstance.EvaluatedValue">
30151             <summary>
30152             Evaluated value of the metadatum. 
30153             Never null.
30154             </summary>
30155         </member>
30156         <member name="P:Microsoft.Build.Execution.ProjectMetadataInstance.Microsoft#Build#Collections#IKeyed#Key">
30157             <summary>
30158             Implementation of IKeyed exposing the metadatum name
30159             </summary>
30160         </member>
30161         <member name="P:Microsoft.Build.Execution.ProjectMetadataInstance.Microsoft#Build#Collections#IValued#EscapedValue">
30162             <summary>
30163             Implementation of IValued
30164             </summary>
30165         </member>
30166         <member name="P:Microsoft.Build.Execution.ProjectMetadataInstance.EvaluatedValueEscaped">
30167             <summary>
30168             Evaluated and escaped value of the metadata.
30169             Never null.
30170             </summary>
30171         </member>
30172         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.ToString">
30173             <summary>
30174             String representation handy for tracing
30175             </summary>
30176         </member>
30177         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
30178             <summary>
30179             Reads or writes the packet to the serializer.
30180             </summary>
30181         </member>
30182         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.System#IEquatable{Microsoft#Build#Execution#ProjectMetadataInstance}#Equals(Microsoft.Build.Execution.ProjectMetadataInstance)">
30183             <summary>
30184             Compares this metadata to another for equivalence.
30185             </summary>
30186             <param name="other">The other metadata</param>
30187             <returns>True if they are equivalent, false otherwise.</returns>
30188         </member>
30189         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.DeepClone">
30190             <summary>
30191             Deep clone the metadata
30192             Strings are immutable (copy on write) so there is no work to do.
30193             Allows built-in metadata names, as they are still valid on the new metadatum.
30194             </summary>
30195             <returns>A new metadata instance.</returns>
30196         </member>
30197         <member name="M:Microsoft.Build.Execution.ProjectMetadataInstance.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
30198             <summary>
30199             Factory for serialization.
30200             </summary>
30201         </member>
30202         <member name="T:Microsoft.Build.Execution.ProjectOnErrorInstance">
30203             <summary>
30204             Wraps an onerror element
30205             </summary>
30206             <remarks>
30207             This is an immutable class
30208             </remarks>
30209         </member>
30210         <member name="F:Microsoft.Build.Execution.ProjectOnErrorInstance._executeTargets">
30211             <summary>
30212             Unevaluated executetargets value.
30213             </summary>
30214         </member>
30215         <member name="F:Microsoft.Build.Execution.ProjectOnErrorInstance._condition">
30216             <summary>
30217             Condition on the element.
30218             </summary>
30219         </member>
30220         <member name="F:Microsoft.Build.Execution.ProjectOnErrorInstance._location">
30221             <summary>
30222             Location of this element
30223             </summary>
30224         </member>
30225         <member name="F:Microsoft.Build.Execution.ProjectOnErrorInstance._conditionLocation">
30226             <summary>
30227             Location of the condition, if any
30228             </summary>
30229         </member>
30230         <member name="F:Microsoft.Build.Execution.ProjectOnErrorInstance._executeTargetsLocation">
30231             <summary>
30232             Location of the executeTargets attribute
30233             </summary>
30234         </member>
30235         <member name="M:Microsoft.Build.Execution.ProjectOnErrorInstance.#ctor(System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation)">
30236             <summary>
30237             Constructor called by Evaluator.
30238             All parameters are in the unevaluated state.
30239             </summary>
30240         </member>
30241         <member name="P:Microsoft.Build.Execution.ProjectOnErrorInstance.Condition">
30242             <summary>
30243             Unevaluated condition.
30244             May be empty string.
30245             </summary>
30246         </member>
30247         <member name="P:Microsoft.Build.Execution.ProjectOnErrorInstance.ExecuteTargets">
30248             <summary>
30249             Unevaluated ExecuteTargets value.
30250             May be empty string.
30251             </summary>
30252         </member>
30253         <member name="P:Microsoft.Build.Execution.ProjectOnErrorInstance.Location">
30254             <summary>
30255             Location of the element
30256             </summary>
30257         </member>
30258         <member name="P:Microsoft.Build.Execution.ProjectOnErrorInstance.ConditionLocation">
30259             <summary>
30260             Location of the condition, if any
30261             </summary>
30262         </member>
30263         <member name="P:Microsoft.Build.Execution.ProjectOnErrorInstance.ExecuteTargetsLocation">
30264             <summary>
30265             Location of the execute targets attribute, if any
30266             </summary>
30267         </member>
30268         <member name="T:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance">
30269             <summary>
30270             Wraps an unevaluated propertygroup under a target.
30271             Immutable.
30272             </summary>
30273         </member>
30274         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance._condition">
30275             <summary>
30276             Condition, if any
30277             </summary>
30278         </member>
30279         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance._properties">
30280             <summary>
30281             Child properties.
30282             Not ProjectPropertyInstances, as these are evaluated during the build.
30283             </summary>
30284         </member>
30285         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance._location">
30286             <summary>
30287             Location of this element
30288             </summary>
30289         </member>
30290         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance._conditionLocation">
30291             <summary>
30292             Location of the condition, if any
30293             </summary>
30294         </member>
30295         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.#ctor(System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,System.Collections.Generic.List{Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance})">
30296             <summary>
30297             Constructor called by the Evaluator.
30298             Assumes ProjectPropertyGroupTaskPropertyInstance is an immutable type.
30299             </summary>
30300         </member>
30301         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.#ctor(Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance)">
30302             <summary>
30303             Cloning constructor
30304             </summary>
30305         </member>
30306         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.Condition">
30307             <summary>
30308             Condition, if any.
30309             May be empty string.
30310             </summary>
30311         </member>
30312         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.Properties">
30313             <summary>
30314             Child properties
30315             </summary>
30316         </member>
30317         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.Location">
30318             <summary>
30319             Location of the element itself
30320             </summary>
30321         </member>
30322         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.ConditionLocation">
30323             <summary>
30324             Location of the condition, if any
30325             </summary>
30326         </member>
30327         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskInstance.DeepClone">
30328             <summary>
30329             Deep clone
30330             </summary>
30331         </member>
30332         <member name="T:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance">
30333             <summary>
30334             Wraps an unevaluated property under an propertygroup in a target.
30335             Immutable.
30336             </summary>
30337         </member>
30338         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance._name">
30339             <summary>
30340             Name of the property
30341             </summary>
30342         </member>
30343         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance._value">
30344             <summary>
30345             Unevaluated value
30346             </summary>
30347         </member>
30348         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance._condition">
30349             <summary>
30350             Unevaluated condition
30351             </summary>
30352         </member>
30353         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance._location">
30354             <summary>
30355             Location of this element
30356             </summary>
30357         </member>
30358         <member name="F:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance._conditionLocation">
30359             <summary>
30360             Location of the condition, if any
30361             </summary>
30362         </member>
30363         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation)">
30364             <summary>
30365             Constructor called by the Evaluator.
30366             </summary>
30367         </member>
30368         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.#ctor(Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance)">
30369             <summary>
30370             Cloning constructor
30371             </summary>
30372         </member>
30373         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.Name">
30374             <summary>
30375             Property name
30376             </summary>
30377         </member>
30378         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.Value">
30379             <summary>
30380             Unevaluated value
30381             </summary>
30382         </member>
30383         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.Condition">
30384             <summary>
30385             Unevaluated condition value
30386             </summary>
30387         </member>
30388         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.Location">
30389             <summary>
30390             Location of the original element
30391             </summary>
30392         </member>
30393         <member name="P:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.ConditionLocation">
30394             <summary>
30395             Location of the condition, if any
30396             </summary>
30397         </member>
30398         <member name="M:Microsoft.Build.Execution.ProjectPropertyGroupTaskPropertyInstance.DeepClone">
30399             <summary>
30400             Deep clone
30401             </summary>
30402         </member>
30403         <member name="T:Microsoft.Build.Execution.ProjectPropertyInstance">
30404             <summary>
30405             Wraps an evaluated property for build purposes.
30406             Added and removed via methods on the ProjectInstance object.
30407             </summary>
30408         </member>
30409         <member name="F:Microsoft.Build.Execution.ProjectPropertyInstance._name">
30410             <summary>
30411             Name of the property
30412             </summary>
30413         </member>
30414         <member name="F:Microsoft.Build.Execution.ProjectPropertyInstance._escapedValue">
30415             <summary>
30416             Evaluated value: stored escaped. 
30417             </summary>
30418         </member>
30419         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.#ctor(System.String,System.String,System.Boolean)">
30420             <summary>
30421             Private constructor
30422             </summary>
30423         </member>
30424         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.Name">
30425             <summary>
30426             Name of the property
30427             </summary>
30428             <remarks>
30429             This cannot be set, as it is used as the key into 
30430             the project's properties table.
30431             </remarks>
30432         </member>
30433         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.EvaluatedValue">
30434             <summary>
30435             Evaluated value of the property.
30436             Setter assumes caller has protected global properties, if necessary
30437             SETTER ASSUMES CALLER ONLY CALLS IF PROJECTINSTANCE IS MUTABLE because it cannot always be verified.
30438             </summary>
30439         </member>
30440         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.IsImmutable">
30441             <summary>
30442             Whether this object is immutable.
30443             An immutable object can not be made mutable.
30444             </summary>
30445         </member>
30446         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.Microsoft#Build#Evaluation#IProperty#EvaluatedValueEscaped">
30447             <summary>
30448             Evaluated value of the property, escaped as necessary.
30449             Setter assumes caller has protected global properties, if necessary.
30450             </summary>
30451         </member>
30452         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.Microsoft#Build#Collections#IKeyed#Key">
30453             <summary>
30454             Implementation of IKeyed exposing the property name
30455             </summary>
30456         </member>
30457         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.Microsoft#Build#Collections#IValued#EscapedValue">
30458             <summary>
30459             Implementation of IValued
30460             </summary>
30461         </member>
30462         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.System#IEquatable{Microsoft#Build#Execution#ProjectPropertyInstance}#Equals(Microsoft.Build.Execution.ProjectPropertyInstance)">
30463             <summary>
30464             Compares this property to another for equivalence.
30465             </summary>
30466             <param name="other">The other property.</param>
30467             <returns>True if the properties are equivalent, false otherwise.</returns>
30468         </member>
30469         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
30470             <summary>
30471             Reads or writes the packet to the serializer.
30472             </summary>
30473         </member>
30474         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Microsoft#Build#Collections#IDeepCloneable{Microsoft#Build#Execution#ProjectPropertyInstance}#DeepClone">
30475             <summary>
30476             Performs a deep clone
30477             </summary>
30478         </member>
30479         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.ToString">
30480             <summary>
30481             String representation handy for tracing
30482             </summary>
30483         </member>
30484         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String)">
30485             <summary>
30486             Called before the build when virtual properties are added, 
30487             and during the build when tasks emit properties.
30488             If name is invalid or reserved, throws ArgumentException.
30489             Creates mutable object.
30490             </summary>
30491             <remarks>
30492             Not public since the only creation scenario is setting on a project.
30493             </remarks>
30494         </member>
30495         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String,System.Boolean)">
30496             <summary>
30497             Called before the build when virtual properties are added, 
30498             and during the build when tasks emit properties.
30499             If name is invalid or reserved, throws ArgumentException.
30500             Creates mutable object.
30501             </summary>
30502             <remarks>
30503             Not public since the only creation scenario is setting on a project.
30504             </remarks>
30505         </member>
30506         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String,System.Boolean,System.Boolean)">
30507             <summary>
30508             Called by the Evaluator during creation of the ProjectInstance.
30509             Reserved properties can be set with this constructor using the appropriate flag.
30510             This flags should ONLY be set by the evaluator or by cloning; after the ProjectInstance is created, they must be illegal.
30511             If name is invalid or reserved, throws ArgumentException.
30512             </summary>
30513         </member>
30514         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String,Microsoft.Build.Construction.ElementLocation)">
30515             <summary>
30516             Called during project build time to create a property.  Reserved properties will cause
30517             an invalid project file exception.
30518             Creates mutable object.
30519             </summary>
30520         </member>
30521         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String,Microsoft.Build.Construction.ElementLocation,System.Boolean)">
30522             <summary>
30523             Called during project build time to create a property.  Reserved properties will cause
30524             an invalid project file exception.
30525             </summary>
30526         </member>
30527         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(Microsoft.Build.Execution.ProjectPropertyInstance)">
30528             <summary>
30529             Cloning constructor.
30530             Strings are immutable (copy on write) so there is no work to do
30531             </summary>
30532         </member>
30533         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(Microsoft.Build.Execution.ProjectPropertyInstance,System.Boolean)">
30534             <summary>
30535             Cloning constructor.
30536             Strings are immutable (copy on write) so there is no work to do
30537             </summary>
30538         </member>
30539         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
30540             <summary>
30541             Factory for serialization
30542             </summary>
30543         </member>
30544         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.DeepClone">
30545             <summary>
30546             Performs a deep clone
30547             </summary>
30548         </member>
30549         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.DeepClone(System.Boolean)">
30550             <summary>
30551             Performs a deep clone, optionally changing mutability
30552             </summary>
30553         </member>
30554         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.ToProjectPropertyElement(Microsoft.Build.Construction.ProjectElementContainer)">
30555             <summary>
30556             Creates a ProjectPropertyElement representing this instance.
30557             </summary>
30558             <param name="parent">The root element to which this element will belong.</param>
30559             <returns>The new element.</returns>
30560         </member>
30561         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.Create(System.String,System.String,System.Boolean,Microsoft.Build.Construction.ElementLocation,System.Boolean)">
30562             <summary>
30563             Private constructor which throws the right sort of exception depending on whether it is invoked as a result of
30564             a design-time or build-time call.
30565             Discards the location of the original element after error checking. This is not interesting in the Execution world
30566             as it should never be needed for any subsequent messages, and is just extra bulk.
30567             Inherits mutability from project if any.
30568             </summary>
30569         </member>
30570         <member name="T:Microsoft.Build.Execution.ProjectPropertyInstance.ProjectPropertyInstanceImmutable">
30571             <summary>
30572             Version of the class that's immutable.
30573             Could have a single class with a boolean field, but there are large numbers of these
30574             so it's important to avoid adding another field. Both types of objects are 16 bytes instead of 20.
30575             </summary>
30576         </member>
30577         <member name="M:Microsoft.Build.Execution.ProjectPropertyInstance.ProjectPropertyInstanceImmutable.#ctor(System.String,System.String,System.Boolean)">
30578             <summary>
30579             Private constructor.
30580             Called by outer class factory method.
30581             </summary>
30582         </member>
30583         <member name="P:Microsoft.Build.Execution.ProjectPropertyInstance.ProjectPropertyInstanceImmutable.IsImmutable">
30584             <summary>
30585             Whether this object can be changed.
30586             An immutable object can not be made mutable.
30587             </summary>
30588             <remarks>
30589             Usually gotten from the parent ProjectInstance.
30590             </remarks>
30591         </member>
30592         <member name="T:Microsoft.Build.Execution.ProjectTargetInstance">
30593             <summary>
30594             Wraps a target element
30595             </summary>
30596             <remarks>
30597             This is an immutable class.
30598             </remarks>
30599         </member>
30600         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._name">
30601             <summary>
30602             Name of the target
30603             </summary>
30604         </member>
30605         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._condition">
30606             <summary>
30607             Condition on the target. 
30608             Evaluated during the build.
30609             </summary>
30610         </member>
30611         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._inputs">
30612             <summary>
30613             Inputs on the target
30614             </summary>
30615         </member>
30616         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._outputs">
30617             <summary>
30618             Outputs on the target
30619             </summary>
30620         </member>
30621         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._returns">
30622             <summary>
30623             Return values on the target. 
30624             </summary>
30625         </member>
30626         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._dependsOnTargets">
30627             <summary>
30628             Semicolon separated list of targets it depends on
30629             </summary>
30630         </member>
30631         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._keepDuplicateOutputs">
30632             <summary>
30633             Condition for whether to trim duplicate outputs
30634             </summary>
30635         </member>
30636         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._onErrorChildren">
30637             <summary>
30638             Child entries of the target which refer to OnError targets
30639             </summary>
30640         </member>
30641         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._parentProjectSupportsReturnsAttribute">
30642             <summary>
30643             Whether the project file that this target lives in has at least one target
30644             with a Returns attribute on it.  If so, the default behaviour for all targets
30645             in the file without Returns attributes changes from returning the Outputs, to 
30646             returning nothing. 
30647             </summary>
30648         </member>
30649         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._location">
30650             <summary>
30651             Location of this element
30652             </summary>
30653         </member>
30654         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._conditionLocation">
30655             <summary>
30656             Location of the condition, if any
30657             </summary>
30658         </member>
30659         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._inputsLocation">
30660             <summary>
30661             Location of the inputs attribute, if any
30662             </summary>
30663         </member>
30664         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._outputsLocation">
30665             <summary>
30666             Location of the outputs attribute, if any
30667             </summary>
30668         </member>
30669         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._returnsLocation">
30670             <summary>
30671             Location of the returns attribute, if any
30672             </summary>
30673         </member>
30674         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._keepDuplicateOutputsLocation">
30675             <summary>
30676             Location of KeepDuplicateOutputs attribute, if any
30677             </summary>
30678         </member>
30679         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._dependsOnTargetsLocation">
30680             <summary>
30681             Location of the DependsOnTargets attribute ,if any
30682             </summary>
30683         </member>
30684         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._beforeTargetsLocation">
30685             <summary>
30686             Location of the BeforeTargets attribute ,if any
30687             </summary>
30688         </member>
30689         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._afterTargetsLocation">
30690             <summary>
30691             Location of the AfterTargets attribute ,if any
30692             </summary>
30693         </member>
30694         <member name="F:Microsoft.Build.Execution.ProjectTargetInstance._children">
30695             <summary>
30696             Child tasks below the target (both regular tasks and "intrinsic tasks" like ItemGroup and PropertyGroup).
30697             This is a read-only list unless the instance has been modified using AddTask.
30698             </summary>
30699         </member>
30700         <member name="M:Microsoft.Build.Execution.ProjectTargetInstance.#ctor(System.String,System.String,System.String,System.String,System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Build.Execution.ProjectTargetInstanceChild},System.Collections.ObjectModel.ReadOnlyCollection{Microsoft.Build.Execution.ProjectOnErrorInstance},System.Boolean)">
30701             <summary>
30702             Constructor called by Evaluator.
30703             All parameters are in the unevaluated state.
30704             All location parameters may be null if not applicable, except for the main location parameter.
30705             </summary>
30706         </member>
30707         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Name">
30708             <summary>
30709             Name of the target
30710             </summary>
30711         </member>
30712         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Condition">
30713             <summary>
30714             Unevaluated condition on the task.
30715             May be empty string.
30716             </summary>
30717         </member>
30718         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Inputs">
30719             <summary>
30720             Unevaluated inputs on the target element.
30721             May be empty string.
30722             </summary>
30723         </member>
30724         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Outputs">
30725             <summary>
30726             Unevaluated outputs on the target element
30727             May be empty string.
30728             </summary>
30729         </member>
30730         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Returns">
30731             <summary>
30732             Unevaluated return values on the target element
30733             May be empty string or null, if no return value is specified.
30734             </summary>
30735         </member>
30736         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.KeepDuplicateOutputs">
30737             <summary>
30738             Unevaluated condition on which we will trim duplicate outputs from the target outputs
30739             May be empty string.
30740             </summary>
30741         </member>
30742         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.DependsOnTargets">
30743             <summary>
30744             Unevaluated semicolon separated list of targets it depends on.
30745             May be empty string.
30746             </summary>
30747         </member>
30748         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Children">
30749             <summary>
30750             Children below the target. The build iterates through this to get each task to execute.
30751             This is an ordered collection.
30752             This is a read-only list; the ProjectTargetInstance class is immutable.
30753             This collection does not contain the OnError target references.
30754             </summary>
30755         </member>
30756         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.OnErrorChildren">
30757             <summary>
30758             The children below the target which refer to OnError targets.
30759             This is an ordered collection.
30760             This is a read-only list; the ProjectTargetInstance class is immutable.
30761             </summary>
30762         </member>
30763         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Tasks">
30764             <summary>
30765             Just the tasks below this target, if any.
30766             Other kinds of children are not included.
30767             </summary>
30768         </member>
30769         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.FullPath">
30770             <summary>
30771             Full path to the file from which this target originated.
30772             If it originated in a project that was not loaded and has never been 
30773             given a path, returns an empty string.
30774             </summary>
30775         </member>
30776         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Location">
30777             <summary>
30778             Location of the original element
30779             </summary>
30780         </member>
30781         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.ConditionLocation">
30782             <summary>
30783             Location of the condition, if any
30784             </summary>
30785         </member>
30786         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.InputsLocation">
30787             <summary>
30788             Location of the inputs
30789             </summary>
30790         </member>
30791         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.OutputsLocation">
30792             <summary>
30793             Location of the outputs
30794             </summary>
30795         </member>
30796         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.ReturnsLocation">
30797             <summary>
30798             Location of the returns
30799             </summary>
30800         </member>
30801         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.KeepDuplicateOutputsLocation">
30802             <summary>
30803             Location of the KeepDuplicatOutputs attribute
30804             </summary>
30805         </member>
30806         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.DependsOnTargetsLocation">
30807             <summary>
30808             Location of the dependsOnTargets
30809             </summary>
30810         </member>
30811         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.BeforeTargetsLocation">
30812             <summary>
30813             Location of the beforeTargets
30814             </summary>
30815         </member>
30816         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.AfterTargetsLocation">
30817             <summary>
30818             Location of the afterTargets
30819             </summary>
30820         </member>
30821         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.Microsoft#Build#Collections#IKeyed#Key">
30822             <summary>
30823             Implementation of IKeyed exposing the target name
30824             </summary>
30825         </member>
30826         <member name="P:Microsoft.Build.Execution.ProjectTargetInstance.ParentProjectSupportsReturnsAttribute">
30827             <summary>
30828             Whether the project file that this target lives in has at least one target
30829             with a Returns attribute on it.  If so, the default behaviour for all targets
30830             in the file without Returns attributes changes from returning the Outputs, to 
30831             returning nothing. 
30832             </summary>
30833         </member>
30834         <member name="M:Microsoft.Build.Execution.ProjectTargetInstance.ToProjectTargetElement(Microsoft.Build.Construction.ProjectRootElement)">
30835             <summary>
30836             Creates a ProjectTargetElement representing this instance.  Attaches it to the specified root element.
30837             </summary>
30838             <param name="rootElement">The root element to which the new element will belong.</param>
30839             <returns>The new element.</returns>
30840         </member>
30841         <member name="M:Microsoft.Build.Execution.ProjectTargetInstance.AddProjectTargetInstanceChild(Microsoft.Build.Execution.ProjectTargetInstanceChild)">
30842             <summary> Adds new child instance. </summary>
30843             <param name="projectTargetInstanceChild"> Child instance. </param>
30844         </member>
30845         <member name="M:Microsoft.Build.Execution.ProjectTargetInstance.AddTask(System.String,System.String,System.String)">
30846             <summary>
30847             Creates a new task and adds it to the end of the list of tasks.
30848             </summary>
30849             <param name="taskName">The name of the task to create.</param>
30850             <param name="condition">The task's condition.</param>
30851             <param name="continueOnError">The continue on error flag.</param>
30852             <returns>The new task instance.</returns>
30853         </member>
30854         <member name="M:Microsoft.Build.Execution.ProjectTargetInstance.AddTask(System.String,System.String,System.String,System.String,System.String)">
30855             <summary>
30856             Creates a new task and adds it to the end of the list of tasks.
30857             </summary>
30858             <param name="taskName">The name of the task to create.</param>
30859             <param name="condition">The task's condition.</param>
30860             <param name="continueOnError">The continue on error flag.</param>
30861             <param name="msbuildRuntime">The MSBuild runtime.</param>
30862             <param name="msbuildArchitecture">The MSBuild architecture.</param>
30863             <returns>The new task instance.</returns>
30864         </member>
30865         <member name="T:Microsoft.Build.Execution.ProjectTaskInstance">
30866             <summary>
30867             Wraps a task element
30868             </summary>
30869             <remarks>
30870             This is an immutable class
30871             </remarks>
30872         </member>
30873         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._name">
30874             <summary>
30875             Name of the task, possibly qualified, as it appears in the project
30876             </summary>
30877         </member>
30878         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._condition">
30879             <summary>
30880             Condition on the task, if any
30881             May be empty string
30882             </summary>
30883         </member>
30884         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._continueOnError">
30885             <summary>
30886             Continue on error on the task, if any
30887             May be empty string
30888             </summary>
30889         </member>
30890         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._msbuildRuntime">
30891             <summary>
30892             Runtime on the task, if any
30893             May be empty string
30894             </summary>
30895         </member>
30896         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._msbuildArchitecture">
30897             <summary>
30898             Architecture on the task, if any
30899             May be empty string
30900             </summary>
30901         </member>
30902         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._parameters">
30903             <summary>
30904             Unordered set of task parameter names and unevaluated values.
30905             This is a dead, read-only collection.
30906             </summary>
30907         </member>
30908         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._outputs">
30909             <summary>
30910             Output properties and items below this task. This is an ordered collection
30911             as one may depend on another.
30912             This is a dead, read-only collection.
30913             </summary>
30914         </member>
30915         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._location">
30916             <summary>
30917             Location of this element
30918             </summary>
30919         </member>
30920         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._conditionLocation">
30921             <summary>
30922             Location of the condition, if any
30923             </summary>
30924         </member>
30925         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._continueOnErrorLocation">
30926             <summary>
30927             Location of the continueOnError attribute, if any
30928             </summary>
30929         </member>
30930         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._msbuildRuntimeLocation">
30931             <summary>
30932             Location of the MSBuildRuntime attribute, if any
30933             </summary>
30934         </member>
30935         <member name="F:Microsoft.Build.Execution.ProjectTaskInstance._msbuildArchitectureLocation">
30936             <summary>
30937             Location of the MSBuildArchitecture attribute, if any
30938             </summary>
30939         </member>
30940         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.#ctor(Microsoft.Build.Construction.ProjectTaskElement,System.Collections.Generic.IList{Microsoft.Build.Execution.ProjectTaskInstanceChild})">
30941             <summary>
30942             Constructor called by Evaluator.
30943             All parameters are in the unevaluated state.
30944             Locations other than the main location may be null.
30945             </summary>
30946         </member>
30947         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.#ctor(System.String,Microsoft.Build.Construction.ElementLocation,System.String,System.String,System.String,System.String)">
30948             <summary>
30949                 Creates a new task instance directly.  Used for generating instances on-the-fly.
30950             </summary>
30951             <param name="name">The task name.</param>
30952             <param name="location">The location for this task.</param>
30953             <param name="condition">The unevaluated condition.</param>
30954             <param name="continueOnError">The unevaluated continue on error.</param>
30955             <param name="msbuildRuntime">The MSBuild runtime.</param>
30956             <param name="msbuildArchitecture">The MSBuild architecture.</param>
30957         </member>
30958         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.Name">
30959             <summary>
30960             Name of the task, possibly qualified, as it appears in the project
30961             </summary>
30962         </member>
30963         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.Condition">
30964             <summary>
30965             Unevaluated condition on the task
30966             May be empty string.
30967             </summary>
30968         </member>
30969         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.ContinueOnError">
30970             <summary>
30971             Unevaluated ContinueOnError on the task.
30972             May be empty string.
30973             </summary>
30974         </member>
30975         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.MSBuildRuntime">
30976             <summary>
30977             Unevaluated MSBuildRuntime on the task.
30978             May be empty string.
30979             </summary>
30980         </member>
30981         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.MSBuildArchitecture">
30982             <summary>
30983             Unevaluated MSBuildArchitecture on the task.
30984             May be empty string.
30985             </summary>
30986         </member>
30987         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.Parameters">
30988             <summary>
30989             Read-only dead unordered set of task parameter names and unevaluated values.
30990             Condition and ContinueOnError, which have their own properties, are not included in this collection.
30991             </summary>
30992         </member>
30993         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.Outputs">
30994             <summary>
30995             Ordered set of output property and item objects.
30996             This is a read-only dead collection.
30997             </summary>
30998         </member>
30999         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.ContinueOnErrorLocation">
31000             <summary>
31001             Location of the ContinueOnError attribute, if any
31002             </summary>
31003         </member>
31004         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.MSBuildRuntimeLocation">
31005             <summary>
31006             Location of the MSBuildRuntime attribute, if any
31007             </summary>
31008         </member>
31009         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.MSBuildArchitectureLocation">
31010             <summary>
31011             Location of the MSBuildArchitecture attribute, if any
31012             </summary>
31013         </member>
31014         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.Location">
31015             <summary>
31016             Location of the original element
31017             </summary>
31018         </member>
31019         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.ConditionLocation">
31020             <summary>
31021             Location of the condition, if any
31022             </summary>
31023         </member>
31024         <member name="P:Microsoft.Build.Execution.ProjectTaskInstance.ParametersForBuild">
31025             <summary>
31026             Retrieves the parameters dictionary as used during the build.
31027             </summary>
31028         </member>
31029         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.GetParameter(System.String)">
31030             <summary>
31031             Returns the value of a named parameter, or null if there is no such parameter.
31032             </summary>
31033             <param name="parameterName">The name of the parameter to retrieve.</param>
31034             <returns>The parameter value, or null if it does not exist.</returns>
31035         </member>
31036         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.SetParameter(System.String,System.String)">
31037             <summary>
31038             Sets the unevaluated value for the specified parameter.
31039             </summary>
31040             <param name="parameterName">The name of the parameter to set.</param>
31041             <param name="unevaluatedValue">The unevaluated value for the parameter.</param>
31042         </member>
31043         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.AddOutputItem(System.String,System.String,System.String)">
31044             <summary>
31045             Adds an output item to the task.
31046             </summary>
31047             <param name="taskOutputParameterName">The name of the parameter on the task which produces the output.</param>
31048             <param name="itemName">The item which will receive the output.</param>
31049             <param name="condition">The condition.</param>
31050         </member>
31051         <member name="M:Microsoft.Build.Execution.ProjectTaskInstance.AddOutputProperty(System.String,System.String,System.String)">
31052             <summary>
31053             Adds an output property to the task.
31054             </summary>
31055             <param name="taskOutputParameterName">The name of the parameter on the task which produces the output.</param>
31056             <param name="propertyName">The property which will receive the output.</param>
31057             <param name="condition">The condition.</param>
31058         </member>
31059         <member name="T:Microsoft.Build.Execution.ProjectTaskOutputItemInstance">
31060             <summary>
31061             Wraps an output item element under a task element
31062             </summary>
31063             <remarks>
31064             Immutable.
31065             </remarks>
31066         </member>
31067         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._itemType">
31068             <summary>
31069             Name of the property to put the output in
31070             </summary>
31071         </member>
31072         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._taskParameter">
31073             <summary>
31074             Property on the task class to retrieve the output from
31075             </summary>
31076         </member>
31077         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._condition">
31078             <summary>
31079             Condition on the output element
31080             </summary>
31081         </member>
31082         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._location">
31083             <summary>
31084             Location of the original element
31085             </summary>
31086         </member>
31087         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._itemTypeLocation">
31088             <summary>
31089             Location of the original item type attribute
31090             </summary>
31091         </member>
31092         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._taskParameterLocation">
31093             <summary>
31094             Location of the original task parameter attribute
31095             </summary>
31096         </member>
31097         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputItemInstance._conditionLocation">
31098             <summary>
31099             Location of the original condition attribute
31100             </summary>
31101         </member>
31102         <member name="M:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation)">
31103             <summary>
31104             Constructor called by evaluator
31105             </summary>
31106         </member>
31107         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.ItemType">
31108             <summary>
31109             Name of the item type that the outputs go into
31110             </summary>
31111         </member>
31112         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.TaskParameter">
31113             <summary>
31114             Property on the task class to retrieve the outputs from
31115             </summary>
31116         </member>
31117         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.Condition">
31118             <summary>
31119             Condition on the element.
31120             If there is no condition, returns empty string.
31121             </summary>
31122         </member>
31123         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.Location">
31124             <summary>
31125             Location of the original element
31126             </summary>
31127         </member>
31128         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.ConditionLocation">
31129             <summary>
31130             Location of the condition, if any
31131             </summary>
31132         </member>
31133         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.TaskParameterLocation">
31134             <summary>
31135             Location of the TaskParameter attribute
31136             </summary>
31137         </member>
31138         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputItemInstance.ItemTypeLocation">
31139             <summary>
31140             Location of the ItemType attribute
31141             </summary>
31142         </member>
31143         <member name="T:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance">
31144             <summary>
31145             Represents an output property element beneath a task element
31146             </summary>
31147             <remarks>
31148             Immutable.
31149             </remarks>
31150         </member>
31151         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._propertyName">
31152             <summary>
31153             Name of the property to put the output in
31154             </summary>
31155         </member>
31156         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._taskParameter">
31157             <summary>
31158             Property on the task class to retrieve the output from
31159             </summary>
31160         </member>
31161         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._condition">
31162             <summary>
31163             Condition on the output element
31164             </summary>
31165         </member>
31166         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._location">
31167             <summary>
31168             Location of the original element
31169             </summary>
31170         </member>
31171         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._propertyNameLocation">
31172             <summary>
31173             Location of the original property name attribute
31174             </summary>
31175         </member>
31176         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._taskParameterLocation">
31177             <summary>
31178             Location of the original task parameter attribute
31179             </summary>
31180         </member>
31181         <member name="F:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance._conditionLocation">
31182             <summary>
31183             Location of the original condition attribute
31184             </summary>
31185         </member>
31186         <member name="M:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.Construction.ElementLocation)">
31187             <summary>
31188             Constructor called by Evaluator
31189             </summary>
31190         </member>
31191         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.PropertyName">
31192             <summary>
31193             Name of the property to put the output in
31194             </summary>
31195         </member>
31196         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.TaskParameter">
31197             <summary>
31198             Property on the task class to retrieve the output from
31199             </summary>
31200         </member>
31201         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.Condition">
31202             <summary>
31203             Condition on the output element.
31204             If there is no condition, returns empty string.
31205             </summary>
31206         </member>
31207         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.PropertyNameLocation">
31208             <summary>
31209             Location of the original PropertyName attribute
31210             </summary>
31211         </member>
31212         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.Location">
31213             <summary>
31214             Location of the original element
31215             </summary>
31216         </member>
31217         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.ConditionLocation">
31218             <summary>
31219             Location of the condition, if any
31220             </summary>
31221         </member>
31222         <member name="P:Microsoft.Build.Execution.ProjectTaskOutputPropertyInstance.TaskParameterLocation">
31223             <summary>
31224             Location of the TaskParameter attribute
31225             </summary>
31226         </member>
31227         <member name="T:Microsoft.Build.Execution.TaskFactoryWrapper">
31228             <summary>
31229             This class packages information about task which has been loaded from a task factory.
31230             </summary>
31231         </member>
31232         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._taskFactory">
31233             <summary>
31234             Factory which is wrapped by the wrapper
31235             </summary>
31236         </member>
31237         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._namesOfPropertiesWithRequiredAttribute">
31238             <summary>
31239             Cache of names of required properties on this type
31240             </summary>
31241         </member>
31242         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._namesOfPropertiesWithOutputAttribute">
31243             <summary>
31244             Cache of names of output properties on this type
31245             </summary>
31246         </member>
31247         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._namesOfPropertiesWithAmbiguousMatches">
31248             <summary>
31249             Cache of names of properties on this type whose names are ambiguous
31250             </summary>
31251         </member>
31252         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._propertyInfoCache">
31253             <summary>
31254             Cache of PropertyInfos for this type
31255             </summary>
31256         </member>
31257         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._taskName">
31258             <summary>
31259             The name of the task this factory can create.
31260             </summary>
31261         </member>
31262         <member name="F:Microsoft.Build.Execution.TaskFactoryWrapper._factoryIdentityParameters">
31263             <summary>
31264             The set of special parameters that, along with the name, contribute to the identity of 
31265             this factory.
31266             </summary>
31267         </member>
31268         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.#ctor(Microsoft.Build.Framework.ITaskFactory,Microsoft.Build.Shared.LoadedType,System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
31269             <summary>
31270             Creates an instance of this class for the given type.
31271             </summary>
31272         </member>
31273         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.TaskFactoryLoadedType">
31274             <summary>
31275             Load information about the task factory itself
31276             </summary>
31277         </member>
31278         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.TaskFactory">
31279             <summary>
31280             The task factory wrapped by the wrapper
31281             </summary>
31282         </member>
31283         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.GetNamesOfPropertiesWithRequiredAttribute">
31284             <summary>
31285             Gets the list of names of public instance properties that have the required attribute applied.
31286             Caches the result - since it can't change during the build.
31287             </summary>
31288             <returns></returns>
31289         </member>
31290         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.GetNamesOfPropertiesWithOutputAttribute">
31291             <summary>
31292             Gets the list of names of public instance properties that have the output attribute applied.
31293             Caches the result - since it can't change during the build.
31294             </summary>
31295             <returns></returns>
31296         </member>
31297         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.Name">
31298             <summary>
31299             Get the name of the factory wrapped by the wrapper
31300             </summary>
31301         </member>
31302         <member name="P:Microsoft.Build.Execution.TaskFactoryWrapper.FactoryIdentityParameters">
31303             <summary>
31304             The set of task identity parameters that were set on 
31305             this particular factory's UsingTask statement. 
31306             </summary>
31307         </member>
31308         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.GetProperty(System.String)">
31309             <summary>
31310             Get the cached propertyinfo of the given name
31311             </summary>
31312             <param name="propertyName">property name</param>
31313             <returns>PropertyInfo</returns>
31314         </member>
31315         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.SetPropertyValue(Microsoft.Build.Framework.ITask,Microsoft.Build.Framework.TaskPropertyInfo,System.Object)">
31316             <summary>
31317             Sets the given property on the task.
31318             </summary>
31319         </member>
31320         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.GetPropertyValue(Microsoft.Build.Framework.ITask,Microsoft.Build.Framework.TaskPropertyInfo)">
31321             <summary>
31322             Gets the value of a given property on the given task.
31323             </summary>
31324         </member>
31325         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.IsCreatableByFactory(System.String)">
31326             <summary>
31327             Determines whether a task with the given name is instantiable by this factory.
31328             </summary>
31329             <param name="taskName">Name of the task.</param>
31330             <returns>
31331             <c>true</c> if this factory can instantiate such a task; otherwise, <c>false</c>.
31332             </returns>
31333         </member>
31334         <member name="M:Microsoft.Build.Execution.TaskFactoryWrapper.PopulatePropertyInfoCacheIfNecessary">
31335             <summary>
31336             Populate the cache of PropertyInfos for this type
31337             </summary>
31338         </member>
31339         <member name="T:Microsoft.Build.Execution.TaskRegistry">
31340              <summary>
31341              This class is used to track tasks used by a project. Tasks are declared in project files with the &lt;UsingTask&gt; tag.
31342              Task and assembly names must be specified per .NET guidelines, however, the names do not need to be fully qualified if
31343              they provide enough information to locate the tasks they refer to. Assemblies can also be referred to using file paths --
31344              this is useful when it is not possible/desirable to place task assemblies in the GAC, or in the same directory as MSBuild.
31345              </summary>
31346              <remarks>
31347              1) specifying a task assembly using BOTH its assembly name (strong or weak) AND its file path is not allowed
31348              2) when specifying the assembly name, the file extension (usually ".dll") must NOT be specified
31349              3) when specifying the assembly file, the file extension MUST be specified
31350              </remarks>
31351              <example>
31352              &lt;UsingTask TaskName="Microsoft.Build.Tasks.Csc"                     ==> look for the "Csc" task in the
31353                         AssemblyName="Microsoft.Build.Tasks"/&gt;                       weakly-named "Microsoft.Build.Tasks" assembly
31354              
31355              &lt;UsingTask TaskName="t1"                                            ==> look for the "t1" task in the
31356                         AssemblyName="mytasks, Culture=en, Version=1.0.0.0"/&gt;        strongly-named "mytasks" assembly
31357             
31358              &lt;UsingTask TaskName="foo"                                           ==> look for the "foo" task in the
31359                         AssemblyFile="$(MyDownloadedTasks)\utiltasks.dll"/&gt;          "utiltasks" assembly file
31360             
31361              &lt;UsingTask TaskName="UtilTasks.Bar"                                 ==> invalid task declaration
31362                         AssemblyName="utiltasks.dll"
31363                         AssemblyFile="$(MyDownloadedTasks)\"/&gt;
31364              </example>
31365         </member>
31366         <member name="F:Microsoft.Build.Execution.TaskRegistry._toolset">
31367             <summary>
31368             The fallback task registry
31369             </summary>
31370         </member>
31371         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_forceTaskHostLaunch">
31372             <summary>
31373             If true, we will force all tasks to run in the MSBuild task host EXCEPT
31374             a small well-known set of tasks that are known to depend on IBuildEngine
31375             callbacks; as forcing those out of proc would be just setting them up for 
31376             known failure.  
31377             </summary>
31378         </member>
31379         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksV4SimpleName">
31380             <summary>
31381             Simple name for the MSBuild tasks (v4), used for shimming in loading 
31382             task factory UsingTasks
31383             </summary>
31384         </member>
31385         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksV4Filename">
31386             <summary>
31387             Filename for the MSBuild tasks (v4), used for shimming in loading 
31388             task factory UsingTasks
31389             </summary>
31390         </member>
31391         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_potentialTasksV4Location">
31392             <summary>
31393             Expected location that MSBuild tasks (v4) is picked up from if the user 
31394             references it with just a simple name, used for shimming in loading 
31395             task factory UsingTasks
31396             </summary>
31397         </member>
31398         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksV12SimpleName">
31399             <summary>
31400             Simple name for the MSBuild tasks (v12), used for shimming in loading 
31401             task factory UsingTasks
31402             </summary>
31403         </member>
31404         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksV12Filename">
31405             <summary>
31406             Filename for the MSBuild tasks (v12), used for shimming in loading 
31407             task factory UsingTasks
31408             </summary>
31409         </member>
31410         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_potentialTasksV12Location">
31411             <summary>
31412             Expected location that MSBuild tasks (v12) is picked up from if the user 
31413             references it with just a simple name, used for shimming in loading 
31414             task factory UsingTasks
31415             </summary>
31416         </member>
31417         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksCoreSimpleName">
31418             <summary>
31419             Simple name for the MSBuild tasks (v14+), used for shimming in loading 
31420             task factory UsingTasks
31421             </summary>
31422         </member>
31423         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_tasksCoreFilename">
31424             <summary>
31425             Filename for the MSBuild tasks (v14+), used for shimming in loading 
31426             task factory UsingTasks
31427             </summary>
31428         </member>
31429         <member name="F:Microsoft.Build.Execution.TaskRegistry.s_potentialTasksCoreLocation">
31430             <summary>
31431             Expected location that MSBuild tasks (v14+) is picked up from if the user 
31432             references it with just a simple name, used for shimming in loading 
31433             task factory UsingTasks
31434             </summary>
31435         </member>
31436         <member name="F:Microsoft.Build.Execution.TaskRegistry._cachedTaskRecordsWithExactMatch">
31437             <summary>
31438             Cache of tasks already found using exact matching,
31439             keyed by the task identity requested.
31440             </summary>
31441         </member>
31442         <member name="F:Microsoft.Build.Execution.TaskRegistry._cachedTaskRecordsWithFuzzyMatch">
31443             <summary>
31444             Cache of tasks already found using fuzzy matching,
31445             keyed by the task name requested.
31446             Value is a dictionary of all possible matches for that 
31447             task name, by unique identity.
31448             </summary>
31449         </member>
31450         <member name="F:Microsoft.Build.Execution.TaskRegistry._taskRegistrations">
31451             <summary>
31452             Cache of task declarations i.e. the &lt;UsingTask&gt; tags fed to this registry,
31453             keyed by the task name declared.
31454             Task name may be qualified or not.
31455             This field may be null.
31456             </summary>
31457         </member>
31458         <member name="P:Microsoft.Build.Execution.TaskRegistry.RootElementCache">
31459             <summary>
31460             The cache to load the *.tasks files into
31461             </summary>
31462         </member>
31463         <member name="M:Microsoft.Build.Execution.TaskRegistry.#ctor(Microsoft.Build.Evaluation.ProjectRootElementCache)">
31464             <summary>
31465             Creates a task registry that does not fall back to any other task registry.
31466             Default constructor does no work because the tables are initialized lazily when a task is registered
31467             </summary>
31468         </member>
31469         <member name="M:Microsoft.Build.Execution.TaskRegistry.#ctor(Microsoft.Build.Evaluation.Toolset,Microsoft.Build.Evaluation.ProjectRootElementCache)">
31470             <summary>
31471             Creates a task registry that defers to the specified toolset's registry for those tasks it cannot resolve.        
31472             UNDONE: (Logging.) We can't pass the base task registry from the Toolset because we can't call GetTaskRegistry
31473             without logging context information.  When the Project load code is altered to contain logging service
31474             references, we can load the toolset task registry at the time this registry is created and pass it to
31475             this constructor instead of the toolset state.
31476             </summary>
31477             <param name="toolset">The Toolset containing the toolser task registry</param>
31478             <param name="projectRootElementCache">The <see cref="T:Microsoft.Build.Evaluation.ProjectRootElementCache"/> to use.</param>
31479         </member>
31480         <member name="P:Microsoft.Build.Execution.TaskRegistry.Toolset">
31481             <summary>
31482             Returns the toolset state used to initialize this registry, if any.
31483             </summary>
31484         </member>
31485         <member name="P:Microsoft.Build.Execution.TaskRegistry.TaskRegistrations">
31486             <summary>
31487             Access list of task registrations.
31488             FOR UNIT TESTING ONLY.
31489             </summary>
31490         </member>
31491         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisterTasksFromUsingTaskElement``2(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.String,Microsoft.Build.Construction.ProjectUsingTaskElement,Microsoft.Build.Execution.TaskRegistry,Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions)">
31492             <summary>
31493             Evaluate the usingtask and add the result into the data passed in
31494             </summary>
31495             <typeparam name="P">A type derived from IProperty</typeparam>
31496             <typeparam name="I">A type derived from IItem</typeparam>
31497         </member>
31498         <member name="M:Microsoft.Build.Execution.TaskRegistry.GetRegisteredTask(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Boolean,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation)">
31499             <summary>
31500             Given a task name, this method retrieves the task class. If the task has been requested before, it will be found in
31501             the class cache; otherwise, &lt;UsingTask&gt; declarations will be used to search the appropriate assemblies.
31502             </summary>
31503         </member>
31504         <member name="M:Microsoft.Build.Execution.TaskRegistry.GetTaskRegistrationRecord(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.Boolean,Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation,System.Boolean@)">
31505             <summary>
31506             Retrieves the task registration record for the specified task.
31507             </summary>
31508             <param name="taskName">The name of the task to retrieve.</param>
31509             <param name="taskProjectFile">The task's project file.</param>
31510             <param name="taskIdentityParameters">The set of task identity parameters to be used to identify the 
31511             correct task record match.</param>
31512             <param name="exactMatchRequired">True if an exact name match is required.</param>
31513             <param name="targetLoggingContext">The logging context.</param>
31514             <param name="elementLocation">The location of the task element in the project file.</param>
31515             <param name="retrievedFromCache">True if the record was retrieved from the cache.</param>
31516             <returns>The task registration record, or null if none was found.</returns>
31517         </member>
31518         <member name="M:Microsoft.Build.Execution.TaskRegistry.IsTaskFactoryClass(System.Type,System.Object)">
31519             <summary>
31520             Is the class being loaded a task factory class
31521             </summary>
31522         </member>
31523         <member name="M:Microsoft.Build.Execution.TaskRegistry.GetRelevantRegistrations(Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity,System.Boolean)">
31524             <summary>
31525             Searches all task declarations for the given task name.
31526             If no exact match is found, looks for partial matches.
31527             A task name that is not fully qualified may produce several partial matches.
31528             </summary>
31529         </member>
31530         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisterTask(System.String,Microsoft.Build.Shared.AssemblyLoadInfo,System.String,System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord)">
31531             <summary>
31532             Registers an evaluated using task tag for future 
31533             consultation
31534             </summary>
31535         </member>
31536         <member name="M:Microsoft.Build.Execution.TaskRegistry.GetMatchingRegistration(System.String,System.Collections.Generic.List{Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord},System.String,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation)">
31537             <summary>
31538             Given a task name and a list of records which may contain the task, this helper method will ask the records to see if the task name 
31539             can be created by the factories which are wrapped by the records. (this is done by instantiating the task factory and asking it).
31540             </summary>
31541         </member>
31542         <member name="T:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity">
31543             <summary>
31544             An object representing the identity of a task -- not just task name, but also 
31545             the set of identity parameters
31546             </summary>
31547         </member>
31548         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String})">
31549             <summary>
31550             Constructor
31551             </summary>
31552         </member>
31553         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.Name">
31554             <summary>
31555             The name of the task
31556             </summary>
31557         </member>
31558         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.TaskIdentityParameters">
31559             <summary>
31560             The identity parameters
31561             </summary>
31562         </member>
31563         <member name="T:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer">
31564             <summary>
31565             Comparer used to figure out whether two RegisteredTaskIdentities are equal or not. 
31566             </summary>
31567         </member>
31568         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.s_exact">
31569             <summary>
31570             The singleton comparer to use when an exact match is desired
31571             </summary>
31572         </member>
31573         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.s_fuzzy">
31574             <summary>
31575             The singleton comparer to use when a fuzzy match is desired.  Note that this still does an exact match on the 
31576             name, but does a fuzzy match on the task identity parameters. 
31577             </summary>
31578         </member>
31579         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer._exactMatchRequired">
31580             <summary>
31581             Keeps track of whether we're doing exact or fuzzy equivalency
31582             </summary>
31583         </member>
31584         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.#ctor(System.Boolean)">
31585             <summary>
31586             Constructor
31587             </summary>
31588         </member>
31589         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.Exact">
31590             <summary>
31591             The singleton comparer to use for when an exact match is desired 
31592             </summary>
31593         </member>
31594         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.Fuzzy">
31595             <summary>
31596             The singleton comparer to use for when a fuzzy match is desired 
31597             </summary>
31598         </member>
31599         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.IsPartialMatch(Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity,Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity)">
31600             <summary>
31601             Returns true if these two identities match "fuzzily" -- if the names pass a partial type name 
31602             match and the task identity parameters would constitute a valid merge (e.g. "don't care" and 
31603             something explicit).  Otherwise returns false. 
31604             </summary>
31605         </member>
31606         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.Equals(Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity,Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity)">
31607             <summary>
31608             Returns true if the two task identities are equal; false otherwise. 
31609             </summary>
31610         </member>
31611         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.GetHashCode(Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity)">
31612             <summary>
31613             Returns a hash code for the given task identity
31614             </summary>
31615         </member>
31616         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskIdentity.RegisteredTaskIdentityComparer.IdentityParametersMatch(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IDictionary{System.String,System.String},System.Boolean)">
31617             <summary>
31618             Returns true if the two dictionaries representing sets of task identity parameters match; false otherwise.
31619             Internal so that RegisteredTaskRecord can use this function in its determination of whether the task factory 
31620             supports a certain task identity.  
31621             </summary>
31622         </member>
31623         <member name="T:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord">
31624             <summary>
31625             A record for a task registration which also contains the factory which matches the record
31626             </summary>
31627         </member>
31628         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.AssemblyTaskFactory">
31629             <summary>
31630             Default task factory to use if one is not specified
31631             </summary>
31632         </member>
31633         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.TaskHostFactory">
31634             <summary>
31635             Default task factory to use if one is not specified and runtime or architecture is specified
31636             </summary>
31637         </member>
31638         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.CodeTaskFactory">
31639             <summary>
31640             Task factory used to create CodeDom-based inline tasks.  Special-cased as one of two officially
31641             supported task factories in Microsoft.Build.Tasks.vX.Y.dll to deal with versioning issue. 
31642             </summary>
31643         </member>
31644         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.XamlTaskFactory">
31645             <summary>
31646             Task factory used to create CodeDom-based inline tasks.  Special-cased as one of two officially
31647             supported task factories in Microsoft.Build.Tasks.vX.Y.dll to deal with versioning issue. 
31648             </summary>
31649         </member>
31650         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.s_taskFactoryTypeLoaderLock">
31651             <summary>
31652             Lock for the taskFactoryTypeLoader
31653             </summary>
31654         </member>
31655         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.s_taskFactoryTypeFilter">
31656             <summary>
31657             Type filter to make sure we only look for taskFactoryClasses
31658             </summary>
31659         </member>
31660         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskIdentity">
31661             <summary>
31662             Identity of this task.
31663             </summary>
31664         </member>
31665         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.s_taskFactoryTypeLoader">
31666             <summary>
31667             Typeloader for taskFactories
31668             </summary>
31669         </member>
31670         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._registeredName">
31671             <summary>
31672             The task name this record was registered with from the using task element
31673             </summary>
31674         </member>
31675         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskFactoryAssemblyLoadInfo">
31676             <summary>
31677             The assembly information about the task factory to be instantiated. For
31678             AssemblyTaskFactories this is the task assembly which should be loaded
31679             </summary>
31680         </member>
31681         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskFactory">
31682             <summary>
31683             The task factory class name which will be used to lookup the task factory from the assembly specified in the assemblyName or assemblyFile.
31684             </summary>
31685         </member>
31686         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskFactoryWrapperInstance">
31687             <summary>
31688             A task factory wrapper which caches and combines information related to the parameters of the task.
31689             </summary>
31690         </member>
31691         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskNamesCreatableByFactory">
31692             <summary>
31693             Cache of task names which can be created by the factory. 
31694             When ever a taskName is checked against the factory we cache the result so we do not have to 
31695             make possibly expensive calls over and over again.
31696             </summary>
31697         </member>
31698         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._taskFactoryParameters">
31699             <summary>
31700             Set of parameters that can be used by the task factory specifically.  
31701             </summary>
31702         </member>
31703         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord._parameterGroupAndTaskBody">
31704             <summary>
31705             Encapsulates the parameters and the body of the task element for the inline task.
31706             </summary>
31707         </member>
31708         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.#ctor(System.String,Microsoft.Build.Shared.AssemblyLoadInfo,System.String,System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord)">
31709             <summary>
31710             Constructor
31711             </summary>
31712         </member>
31713         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.RegisteredName">
31714             <summary>
31715             Gets the task name this record was registered with.
31716             </summary>
31717         </member>
31718         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.TaskFactoryAssemblyLoadInfo">
31719             <summary>
31720             Gets the assembly load information.
31721             </summary>
31722         </member>
31723         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.TaskFactoryAttributeName">
31724             <summary>
31725             Gets the task factory attribute value.
31726             </summary>
31727         </member>
31728         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.TaskFactoryParameters">
31729             <summary>
31730             Gets the set of parameters for the task factory
31731             </summary>
31732         </member>
31733         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskBody">
31734             <summary>
31735             Gets the inline task record
31736             </summary>
31737         </member>
31738         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.TaskIdentity">
31739             <summary>
31740             Identity of this task. 
31741             </summary>
31742         </member>
31743         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.CanTaskBeCreatedByFactory(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation)">
31744             <summary>
31745             Ask the question, whether or not the task name can be created by the task factory. 
31746             To answer this question we need to instantiate and initialize the task factory and ask it if it can create the given task name. 
31747             This question is useful for assembly tasks where the task may or may not be in an assembly, this can also be useful if the task factory 
31748             loads an external file and uses that to generate the tasks.
31749             </summary>
31750             <returns>true if the task can be created by the factory, false if it cannot be created</returns>
31751         </member>
31752         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.GetTaskFactoryFromRegistrationRecord(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation)">
31753             <summary>
31754             Given a Registered task record and a task name. Check create an instance of the task factory using the record. 
31755             If the factory is a assembly task factory see if the assemblyFile has the correct task inside of it.
31756             </summary>
31757         </member>
31758         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.GetTaskFactory(Microsoft.Build.BackEnd.Logging.TargetLoggingContext,Microsoft.Build.Construction.ElementLocation,System.String)">
31759             <summary>
31760             Create an instance of the task factory and load it from the assembly.
31761             </summary>
31762             <exception cref="T:Microsoft.Build.Exceptions.InvalidProjectFileException">If the task factory could not be properly created an InvalidProjectFileException will be thrown</exception>
31763         </member>
31764         <member name="T:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord">
31765             <summary>
31766             Keep track of the xml which will be sent to the inline task factory and the parameters if any which will also be passed in
31767             </summary>
31768         </member>
31769         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord._usingTaskParameters">
31770             <summary>
31771             The list of parameters found in the using task along with a corosponding UsingTaskParameterInfo which contains the specific information about it
31772             Populated lazily as it is often empty.
31773             </summary>
31774         </member>
31775         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord._inlineTaskXmlBody">
31776             <summary>
31777             The body of the task element which will be passed to the task factory.
31778             </summary>
31779         </member>
31780         <member name="F:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord._taskBodyEvaluated">
31781             <summary>
31782             Was the task body evaluated or not
31783             </summary>
31784         </member>
31785         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.#ctor">
31786             <summary>
31787             Create an empty ParameterGroupAndTaskElementRecord
31788             </summary>
31789         </member>
31790         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.UsingTaskParameters">
31791             <summary>
31792             The parameters from the ParameterGroup from the using task element which will be passed to the task factory.
31793             </summary>
31794         </member>
31795         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.InlineTaskXmlBody">
31796             <summary>
31797             The body of the task element which will be passed to the task factory.
31798             </summary>
31799         </member>
31800         <member name="P:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.TaskBodyEvaluated">
31801             <summary>
31802             Has the task body been passed to the expander to be expanded
31803             </summary>
31804         </member>
31805         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.ExpandUsingTask``2(Microsoft.Build.Construction.ProjectUsingTaskElement,Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions)">
31806             <summary>
31807             Keep track of the xml which will be sent to the inline task factory and the parameters if any which will also be passed in
31808             </summary>
31809             <typeparam name="P">Property type</typeparam>
31810             <typeparam name="I">Item Type</typeparam>
31811         </member>
31812         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.EvaluateTaskBody``2(Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Construction.ProjectUsingTaskBodyElement,Microsoft.Build.Evaluation.ExpanderOptions)">
31813             <summary>
31814             Evaluate the task body of the using task
31815             </summary>
31816             <typeparam name="P">IProperttyTypes</typeparam>
31817             <typeparam name="I">IItems</typeparam>
31818         </member>
31819         <member name="M:Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.ParameterGroupAndTaskElementRecord.ParseUsingTaskParameterGroupElement``2(Microsoft.Build.Construction.UsingTaskParameterGroupElement,Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions)">
31820             <summary>
31821             Convert the UsingTaskParameterGroupElement into a list of parameter names and UsingTaskParameters
31822             </summary>
31823             <typeparam name="P">Property type</typeparam>
31824             <typeparam name="I">Item types</typeparam>
31825         </member>
31826         <member name="T:Microsoft.Build.Internal.TaskHostContext">
31827             <summary>
31828             Enumeration of all possible (currently supported) types of task host context.
31829             </summary>
31830         </member>
31831         <member name="F:Microsoft.Build.Internal.TaskHostContext.X32CLR2">
31832             <summary>
31833             32-bit Intel process, using the 2.0 CLR.
31834             </summary>
31835         </member>
31836         <member name="F:Microsoft.Build.Internal.TaskHostContext.X64CLR2">
31837             <summary>
31838             64-bit Intel process, using the 2.0 CLR.
31839             </summary>
31840         </member>
31841         <member name="F:Microsoft.Build.Internal.TaskHostContext.X32CLR4">
31842             <summary>
31843             32-bit Intel process, using the 4.0 CLR.
31844             </summary>
31845         </member>
31846         <member name="F:Microsoft.Build.Internal.TaskHostContext.X64CLR4">
31847             <summary>
31848             64-bit Intel process, using the 4.0 CLR.
31849             </summary>
31850         </member>
31851         <member name="F:Microsoft.Build.Internal.TaskHostContext.Invalid">
31852             <summary>
31853             Invalid task host context
31854             </summary>
31855         </member>
31856         <member name="T:Microsoft.Build.Internal.CommunicationsUtilities">
31857             <summary>
31858             This class contains utility methods for the MSBuild engine.
31859             </summary>
31860         </member>
31861         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.DefaultNodeConnectionTimeout">
31862             <summary>
31863             The timeout to connect to a node.
31864             </summary>
31865         </member>
31866         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.s_fileVersionChecked">
31867             <summary>
31868             Flag if we have already calculated the FileVersion hashcode
31869             </summary>
31870         </member>
31871         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.s_fileVersionHash">
31872             <summary>
31873             A hashcode calculated from the fileversion
31874             </summary>
31875         </member>
31876         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.s_trace">
31877             <summary>
31878             Whether to trace communications
31879             </summary>
31880         </member>
31881         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.s_debugDumpPath">
31882             <summary>
31883             Place to dump trace
31884             </summary>
31885         </member>
31886         <member name="F:Microsoft.Build.Internal.CommunicationsUtilities.s_lastLoggedTicks">
31887             <summary>
31888             Ticks at last time logged
31889             </summary>
31890         </member>
31891         <member name="T:Microsoft.Build.Internal.CommunicationsUtilities.LogDebugCommunications">
31892             <summary>
31893             Delegate to debug the communication utilities.
31894             </summary>
31895         </member>
31896         <member name="P:Microsoft.Build.Internal.CommunicationsUtilities.NodeConnectionTimeout">
31897             <summary>
31898             Gets or sets the node connection timeout.
31899             </summary>
31900         </member>
31901         <member name="P:Microsoft.Build.Internal.CommunicationsUtilities.FileVersionHash">
31902             <summary>
31903             Looks up the file version and caches the hashcode
31904             This file version hashcode is used in calculating the handshake
31905             </summary>
31906         </member>
31907         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetEnvironmentStrings">
31908             <summary>
31909             Get environment block
31910             </summary>
31911         </member>
31912         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.FreeEnvironmentStrings(System.Char*)">
31913             <summary>
31914             Free environment block
31915             </summary>
31916         </member>
31917         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.CopyMemory(System.Char*,System.Char*,System.UInt32)">
31918             <summary>
31919             Move a block of chars
31920             </summary>
31921         </member>
31922         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetEnvironmentCharArray">
31923             <summary>
31924             Retrieve the environment block.
31925             Copied from the BCL implementation to eliminate some expensive security asserts.
31926             </summary>
31927         </member>
31928         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetEnvironmentVariables">
31929             <summary>
31930             Copied from the BCL implementation to eliminate some expensive security asserts.
31931             Returns key value pairs of environment variables in a new dictionary
31932             with a case-insensitive key comparer.
31933             </summary>
31934         </member>
31935         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.SetEnvironment(System.Collections.Generic.IDictionary{System.String,System.String})">
31936             <summary>
31937             Updates the environment to match the provided dictionary.
31938             </summary>
31939         </member>
31940         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GenerateHostHandshakeFromBase(System.Int64,System.Int64)">
31941             <summary>
31942             Given a base handshake, generates the real handshake based on e.g. elevation level.  
31943             Client handshake required for comparison purposes only.  Returns the update handshake.  
31944             </summary>
31945         </member>
31946         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetTaskHostHostHandshake(Microsoft.Build.Internal.TaskHostContext)">
31947             <summary>
31948             Magic number sent by the host to the client during the handshake.
31949             Derived from the binary timestamp to avoid mixing binary versions.
31950             </summary>
31951         </member>
31952         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetTaskHostClientHandshake(Microsoft.Build.Internal.TaskHostContext)">
31953             <summary>
31954             Magic number sent by the client to the host during the handshake.
31955             Munged version of the host handshake.
31956             </summary>
31957         </member>
31958         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.WriteLongForHandshake(System.IO.Pipes.PipeStream,System.Int64)">
31959             <summary>
31960             Extension method to write a series of bytes to a stream
31961             </summary>
31962         </member>
31963         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.ReadLongForHandshake(System.IO.Pipes.PipeStream)">
31964             <summary>
31965             Extension method to read a series of bytes from a stream
31966             </summary>
31967         </member>
31968         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.ReadLongForHandshake(System.IO.Pipes.PipeStream,System.Byte[],System.Byte)">
31969             <summary>
31970             Extension method to read a series of bytes from a stream.
31971             If specified, leading byte matches one in the supplied array if any, returns rejection byte and throws IOException.
31972             </summary>
31973         </member>
31974         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetTaskHostContext(System.Collections.Generic.IDictionary{System.String,System.String})">
31975             <summary>
31976             Given the appropriate information, return the equivalent TaskHostContext.  
31977             </summary>
31978         </member>
31979         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetTaskHostContext(System.Boolean,System.Int32)">
31980             <summary>
31981             Given the appropriate information, return the equivalent TaskHostContext.  
31982             </summary>
31983         </member>
31984         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetCurrentTaskHostContext">
31985             <summary>
31986             Returns the TaskHostContext corresponding to this process
31987             </summary>
31988         </member>
31989         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetIntegerVariableOrDefault(System.String,System.Int32)">
31990             <summary>
31991             Gets the value of an integer environment variable, or returns the default if none is set or it cannot be converted.
31992             </summary>
31993         </member>
31994         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.Trace(System.String,System.Object[])">
31995             <summary>
31996             Writes trace information to a log file
31997             </summary>
31998         </member>
31999         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.Trace(System.Int32,System.String,System.Object[])">
32000             <summary>
32001             Writes trace information to a log file
32002             </summary>
32003         </member>
32004         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetBaseHandshakeForContext(Microsoft.Build.Internal.TaskHostContext)">
32005             <summary>
32006             Add the task host context to this handshake, to make sure that task hosts with different contexts 
32007             will have different handshakes.  Shift it into the upper 32-bits to avoid running into the 
32008             session ID.
32009             </summary>
32010             <param name="hostContext">TaskHostContext</param>
32011             <returns>Base Handshake</returns>
32012         </member>
32013         <member name="M:Microsoft.Build.Internal.CommunicationsUtilities.GetHandshakeHashCode(System.String)">
32014             <summary>
32015             Gets a hash code for this string.  If strings A and B are such that A.Equals(B), then
32016             they will return the same hash code.
32017             This is as implemented in CLR String.GetHashCode() [ndp\clr\src\BCL\system\String.cs]
32018             but stripped out architecture specific defines
32019             that causes the hashcode to be different and this causes problem in cross-architecture handshaking
32020             </summary>
32021         </member>
32022         <member name="T:Microsoft.Build.Internal.ReservedPropertyNames">
32023             <summary>
32024             Contains a list of the special (reserved) properties that are settable by MSBuild code only.
32025             </summary>
32026         </member>
32027         <member name="F:Microsoft.Build.Internal.ReservedPropertyNames.s_reservedProperties">
32028             <summary>
32029             Lookup for reserved property names
32030             </summary>
32031         </member>
32032         <member name="F:Microsoft.Build.Internal.ReservedPropertyNames.s_locker">
32033             <summary>
32034             Lock object, since this is a shared table, and concurrent evaluation must be safe
32035             </summary>
32036         </member>
32037         <member name="P:Microsoft.Build.Internal.ReservedPropertyNames.ReservedProperties">
32038             <summary>
32039             Intentionally do not include MSBuildExtensionsPath* or MSBuildUserExtensionsPath in this list.  We need tasks to be able to override those.
32040             </summary>
32041         </member>
32042         <member name="M:Microsoft.Build.Internal.ReservedPropertyNames.IsReservedProperty(System.String)">
32043             <summary>
32044             Indicates if the given property is a reserved property.
32045             </summary>
32046             <returns>true, if specified property is reserved</returns>
32047         </member>
32048         <member name="T:Microsoft.Build.Internal.Constants">
32049             <summary>
32050             Constants used by the Engine
32051             </summary>
32052         </member>
32053         <member name="F:Microsoft.Build.Internal.Constants.defaultToolsVersion">
32054             <summary>
32055             If no default tools version is specified in the config file or registry, we'll use 2.0.
32056             The engine will use its binpath for the matching toolset path.
32057             </summary>
32058         </member>
32059         <member name="F:Microsoft.Build.Internal.Constants.defaultFallbackToolsVersion">
32060             <summary>
32061             The toolsversion we will fall back to as a last resort if the default one cannot be found, this fallback should be the most current toolsversion known
32062             </summary>
32063         </member>
32064         <member name="F:Microsoft.Build.Internal.Constants.defaultSolutionWrapperProjectToolsVersion">
32065             <summary>
32066             The toolsversion we will use when we construct the solution wrapper metaprojects; this should be the most current toolsversion known
32067             </summary>
32068         </member>
32069         <member name="F:Microsoft.Build.Internal.Constants.SubToolsetVersionPropertyName">
32070             <summary>
32071             Name of the property used to select which sub-toolset to use. 
32072             </summary>
32073         </member>
32074         <member name="F:Microsoft.Build.Internal.Constants.Dev10SubToolsetValue">
32075             <summary>
32076             Value we should be setting VisualStudioVersion as the ultimate fallback when Dev10 is installed. 
32077             </summary>
32078         </member>
32079         <member name="F:Microsoft.Build.Internal.Constants.assemblyTimestamp">
32080             <summary>
32081             Number representing the current assembly's timestamp
32082             </summary>
32083         </member>
32084         <member name="P:Microsoft.Build.Internal.Constants.AssemblyVersion">
32085             <summary>
32086             Current version of this MSBuild Engine assembly in the 
32087             form, e.g, "4.0"
32088             </summary>
32089         </member>
32090         <member name="P:Microsoft.Build.Internal.Constants.AssemblyTimestamp">
32091             <summary>
32092             Number representing the current assembly's timestamp
32093             </summary>
32094         </member>
32095         <member name="T:Microsoft.Build.Internal.AvailableStaticMethods">
32096             <summary>
32097             The set of available static methods.
32098             NOTE: Do not allow methods here that could do "bad" things under any circumstances.
32099             These must be completely benign operations, as they run during project load, which must be safe in VS.
32100             Key = Type or Type::Method, Value = AssemblyQualifiedTypeName (where null = mscorlib)
32101             </summary>
32102             <remarks>
32103             Placed here to avoid StyleCop error.
32104             </remarks>
32105         </member>
32106         <member name="F:Microsoft.Build.Internal.AvailableStaticMethods.s_availableStaticMethods">
32107             <summary>
32108             Static methods that are allowed in constants. Key = Type or Type::Method, Value = Tuple of AssemblyQualifiedTypeName (where null = mscorlib) or the actual type object
32109             </summary>
32110         </member>
32111         <member name="F:Microsoft.Build.Internal.AvailableStaticMethods.s_locker">
32112             <summary>
32113             Locker to protect initialization
32114             </summary>
32115         </member>
32116         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.ContainsKey(System.String)">
32117             <summary>
32118             Whether a key is present
32119             </summary>
32120         </member>
32121         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.TryAdd(System.String,System.Tuple{System.String,System.Type})">
32122             <summary>
32123             Add an entry if not already present
32124             </summary>
32125         </member>
32126         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.TryAdd(System.String,System.String,System.Tuple{System.String,System.Type})">
32127             <summary>
32128             Constructs the fully qualified method name and adds it to the cache
32129             </summary>
32130             <param name="typeFullName"></param>
32131             <param name="simpleMethodName"></param>
32132             <param name="typeInformation"></param>
32133             <returns></returns>
32134         </member>
32135         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.TryGetValue(System.String,System.Tuple{System.String,System.Type}@)">
32136             <summary>
32137             Get an entry if present
32138             </summary>
32139         </member>
32140         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.GetValue(System.String)">
32141             <summary>
32142             Get an entry or null if not present
32143             </summary>
32144         </member>
32145         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.GetTypeInformationFromTypeCache(System.String,System.String)">
32146             <summary>
32147             Tries to retrieve the type information for a type name / method name combination. 
32148             
32149             It does 2 lookups:
32150             1st try: 'typeFullName'
32151             2nd try: 'typeFullName::simpleMethodName'
32152             
32153             </summary>
32154             <param name="typeFullName">namespace qualified type name</param>
32155             <param name="simpleMethodName">name of the method</param>
32156             <returns></returns>
32157         </member>
32158         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.CreateQualifiedMethodName(System.String,System.String)">
32159             <summary>
32160             Returns the fully qualified format for the given method: see typeFullName::methodName
32161             </summary>
32162             <param name="typeFullName">namespace qualified type name</param>
32163             <param name="simpleMethodName">simple name of the method</param>
32164             <returns></returns>
32165         </member>
32166         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.Reset_ForUnitTestsOnly">
32167             <summary>
32168             Re-initialize.
32169             Unit tests need this when they enable "unsafe" methods -- which will then go in the collection,
32170             and mess up subsequent tests.
32171             </summary>
32172         </member>
32173         <member name="M:Microsoft.Build.Internal.AvailableStaticMethods.InitializeAvailableMethods">
32174             <summary>
32175             Fill up the dictionary for first use
32176             </summary>
32177         </member>
32178         <member name="M:Microsoft.Build.Internal.EngineFileUtilities.GetFileListUnescaped(System.String,System.String)">
32179             <summary>
32180             Used for the purposes of evaluating an item specification. Given a filespec that may include wildcard characters * and
32181             ?, we translate it into an actual list of files. If the input filespec doesn't contain any wildcard characters, and it
32182             doesn't appear to point to an actual file on disk, then we just give back the input string as an array of length one,
32183             assuming that it wasn't really intended to be a filename (as items are not required to necessarily represent files).
32184             Any wildcards passed in that are unescaped will be treated as real wildcards.
32185             The "include" of items passed back from the filesystem will be returned canonically escaped.
32186             The ordering of the list returned is deterministic (it is sorted).
32187             Will never throw IO exceptions. If path is invalid, just returns filespec verbatim.
32188             </summary>
32189             <param name="directoryEscaped">The directory to evaluate, escaped.</param>
32190             <param name="filespecEscaped">The filespec to evaluate, escaped.</param>
32191             <returns>Array of file paths, unescaped.</returns>
32192         </member>
32193         <member name="M:Microsoft.Build.Internal.EngineFileUtilities.GetFileListEscaped(System.String,System.String,System.Collections.Generic.IEnumerable{System.String})">
32194             <summary>
32195             Used for the purposes of evaluating an item specification. Given a filespec that may include wildcard characters * and
32196             ?, we translate it into an actual list of files. If the input filespec doesn't contain any wildcard characters, and it
32197             doesn't appear to point to an actual file on disk, then we just give back the input string as an array of length one,
32198             assuming that it wasn't really intended to be a filename (as items are not required to necessarily represent files).
32199             Any wildcards passed in that are unescaped will be treated as real wildcards.
32200             The "include" of items passed back from the filesystem will be returned canonically escaped.
32201             The ordering of the list returned is deterministic (it is sorted).
32202             Will never throw IO exceptions. If path is invalid, just returns filespec verbatim.
32203             </summary>
32204             <param name="directoryEscaped">The directory to evaluate, escaped.</param>
32205             <param name="filespecEscaped">The filespec to evaluate, escaped.</param>
32206             <param name="excludeSpecsEscaped">Filespecs to exclude, escaped.</param>
32207             <returns>Array of file paths, escaped.</returns>
32208         </member>
32209         <member name="M:Microsoft.Build.Internal.EngineFileUtilities.GetFileList(System.String,System.String,System.Boolean,System.Collections.Generic.IEnumerable{System.String})">
32210             <summary>
32211             Used for the purposes of evaluating an item specification. Given a filespec that may include wildcard characters * and
32212             ?, we translate it into an actual list of files. If the input filespec doesn't contain any wildcard characters, and it
32213             doesn't appear to point to an actual file on disk, then we just give back the input string as an array of length one,
32214             assuming that it wasn't really intended to be a filename (as items are not required to necessarily represent files).
32215             Any wildcards passed in that are unescaped will be treated as real wildcards.
32216             The "include" of items passed back from the filesystem will be returned canonically escaped.
32217             The ordering of the list returned is deterministic (it is sorted).
32218             Will never throw IO exceptions: if there is no match, returns the input verbatim.
32219             </summary>
32220             <param name="directoryEscaped">The directory to evaluate, escaped.</param>
32221             <param name="filespecEscaped">The filespec to evaluate, escaped.</param>
32222             <param name="returnEscaped"><code>true</code> to return escaped specs.</param>
32223             <param name="excludeSpecsEscaped">The exclude specification, escaped.</param>
32224             <returns>Array of file paths.</returns>
32225         </member>
32226         <member name="M:Microsoft.Build.Internal.EngineFileUtilities.GetFileSpecMatchTester(System.Collections.Generic.IList{System.String},System.String)">
32227             Returns a Func that will return true IFF its argument matches any of the specified filespecs
32228             Assumes filespec may be escaped, so it unescapes it
32229             The returned function makes no escaping assumptions or escaping operations. Its callers should control escaping.
32230         </member>
32231         <member name="T:Microsoft.Build.Internal.RegistryKeyWrapper">
32232             <summary>
32233             Thin wrapper around Microsoft.Win32.RegistryKey that can be 
32234             subclassed for testing purposes
32235             </summary>
32236         </member>
32237         <member name="F:Microsoft.Build.Internal.RegistryKeyWrapper._disposed">
32238             <summary>
32239             Has the object been disposed yet.
32240             </summary>
32241         </member>
32242         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.#ctor(Microsoft.Win32.RegistryKey,Microsoft.Win32.RegistryKey)">
32243             <summary>
32244             Initializes this RegistryKeyWrapper to wrap the specified key.
32245             Does not check for a null key.
32246             </summary>
32247         </member>
32248         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.#ctor(System.String)">
32249             <summary>
32250             Initializes this RegistryKeyWrapper to wrap the key at the specified path
32251             and assumes the key is underneath HKLM
32252             Note that registryKeyPath should be relative to HKLM.
32253             </summary>
32254         </member>
32255         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.#ctor(System.String,Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView)">
32256             <summary>
32257             Initializes this RegistryKeyWrapper to wrap the key at the specified path
32258             </summary>
32259         </member>
32260         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.#ctor(System.String,Microsoft.Win32.RegistryKey)">
32261             <summary>
32262             Initializes this RegistryKeyWrapper to wrap the key at the specified path
32263             </summary>
32264         </member>
32265         <member name="P:Microsoft.Build.Internal.RegistryKeyWrapper.Name">
32266             <summary>
32267             Name of the registry key
32268             </summary>
32269         </member>
32270         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.KeyExists(System.String,Microsoft.Win32.RegistryHive,Microsoft.Win32.RegistryView)">
32271             <summary>
32272             Convenient static helper method on RegistryKeyWrapper, for when someone is only intersted in knowing 
32273             whether a particular registry key exists or not.
32274             </summary>
32275         </member>
32276         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.GetValue(System.String)">
32277             <summary>
32278             Gets the value with name "name" stored under this registry key
32279             </summary>
32280             <param name="name"></param>
32281             <returns></returns>
32282         </member>
32283         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.GetValueNames">
32284             <summary>
32285             Gets the names of all values underneath this registry key
32286             </summary>
32287             <returns></returns>
32288         </member>
32289         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.GetSubKeyNames">
32290             <summary>
32291             Gets the names of all sub keys immediately below this registry key
32292             </summary>
32293             <returns></returns>
32294         </member>
32295         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.OpenSubKey(System.String)">
32296             <summary>
32297             Returns the RegistryKeyWrapper around the sub key with name "name". If that does
32298             not exist, returns a RegistryKeyWrapper around null.
32299             </summary>
32300             <param name="name"></param>
32301             <returns></returns>
32302         </member>
32303         <member name="M:Microsoft.Build.Internal.RegistryKeyWrapper.Exists">
32304             <summary>
32305             Returns true if the wrapped registry key exists.
32306             </summary>
32307             <returns></returns>
32308         </member>
32309         <member name="P:Microsoft.Build.Internal.RegistryKeyWrapper.WrappedKey">
32310             <summary>
32311             Lazy getter for the root tools version registry key: means that this class
32312             will never throw registry exceptions from the constructor
32313             </summary>
32314         </member>
32315         <member name="T:Microsoft.Build.Internal.Utilities">
32316             <summary>
32317             This class contains utility methods for the MSBuild engine.
32318             </summary>
32319         </member>
32320         <member name="F:Microsoft.Build.Internal.Utilities.s_shouldTreatHigherToolsVersionsAsCurrent">
32321             <summary>
32322             Save off the contents of the environment variable that specifies whether we should treat higher toolsversions as the current 
32323             toolsversion.  (Some hosts require this.)
32324             </summary>
32325         </member>
32326         <member name="F:Microsoft.Build.Internal.Utilities.s_shouldTreatOtherToolsVersionsAsCurrent">
32327             <summary>
32328             Save off the contents of the environment variable that specifies whether we should treat all toolsversions, regardless of 
32329             whether they are higher or lower, as the current toolsversion.  (Some hosts require this.)
32330             </summary>
32331         </member>
32332         <member name="F:Microsoft.Build.Internal.Utilities.s_uselegacyDefaultToolsVersionBehavior">
32333             <summary>
32334             If set, default to the ToolsVersion from the project file (or if that doesn't isn't set, default to 2.0).  Otherwise, use Dev12+ 
32335             defaulting logic: first check the MSBUILDDEFAULTTOOLSVERSION environment variable, then check for a DefaultOverrideToolsVersion, 
32336             then if both fail, use the current ToolsVersion. 
32337             </summary>
32338         </member>
32339         <member name="F:Microsoft.Build.Internal.Utilities.s_defaultToolsVersionFromEnvironment">
32340             <summary>
32341             If set, will be used as the ToolsVersion to build with (unless MSBUILDLEGACYDEFAULTTOOLSVERSION is set).
32342             </summary>
32343         </member>
32344         <member name="T:Microsoft.Build.Internal.Utilities.GetToolset">
32345             <summary>
32346             Delegate for a method that, given a ToolsVersion string, returns the matching Toolset.
32347             </summary>
32348         </member>
32349         <member name="M:Microsoft.Build.Internal.Utilities.RefreshInternalEnvironmentValues">
32350             <summary>
32351             INTERNAL FOR UNIT-TESTING ONLY
32352             
32353             We've got several environment variables that we read into statics since we don't expect them to ever 
32354             reasonably change, but we need some way of refreshing their values so that we can modify them for 
32355             unit testing purposes. 
32356             </summary>
32357         </member>
32358         <member name="M:Microsoft.Build.Internal.Utilities.SetXmlNodeInnerContents(Microsoft.Build.Construction.XmlElementWithLocation,System.String)">
32359             <summary>
32360             Sets the inner XML/text of the given XML node, escaping as necessary.
32361             </summary>
32362             <param name="node"></param>
32363             <param name="s">Can be empty string, but not null.</param>
32364         </member>
32365         <member name="M:Microsoft.Build.Internal.Utilities.GetXmlNodeInnerContents(Microsoft.Build.Construction.XmlElementWithLocation)">
32366             <summary>
32367             Extracts the inner XML/text of the given XML node, unescaping as necessary.
32368             </summary>
32369             <param name="node"></param>
32370             <returns>Inner XML/text of specified node.</returns>
32371         </member>
32372         <member name="M:Microsoft.Build.Internal.Utilities.ContainsNoTagsOtherThanComments(System.String,System.Int32)">
32373             <summary>
32374             Figure out whether there are any XML tags, other than comment tags,
32375             in the string.
32376             </summary>
32377             <remarks>
32378             We know the string coming in is a valid XML fragment. (The project loaded after all.)
32379             So for example we can ignore an open comment tag without a matching closing comment tag.
32380             </remarks>
32381         </member>
32382         <member name="M:Microsoft.Build.Internal.Utilities.RemoveXmlNamespace(System.String)">
32383             <summary>
32384             Removes the xmlns attribute from an XML string.
32385             </summary>
32386             <param name="xml">XML string to process.</param>
32387             <returns>The modified XML string.</returns>
32388         </member>
32389         <member name="M:Microsoft.Build.Internal.Utilities.CreateToolsVersionListString(System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.Toolset})">
32390             <summary>
32391             Creates a comma separated list of valid tools versions suitable for an error message.
32392             </summary>
32393         </member>
32394         <member name="M:Microsoft.Build.Internal.Utilities.GenerateToolsVersionToUse(System.String,System.String,Microsoft.Build.Internal.Utilities.GetToolset,System.String)">
32395             <summary>
32396             Figure out what ToolsVersion to use to actually build the project with. 
32397             </summary>
32398             <param name="explicitToolsVersion">The user-specified ToolsVersion (through e.g. /tv: on the command line)</param>
32399             <param name="toolsVersionFromProject">The ToolsVersion from the project file</param>
32400             <param name="getToolset">Delegate used to test whether a toolset exists for a given ToolsVersion.  May be null, in which
32401             case we act as though that toolset existed.</param>
32402             <param name="defaultToolsVersion">The default ToolsVersion</param>
32403             <returns>The ToolsVersion we should use to build this project.  Should never be null.</returns>
32404         </member>
32405         <member name="M:Microsoft.Build.Internal.Utilities.GetEnvironmentProperties">
32406             <summary>
32407             Retrieves properties derived from the current
32408             environment variables.
32409             </summary>
32410         </member>
32411         <member name="M:Microsoft.Build.Internal.Utilities.FastCountOrZero(System.Collections.IEnumerable)">
32412             <summary>
32413             Extension to IEnumerable to get the count if it 
32414             can be quickly gotten, otherwise 0.
32415             </summary>
32416         </member>
32417         <member name="M:Microsoft.Build.Internal.Utilities.Values``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,``0}})">
32418             <summary>
32419             Extension to IEnumerable of KVP of string, something to just return the somethings.
32420             </summary>
32421         </member>
32422         <member name="T:Microsoft.Build.Internal.ProjectXmlUtilities">
32423             <summary>
32424             Project-related Xml utilities
32425             </summary>
32426         </member>
32427         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.GetVerifyThrowProjectChildElements(Microsoft.Build.Construction.XmlElementWithLocation)">
32428             <summary>
32429             Gets child elements, ignoring whitespace and comments.
32430             Verifies xml namespace of elements is the MSBuild namespace.
32431             Throws InvalidProjectFileException for elements in the wrong namespace, and unexpected XML node types
32432             </summary>
32433         </member>
32434         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.GetChildElements(Microsoft.Build.Construction.XmlElementWithLocation,System.Boolean)">
32435             <summary>
32436             Gets child elements, ignoring whitespace and comments.
32437             Verifies xml namespace of elements is the MSBuild namespace.
32438             Throws InvalidProjectFileException for elements in the wrong namespace, and (if parameter is set) unexpected XML node types
32439             </summary>
32440         </member>
32441         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectNoChildElements(Microsoft.Build.Construction.XmlElementWithLocation)">
32442             <summary>
32443             Throw an invalid project exception if there are any child elements at all
32444             </summary>
32445         </member>
32446         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.ThrowProjectInvalidChildElementDueToDuplicate(Microsoft.Build.Construction.XmlElementWithLocation)">
32447             <summary>
32448             Throw an invalid project exception indicating that the child is not valid beneath the element because it is a duplicate
32449             </summary>
32450         </member>
32451         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.ThrowProjectInvalidChildElement(System.String,System.String,Microsoft.Build.Construction.ElementLocation)">
32452             <summary>
32453             Throw an invalid project exception indicating that the child is not valid beneath the element
32454             </summary>
32455         </member>
32456         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectValidNamespace(Microsoft.Build.Construction.XmlElementWithLocation)">
32457             <summary>
32458             Verifies that an element is in the MSBuild namespace, otherwise throws an InvalidProjectFileException.
32459             </summary>
32460         </member>
32461         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyValidProjectNamespace(Microsoft.Build.Construction.XmlElementWithLocation)">
32462             <summary>
32463             Verify that if a namespace is specified it matches the default MSBuild namespace.
32464             </summary>
32465             <param name="element">Element to check namespace.</param>
32466             <returns>True when the namespace is in the MSBuild namespace or no namespace.</returns>
32467         </member>
32468         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectAttributeEitherMissingOrNotEmpty(Microsoft.Build.Construction.XmlElementWithLocation,System.String)">
32469             <summary>
32470             Verifies that if the attribute is present on the element, its value is not empty
32471             </summary>
32472         </member>
32473         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectNoAttributes(Microsoft.Build.Construction.XmlElementWithLocation)">
32474             <summary>
32475             If there are any attributes on the element, throws an InvalidProjectFileException complaining that the attribute is not valid on this element.
32476             </summary>
32477         </member>
32478         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectInvalidAttribute(System.Boolean,Microsoft.Build.Construction.XmlAttributeWithLocation)">
32479             <summary>
32480             If the condition is false, throws an InvalidProjectFileException complaining that the attribute is not valid on this element.
32481             </summary>
32482         </member>
32483         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectRequiredAttribute(Microsoft.Build.Construction.XmlElementWithLocation,System.String)">
32484             <summary>
32485             Verify that the element has the specified required attribute on it and
32486             it has a value other than empty string
32487             </summary>
32488         </member>
32489         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.VerifyThrowProjectAttributes(Microsoft.Build.Construction.XmlElementWithLocation,System.String[])">
32490             <summary>
32491             Verify  that all attributes on the element are on the list of legal attributes
32492             </summary>
32493         </member>
32494         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.ThrowProjectInvalidAttribute(Microsoft.Build.Construction.XmlAttributeWithLocation)">
32495             <summary>
32496             Throws an InvalidProjectFileException complaining that the attribute is not valid on this element.
32497             </summary>
32498         </member>
32499         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.SetOrRemoveAttribute(Microsoft.Build.Construction.XmlElementWithLocation,System.String,System.String)">
32500             <summary>
32501             Sets the value of an attribute, but if the value to set is null or empty, just
32502             removes the attribute. Returns the attribute, or null if it was removed.
32503             UNDONE: Make this return a bool if the attribute did not change, so we can avoid dirtying.
32504             </summary>
32505         </member>
32506         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.SetOrRemoveAttribute(Microsoft.Build.Construction.XmlElementWithLocation,System.String,System.String,System.Boolean)">
32507             <summary>
32508             Sets the value of an attribute, removing the attribute if the value is null, but still setting it 
32509             if the value is the empty string. Returns the attribute, or null if it was removed.
32510             UNDONE: Make this return a bool if the attribute did not change, so we can avoid dirtying.
32511             </summary>
32512         </member>
32513         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.GetAttributeValue(Microsoft.Build.Construction.XmlAttributeWithLocation,System.Boolean)">
32514             <summary>
32515             Returns the value of the attribute. 
32516             If the attribute is null, returns an empty string.
32517             </summary>
32518         </member>
32519         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.GetAttributeValue(Microsoft.Build.Construction.XmlElementWithLocation,System.String)">
32520             <summary>
32521             Returns the value of the attribute. 
32522             If the attribute is not present, returns an empty string.
32523             </summary>
32524         </member>
32525         <member name="M:Microsoft.Build.Internal.ProjectXmlUtilities.GetAttributeValue(Microsoft.Build.Construction.XmlElementWithLocation,System.String,System.Boolean)">
32526             <summary>
32527             Returns the value of the attribute. 
32528             If the attribute is not present, returns either null or an empty string, depending on the value 
32529             of nullIfNotExists.
32530             </summary>
32531         </member>
32532         <member name="T:Microsoft.Build.Internal.XmlReaderExtension">
32533             <summary>
32534                 Disposable helper class to wrap XmlReader / XmlTextReader functionality.
32535             </summary>
32536         </member>
32537         <member name="M:Microsoft.Build.Internal.XmlReaderExtension.Create(System.String)">
32538             <summary>
32539                 Creates an XmlReaderExtension with handle to an XmlReader.
32540             </summary>
32541             <param name="filePath">Path to the file on disk.</param>
32542             <returns>Disposable XmlReaderExtension object.</returns>
32543         </member>
32544         <member name="M:Microsoft.Build.Internal.XmlReaderExtension.GetEncodingFromAttribute(System.Xml.XmlReader)">
32545             <summary>
32546             Get the Encoding type from the XML declaration tag
32547             </summary>
32548             <param name="reader">XML Reader object</param>
32549             <returns>Encoding if specified, else null.</returns>
32550         </member>
32551         <member name="T:Microsoft.Build.Internal.Tracing">
32552             <summary>
32553             A debug only helper class for tracing
32554             </summary>
32555         </member>
32556         <member name="F:Microsoft.Build.Internal.Tracing.s_counts">
32557             <summary>
32558             A dictionary of named counters
32559             </summary>
32560         </member>
32561         <member name="F:Microsoft.Build.Internal.Tracing.s_last">
32562             <summary>
32563             Last time logging happened
32564             </summary>
32565         </member>
32566         <member name="F:Microsoft.Build.Internal.Tracing.s_interval">
32567             <summary>
32568             How often to log
32569             </summary>
32570         </member>
32571         <member name="F:Microsoft.Build.Internal.Tracing.s_slot">
32572             <summary>
32573             A place callers can put something worth logging later
32574             </summary>
32575         </member>
32576         <member name="F:Microsoft.Build.Internal.Tracing.s_currentAssemblyName">
32577             <summary>
32578             Short name of the current assembly - to distinguish statics when this type is shared into different assemblies
32579             </summary> 
32580         </member>
32581         <member name="M:Microsoft.Build.Internal.Tracing.Slot(System.String,System.String)">
32582             <summary>
32583             Put something in the slot
32584             </summary>
32585         </member>
32586         <member name="M:Microsoft.Build.Internal.Tracing.Slot``2(System.String,System.Collections.Generic.KeyValuePair{``0,``1})">
32587             <summary>
32588             Put something in the slot
32589             </summary>
32590             <typeparam name="K">The key type.</typeparam>
32591             <typeparam name="V">The value type.</typeparam>
32592         </member>
32593         <member name="M:Microsoft.Build.Internal.Tracing.Record(System.String)">
32594             <summary>
32595             Increment the named counter, and dump if it's time to do so
32596             </summary>
32597         </member>
32598         <member name="M:Microsoft.Build.Internal.Tracing.List``1(System.Collections.Generic.IEnumerable{``0})">
32599             <summary>
32600             Log the provided items
32601             </summary>
32602             <typeparam name="T">The item type.</typeparam>
32603         </member>
32604         <member name="M:Microsoft.Build.Internal.Tracing.Dump">
32605             <summary>
32606             Dump all the named counters, if any
32607             </summary>
32608         </member>
32609         <member name="T:Microsoft.Build.InterningBinaryReader">
32610             <summary>
32611             Replacement for BinaryReader which attempts to intern the strings read by ReadString.
32612             </summary>
32613         </member>
32614         <member name="F:Microsoft.Build.InterningBinaryReader.MaxCharsBuffer">
32615             <summary>
32616             The maximum size, in bytes, to read at once.
32617             </summary>
32618         </member>
32619         <member name="F:Microsoft.Build.InterningBinaryReader._buffer">
32620             <summary>
32621             Shared buffer saves allocating these arrays many times.
32622             </summary>
32623         </member>
32624         <member name="F:Microsoft.Build.InterningBinaryReader._decoder">
32625             <summary>
32626             The decoder used to translate from UTF8 (or whatever).
32627             </summary>
32628         </member>
32629         <member name="M:Microsoft.Build.InterningBinaryReader.#ctor(System.IO.Stream,Microsoft.Build.InterningBinaryReader.Buffer)">
32630             <summary>
32631             Comment about constructing.
32632             </summary>
32633         </member>
32634         <member name="M:Microsoft.Build.InterningBinaryReader.ReadString">
32635             <summary>
32636             Read a string while checking the string precursor for intern opportunities.
32637             Taken from ndp\clr\src\bcl\system\io\binaryreader.cs-ReadString()
32638             </summary>
32639         </member>
32640         <member name="M:Microsoft.Build.InterningBinaryReader.CreateSharedBuffer">
32641             <summary>
32642             A shared buffer to avoid extra allocations in InterningBinaryReader.
32643             </summary>
32644         </member>
32645         <member name="M:Microsoft.Build.InterningBinaryReader.Create(System.IO.Stream,Microsoft.Build.SharedReadBuffer)">
32646             <summary>
32647             Create a BinaryReader. It will either be an interning reader or standard binary reader
32648             depending on whether the interning reader is possible given the buffer and stream.
32649             </summary>
32650         </member>
32651         <member name="T:Microsoft.Build.InterningBinaryReader.Buffer">
32652             <summary>
32653             Holds thepreallocated buffer. 
32654             </summary>
32655         </member>
32656         <member name="M:Microsoft.Build.InterningBinaryReader.Buffer.#ctor">
32657             <summary>
32658             Yes, we are constructing.
32659             </summary>
32660         </member>
32661         <member name="P:Microsoft.Build.InterningBinaryReader.Buffer.CharBuffer">
32662             <summary>
32663             The char buffer.
32664             </summary>
32665         </member>
32666         <member name="P:Microsoft.Build.InterningBinaryReader.Buffer.ByteBuffer">
32667             <summary>
32668             The byte buffer.
32669             </summary>
32670         </member>
32671         <member name="P:Microsoft.Build.InterningBinaryReader.Buffer.Encoding">
32672             <summary>
32673             The encoding.
32674             </summary>
32675         </member>
32676         <member name="T:Microsoft.Build.SharedReadBuffer">
32677             <summary>
32678             Opaque holder of shared buffer.
32679             </summary>
32680         </member>
32681         <member name="T:Microsoft.Build.Logging.ForwardingLoggerRecord">
32682             <summary>
32683             This class descibes a central/forwarding logger pair used in multiproc logging.
32684             </summary>
32685         </member>
32686         <member name="M:Microsoft.Build.Logging.ForwardingLoggerRecord.#ctor(Microsoft.Build.Framework.ILogger,Microsoft.Build.Logging.LoggerDescription)">
32687             <summary>
32688             Constructor.
32689             </summary>
32690             <param name="centralLogger">The central logger</param>
32691             <param name="forwardingLoggerDescription">The description for the forwarding logger.</param>
32692         </member>
32693         <member name="P:Microsoft.Build.Logging.ForwardingLoggerRecord.CentralLogger">
32694             <summary>
32695             Retrieves the central logger.
32696             </summary>
32697         </member>
32698         <member name="P:Microsoft.Build.Logging.ForwardingLoggerRecord.ForwardingLoggerDescription">
32699             <summary>
32700             Retrieves the forwarding logger description.
32701             </summary>
32702         </member>
32703         <member name="T:Microsoft.Build.Logging.BinaryLogger">
32704             <summary>
32705             A logger that serializes all incoming BuildEventArgs in a compressed binary file (*.binlog). The file
32706             can later be played back and piped into other loggers (file, console, etc) to reconstruct the log contents
32707             as if a real build was happening. Additionally, this format can be read by tools for
32708             analysis or visualization. Since the file format preserves structure, tools don't have to parse
32709             text logs that erase a lot of useful information.
32710             </summary>
32711             <remarks>The logger is public so that it can be instantiated from MSBuild.exe via command-line switch.</remarks>
32712         </member>
32713         <member name="T:Microsoft.Build.Logging.BinaryLogger.ProjectImportsCollectionMode">
32714             <summary>
32715             Describes whether to collect the project files (including imported project files) used during the build.
32716             If the project files are collected they can be embedded in the log file or as a separate zip archive.
32717             </summary>
32718         </member>
32719         <member name="F:Microsoft.Build.Logging.BinaryLogger.ProjectImportsCollectionMode.None">
32720             <summary>
32721             Don't collect any files during the build.
32722             </summary>
32723         </member>
32724         <member name="F:Microsoft.Build.Logging.BinaryLogger.ProjectImportsCollectionMode.Embed">
32725             <summary>
32726             Embed all project files directly in the log file.
32727             </summary>
32728         </member>
32729         <member name="F:Microsoft.Build.Logging.BinaryLogger.ProjectImportsCollectionMode.ZipFile">
32730             <summary>
32731             Create an external .ProjectImports.zip archive for the project files.
32732             </summary>
32733         </member>
32734         <member name="P:Microsoft.Build.Logging.BinaryLogger.CollectProjectImports">
32735             <summary>
32736             Gets or sets whether to capture and embed project and target source files used during the build.
32737             </summary>
32738         </member>
32739         <member name="P:Microsoft.Build.Logging.BinaryLogger.Verbosity">
32740             <summary>
32741             The binary logger Verbosity is always maximum (Diagnostic). It tries to capture as much
32742             information as possible.
32743             </summary>
32744         </member>
32745         <member name="P:Microsoft.Build.Logging.BinaryLogger.Parameters">
32746             <summary>
32747             The only supported parameter is the output log file path (e.g. "msbuild.binlog") 
32748             </summary>
32749         </member>
32750         <member name="M:Microsoft.Build.Logging.BinaryLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
32751             <summary>
32752             Initializes the logger by subscribing to events of IEventSource
32753             </summary>
32754         </member>
32755         <member name="M:Microsoft.Build.Logging.BinaryLogger.Shutdown">
32756             <summary>
32757             Closes the underlying file stream.
32758             </summary>
32759         </member>
32760         <member name="M:Microsoft.Build.Logging.BinaryLogger.ProcessParameters">
32761             <summary>
32762             Processes the parameters given to the logger from MSBuild.
32763             </summary>
32764             <exception cref="T:Microsoft.Build.Framework.LoggerException">
32765             </exception>
32766         </member>
32767         <member name="T:Microsoft.Build.Logging.BinaryLogReplayEventSource">
32768             <summary>
32769             Provides a method to read a binary log file (*.binlog) and replay all stored BuildEventArgs
32770             by implementing IEventSource and raising corresponding events.
32771             </summary>
32772             <remarks>The class is public so that we can call it from MSBuild.exe when replaying a log file.</remarks>
32773         </member>
32774         <member name="M:Microsoft.Build.Logging.BinaryLogReplayEventSource.Replay(System.String)">
32775             <summary>
32776             Read the provided binary log file and raise corresponding events for each BuildEventArgs
32777             </summary>
32778             <param name="sourceFilePath">The full file path of the binary log file</param>
32779         </member>
32780         <member name="T:Microsoft.Build.Logging.EventArgsDispatcher">
32781             <summary>
32782             An implementation of IEventSource that raises appropriate events for a provided BuildEventArgs object.
32783             </summary>
32784             <remarks>This class is public because BinaryLogReplayEventSource is a derived class.
32785             This is abstracted into its own class because it's a useful single-purpose helper that
32786             can be used independently as a generic implementation of IEventSource.</remarks>
32787         </member>
32788         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.AnyEventRaised">
32789             <summary>
32790             This event is raised for all BuildEventArgs objects after a more type-specific event
32791             </summary>
32792         </member>
32793         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.StatusEventRaised">
32794             <summary>
32795             Raised for BuildStatusEventArgs instances
32796             </summary>
32797         </member>
32798         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.CustomEventRaised">
32799             <summary>
32800             Raised for CustomBuildEventArgs instances
32801             </summary>
32802         </member>
32803         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.BuildStarted">
32804             <summary>
32805             Raised for BuildStartedEventArgs instances
32806             </summary>
32807         </member>
32808         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.BuildFinished">
32809             <summary>
32810             Raised for BuildFinishedEventArgs instances
32811             </summary>
32812         </member>
32813         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.ProjectStarted">
32814             <summary>
32815             Raised for ProjectStartedEventArgs instances
32816             </summary>
32817         </member>
32818         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.ProjectFinished">
32819             <summary>
32820             Raised for ProjectFinishedEventArgs instances
32821             </summary>
32822         </member>
32823         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.TargetStarted">
32824             <summary>
32825             Raised for TargetStartedEventArgs instances
32826             </summary>
32827         </member>
32828         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.TargetFinished">
32829             <summary>
32830             Raised for TargetFinishedEventArgs instances
32831             </summary>
32832         </member>
32833         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.TaskStarted">
32834             <summary>
32835             Raised for TaskStartedEventArgs instances
32836             </summary>
32837         </member>
32838         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.TaskFinished">
32839             <summary>
32840             Raised for TaskFinishedEventArgs instances
32841             </summary>
32842         </member>
32843         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.ErrorRaised">
32844             <summary>
32845             Raised for BuildErrorEventArgs instances
32846             </summary>
32847         </member>
32848         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.WarningRaised">
32849             <summary>
32850             Raised for BuildWarningEventArgs instances
32851             </summary>
32852         </member>
32853         <member name="E:Microsoft.Build.Logging.EventArgsDispatcher.MessageRaised">
32854             <summary>
32855             Raised for BuildMessageEventArgs instances
32856             </summary>
32857         </member>
32858         <member name="M:Microsoft.Build.Logging.EventArgsDispatcher.Dispatch(Microsoft.Build.Framework.BuildEventArgs)">
32859             <summary>
32860             Raise one of the events that is appropriate for the type of the BuildEventArgs
32861             </summary>
32862         </member>
32863         <member name="T:Microsoft.Build.Logging.BuildEventArgsFieldFlags">
32864             <summary>
32865             A bitmask to specify which fields on a BuildEventArgs object are present; used in serialization
32866             </summary>
32867         </member>
32868         <member name="T:Microsoft.Build.Logging.BuildEventArgsFields">
32869             <summary>
32870             Represents a collective set of common properties on BuildEventArgs. Used for deserialization.
32871             </summary>
32872         </member>
32873         <member name="T:Microsoft.Build.Logging.BuildEventArgsReader">
32874             <summary>
32875             Deserializes and returns BuildEventArgs-derived objects from a BinaryReader
32876             </summary>
32877         </member>
32878         <member name="M:Microsoft.Build.Logging.BuildEventArgsReader.#ctor(System.IO.BinaryReader)">
32879             <summary>
32880             Initializes a new instance of BuildEventArgsReader using a BinaryReader instance
32881             </summary>
32882             <param name="binaryReader">The BinaryReader to read BuildEventArgs from</param>
32883         </member>
32884         <member name="E:Microsoft.Build.Logging.BuildEventArgsReader.OnBlobRead">
32885             <summary>
32886             Raised when the log reader encounters a binary blob embedded in the stream.
32887             The arguments include the blob kind and the byte buffer with the contents.
32888             </summary>
32889         </member>
32890         <member name="M:Microsoft.Build.Logging.BuildEventArgsReader.Read">
32891             <summary>
32892             Reads the next log record from the binary reader. If there are no more records, returns null.
32893             </summary>
32894         </member>
32895         <member name="M:Microsoft.Build.Logging.BuildEventArgsReader.IsBlob(Microsoft.Build.Logging.BinaryLogRecordKind)">
32896             <summary>
32897             For now it's just the ProjectImportArchive.
32898             </summary>
32899         </member>
32900         <member name="M:Microsoft.Build.Logging.BuildEventArgsReader.ReadDiagnosticFields(Microsoft.Build.Logging.BuildEventArgsFields)">
32901             <summary>
32902             For errors and warnings these 8 fields are written out explicitly
32903             (their presence is not marked as a bit in the flags). So we have to
32904             read explicitly.
32905             </summary>
32906             <param name="fields"></param>
32907         </member>
32908         <member name="T:Microsoft.Build.Logging.BuildEventArgsWriter">
32909             <summary>
32910             Serializes BuildEventArgs-derived objects into a provided BinaryWriter
32911             </summary>
32912         </member>
32913         <member name="M:Microsoft.Build.Logging.BuildEventArgsWriter.#ctor(System.IO.BinaryWriter)">
32914             <summary>
32915             Initializes a new instance of BuildEventArgsWriter with a BinaryWriter
32916             </summary>
32917             <param name="binaryWriter">A BinaryWriter to write the BuildEventArgs instances to</param>
32918         </member>
32919         <member name="M:Microsoft.Build.Logging.BuildEventArgsWriter.Write(Microsoft.Build.Framework.BuildEventArgs)">
32920             <summary>
32921             Write a provided instance of BuildEventArgs to the BinaryWriter
32922             </summary>
32923         </member>
32924         <member name="T:Microsoft.Build.Logging.ProjectImportsCollector">
32925             <summary>
32926             Creates a zip archive with all the .csproj and .targets encountered during the build.
32927             The internal .zip file structure matches closely the layout of the original sources on disk.
32928             The .zip file can be used to correlate the file names and positions in the build log file with the
32929             actual sources.
32930             </summary>
32931         </member>
32932         <member name="F:Microsoft.Build.Logging.ProjectImportsCollector._processedFiles">
32933             <summary>
32934             Avoid visiting each file more than once.
32935             </summary>
32936         </member>
32937         <member name="M:Microsoft.Build.Logging.ProjectImportsCollector.AddFileCore(System.String)">
32938             <remarks>
32939             This method doesn't need locking/synchronization because it's only called
32940             from a task that is chained linearly
32941             </remarks>
32942         </member>
32943         <member name="T:Microsoft.Build.Logging.WriteHandler">
32944             <summary>
32945             Delegate to use for writing a string to some location like
32946             the console window or the IDE build window.
32947             </summary>
32948             <param name="message"></param>
32949         </member>
32950         <member name="T:Microsoft.Build.Logging.ColorSetter">
32951             <summary>
32952             Type of delegate used to set console color.
32953             </summary>
32954             <param name="color">Text color</param>
32955         </member>
32956         <member name="T:Microsoft.Build.Logging.ColorResetter">
32957             <summary>
32958             Type of delegate used to reset console color.
32959             </summary>
32960         </member>
32961         <member name="T:Microsoft.Build.Logging.ConsoleLogger">
32962             <summary>
32963             This class implements the default logger that outputs event data
32964             to the console (stdout). 
32965             It is a facade: it creates, wraps and delegates to a kind of BaseConsoleLogger, 
32966             either SerialConsoleLogger or ParallelConsoleLogger.
32967             </summary>
32968             <remarks>This class is not thread safe.</remarks>
32969         </member>
32970         <member name="M:Microsoft.Build.Logging.ConsoleLogger.#ctor">
32971             <summary>
32972             Default constructor.
32973             </summary>
32974         </member>
32975         <member name="M:Microsoft.Build.Logging.ConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity)">
32976             <summary>
32977             Create a logger instance with a specific verbosity.  This logs to
32978             the default console.
32979             </summary>
32980             <param name="verbosity">Verbosity level.</param>
32981         </member>
32982         <member name="M:Microsoft.Build.Logging.ConsoleLogger.#ctor(Microsoft.Build.Framework.LoggerVerbosity,Microsoft.Build.Logging.WriteHandler,Microsoft.Build.Logging.ColorSetter,Microsoft.Build.Logging.ColorResetter)">
32983             <summary>
32984             Initializes the logger, with alternate output handlers.
32985             </summary>
32986             <param name="verbosity"></param>
32987             <param name="write"></param>
32988             <param name="colorSet"></param>
32989             <param name="colorReset"></param>
32990         </member>
32991         <member name="M:Microsoft.Build.Logging.ConsoleLogger.InitializeBaseConsoleLogger">
32992             <summary>
32993             This is called by every event handler for compat reasons -- see DDB #136924
32994             However it will skip after the first call
32995             </summary>
32996         </member>
32997         <member name="P:Microsoft.Build.Logging.ConsoleLogger.Verbosity">
32998             <summary>
32999             Gets or sets the level of detail to show in the event log.
33000             </summary>
33001             <value>Verbosity level.</value>
33002         </member>
33003         <member name="P:Microsoft.Build.Logging.ConsoleLogger.Parameters">
33004             <summary>
33005             A semi-colon delimited list of "key[=value]" parameter pairs.
33006             </summary>
33007             <value>null</value>
33008         </member>
33009         <member name="P:Microsoft.Build.Logging.ConsoleLogger.SkipProjectStartedText">
33010             <summary>
33011             Suppresses the display of project headers. Project headers are
33012             displayed by default unless this property is set.
33013             </summary>
33014             <remarks>This is only needed by the IDE logger.</remarks>
33015         </member>
33016         <member name="P:Microsoft.Build.Logging.ConsoleLogger.ShowSummary">
33017             <summary>
33018             Suppresses the display of error and warnings summary.
33019             </summary>
33020         </member>
33021         <member name="P:Microsoft.Build.Logging.ConsoleLogger.WriteHandler">
33022             <summary>
33023             Provide access to the write hander delegate so that it can be redirected
33024             if necessary (e.g. to a file)
33025             </summary>
33026         </member>
33027         <member name="M:Microsoft.Build.Logging.ConsoleLogger.ApplyParameter(System.String,System.String)">
33028             <summary>
33029             Apply a parameter.
33030             NOTE: This method was public by accident in Whidbey, so it cannot be made internal now. It has 
33031             no good reason for being public.
33032             </summary>
33033         </member>
33034         <member name="M:Microsoft.Build.Logging.ConsoleLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
33035             <summary>
33036             Signs up the console logger for all build events.
33037             </summary>
33038             <param name="eventSource">Available events.</param>
33039         </member>
33040         <member name="M:Microsoft.Build.Logging.ConsoleLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
33041             <summary>
33042             Initializes the logger.
33043             </summary>
33044         </member>
33045         <member name="M:Microsoft.Build.Logging.ConsoleLogger.Shutdown">
33046             <summary>
33047             The console logger does not need to release any resources.
33048             This method does nothing.
33049             </summary>
33050         </member>
33051         <member name="M:Microsoft.Build.Logging.ConsoleLogger.BuildStartedHandler(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
33052             <summary>
33053             Handler for build started events
33054             </summary>
33055             <param name="sender">sender (should be null)</param>
33056             <param name="e">event arguments</param>
33057         </member>
33058         <member name="M:Microsoft.Build.Logging.ConsoleLogger.BuildFinishedHandler(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
33059             <summary>
33060             Handler for build finished events
33061             </summary>
33062             <param name="sender">sender (should be null)</param>
33063             <param name="e">event arguments</param>
33064         </member>
33065         <member name="M:Microsoft.Build.Logging.ConsoleLogger.ProjectStartedHandler(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
33066             <summary>
33067             Handler for project started events
33068             </summary>
33069             <param name="sender">sender (should be null)</param>
33070             <param name="e">event arguments</param>
33071         </member>
33072         <member name="M:Microsoft.Build.Logging.ConsoleLogger.ProjectFinishedHandler(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
33073             <summary>
33074             Handler for project finished events
33075             </summary>
33076             <param name="sender">sender (should be null)</param>
33077             <param name="e">event arguments</param>
33078         </member>
33079         <member name="M:Microsoft.Build.Logging.ConsoleLogger.TargetStartedHandler(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
33080             <summary>
33081             Handler for target started events
33082             </summary>
33083             <param name="sender">sender (should be null)</param>
33084             <param name="e">event arguments</param>
33085         </member>
33086         <member name="M:Microsoft.Build.Logging.ConsoleLogger.TargetFinishedHandler(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
33087             <summary>
33088             Handler for target finished events
33089             </summary>
33090             <param name="sender">sender (should be null)</param>
33091             <param name="e">event arguments</param>
33092         </member>
33093         <member name="M:Microsoft.Build.Logging.ConsoleLogger.TaskStartedHandler(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
33094             <summary>
33095             Handler for task started events
33096             </summary>
33097             <param name="sender">sender (should be null)</param>
33098             <param name="e">event arguments</param>
33099         </member>
33100         <member name="M:Microsoft.Build.Logging.ConsoleLogger.TaskFinishedHandler(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
33101             <summary>
33102             Handler for task finished events
33103             </summary>
33104             <param name="sender">sender (should be null)</param>
33105             <param name="e">event arguments</param>
33106         </member>
33107         <member name="M:Microsoft.Build.Logging.ConsoleLogger.ErrorHandler(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
33108             <summary>
33109             Prints an error event
33110             </summary>
33111         </member>
33112         <member name="M:Microsoft.Build.Logging.ConsoleLogger.WarningHandler(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
33113             <summary>
33114             Prints a warning event
33115             </summary>
33116         </member>
33117         <member name="M:Microsoft.Build.Logging.ConsoleLogger.MessageHandler(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
33118             <summary>
33119             Prints a message event
33120             </summary>
33121         </member>
33122         <member name="M:Microsoft.Build.Logging.ConsoleLogger.CustomEventHandler(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
33123             <summary>
33124             Prints a custom event
33125             </summary>
33126         </member>
33127         <member name="T:Microsoft.Build.Logging.DistributedFileLogger">
33128             <summary>
33129             This class will create a text file which will contain the build log for that node
33130             </summary>
33131         </member>
33132         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.#ctor">
33133             <summary>
33134             Default constructor.
33135             </summary>
33136         </member>
33137         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
33138             <summary>
33139             Initializes the logger.
33140             </summary>
33141         </member>
33142         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.ParseFileLoggerParameters">
33143             <summary>
33144             Parses out the logger parameters from the Parameters string.
33145             </summary>
33146         </member>
33147         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.ApplyFileLoggerParameter(System.String,System.String)">
33148             <summary>
33149             Apply a parameter
33150             </summary>
33151         </member>
33152         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
33153             <summary>
33154             Initializes the logger.
33155             </summary>
33156         </member>
33157         <member name="M:Microsoft.Build.Logging.DistributedFileLogger.Shutdown">
33158             <summary>
33159             Instructs the logger to shut down.
33160             </summary>
33161         </member>
33162         <member name="P:Microsoft.Build.Logging.DistributedFileLogger.BuildEventRedirector">
33163             <summary>
33164             Gets or sets the <see cref="T:Microsoft.Build.Framework.IEventRedirector"/> object used to redirect build events.
33165             </summary>
33166         </member>
33167         <member name="P:Microsoft.Build.Logging.DistributedFileLogger.NodeId">
33168             <summary>
33169             Gets or sets the identifier of the node which the forwarding logger is attached to.
33170             </summary>
33171         </member>
33172         <member name="P:Microsoft.Build.Logging.DistributedFileLogger.Verbosity">
33173             <summary>
33174             Gets or sets <see cref="T:Microsoft.Build.Framework.LoggerVerbosity"/>.  This is currently hard-coded as <see cref="F:Microsoft.Build.Framework.LoggerVerbosity.Detailed"/>.
33175             </summary>
33176         </member>
33177         <member name="P:Microsoft.Build.Logging.DistributedFileLogger.Parameters">
33178             <summary>
33179             Gets or sets the parameters.
33180             </summary>
33181         </member>
33182         <member name="T:Microsoft.Build.Logging.ConfigurableForwardingLogger">
33183             <summary>
33184             Logger that forwards events to a central logger (e.g ConsoleLogger)
33185             residing on the parent node.
33186             </summary>
33187         </member>
33188         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.#ctor">
33189             <summary>
33190             Default constructor.
33191             </summary>
33192         </member>
33193         <member name="P:Microsoft.Build.Logging.ConfigurableForwardingLogger.Verbosity">
33194             <summary>
33195             Gets or sets the level of detail to show in the event log.
33196             </summary>
33197             <value>Verbosity level.</value>
33198         </member>
33199         <member name="P:Microsoft.Build.Logging.ConfigurableForwardingLogger.Parameters">
33200             <summary>
33201             The console logger takes a single parameter to suppress the output of the errors
33202             and warnings summary at the end of a build.
33203             </summary>
33204             <value>null</value>
33205         </member>
33206         <member name="P:Microsoft.Build.Logging.ConfigurableForwardingLogger.BuildEventRedirector">
33207             <summary>
33208             This property is set by the build engine to allow a node loggers to forward messages to the
33209             central logger
33210             </summary>
33211         </member>
33212         <member name="P:Microsoft.Build.Logging.ConfigurableForwardingLogger.NodeId">
33213             <summary>
33214             The identifier of the node.
33215             </summary>
33216         </member>
33217         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.InitializeForwardingTable">
33218             <summary>
33219             Initialize the Forwarding Table with the default values
33220             </summary>
33221         </member>
33222         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ParseParameters">
33223             <summary>
33224             Parses out the logger parameters from the Parameters string.
33225             </summary>
33226         </member>
33227         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ApplyParameter(System.String)">
33228             <summary>
33229             Logger parameters can be used to enable and disable specific event types.
33230             Otherwise, the verbosity is used to choose which events to forward.
33231             </summary>
33232         </member>
33233         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
33234             <summary>
33235             Signs up the console logger for all build events.
33236             </summary>
33237         </member>
33238         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
33239             <summary>
33240             Signs up the console logger for all build events.
33241             </summary>
33242         </member>
33243         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ResetLoggerState">
33244             <summary>
33245             Reset the states of per-build member variables.
33246             Used when a build is finished, but the logger might be needed for the next build.
33247             </summary>
33248         </member>
33249         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.Shutdown">
33250             <summary>
33251             Called when Engine is done with this logger
33252             </summary>
33253         </member>
33254         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.BuildStartedHandler(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
33255             <summary>
33256             Handler for build started events
33257             </summary>
33258             <param name="sender">sender (should be null)</param>
33259             <param name="e">event arguments</param>
33260         </member>
33261         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.BuildFinishedHandler(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
33262             <summary>
33263             Handler for build finished events
33264             </summary>
33265             <param name="sender">sender (should be null)</param>
33266             <param name="e">event arguments</param>
33267         </member>
33268         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ProjectStartedHandler(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
33269             <summary>
33270             Handler for project started events
33271             </summary>
33272             <param name="sender">sender (should be null)</param>
33273             <param name="e">event arguments</param>
33274         </member>
33275         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ProjectFinishedHandler(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
33276             <summary>
33277             Handler for project finished events
33278             </summary>
33279             <param name="sender">sender (should be null)</param>
33280             <param name="e">event arguments</param>
33281         </member>
33282         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.TargetStartedHandler(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
33283             <summary>
33284             Handler for target started events
33285             </summary>
33286             <param name="sender">sender (should be null)</param>
33287             <param name="e">event arguments</param>
33288         </member>
33289         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.TargetFinishedHandler(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
33290             <summary>
33291             Handler for target finished events
33292             </summary>
33293             <param name="sender">sender (should be null)</param>
33294             <param name="e">event arguments</param>
33295         </member>
33296         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.TaskStartedHandler(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
33297             <summary>
33298             Handler for task started events
33299             </summary>
33300             <param name="sender">sender (should be null)</param>
33301             <param name="e">event arguments</param>
33302         </member>
33303         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.TaskFinishedHandler(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
33304             <summary>
33305             Handler for task finished events
33306             </summary>
33307             <param name="sender">sender (should be null)</param>
33308             <param name="e">event arguments</param>
33309         </member>
33310         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ErrorHandler(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
33311             <summary>
33312             Prints an error event
33313             </summary>
33314         </member>
33315         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.WarningHandler(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
33316             <summary>
33317             Prints a warning event
33318             </summary>
33319         </member>
33320         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.MessageHandler(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
33321             <summary>
33322             Prints a message event
33323             </summary>
33324         </member>
33325         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.CustomEventHandler(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
33326             <summary>
33327             Prints a custom event
33328             </summary>
33329         </member>
33330         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.ForwardToCentralLogger(Microsoft.Build.Framework.BuildEventArgs)">
33331             <summary>
33332             Forwards the specified event.
33333             </summary>
33334             <param name="e">The <see cref="T:Microsoft.Build.Framework.BuildEventArgs"/> to forward.</param>
33335         </member>
33336         <member name="M:Microsoft.Build.Logging.ConfigurableForwardingLogger.IsVerbosityAtLeast(Microsoft.Build.Framework.LoggerVerbosity)">
33337             <summary>
33338             Determines whether the current verbosity setting is at least the value
33339             passed in.
33340             </summary>
33341         </member>
33342         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._verbosity">
33343             <summary>
33344             Controls the amount of text displayed by the logger
33345             </summary>
33346         </member>
33347         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._loggerParameters">
33348             <summary>
33349             Console logger parameters.
33350             </summary>
33351         </member>
33352         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger.s_parameterDelimiters">
33353             <summary>
33354             Console logger parameters delimiters.
33355             </summary>
33356         </member>
33357         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger.BuildStartedEventDescription">
33358             <summary>
33359             Strings that users of this logger can pass in to enable specific events or logger output.
33360             Also used as keys into our dictionary.
33361             </summary>
33362         </member>
33363         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._forwardingTable">
33364             <summary>
33365             A table indicating if a particular event type should be forwarded
33366             The value is type int rather than bool to avoid the problem of JITting generics.
33367             <see cref="T:System.Collections.Generic.Dictionary`2" /> is already compiled into mscorlib.
33368             </summary>
33369         </member>
33370         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._buildEventRedirector">
33371             <summary>
33372             A pointer to the central logger
33373             </summary>
33374         </member>
33375         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._forwardingSetFromParameters">
33376             <summary>
33377             Indicates if the events to forward are being set by the parameters sent to the logger
33378             if this is false the events to forward are based on verbosity else verbosity settings will be ignored
33379             </summary>
33380         </member>
33381         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._showSummary">
33382             <summary>
33383             Console logger should show error and warning summary at the end of build?
33384             </summary>
33385         </member>
33386         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._showPerfSummary">
33387             <summary>
33388             When true, accumulate performance numbers.
33389             </summary>
33390         </member>
33391         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._showCommandLine">
33392             <summary>
33393             When true the commandline message is sent
33394             </summary>
33395         </member>
33396         <member name="F:Microsoft.Build.Logging.ConfigurableForwardingLogger._nodeId">
33397             <summary>
33398             Id of the node the logger is attached to
33399             </summary>
33400         </member>
33401         <member name="T:Microsoft.Build.Logging.LoggerDescription">
33402             <summary>
33403             This class is used to contain information about a logger as a collection of values that
33404             can be used to instantiate the logger and can be serialized to be passed between different
33405             processes.
33406             </summary>
33407         </member>
33408         <member name="M:Microsoft.Build.Logging.LoggerDescription.#ctor(System.String,System.String,System.String,System.String,Microsoft.Build.Framework.LoggerVerbosity)">
33409             <summary>
33410             Creates a logger description from given data
33411             </summary>
33412         </member>
33413         <member name="P:Microsoft.Build.Logging.LoggerDescription.LoggerId">
33414             <summary>
33415             This property exposes the logger id which identifies each distributed logger uniquiely
33416             </summary>
33417         </member>
33418         <member name="P:Microsoft.Build.Logging.LoggerDescription.Name">
33419             <summary>
33420             This property generates the logger name by appending together the class name and assembly name
33421             </summary>
33422         </member>
33423         <member name="P:Microsoft.Build.Logging.LoggerDescription.LoggerSwitchParameters">
33424             <summary>
33425             Returns the string of logger parameters, null if there are none
33426             </summary>
33427         </member>
33428         <member name="P:Microsoft.Build.Logging.LoggerDescription.Verbosity">
33429             <summary>
33430             Return the verbosity for this logger (from command line all loggers get same verbosity)
33431             </summary>
33432         </member>
33433         <member name="M:Microsoft.Build.Logging.LoggerDescription.CreateForwardingLogger">
33434             <summary>
33435             Create an IForwardingLogger out of the data in this description. This method may throw a variety of
33436             reflection exceptions if the data is invalid. It is the resposibility of the caller to handle these
33437             exceptions if desired.
33438             </summary>
33439             <returns></returns>
33440         </member>
33441         <member name="M:Microsoft.Build.Logging.LoggerDescription.CreateLogger">
33442             <summary>
33443             Create an ILogger out of the data in this description. This method may throw a variety of
33444             reflection exceptions if the data is invalid. It is the resposibility of the caller to handle these
33445             exceptions if desired.
33446             </summary>
33447             <returns></returns>
33448         </member>
33449         <member name="M:Microsoft.Build.Logging.LoggerDescription.CreateLogger(System.Boolean)">
33450             <summary>
33451             Loads a logger from its assembly, instantiates it, and handles errors.
33452             </summary>
33453             <returns>Instantiated logger.</returns>
33454         </member>
33455         <member name="F:Microsoft.Build.Logging.LoggerDescription.s_forwardingLoggerClassFilter">
33456             <summary>
33457             Used for finding loggers when reflecting through assemblies.
33458             </summary>
33459         </member>
33460         <member name="F:Microsoft.Build.Logging.LoggerDescription.s_loggerClassFilter">
33461             <summary>
33462             Used for finding loggers when reflecting through assemblies.
33463             </summary>
33464         </member>
33465         <member name="M:Microsoft.Build.Logging.LoggerDescription.IsForwardingLoggerClass(System.Type,System.Object)">
33466             <summary>
33467             Checks if the given type is a logger class.
33468             </summary>
33469             <remarks>This method is used as a Type Filter delegate.</remarks>
33470             <returns>true, if specified type is a logger</returns>
33471         </member>
33472         <member name="M:Microsoft.Build.Logging.LoggerDescription.IsLoggerClass(System.Type,System.Object)">
33473             <summary>
33474             Checks if the given type is a logger class.
33475             </summary>
33476             <remarks>This method is used as a TypeFilter delegate.</remarks>
33477             <returns>true, if specified type is a logger</returns>
33478         </member>
33479         <member name="M:Microsoft.Build.Logging.LoggerDescription.ConvertPathsToFullPaths">
33480             <summary>
33481             Converts the path to the logger assembly to a full path
33482             </summary>
33483         </member>
33484         <member name="T:Microsoft.Build.Logging.FileLogger">
33485             <summary>
33486             A specialization of the ConsoleLogger that logs to a file instead of the console.
33487             The output in terms of what is written and how it looks is identical. For example you can 
33488             log verbosely to a file using the FileLogger while simultaneously logging only high priority events
33489             to the console using a ConsoleLogger.
33490             </summary>
33491             <remarks>
33492             It's unfortunate that this is derived from ConsoleLogger, which is itself a facade; it makes things more
33493             complex -- for example, there is parameter parsing in this class, plus in BaseConsoleLogger. However we have
33494             to derive FileLogger from ConsoleLogger because it shipped that way in Whidbey.
33495             </remarks>
33496         </member>
33497         <member name="M:Microsoft.Build.Logging.FileLogger.#ctor">
33498             <summary>
33499             Default constructor.
33500             </summary>
33501         </member>
33502         <member name="M:Microsoft.Build.Logging.FileLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
33503             <summary>
33504             Signs up the console file logger for all build events.
33505             This is the backward-compatible overload.
33506             </summary>
33507             <param name="eventSource">Available events.</param>
33508         </member>
33509         <member name="M:Microsoft.Build.Logging.FileLogger.InitializeFileLogger(Microsoft.Build.Framework.IEventSource,System.Int32)">
33510             <summary>
33511             Creates new file for logging
33512             </summary>
33513         </member>
33514         <member name="M:Microsoft.Build.Logging.FileLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
33515             <summary>
33516             Multiproc aware initialization
33517             </summary>
33518         </member>
33519         <member name="M:Microsoft.Build.Logging.FileLogger.Write(System.String)">
33520             <summary>
33521             The handler for the write delegate of the console logger we are deriving from.
33522             </summary>
33523             <param name="text">The text to write to the log</param>
33524         </member>
33525         <member name="M:Microsoft.Build.Logging.FileLogger.Shutdown">
33526             <summary>
33527             Shutdown method implementation of ILogger - we need to flush and close our logfile.
33528             </summary>
33529         </member>
33530         <member name="M:Microsoft.Build.Logging.FileLogger.ParseFileLoggerParameters">
33531             <summary>
33532             Parses out the logger parameters from the Parameters string.
33533             </summary>
33534         </member>
33535         <member name="M:Microsoft.Build.Logging.FileLogger.ApplyFileLoggerParameter(System.String,System.String)">
33536             <summary>
33537             Apply a parameter parsed by the file logger.
33538             </summary>
33539         </member>
33540         <member name="F:Microsoft.Build.Logging.FileLogger._logFileName">
33541             <summary>
33542             logFileName is the name of the log file that we will generate
33543             the default value is msbuild.log
33544             </summary>
33545         </member>
33546         <member name="F:Microsoft.Build.Logging.FileLogger._fileWriter">
33547             <summary>
33548             fileWriter is the stream that has been opened on our log file.
33549             </summary>
33550         </member>
33551         <member name="F:Microsoft.Build.Logging.FileLogger._append">
33552             <summary>
33553             Whether the logger should append to any existing file.
33554             Default is to overwrite.
33555             </summary>
33556         </member>
33557         <member name="F:Microsoft.Build.Logging.FileLogger._autoFlush">
33558             <summary>
33559             Whether the logger should flush aggressively to disk.
33560             Default is true. This preserves the most information in the case
33561             of a crash, but may slow the logger down.
33562             </summary>
33563         </member>
33564         <member name="F:Microsoft.Build.Logging.FileLogger._encoding">
33565             <summary>
33566             Encoding for the output. Defaults to ANSI.
33567             </summary>
33568         </member>
33569         <member name="F:Microsoft.Build.Logging.FileLogger.s_fileLoggerParameterDelimiters">
33570             <summary>
33571             File logger parameters delimiters.
33572             </summary>
33573         </member>
33574         <member name="F:Microsoft.Build.Logging.FileLogger.s_fileLoggerParameterValueSplitCharacter">
33575             <summary>
33576             File logger parameter value split character.
33577             </summary>
33578         </member>
33579         <member name="T:Microsoft.Build.Construction.ImplicitImportLocation">
33580             <summary>
33581             Represents the location of an implicit import.
33582             </summary>
33583         </member>
33584         <member name="F:Microsoft.Build.Construction.ImplicitImportLocation.None">
33585             <summary>
33586             The import is not implicitly added and is explicitly added in a user-specified location.
33587             </summary>
33588         </member>
33589         <member name="F:Microsoft.Build.Construction.ImplicitImportLocation.Top">
33590             <summary>
33591             The import was implicitly added at the top of the project.
33592             </summary>
33593         </member>
33594         <member name="F:Microsoft.Build.Construction.ImplicitImportLocation.Bottom">
33595             <summary>
33596             The import was implicitly added at the bottom of the project.
33597             </summary>
33598         </member>
33599         <member name="T:Microsoft.Build.Construction.ProjectSdkElement">
33600             <summary>
33601                 ProjectSdkElement represents the Sdk element within the MSBuild project.
33602             </summary>
33603         </member>
33604         <member name="M:Microsoft.Build.Construction.ProjectSdkElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
33605             <summary>
33606                 Initialize a parented ProjectSdkElement
33607             </summary>
33608         </member>
33609         <member name="M:Microsoft.Build.Construction.ProjectSdkElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
33610             <summary>
33611                 Initialize an non-parented ProjectSdkElement
33612             </summary>
33613         </member>
33614         <member name="P:Microsoft.Build.Construction.ProjectSdkElement.Name">
33615             <summary>
33616             Gets or sets the name of the SDK.
33617             </summary>
33618         </member>
33619         <member name="P:Microsoft.Build.Construction.ProjectSdkElement.Version">
33620             <summary>
33621             Gets or sets the version of the SDK.
33622             </summary>
33623         </member>
33624         <member name="P:Microsoft.Build.Construction.ProjectSdkElement.MinimumVersion">
33625             <summary>
33626             Gets or sets the minimum version of the SDK required to build the project.
33627             </summary>
33628         </member>
33629         <member name="M:Microsoft.Build.Construction.ProjectSdkElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
33630             <inheritdoc />
33631         </member>
33632         <member name="M:Microsoft.Build.Construction.ProjectSdkElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
33633             <inheritdoc />
33634         </member>
33635         <member name="M:Microsoft.Build.Construction.ProjectSdkElement.CreateDisconnected(System.String,System.String,Microsoft.Build.Construction.ProjectRootElement)">
33636             <summary>
33637                 Creates a non-parented ProjectSdkElement, wrapping an non-parented XmlElement.
33638                 Caller should then ensure the element is added to a parent
33639             </summary>
33640         </member>
33641         <member name="T:Microsoft.Build.Construction.SolutionProjectGenerator">
33642             <summary>
33643             This class is used to generate an MSBuild wrapper project for a solution file.
33644             </summary>
33645         </member>
33646         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator.SolutionPathPropertyName">
33647             <summary>
33648             Name of the property used to store the path to the solution being built.
33649             </summary>
33650         </member>
33651         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator.WebProjectOverrideFolder">
33652             <summary>
33653             The path node to add in when the output directory for a website is overridden.
33654             </summary>
33655         </member>
33656         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator.SolutionProperties">
33657             <summary>
33658             The set of properties all projects in the solution should be built with
33659             </summary>
33660         </member>
33661         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator.SolutionConfigurationAndPlatformProperties">
33662             <summary>
33663             The set of properties which identify the configuration and platform to build a project with
33664             </summary>
33665         </member>
33666         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._defaultTargetNames">
33667             <summary>
33668             A known list of target names to create.  This is for backwards compatibility.
33669             </summary>
33670         </member>
33671         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._version20">
33672             <summary>
33673             Version 2.0
33674             </summary>
33675         </member>
33676         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._version40">
33677             <summary>
33678             Version 4.0
33679             </summary>
33680         </member>
33681         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._metaprojectGlobalProperties">
33682             <summary>
33683             The list of global properties we set on each metaproject and which get passed to each project when building.
33684             </summary>
33685         </member>
33686         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._solutionFile">
33687             <summary>
33688             The SolutionFile containing information about the solution we're generating a wrapper for.
33689             </summary>
33690         </member>
33691         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._globalProperties">
33692             <summary>
33693             The global properties passed under which the project should be opened. 
33694             </summary>
33695         </member>
33696         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._toolsVersionOverride">
33697             <summary>
33698             The ToolsVersion passed on the commandline, if any.  May be null.
33699             </summary>
33700         </member>
33701         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._projectBuildEventContext">
33702             <summary>
33703             The context of this build (used for logging purposes). 
33704             </summary>
33705         </member>
33706         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._loggingService">
33707             <summary>
33708             The LoggingService used to log messages.
33709             </summary>
33710         </member>
33711         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._targetNames">
33712             <summary>
33713             The list of targets specified to use.
33714             </summary>
33715         </member>
33716         <member name="F:Microsoft.Build.Construction.SolutionProjectGenerator._selectedSolutionConfiguration">
33717             <summary>
33718             The solution configuration selected for this build.
33719             </summary>
33720         </member>
33721         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.#ctor(Microsoft.Build.Construction.SolutionFile,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.BackEnd.Logging.ILoggingService,System.Collections.Generic.IReadOnlyCollection{System.String})">
33722             <summary>
33723             Constructor.
33724             </summary>
33725         </member>
33726         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.Generate(Microsoft.Build.Construction.SolutionFile,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.BackEnd.Logging.ILoggingService,System.Collections.Generic.IReadOnlyCollection{System.String})">
33727             <summary>
33728             This method generates an MSBuild project file from the list of projects and project dependencies 
33729             that have been collected from the solution file.
33730             </summary>
33731             <param name="solution">The parser which contains the solution file.</param>
33732             <param name="globalProperties">The global properties.</param>
33733             <param name="toolsVersionOverride">Tools Version override (may be null).  This should be any tools version explicitly passed to the command-line or from an MSBuild ToolsVersion parameter.</param>
33734             <param name="projectBuildEventContext">The logging context for this project.</param>
33735             <param name="loggingService">The logging service.</param>
33736             <param name="targetNames">A collection of target names the user requested to be built.</param>
33737             <returns>An array of ProjectInstances.  The first instance is the traversal project, the remaining are the metaprojects for each project referenced in the solution.</returns>
33738         </member>
33739         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddPropertyGroupForSolutionConfiguration(Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.SolutionFile,Microsoft.Build.Construction.SolutionConfigurationInSolution)">
33740             <summary>
33741             Adds a new property group with contents of the given solution configuration to the project
33742             Internal for unit-testing.
33743             </summary>
33744         </member>
33745         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddErrorWarningMessageElement(Microsoft.Build.Construction.ProjectTargetElement,System.String,System.Boolean,System.String,System.Object[])">
33746             <summary>
33747             Add a new error/warning/message tag into the given target
33748             </summary>
33749         </member>
33750         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.PredictActiveSolutionConfigurationName(Microsoft.Build.Construction.SolutionFile,System.Collections.Generic.IDictionary{System.String,System.String})">
33751             <summary>
33752             Normally the active solution configuration/platform is determined when we build the solution
33753             wrapper project, not when we create it. However, we need to know them to scan project references
33754             for the right project configuration/platform. It's unlikely that references would be conditional, 
33755             but still possible and we want to get that case right.
33756             </summary>
33757         </member>
33758         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetMetaprojectName(System.String)">
33759             <summary>
33760             Returns the name of the metaproject for an actual project.
33761             </summary>
33762             <param name="fullPathToProject">The full path to the actual project</param>
33763             <returns>The metaproject path name</returns>
33764         </member>
33765         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.DetermineWrapperProjectToolsVersion(System.String,System.Boolean@)">
33766             <summary>
33767             Figure out what tools version to build the solution wrapper project with. If a /tv
33768             switch was passed in, use that; otherwise fall back to the default (12.0).
33769             </summary>
33770         </member>
33771         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTasksToCopyAllDependenciesIntoBinDir(Microsoft.Build.Execution.ProjectTargetInstance,Microsoft.Build.Construction.ProjectInSolution,System.String,System.String)">
33772             <summary>
33773             Add a call to the ResolveAssemblyReference task to crack the pre-resolved referenced 
33774             assemblies for the complete list of dependencies, PDBs, satellites, etc.  The invoke
33775             the Copy task to copy all these files (or at least the ones that RAR determined should
33776             be copied local) into the web project's bin directory.
33777             </summary>
33778         </member>
33779         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTasksToResolveAutoRefreshFileReferences(Microsoft.Build.Execution.ProjectTargetInstance,Microsoft.Build.Construction.ProjectInSolution,System.String)">
33780             <summary>
33781             This code handles the *.REFRESH files that are in the "bin" subdirectory of 
33782             a web project.  These .REFRESH files are just text files that contain absolute or 
33783             relative paths to the referenced assemblies.  The goal of these tasks is to 
33784             search all *.REFRESH files and extract fully-qualified absolute paths for 
33785             each of the references.
33786             </summary>
33787         </member>
33788         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMSBuildTaskInstance(Microsoft.Build.Execution.ProjectTargetInstance,System.String,System.String,System.String,System.String,System.Boolean)">
33789             <summary>
33790             Adds an MSBuild task to the specified target
33791             </summary>
33792         </member>
33793         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GenerateSafePropertyName(Microsoft.Build.Construction.ProjectInSolution,System.String)">
33794             <summary>
33795             Takes a project in the solution and a base property name, and creates a new property name
33796             that can safely be used as an XML element name, and is also unique to that project (by
33797             embedding the project's GUID into the property name.
33798             </summary>
33799         </member>
33800         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.MakeIntoSafeItemName(System.String)">
33801             <summary>
33802             Makes a legal item name from a given string by replacing invalid characters with '_'
33803             </summary>
33804         </member>
33805         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddErrorWarningMessageInstance(Microsoft.Build.Execution.ProjectTargetInstance,System.String,System.String,System.Boolean,System.String,System.Object[])">
33806             <summary>
33807             Add a new error/warning/message tag into the given target
33808             </summary>
33809         </member>
33810         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetConditionStringForConfiguration(Microsoft.Build.Construction.SolutionConfigurationInSolution)">
33811             <summary>
33812             A helper method for constructing conditions for a solution configuration
33813             </summary>
33814             <remarks>
33815             Sample configuration condition:
33816             '$(Configuration)' == 'Release' and '$(Platform)' == 'Any CPU'
33817             </remarks>
33818         </member>
33819         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.DetermineLikelyActiveSolutionConfiguration(Microsoft.Build.Construction.SolutionFile,System.Collections.Generic.IDictionary{System.String,System.String})">
33820             <summary>
33821             Figure out what solution configuration we are going to build, whether or not it actually exists in the solution
33822             file.
33823             </summary>
33824         </member>
33825         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.WouldProjectBuild(Microsoft.Build.Construction.SolutionFile,System.String,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution)">
33826             <summary>
33827             Returns true if the specified project will build in the currently selected solution configuration.
33828             </summary>
33829         </member>
33830         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.Generate">
33831             <summary>
33832             Private method: generates an MSBuild wrapper project for the solution passed in; the MSBuild wrapper
33833             project to be generated is the private variable "msbuildProject" and the SolutionFile containing information
33834             about the solution is the private variable "solutionFile"
33835             </summary>
33836         </member>
33837         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.CreateSolutionProject(System.String,System.Boolean)">
33838             <summary>
33839             Given a parsed solution, generate a top level traversal project and the metaprojects representing the dependencies for each real project
33840             referenced in the solution.
33841             </summary>
33842         </member>
33843         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.EvaluateAndAddProjects(System.Collections.Generic.List{Microsoft.Build.Construction.ProjectInSolution},System.Collections.Generic.List{Microsoft.Build.Execution.ProjectInstance},Microsoft.Build.Execution.ProjectInstance,System.String)">
33844             <summary>
33845             Examine each project in the solution, add references and targets for it, and create metaprojects if necessary.
33846             </summary>
33847         </member>
33848         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddStandardTraversalTargets(Microsoft.Build.Execution.ProjectInstance,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectInSolution})">
33849             <summary>
33850             Adds the standard targets to the traversal project.
33851             </summary>
33852         </member>
33853         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.CreateTraversalInstance(System.String,System.Boolean,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectInSolution})">
33854             <summary>
33855             Creates the traversal project instance.  This has all of the properties against which we can perform evaluations for the remainder of the process.
33856             </summary>
33857         </member>
33858         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddProjectReference(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution,System.Boolean)">
33859             <summary>
33860             This method adds a new ProjectReference item to the specified instance.  The reference will either be to its metaproject (if the project
33861             is a web project or has reference of its own) or to the project itself (if it has no references and is a normal MSBuildable project.)
33862             </summary>
33863         </member>
33864         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetToolsVersionMetadataForDirectMSBuildTask(Microsoft.Build.Execution.ProjectInstance)">
33865             <summary>
33866             The value to be passed to the ToolsVersion attribute of the MSBuild task used to directly build a project.
33867             </summary>
33868         </member>
33869         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetToolsVersionAttributeForDirectMSBuildTask(Microsoft.Build.Execution.ProjectInstance)">
33870             <summary>
33871             The value to be passed to the ToolsVersion attribute of the MSBuild task used to directly build a project.
33872             </summary>
33873         </member>
33874         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetPropertiesMetadataForProjectReference(Microsoft.Build.Execution.ProjectInstance,System.String)">
33875             <summary>
33876             The value to be assigned to the metadata for a particular project reference.  Contains only configuration and platform specified in the project configuration, evaluated.
33877             </summary>
33878         </member>
33879         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetConfigurationAndPlatformPropertiesString(Microsoft.Build.Construction.ProjectConfigurationInSolution)">
33880             <summary>
33881             Gets the project configuration and platform values as an attribute string for an MSBuild task used to build the project.
33882             </summary>
33883         </member>
33884         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetPropertiesAttributeForDirectMSBuildTask(Microsoft.Build.Construction.ProjectConfigurationInSolution)">
33885             <summary>
33886             The value to be passed to the Properties attribute of the MSBuild task to build a specific project.  Contains reference to project configuration and
33887             platform as well as the solution configuration bits.
33888             </summary>
33889         </member>
33890         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.CanBuildDirectly(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution)">
33891             <summary>
33892             Returns true if the specified project can be built directly, without using a metaproject.
33893             </summary>
33894         </member>
33895         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.CreateMetaproject(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution)">
33896             <summary>
33897             Produces a set of targets which allows the MSBuild scheduler to schedule projects in the order automatically by 
33898             following their dependencies without enforcing build levels.
33899             </summary>
33900             <remarks>
33901             We want MSBuild to be able to parallelize the builds of these projects where possible and still honor references.
33902             Since the project files referenced by the solution do not (necessarily) themselves contain actual project references
33903             to the projects they depend on, we need to synthesize this relationship ourselves.  This is done by creating a target
33904             which first invokes the project's dependencies, then invokes the actual project itself.  However, invoking the 
33905             dependencies must also invoke their dependencies and so on down the line.  
33906             
33907             Additionally, we do not wish to create a separate MSBuild project to contain this target yet we want to parallelize
33908             calls to these targets.  The way to do this is to pass in different global properties to the same project in the same
33909             MSBuild call.  MSBuild easily allows this using the AdditionalProperties metadata which can be specified on an Item.
33910             
33911             Assuming the solution project we are generating is called "foo.proj", we can accomplish this parallelism as follows:
33912             <ItemGroup>
33913                 <ProjectReference Include="Project0"/>
33914                 <ProjectReference Include="Project1"/>
33915                 <ProjectReference Include="Project2"/>
33916             </ItemGroup>
33917             
33918             We now have expressed the top level reference to all projects as @(SolutionReference) and each project's
33919             set of references as @(PROJECTNAMEReference).  We construct our target as:
33920             
33921             <Target Name="Build">
33922                 <MSBuild Projects="@(ProjectReference)" Targets="Build" />
33923                 <MSBuild Projects="actualProjectName" Targets="Build" />
33924             </Target>
33925             
33926             The first MSBuild call re-invokes the solution project instructing it to build the reference projects for the
33927             current project.  The second MSBuild call invokes the actual project itself.  Because all reference projects have
33928             the same additional properties, MSBuild will only build the first one it comes across and the rest will be
33929             satisfied from the cache.
33930             </remarks>
33931         </member>
33932         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetMetaprojectName(Microsoft.Build.Construction.ProjectInSolution)">
33933             <summary>
33934             Returns the metaproject name for a given project.
33935             </summary>
33936         </member>
33937         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMetaprojectReferenceItems(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution)">
33938             <summary>
33939             Adds a set of items which describe the references for this project.
33940             </summary>
33941         </member>
33942         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMetaprojectTargetForManagedProject(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution,System.String,System.String)">
33943             <summary>
33944             Adds the targets which build the dependencies and actual project for a metaproject.
33945             </summary>
33946         </member>
33947         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddProjectBuildTask(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution,Microsoft.Build.Execution.ProjectTargetInstance,System.String,System.String,System.String,System.String)">
33948             <summary>
33949             Adds an MSBuild task to a real project.
33950             </summary>
33951         </member>
33952         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMetaprojectBuildTask(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Execution.ProjectTargetInstance,System.String,System.String)">
33953             <summary>
33954             Adds an MSBuild task to a single metaproject.  This is used in the traversal project.
33955             </summary>
33956         </member>
33957         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMetaprojectTargetForWebProject(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,System.String)">
33958             <summary>
33959             Add a target for a Venus project into the XML doc that's being generated.  This
33960             target will call the AspNetCompiler task.
33961             </summary>
33962         </member>
33963         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTaskForAspNetCompiler(Microsoft.Build.Execution.ProjectTargetInstance,Microsoft.Build.Construction.ProjectInSolution,System.String)">
33964             <summary>
33965             Helper method to add a call to the AspNetCompiler task into the given target.
33966             </summary>
33967         </member>
33968         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddResolveProjectReferenceTasks(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectTargetInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.SolutionConfigurationInSolution,System.String,System.String,System.String@)">
33969             <summary>
33970             Adds MSBuild tasks to a project target to pre-resolve its project references
33971             </summary>
33972         </member>
33973         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddPropertyGroupForAspNetConfiguration(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,System.String,Microsoft.Build.Construction.AspNetCompilerParameters,System.String)">
33974             <summary>
33975             Add a PropertyGroup to the project for a particular Asp.Net configuration.  This PropertyGroup
33976             will have the correct values for all the Asp.Net properties for this project and this configuration.
33977             </summary>
33978         </member>
33979         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.ComputeTargetConditionForWebProject(Microsoft.Build.Construction.ProjectInSolution)">
33980             <summary>
33981             When adding a target to build a web project, we want to put a Condition on the Target node that
33982             effectively says "Only build this target if the web project is active (marked for building) in the 
33983             current solution configuration.
33984             </summary>
33985         </member>
33986         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTargetForGetFrameworkPathAndRedistList(Microsoft.Build.Execution.ProjectInstance)">
33987             <summary>
33988             Add a target to the project called "GetFrameworkPathAndRedistList".  This target calls the
33989             GetFrameworkPath task and then CreateItem to populate @(_CombinedTargetFrameworkDirectoriesItem) and
33990             @(InstalledAssemblyTables), so that we can pass these into the ResolveAssemblyReference task
33991             when building web projects.
33992             </summary>
33993         </member>
33994         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddMetaprojectTargetForUnknownProjectType(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,System.String,System.String)">
33995             <summary>
33996             Adds a target for a project whose type is unknown and we cannot build.  We will emit an error or warning as appropriate.
33997             </summary>
33998         </member>
33999         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddValidateProjectsTarget(Microsoft.Build.Execution.ProjectInstance,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectInSolution})">
34000             <summary>
34001             Adds a target which verifies that all of the project references and configurations are valid.
34002             </summary>
34003         </member>
34004         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTraversalReferencesTarget(Microsoft.Build.Execution.ProjectInstance,System.String,System.String)">
34005             <summary>
34006              Creates the target used to build all of the references in the traversal project.
34007             </summary>
34008         </member>
34009         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddReferencesBuildTask(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Execution.ProjectTargetInstance,System.String,System.String)">
34010             <summary>
34011             Adds a task which builds the @(ProjectReference) items.
34012             </summary>
34013         </member>
34014         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddTraversalTargetForProject(Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.Construction.ProjectInSolution,Microsoft.Build.Construction.ProjectConfigurationInSolution,System.String,System.String,System.Boolean)">
34015             <summary>
34016             Adds a traversal target which invokes a specified target on a single project.  This creates targets called "Project", "Project:Rebuild", "Project:Clean", "Project:Publish" etc.
34017             </summary>
34018         </member>
34019         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.GetMetaprojectGlobalProperties(Microsoft.Build.Execution.ProjectInstance)">
34020             <summary>
34021             Retrieves a dictionary representing the global properties which should be transferred to a metaproject.
34022             </summary>
34023             <param name="traversalProject">The traversal from which the global properties should be obtained.</param>
34024             <returns>A dictionary of global properties.</returns>
34025         </member>
34026         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.DetermineChildProjectToolsVersion(System.String)">
34027             <summary>
34028             Figures out what the ToolsVersion should be for child projects (used when scanning
34029             for dependencies)
34030             </summary>
34031         </member>
34032         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.PredictActiveSolutionConfigurationName">
34033             <summary>
34034             Normally the active solution configuration/platform is determined when we build the solution
34035             wrapper project, not when we create it. However, we need to know them to scan project references
34036             for the right project configuration/platform. It's unlikely that references would be conditional, 
34037             but still possible and we want to get that case right.
34038             </summary>
34039         </member>
34040         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.ScanProjectDependencies(System.String,System.String)">
34041             <summary>
34042             Loads each MSBuild project in this solution and looks for its project-to-project references so that
34043             we know what build order we should use when building the solution. 
34044             </summary>
34045         </member>
34046         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddDependencyByGuid(Microsoft.Build.Construction.ProjectInSolution,System.String)">
34047             <summary>
34048             Adds a dependency to the project based on the specified guid string.
34049             </summary>
34050             <remarks>
34051             If the string is null or empty, no dependency is added and this is not considered an error.
34052             </remarks>
34053         </member>
34054         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddConfigurationPlatformDefaults(Microsoft.Build.Construction.ProjectRootElement)">
34055             <summary>
34056             Creates default Configuration and Platform values based on solution configurations present in the solution
34057             </summary>
34058         </member>
34059         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddPropertyGroupForSolutionConfiguration(Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.SolutionConfigurationInSolution)">
34060             <summary>
34061             Adds a new property group with contents of the given solution configuration to the project.
34062             </summary>
34063         </member>
34064         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddVenusConfigurationDefaults(Microsoft.Build.Construction.ProjectRootElement)">
34065             <summary>
34066             Creates the default Venus configuration property based on the selected solution configuration.
34067             Unfortunately, Venus projects only expose one project configuration in the IDE (Debug) although
34068             they allow building Debug and Release from command line. This means that if we wanted to use 
34069             the project configuration from the active solution configuration for Venus projects, we'd always
34070             end up with Debug and there'd be no way to build the Release configuration. To work around this,
34071             we use a special mechanism for choosing ASP.NET project configuration: we set it to Release if
34072             we're building a Release solution configuration, and to Debug if we're building a Debug solution 
34073             configuration. The property is also settable from the command line, in which case it takes 
34074             precedence over this algorithm.
34075             </summary>
34076         </member>
34077         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddGlobalProperties(Microsoft.Build.Construction.ProjectRootElement)">
34078             <summary>
34079             Adds solution related build event macros and other global properties to the wrapper project
34080             </summary>
34081         </member>
34082         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddFakeReleaseSolutionConfigurationIfNecessary">
34083             <summary>
34084             Special hack for web projects. It can happen that there is no Release configuration for solutions
34085             containing web projects, yet we still want to be able to build the Release configuration for 
34086             those projects. Since the ASP.NET project configuration defaults to the solution configuration,
34087             we allow Release even if it doesn't actually exist in the solution.
34088             </summary>
34089         </member>
34090         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddInitialTargets(Microsoft.Build.Execution.ProjectInstance,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectInSolution})">
34091             <summary>
34092             Adds the initial target to the solution wrapper project, necessary for a few message/error tags
34093             </summary>
34094         </member>
34095         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddValidateSolutionConfigurationTarget(Microsoft.Build.Execution.ProjectInstance)">
34096             <summary>
34097             Adds the target which validates that the solution configuration specified by the user is supported.
34098             </summary>
34099         </member>
34100         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddValidateToolsVersionsTarget(Microsoft.Build.Execution.ProjectInstance)">
34101             <summary>
34102             Adds the target which validates that the tools version is supported.
34103             </summary>
34104         </member>
34105         <member name="M:Microsoft.Build.Construction.SolutionProjectGenerator.AddGetSolutionConfigurationContentsTarget(Microsoft.Build.Execution.ProjectInstance)">
34106             <summary> Adds the target to fetch solution configuration contents for given configuration|platform combo. </summary>
34107         </member>
34108         <member name="T:Microsoft.Build.Construction.ProjectElement">
34109             <summary>
34110             Abstract base class for MSBuild construction object model elements. 
34111             </summary>
34112         </member>
34113         <member name="F:Microsoft.Build.Construction.ProjectElement._parent">
34114             <summary>
34115             Parent container object.
34116             </summary>
34117         </member>
34118         <member name="F:Microsoft.Build.Construction.ProjectElement._condition">
34119             <summary>
34120             Condition value cached for performance
34121             </summary>
34122         </member>
34123         <member name="M:Microsoft.Build.Construction.ProjectElement.#ctor">
34124             <summary>
34125             Constructor called by ProjectRootElement only.
34126             XmlElement is set directly after construction.
34127             </summary>
34128             <comment>
34129             Should be protected+internal.
34130             </comment>
34131         </member>
34132         <member name="M:Microsoft.Build.Construction.ProjectElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
34133             <summary>
34134             Constructor called by derived classes, except from ProjectRootElement.
34135             Parameters may not be null, except parent.
34136             </summary>
34137         </member>
34138         <member name="P:Microsoft.Build.Construction.ProjectElement.ExpressedAsAttribute">
34139             <summary>
34140             Allows data (for example, item metadata) to be represented as an attribute on the parent element instead of as a child element.
34141             </summary>
34142             <remarks>
34143             If this is true, then the <see cref="P:Microsoft.Build.Construction.ProjectElement.XmlElement"/> will still be used to hold the data for this (pseudo) ProjectElement, but
34144             it will not be added to the Xml tree.  
34145             </remarks>
34146         </member>
34147         <member name="P:Microsoft.Build.Construction.ProjectElement.Condition">
34148             <summary>
34149             Gets or sets the Condition value. 
34150             It will return empty string IFF a condition attribute is legal but it’s not present or has no value. 
34151             It will return null IFF a Condition attribute is illegal on that element.
34152             Removes the attribute if the value to set is empty.
34153             It is possible for derived classes to throw an <see cref="T:System.InvalidOperationException"/> if setting the condition is
34154             not applicable for those elements.
34155             </summary>
34156             <example> For the "ProjectExtensions" element, the getter returns null and the setter
34157             throws an exception for any value. </example>
34158         </member>
34159         <member name="P:Microsoft.Build.Construction.ProjectElement.Label">
34160             <summary>
34161             Gets or sets the Label value. 
34162             Returns empty string if it is not present.
34163             Removes the attribute if the value to set is empty.
34164             </summary>
34165         </member>
34166         <member name="P:Microsoft.Build.Construction.ProjectElement.Parent">
34167             <summary>
34168             Null if this is a ProjectRootElement.
34169             Null if this has not been attached to a parent yet.
34170             </summary>
34171             <remarks>
34172             Parent should only be set by ProjectElementContainer.
34173             </remarks>
34174         </member>
34175         <member name="P:Microsoft.Build.Construction.ProjectElement.AllParents">
34176             <summary>
34177             All parent elements of this element, going up to the ProjectRootElement.
34178             None if this itself is a ProjectRootElement.
34179             None if this itself has not been attached to a parent yet.
34180             </summary>
34181         </member>
34182         <member name="P:Microsoft.Build.Construction.ProjectElement.PreviousSibling">
34183             <summary>
34184             Previous sibling element.
34185             May be null.
34186             </summary>
34187             <remarks>
34188             Setter should ideally be "protected AND internal"
34189             </remarks>
34190         </member>
34191         <member name="P:Microsoft.Build.Construction.ProjectElement.NextSibling">
34192             <summary>
34193             Next sibling element.
34194             May be null.
34195             </summary>
34196             <remarks>
34197             Setter should ideally be "protected AND internal"
34198             </remarks>
34199         </member>
34200         <member name="P:Microsoft.Build.Construction.ProjectElement.ContainingProject">
34201             <summary>
34202             ProjectRootElement (possibly imported) that contains this Xml.
34203             Cannot be null.
34204             </summary>
34205             <remarks>
34206             Setter ideally would be "protected and internal"
34207             There are some tricks here in order to save the space of a field: there are a lot of these objects.
34208             </remarks>
34209         </member>
34210         <member name="P:Microsoft.Build.Construction.ProjectElement.ConditionLocation">
34211             <summary>
34212             Location of the "Condition" attribute on this element, if any.
34213             If there is no such attribute, returns null.
34214             </summary>
34215         </member>
34216         <member name="P:Microsoft.Build.Construction.ProjectElement.LabelLocation">
34217             <summary>
34218             Location of the "Label" attribute on this element, if any.
34219             If there is no such attribute, returns null;
34220             </summary>
34221         </member>
34222         <member name="P:Microsoft.Build.Construction.ProjectElement.Location">
34223             <summary>
34224             Location of the corresponding Xml element.
34225             May not be correct if file is not saved, or 
34226             file has been edited since it was last saved.
34227             In the case of an unsaved edit, the location only
34228             contains the path to the file that the element originates from.
34229             </summary>
34230         </member>
34231         <member name="P:Microsoft.Build.Construction.ProjectElement.ElementName">
34232             <summary>
34233             Gets the name of the associated element. 
34234             Useful for display in some circumstances.
34235             </summary>
34236         </member>
34237         <member name="P:Microsoft.Build.Construction.ProjectElement.XmlElement">
34238             <summary>
34239             Gets the XmlElement associated with this project element.
34240             The setter is used when adding new elements.
34241             Never null except during load or creation.
34242             </summary>
34243             <remarks>
34244             This should be protected, but "protected internal" means "OR" not "AND",
34245             so this is not possible.
34246             </remarks>
34247         </member>
34248         <member name="P:Microsoft.Build.Construction.ProjectElement.XmlDocument">
34249             <summary>
34250             Gets the XmlDocument associated with this project element.
34251             </summary>
34252             <remarks>
34253             Never null except during load or creation.
34254             This should be protected, but "protected internal" means "OR" not "AND",
34255             so this is not possible.
34256             </remarks>
34257         </member>
34258         <member name="M:Microsoft.Build.Construction.ProjectElement.Clone">
34259             <summary>
34260             Returns a shallow clone of this project element.
34261             </summary>
34262             <returns>The cloned element.</returns>
34263         </member>
34264         <member name="M:Microsoft.Build.Construction.ProjectElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
34265             <summary>
34266             Applies properties from the specified type to this instance.
34267             </summary>
34268             <param name="element">The element to act as a template to copy from.</param>
34269         </member>
34270         <member name="M:Microsoft.Build.Construction.ProjectElement.ShouldCloneXmlAttribute(System.Xml.XmlAttribute)">
34271             <summary>
34272             Hook for subclasses to specify whether the given <param name="attribute"></param> should be cloned or not
34273             </summary>
34274         </member>
34275         <member name="M:Microsoft.Build.Construction.ProjectElement.SetProjectRootElementFromParser(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
34276             <summary>
34277             Called only by the parser to tell the ProjectRootElement its backing XmlElement and its own parent project (itself)
34278             This can't be done during construction, as it hasn't loaded the document at that point and it doesn't have a 'this' pointer either.
34279             </summary>
34280         </member>
34281         <member name="M:Microsoft.Build.Construction.ProjectElement.ClearParent">
34282             <summary>
34283             Called by ProjectElementContainer to clear the parent when
34284             removing an element from its parent.
34285             </summary>
34286         </member>
34287         <member name="M:Microsoft.Build.Construction.ProjectElement.ReplaceElement(Microsoft.Build.Construction.XmlElementWithLocation)">
34288             <summary>
34289             Called by a DERIVED CLASS to indicate its XmlElement has changed.
34290             This normally shouldn't happen, so it's broken out into an explicit method.
34291             An example of when it has to happen is when an item's type is changed.
34292             We trust the caller to have fixed up the XmlDocument properly.
34293             We ASSUME that attributes were copied verbatim. If this is not the case,
34294             any cached attribute values would have to be cleared.
34295             If the new element is actually the existing element, does nothing, and does
34296             not mark the project dirty.
34297             </summary>
34298             <remarks>
34299             This should be protected, but "protected internal" means "OR" not "AND",
34300             so this is not possible.
34301             </remarks>
34302         </member>
34303         <member name="M:Microsoft.Build.Construction.ProjectElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34304             <summary>
34305             Overridden to verify that the potential parent and siblings
34306             are acceptable. Throws InvalidOperationException if they are not.
34307             </summary>
34308         </member>
34309         <member name="M:Microsoft.Build.Construction.ProjectElement.MarkDirty(System.String,System.String)">
34310             <summary>
34311             Marks this element as dirty.
34312             The default implementation simply marks the parent as dirty.
34313             If there is no parent, because the element has not been parented, do nothing. The parent
34314             will be dirtied when the element is added.
34315             Accepts a reason for debugging purposes only, and optional reason parameter.
34316             </summary>
34317             <comment>
34318             Should ideally be protected+internal.
34319             </comment>
34320         </member>
34321         <member name="M:Microsoft.Build.Construction.ProjectElement.OnAfterParentChanged(Microsoft.Build.Construction.ProjectElementContainer)">
34322             <summary>
34323             Called after a new parent is set. Parent may be null.
34324             By default does nothing.
34325             </summary>
34326         </member>
34327         <member name="M:Microsoft.Build.Construction.ProjectElement.Clone(Microsoft.Build.Construction.ProjectRootElement)">
34328             <summary>
34329             Returns a shallow clone of this project element.
34330             </summary>
34331             <param name="factory">The factory to use for creating the new instance.</param>
34332             <returns>The cloned element.</returns>
34333         </member>
34334         <member name="M:Microsoft.Build.Construction.ProjectElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34335             <summary>
34336             Returns a new instance of this same type.
34337             Any properties that cannot be set after creation should be set to copies of values
34338             as set for this instance.
34339             </summary>
34340             <param name="owner">The factory to use for creating the new instance.</param>
34341         </member>
34342         <member name="T:Microsoft.Build.Construction.ProjectElement.WrapperForProjectRootElement">
34343             <summary>
34344             Special derived variation of ProjectElementContainer used to wrap a ProjectRootElement.
34345             This is part of a trick used in ProjectElement to avoid using a separate field for the containing PRE.
34346             </summary>
34347         </member>
34348         <member name="M:Microsoft.Build.Construction.ProjectElement.WrapperForProjectRootElement.#ctor(Microsoft.Build.Construction.ProjectRootElement)">
34349             <summary>
34350             Constructor
34351             </summary>
34352         </member>
34353         <member name="P:Microsoft.Build.Construction.ProjectElement.WrapperForProjectRootElement.ContainingProject">
34354             <summary>
34355             Wrapped ProjectRootElement
34356             </summary>
34357         </member>
34358         <member name="M:Microsoft.Build.Construction.ProjectElement.WrapperForProjectRootElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34359             <summary>
34360             Dummy required implementation
34361             </summary>
34362         </member>
34363         <member name="M:Microsoft.Build.Construction.ProjectElement.WrapperForProjectRootElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34364             <inheritdoc />
34365         </member>
34366         <member name="T:Microsoft.Build.Construction.ProjectElementContainer">
34367             <summary>
34368             A container for project elements
34369             </summary>
34370         </member>
34371         <member name="F:Microsoft.Build.Construction.ProjectElementContainer._count">
34372             <summary>
34373             Number of children of any kind
34374             </summary>
34375         </member>
34376         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.#ctor">
34377             <summary>
34378             Constructor called by ProjectRootElement only.
34379             XmlElement is set directly after construction.
34380             </summary>
34381             <comment>
34382             Should ideally be protected+internal.
34383             </comment> 
34384         </member>
34385         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
34386             <summary>
34387             Constructor called by derived classes, except from ProjectRootElement.
34388             Parameters may not be null, except parent.
34389             </summary>
34390             <comment>
34391             Should ideally be protected+internal.
34392             </comment>
34393         </member>
34394         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.AllChildren">
34395             <summary>
34396             Get an enumerator over all children, gotten recursively.
34397             Walks the children in a depth-first manner.
34398             </summary>
34399         </member>
34400         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.Children">
34401             <summary>
34402             Get enumerable over all the children
34403             </summary>
34404         </member>
34405         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.ChildrenReversed">
34406             <summary>
34407             Get enumerable over all the children, starting from the last
34408             </summary>
34409         </member>
34410         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.Count">
34411             <summary>
34412             Number of children of any kind
34413             </summary>
34414         </member>
34415         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.FirstChild">
34416             <summary>
34417             First child, if any, otherwise null.
34418             Cannot be set directly; use <see cref="M:Microsoft.Build.Construction.ProjectElementContainer.PrependChild(Microsoft.Build.Construction.ProjectElement)">PrependChild()</see>.
34419             </summary>
34420         </member>
34421         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.LastChild">
34422             <summary>
34423             Last child, if any, otherwise null.
34424             Cannot be set directly; use <see cref="M:Microsoft.Build.Construction.ProjectElementContainer.AppendChild(Microsoft.Build.Construction.ProjectElement)">AppendChild()</see>.
34425             </summary>
34426         </member>
34427         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.InsertAfterChild(Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34428             <summary>
34429             Insert the child after the reference child.
34430             Reference child if provided must be parented by this element.
34431             Reference child may be null, in which case this is equivalent to <see cref="M:Microsoft.Build.Construction.ProjectElementContainer.PrependChild(Microsoft.Build.Construction.ProjectElement)">PrependChild(child)</see>.
34432             Throws if the parent is not itself parented.
34433             Throws if the reference node does not have this node as its parent.
34434             Throws if the node to add is already parented.
34435             Throws if the node to add was created from a different project than this node.
34436             </summary>
34437             <remarks>
34438             Semantics are those of XmlNode.InsertAfterChild.
34439             </remarks>
34440         </member>
34441         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.InsertBeforeChild(Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34442             <summary>
34443             Insert the child before the reference child.
34444             Reference child if provided must be parented by this element.
34445             Reference child may be null, in which case this is equivalent to <see cref="M:Microsoft.Build.Construction.ProjectElementContainer.AppendChild(Microsoft.Build.Construction.ProjectElement)">AppendChild(child)</see>.
34446             Throws if the parent is not itself parented.
34447             Throws if the reference node does not have this node as its parent.
34448             Throws if the node to add is already parented.
34449             Throws if the node to add was created from a different project than this node.
34450             </summary>
34451             <remarks>
34452             Semantics are those of XmlNode.InsertBeforeChild.
34453             </remarks>
34454         </member>
34455         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.AppendChild(Microsoft.Build.Construction.ProjectElement)">
34456             <summary>
34457             Inserts the provided element as the last child.
34458             Throws if the parent is not itself parented.
34459             Throws if the node to add is already parented.
34460             Throws if the node to add was created from a different project than this node.
34461             </summary>
34462         </member>
34463         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.PrependChild(Microsoft.Build.Construction.ProjectElement)">
34464             <summary>
34465             Inserts the provided element as the first child.
34466             Throws if the parent is not itself parented.
34467             Throws if the node to add is already parented.
34468             Throws if the node to add was created from a different project than this node.
34469             </summary>
34470         </member>
34471         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.RemoveChild(Microsoft.Build.Construction.ProjectElement)">
34472             <summary>
34473             Removes the specified child.
34474             Throws if the child is not currently parented by this object.
34475             This is O(1).
34476             May be safely called during enumeration of the children.
34477             </summary>
34478             <remarks>
34479             This is actually safe to call during enumeration of children, because it
34480             doesn't bother to clear the child's NextSibling (or PreviousSibling) pointers.
34481             To determine whether a child is unattached, check whether its parent is null,
34482             or whether its NextSibling and PreviousSibling point back at it.
34483             DO NOT BREAK THIS VERY USEFUL SAFETY CONTRACT.
34484             </remarks>
34485         </member>
34486         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.RemoveAllChildren">
34487             <summary>
34488             Remove all the children, if any.
34489             </summary>
34490             <remarks>
34491             It is safe to modify the children in this way
34492             during enumeration. See <cref see="RemoveChild">RemoveChild</cref>.
34493             </remarks>
34494         </member>
34495         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.DeepCopyFrom(Microsoft.Build.Construction.ProjectElementContainer)">
34496             <summary>
34497             Applies properties from the specified type to this instance.
34498             </summary>
34499             <param name="element">The element to act as a template to copy from.</param>
34500         </member>
34501         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.AppendParentedChildNoChecks(Microsoft.Build.Construction.ProjectElement)">
34502             <summary>
34503             Appends the provided child.
34504             Does not dirty the project, does not add an element, does not set the child's parent,
34505             and does not check the parent's future siblings and parent are acceptable.
34506             Called during project load, when the child can be expected to 
34507             already have a parent and its element is already connected to the
34508             parent's element.
34509             All that remains is to set FirstChild/LastChild and fix up the linked list.
34510             </summary>
34511         </member>
34512         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.DeepClone(Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectElementContainer)">
34513             <summary>
34514             Returns a clone of this project element and all its children.
34515             </summary>
34516             <param name="factory">The factory to use for creating the new instance.</param>
34517             <param name="parent">The parent to append the cloned element to as a child.</param>
34518             <returns>The cloned element.</returns>
34519         </member>
34520         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.UpdateElementValue(Microsoft.Build.Construction.ProjectElement)">
34521             <summary>
34522             If child "element" is actually represented as an attribute, update the value in the corresponding Xml attribute
34523             </summary>
34524             <param name="child">A child element which might be represented as an attribute</param>
34525         </member>
34526         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.AddToXml(Microsoft.Build.Construction.ProjectElement)">
34527             <summary>
34528             Adds a ProjectElement to the Xml tree
34529             </summary>
34530             <param name="child">A child to add to the Xml tree, which has already been added to the ProjectElement tree</param>
34531             <remarks>
34532             The MSBuild construction APIs keep a tree of ProjectElements and a parallel Xml tree which consists of
34533             objects from System.Xml.  This is a helper method which adds an XmlElement or Xml attribute to the Xml
34534             tree after the corresponding ProjectElement has been added to the construction API tree, and fixes up
34535             whitespace as necessary.
34536             </remarks>
34537         </member>
34538         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.AddInitialChild(Microsoft.Build.Construction.ProjectElement)">
34539             <summary>
34540             Sets the first child in this container
34541             </summary>
34542         </member>
34543         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.VerifyForInsertBeforeAfterFirst(Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34544             <summary>
34545             Common verification for insertion of an element.
34546             Reference may be null.
34547             </summary>
34548         </member>
34549         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.VerifyThrowInvalidOperationNotSelfAncestor(Microsoft.Build.Construction.ProjectElement)">
34550             <summary>
34551             Verifies that the provided element isn't this element or a parent of it.
34552             If it is, throws InvalidOperationException.
34553             </summary>
34554         </member>
34555         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.GetChildrenRecursively">
34556             <summary>
34557             Recurses into the provided container (such as a choose) and finds all child elements, even if nested.
34558             Result does NOT include the element passed in.
34559             The caller could filter these.
34560             </summary>
34561         </member>
34562         <member name="T:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable">
34563             <summary>
34564             Enumerable over a series of sibling ProjectElement objects
34565             </summary>
34566         </member>
34567         <member name="F:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable._enumerator">
34568             <summary>
34569             The enumerator
34570             </summary>
34571         </member>
34572         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.#ctor(Microsoft.Build.Construction.ProjectElement)">
34573             <summary>
34574             Constructor
34575             </summary>
34576         </member>
34577         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.#ctor(Microsoft.Build.Construction.ProjectElement,System.Boolean)">
34578             <summary>
34579             Constructor allowing reverse enumeration
34580             </summary>
34581         </member>
34582         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.GetEnumerator">
34583             <summary>
34584             Get enumerator
34585             </summary>
34586         </member>
34587         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.System#Collections#IEnumerable#GetEnumerator">
34588             <summary>
34589             Get non generic enumerator
34590             </summary>
34591         </member>
34592         <member name="T:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator">
34593             <summary>
34594             Enumerator over a series of sibling ProjectElement objects
34595             </summary>
34596         </member>
34597         <member name="F:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator._initial">
34598             <summary>
34599             First element
34600             </summary>
34601         </member>
34602         <member name="F:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator._current">
34603             <summary>
34604             Current element
34605             </summary>
34606         </member>
34607         <member name="F:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator._forwards">
34608             <summary>
34609             Whether enumeration should go forwards or backwards.
34610             If backwards, the "initial" will be the first returned, then each previous
34611             node in turn.
34612             </summary>
34613         </member>
34614         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.#ctor(Microsoft.Build.Construction.ProjectElement,System.Boolean)">
34615             <summary>
34616             Constructor taking the first element
34617             </summary>
34618         </member>
34619         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.Current">
34620             <summary>
34621             Current element
34622             Returns null if MoveNext() hasn't been called
34623             </summary>
34624         </member>
34625         <member name="P:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.System#Collections#IEnumerator#Current">
34626             <summary>
34627             Current element.
34628             Throws if MoveNext() hasn't been called
34629             </summary>
34630         </member>
34631         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.Dispose">
34632             <summary>
34633             Dispose. Do nothing.
34634             </summary>
34635         </member>
34636         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.MoveNext">
34637             <summary>
34638             Moves to the next item if any, otherwise returns false
34639             </summary>
34640         </member>
34641         <member name="M:Microsoft.Build.Construction.ProjectElementContainer.ProjectElementSiblingEnumerable.ProjectElementSiblingEnumerator.Reset">
34642             <summary>
34643             Return to start
34644             </summary>
34645         </member>
34646         <member name="T:Microsoft.Build.Construction.ProjectImportElement">
34647             <summary>
34648             Initializes a ProjectImportElement instance.
34649             </summary>
34650         </member>
34651         <member name="M:Microsoft.Build.Construction.ProjectImportElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Framework.SdkReference)">
34652             <summary>
34653             Initialize a parented ProjectImportElement
34654             </summary>
34655         </member>
34656         <member name="M:Microsoft.Build.Construction.ProjectImportElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
34657             <summary>
34658             Initialize an unparented ProjectImportElement
34659             </summary>
34660         </member>
34661         <member name="P:Microsoft.Build.Construction.ProjectImportElement.Project">
34662             <summary>
34663             Gets or sets the Project value. 
34664             </summary>
34665         </member>
34666         <member name="P:Microsoft.Build.Construction.ProjectImportElement.ProjectLocation">
34667             <summary>
34668             Location of the project attribute
34669             </summary>
34670         </member>
34671         <member name="P:Microsoft.Build.Construction.ProjectImportElement.Sdk">
34672             <summary>
34673             Gets or sets the SDK that contains the import.
34674             </summary>
34675         </member>
34676         <member name="P:Microsoft.Build.Construction.ProjectImportElement.Version">
34677             <summary>
34678             Gets or sets the version associated with this SDK import
34679             </summary>
34680         </member>
34681         <member name="P:Microsoft.Build.Construction.ProjectImportElement.MinimumVersion">
34682             <summary>
34683             Gets or sets the minimum SDK version required by this import.
34684             </summary>
34685         </member>
34686         <member name="P:Microsoft.Build.Construction.ProjectImportElement.SdkLocation">
34687             <summary>
34688             Location of the Sdk attribute
34689             </summary>
34690         </member>
34691         <member name="P:Microsoft.Build.Construction.ProjectImportElement.ImplicitImportLocation">
34692             <summary>
34693             Gets the <see cref="P:Microsoft.Build.Construction.ProjectImportElement.ImplicitImportLocation"/> of the import.  This indicates if the import was implicitly
34694             added because of the <see cref="P:Microsoft.Build.Construction.ProjectRootElement.Sdk"/> attribute and the location where the project was
34695             imported.
34696             </summary>
34697         </member>
34698         <member name="P:Microsoft.Build.Construction.ProjectImportElement.ParsedSdkReference">
34699             <summary>
34700             <see cref="T:Microsoft.Build.Framework.SdkReference"/> if applicable to this import element.
34701             </summary>
34702         </member>
34703         <member name="M:Microsoft.Build.Construction.ProjectImportElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
34704             <summary>
34705             Creates an unparented ProjectImportElement, wrapping an unparented XmlElement.
34706             Validates the project value.
34707             Caller should then ensure the element is added to a parent
34708             </summary>
34709         </member>
34710         <member name="M:Microsoft.Build.Construction.ProjectImportElement.CreateImplicit(System.String,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ImplicitImportLocation,Microsoft.Build.Framework.SdkReference)">
34711             <summary>
34712             Creates an implicit ProjectImportElement as if it was in the project.
34713             </summary>
34714             <returns></returns>
34715         </member>
34716         <member name="M:Microsoft.Build.Construction.ProjectImportElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34717             <summary>
34718             Overridden to verify that the potential parent and siblings
34719             are acceptable. Throws InvalidOperationException if they are not.
34720             </summary>
34721         </member>
34722         <member name="M:Microsoft.Build.Construction.ProjectImportElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34723             <inheritdoc />
34724         </member>
34725         <member name="M:Microsoft.Build.Construction.ProjectImportElement.CheckUpdatedSdk">
34726             <summary>
34727             Helper method to extract attribute values and update the ParsedSdkReference property if
34728             necessary (update only when changed).
34729             </summary>
34730             <returns>True if the ParsedSdkReference was updated, otherwise false (no update necessary).</returns>
34731         </member>
34732         <member name="T:Microsoft.Build.Construction.ProjectImportGroupElement">
34733             <summary>
34734             ProjectImportGroupElement represents the ImportGroup element in the MSBuild project.
34735             </summary>
34736         </member>
34737         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
34738             <summary>
34739             Initialize a parented ProjectImportGroupElement
34740             </summary>
34741         </member>
34742         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
34743             <summary>
34744             Initialize an unparented ProjectImportGroupElement
34745             </summary>
34746         </member>
34747         <member name="P:Microsoft.Build.Construction.ProjectImportGroupElement.Imports">
34748             <summary>
34749             Get any contained properties.
34750             </summary>
34751         </member>
34752         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.AddImport(System.String)">
34753             <summary>
34754             Convenience method that picks a location based on a heuristic:
34755             Adds a new import after the last import in this import group.
34756             </summary>
34757         </member>
34758         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
34759             <summary>
34760             Creates an unparented ProjectImportGroupElement, wrapping an unparented XmlElement.
34761             Caller should then ensure the element is added to a parent
34762             </summary>
34763         </member>
34764         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34765             <summary>
34766             Overridden to verify that the potential parent and siblings
34767             are acceptable. Throws InvalidOperationException if they are not.
34768             </summary>
34769         </member>
34770         <member name="M:Microsoft.Build.Construction.ProjectImportGroupElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34771             <inheritdoc />
34772         </member>
34773         <member name="T:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement">
34774             <summary>
34775             ProjectItemDefinitionGroupElement represents the ItemGroup element in the MSBuild project.
34776             </summary>
34777         </member>
34778         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
34779             <summary>
34780             Initialize a parented ProjectItemDefinitionGroupElement
34781             </summary>
34782         </member>
34783         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
34784             <summary>
34785             Initialize an unparented ProjectItemDefinitionGroupElement
34786             </summary>
34787         </member>
34788         <member name="P:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.ItemDefinitions">
34789             <summary>
34790             Get a list of child item definitions.
34791             </summary>
34792         </member>
34793         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.AddItemDefinition(System.String)">
34794             <summary>
34795             Convenience method that picks a location based on a heuristic:
34796             Adds a new item definition after the last child.
34797             </summary>
34798         </member>
34799         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
34800             <summary>
34801             Creates an unparented ProjectItemDefinitionGroupElement, wrapping an unparented XmlElement.
34802             Caller should then ensure the element is added to a parent
34803             </summary>
34804         </member>
34805         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34806             <summary>
34807             Overridden to verify that the potential parent and siblings
34808             are acceptable. Throws InvalidOperationException if they are not.
34809             </summary>
34810         </member>
34811         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionGroupElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34812             <inheritdoc />
34813         </member>
34814         <member name="T:Microsoft.Build.Construction.ProjectItemDefinitionElement">
34815             <summary>
34816             ProjectItemDefinitionElement class represents the Item Definition element in the MSBuild project.
34817             </summary>
34818         </member>
34819         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectItemDefinitionGroupElement,Microsoft.Build.Construction.ProjectRootElement)">
34820             <summary>
34821             Initialize a ProjectItemDefinitionElement instance from a node read from a project file
34822             </summary>
34823         </member>
34824         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
34825             <summary>
34826             Initialize a ProjectItemDefinitionElement instance from a node read from a project file
34827             </summary>
34828         </member>
34829         <member name="P:Microsoft.Build.Construction.ProjectItemDefinitionElement.ItemType">
34830             <summary>
34831             Gets the definition's type.
34832             </summary>
34833         </member>
34834         <member name="P:Microsoft.Build.Construction.ProjectItemDefinitionElement.Metadata">
34835             <summary>
34836             Get any child metadata definitions.
34837             </summary>
34838         </member>
34839         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.AddMetadata(System.String,System.String)">
34840             <summary>
34841             Convenience method to add a piece of metadata to this item definition.
34842             Adds after any existing metadata. Does not modify any existing metadata.
34843             </summary>
34844         </member>
34845         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
34846             <summary>
34847             Creates an unparented ProjectItemDefinitionElement, wrapping an unparented XmlElement.
34848             Caller should then ensure the element is added to a parent.
34849             </summary>
34850         </member>
34851         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34852             <summary>
34853             Overridden to verify that the potential parent and siblings
34854             are acceptable. Throws InvalidOperationException if they are not.
34855             </summary>
34856         </member>
34857         <member name="M:Microsoft.Build.Construction.ProjectItemDefinitionElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34858             <inheritdoc />
34859         </member>
34860         <member name="T:Microsoft.Build.Construction.ProjectItemGroupElement">
34861             <summary>
34862             ProjectItemGroupElement represents the ItemGroup element in the MSBuild project.
34863             </summary>
34864         </member>
34865         <member name="F:Microsoft.Build.Construction.ProjectItemGroupElement._definitelyAreNoChildrenWithWildcards">
34866             <summary>
34867             True if it is known that no child items have wildcards in their
34868             include. An optimization helping Project.AddItem.
34869             Only reliable if it is true.
34870             </summary>
34871         </member>
34872         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
34873             <summary>
34874             Initialize a parented ProjectItemGroupElement
34875             </summary>
34876         </member>
34877         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
34878             <summary>
34879             Initialize an unparented ProjectItemGroupElement
34880             </summary>
34881         </member>
34882         <member name="P:Microsoft.Build.Construction.ProjectItemGroupElement.Items">
34883             <summary>
34884             Get any child items.
34885             This is a live collection.
34886             </summary>
34887         </member>
34888         <member name="P:Microsoft.Build.Construction.ProjectItemGroupElement.DefinitelyAreNoChildrenWithWildcards">
34889             <summary>
34890             True if it is known that no child items have wildcards in their
34891             include. An optimization helping Project.AddItem.
34892             Only reliable if it is true.
34893             ONLY TO BE CALLED by ProjectItemElement.
34894             Should be protected+internal.
34895             </summary>
34896         </member>
34897         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.AddItem(System.String,System.String)">
34898             <summary>
34899             Convenience method that picks a location based on a heuristic:
34900             Adds a new item ordered by include.
34901             </summary>
34902         </member>
34903         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.AddItem(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
34904             <summary>
34905             Convenience method that picks a location based on a heuristic:
34906             Adds a new item ordered by include.
34907             Metadata may be null, indicating no metadata.
34908             </summary>
34909         </member>
34910         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
34911             <inheritdoc />
34912         </member>
34913         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
34914             <summary>
34915             Creates an unparented ProjectItemGroupElement, wrapping an unparented XmlElement.
34916             Caller should then ensure the element is added to the XmlDocument in the appropriate location.
34917             </summary>
34918         </member>
34919         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
34920             <summary>
34921             Overridden to verify that the potential parent and siblings
34922             are acceptable. Throws InvalidOperationException if they are not.
34923             </summary>
34924         </member>
34925         <member name="M:Microsoft.Build.Construction.ProjectItemGroupElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
34926             <inheritdoc />
34927         </member>
34928         <member name="T:Microsoft.Build.Construction.ProjectItemElement">
34929             <summary>
34930             ProjectItemElement class represents the Item element in the MSBuild project.
34931             </summary>
34932         </member>
34933         <member name="F:Microsoft.Build.Construction.ProjectItemElement._include">
34934             <summary>
34935             Include value cached for performance
34936             </summary>
34937         </member>
34938         <member name="F:Microsoft.Build.Construction.ProjectItemElement._exclude">
34939             <summary>
34940             Exclude value cached for performance
34941             </summary>
34942         </member>
34943         <member name="F:Microsoft.Build.Construction.ProjectItemElement._remove">
34944             <summary>
34945             Remove value cached for performance
34946             </summary>
34947         </member>
34948         <member name="F:Microsoft.Build.Construction.ProjectItemElement._update">
34949             <summary>
34950             Update value cached for performance
34951             </summary>
34952         </member>
34953         <member name="F:Microsoft.Build.Construction.ProjectItemElement._includeHasWildcards">
34954             <summary>
34955             Whether the include value has wildcards, 
34956             cached for performance.
34957             </summary>
34958         </member>
34959         <member name="M:Microsoft.Build.Construction.ProjectItemElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectItemGroupElement,Microsoft.Build.Construction.ProjectRootElement)">
34960             <summary>
34961             Initialize a parented ProjectItemElement instance
34962             </summary>
34963         </member>
34964         <member name="M:Microsoft.Build.Construction.ProjectItemElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
34965             <summary>
34966             Initialize an unparented ProjectItemElement instance
34967             </summary>
34968         </member>
34969         <member name="P:Microsoft.Build.Construction.ProjectItemElement.ItemType">
34970             <summary>
34971             Gets the item's type.
34972             </summary>
34973         </member>
34974         <member name="P:Microsoft.Build.Construction.ProjectItemElement.Include">
34975             <summary>
34976             Gets or sets the Include value. 
34977             Returns empty string if it is not present.
34978             Removes the attribute if the value to set is empty or null.
34979             </summary>
34980         </member>
34981         <member name="P:Microsoft.Build.Construction.ProjectItemElement.Exclude">
34982             <summary>
34983             Gets or sets the Exclude value. 
34984             Returns empty string if it is not present.
34985             Removes the attribute if the value to set is empty or null.
34986             </summary>
34987         </member>
34988         <member name="P:Microsoft.Build.Construction.ProjectItemElement.Remove">
34989             <summary>
34990             Gets or sets the Remove value.
34991             Returns empty string if it is not present.
34992             Removes the attribute if the value to set is empty or null.
34993             </summary>
34994         </member>
34995         <member name="P:Microsoft.Build.Construction.ProjectItemElement.Update">
34996             <summary>
34997             Gets or sets the Update value.
34998             </summary>
34999         </member>
35000         <member name="P:Microsoft.Build.Construction.ProjectItemElement.KeepMetadata">
35001             <summary>
35002             Gets or sets the KeepMetadata value.
35003             Returns empty string if it is not present.
35004             Removes the attribute if the value to set is empty or null.
35005             </summary>
35006         </member>
35007         <member name="P:Microsoft.Build.Construction.ProjectItemElement.RemoveMetadata">
35008             <summary>
35009             Gets or sets the RemoveMetadata value.
35010             Returns empty string if it is not present.
35011             Removes the attribute if the value to set is empty or null.
35012             </summary>
35013         </member>
35014         <member name="P:Microsoft.Build.Construction.ProjectItemElement.KeepDuplicates">
35015             <summary>
35016             Gets or sets the KeepDuplicates value.
35017             Returns empty string if it is not present.
35018             Removes the attribute if the value to set is empty or null.
35019             </summary>
35020         </member>
35021         <member name="P:Microsoft.Build.Construction.ProjectItemElement.HasMetadata">
35022             <summary>
35023             Whether there are any child metadata elements
35024             </summary>
35025         </member>
35026         <member name="P:Microsoft.Build.Construction.ProjectItemElement.Metadata">
35027             <summary>
35028             Get any child metadata.
35029             </summary>
35030         </member>
35031         <member name="P:Microsoft.Build.Construction.ProjectItemElement.IncludeLocation">
35032             <summary>
35033             Location of the include attribute
35034             </summary>
35035         </member>
35036         <member name="P:Microsoft.Build.Construction.ProjectItemElement.ExcludeLocation">
35037             <summary>
35038             Location of the exclude attribute
35039             </summary>
35040         </member>
35041         <member name="P:Microsoft.Build.Construction.ProjectItemElement.RemoveLocation">
35042             <summary>
35043             Location of the remove attribute
35044             </summary>
35045         </member>
35046         <member name="P:Microsoft.Build.Construction.ProjectItemElement.UpdateLocation">
35047             <summary>
35048             Location of the update attribute
35049             </summary>
35050         </member>
35051         <member name="P:Microsoft.Build.Construction.ProjectItemElement.KeepMetadataLocation">
35052             <summary>
35053             Location of the keepMetadata attribute
35054             </summary>
35055         </member>
35056         <member name="P:Microsoft.Build.Construction.ProjectItemElement.RemoveMetadataLocation">
35057             <summary>
35058             Location of the removeMetadata attribute
35059             </summary>
35060         </member>
35061         <member name="P:Microsoft.Build.Construction.ProjectItemElement.KeepDuplicatesLocation">
35062             <summary>
35063             Location of the keepDuplicates attribute
35064             </summary>
35065         </member>
35066         <member name="P:Microsoft.Build.Construction.ProjectItemElement.IncludeHasWildcards">
35067             <summary>
35068             Whether the include value has wildcards, 
35069             cached for performance.
35070             </summary>
35071         </member>
35072         <member name="P:Microsoft.Build.Construction.ProjectItemElement.NextItem">
35073             <summary>
35074             Internal helper to get the next ProjectItemElement sibling.
35075             If there is none, returns null.
35076             </summary>
35077         </member>
35078         <member name="M:Microsoft.Build.Construction.ProjectItemElement.AddMetadata(System.String,System.String)">
35079             <summary>
35080             Convenience method to add a piece of metadata to this item.
35081             Adds after any existing metadata. Does not modify any existing metadata.
35082             </summary>
35083         </member>
35084         <member name="M:Microsoft.Build.Construction.ProjectItemElement.AddMetadata(System.String,System.String,System.Boolean)">
35085             <summary>
35086             Convenience method to add a piece of metadata to this item.
35087             Adds after any existing metadata. Does not modify any existing metadata.
35088             </summary>
35089             <param name="name">The name of the metadata to add</param>
35090             <param name="unevaluatedValue">The value of the metadata to add</param>
35091             <param name="expressAsAttribute">If true, then the metadata will be expressed as an attribute instead of a child element, for example
35092             &lt;Reference Include="Libary.dll" HintPath="..\lib\Library.dll" Private="True" /&gt;
35093             </param>
35094         </member>
35095         <member name="M:Microsoft.Build.Construction.ProjectItemElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
35096             <inheritdoc />
35097         </member>
35098         <member name="M:Microsoft.Build.Construction.ProjectItemElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35099             <summary>
35100             Creates an unparented ProjectItemElement, wrapping an unparented XmlElement.
35101             Caller should then ensure the element is added to a parent.
35102             </summary>
35103         </member>
35104         <member name="M:Microsoft.Build.Construction.ProjectItemElement.ChangeItemType(System.String)">
35105             <summary>
35106             Changes the item type.
35107             </summary>
35108             <remarks>
35109             The implementation has to actually replace the element to do this.
35110             </remarks>
35111         </member>
35112         <member name="M:Microsoft.Build.Construction.ProjectItemElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35113             <summary>
35114             Overridden to verify that the potential parent and siblings
35115             are acceptable. Throws InvalidOperationException if they are not.
35116             </summary>
35117         </member>
35118         <member name="M:Microsoft.Build.Construction.ProjectItemElement.OnAfterParentChanged(Microsoft.Build.Construction.ProjectElementContainer)">
35119             <summary>
35120             Overridden to update the parent's children-have-no-wildcards flag.
35121             </summary>
35122         </member>
35123         <member name="M:Microsoft.Build.Construction.ProjectItemElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35124             <inheritdoc />
35125         </member>
35126         <member name="M:Microsoft.Build.Construction.ProjectItemElement.ShouldCloneXmlAttribute(System.Xml.XmlAttribute)">
35127             <summary>
35128             Do not clone attributes which can be metadata. The corresponding expressed as attribute project elements are responsible for adding their attribute
35129             </summary>
35130         </member>
35131         <member name="T:Microsoft.Build.Construction.ProjectMetadataElement">
35132             <summary>
35133             ProjectMetadataElement class represents a Metadata element in the MSBuild project.
35134             </summary>
35135         </member>
35136         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
35137             <summary>
35138             Initialize a parented ProjectMetadataElement
35139             </summary>
35140         </member>
35141         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35142             <summary>
35143             Initialize an unparented ProjectMetadataElement
35144             </summary>
35145         </member>
35146         <member name="P:Microsoft.Build.Construction.ProjectMetadataElement.Name">
35147             <summary>
35148             Gets or sets the metadata's type.
35149             </summary>
35150         </member>
35151         <member name="P:Microsoft.Build.Construction.ProjectMetadataElement.ExpressedAsAttribute">
35152             <summary>
35153             Gets or sets whether this piece of metadata is expressed as an attribute.
35154             </summary>
35155             <remarks>
35156             If true, then the metadata will be expressed as an attribute instead of a child element, for example
35157             &lt;Reference Include="Libary.dll" HintPath="..\lib\Library.dll" Private="True" /&gt;
35158             </remarks>
35159         </member>
35160         <member name="P:Microsoft.Build.Construction.ProjectMetadataElement.Value">
35161             <summary>
35162             Gets or sets the unevaluated value. 
35163             Returns empty string if it is not present.
35164             </summary>
35165         </member>
35166         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35167             <summary>
35168             Creates an unparented ProjectMetadataElement, wrapping an unparented XmlElement.
35169             Caller should then ensure the element is added to a parent.
35170             </summary>
35171         </member>
35172         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.ChangeName(System.String)">
35173             <summary>
35174             Changes the name.
35175             </summary>
35176             <remarks>
35177             The implementation has to actually replace the element to do this.
35178             </remarks>
35179         </member>
35180         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35181             <summary>
35182             Overridden to verify that the potential parent and siblings
35183             are acceptable. Throws InvalidOperationException if they are not.
35184             </summary>
35185         </member>
35186         <member name="M:Microsoft.Build.Construction.ProjectMetadataElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35187             <inheritdoc />
35188         </member>
35189         <member name="T:Microsoft.Build.Construction.ProjectOnErrorElement">
35190             <summary>
35191             ProjectUsingTaskElement represents the Import element in the MSBuild project.
35192             </summary>
35193         </member>
35194         <member name="M:Microsoft.Build.Construction.ProjectOnErrorElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectTargetElement,Microsoft.Build.Construction.ProjectRootElement)">
35195             <summary>
35196             Initialize a parented ProjectOnErrorElement
35197             </summary>
35198         </member>
35199         <member name="M:Microsoft.Build.Construction.ProjectOnErrorElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35200             <summary>
35201             Initialize an unparented ProjectOnErrorElement
35202             </summary>
35203         </member>
35204         <member name="P:Microsoft.Build.Construction.ProjectOnErrorElement.ExecuteTargetsAttribute">
35205             <summary>
35206             Gets and sets the value of the ExecuteTargets attribute.
35207             </summary>
35208             <remarks>
35209             'Attribute' suffix is for clarity.
35210             </remarks>
35211         </member>
35212         <member name="P:Microsoft.Build.Construction.ProjectOnErrorElement.ExecuteTargetsLocation">
35213             <summary>
35214             Location of the "ExecuteTargets" attribute on this element, if any.
35215             If there is no such attribute, returns null;
35216             </summary>
35217         </member>
35218         <member name="M:Microsoft.Build.Construction.ProjectOnErrorElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35219             <summary>
35220             Creates an unparented ProjectOnErrorElement, wrapping an unparented XmlElement.
35221             Caller should then ensure the element is added to a parent.
35222             </summary>
35223         </member>
35224         <member name="M:Microsoft.Build.Construction.ProjectOnErrorElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35225             <summary>
35226             Overridden to verify that the potential parent and siblings
35227             are acceptable. Throws InvalidOperationException if they are not.
35228             </summary>
35229         </member>
35230         <member name="M:Microsoft.Build.Construction.ProjectOnErrorElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35231             <inheritdoc />
35232         </member>
35233         <member name="T:Microsoft.Build.Construction.ProjectOtherwiseElement">
35234             <summary>
35235             ProjectOtherwiseElement represents the Otherwise element in the MSBuild project.
35236             </summary>
35237         </member>
35238         <member name="M:Microsoft.Build.Construction.ProjectOtherwiseElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
35239             <summary>
35240             Initialize a parented ProjectOtherwiseElement
35241             </summary>
35242         </member>
35243         <member name="M:Microsoft.Build.Construction.ProjectOtherwiseElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35244             <summary>
35245             Initialize an unparented ProjectOtherwiseElement
35246             </summary>
35247         </member>
35248         <member name="P:Microsoft.Build.Construction.ProjectOtherwiseElement.Condition">
35249             <summary>
35250             Condition should never be set, but the getter returns null instead of throwing 
35251             because a nonexistent condition is implicitly true
35252             </summary>
35253         </member>
35254         <member name="P:Microsoft.Build.Construction.ProjectOtherwiseElement.ItemGroups">
35255             <summary>
35256             Get an enumerator over any child item groups
35257             </summary>
35258         </member>
35259         <member name="P:Microsoft.Build.Construction.ProjectOtherwiseElement.PropertyGroups">
35260             <summary>
35261             Get an enumerator over any child property groups
35262             </summary>
35263         </member>
35264         <member name="P:Microsoft.Build.Construction.ProjectOtherwiseElement.ChooseElements">
35265             <summary>
35266             Get an enumerator over any child chooses
35267             </summary>
35268         </member>
35269         <member name="P:Microsoft.Build.Construction.ProjectOtherwiseElement.ConditionLocation">
35270             <summary>
35271             This does not allow conditions, so it should not be called.
35272             </summary>
35273         </member>
35274         <member name="M:Microsoft.Build.Construction.ProjectOtherwiseElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
35275             <summary>
35276             Creates an unparented ProjectOtherwiseElement, wrapping an unparented XmlElement.
35277             Caller should then ensure the element is added to a parent.
35278             </summary>
35279         </member>
35280         <member name="M:Microsoft.Build.Construction.ProjectOtherwiseElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35281             <summary>
35282             Overridden to verify that the potential parent and siblings
35283             are acceptable. Throws InvalidOperationException if they are not.
35284             </summary>
35285         </member>
35286         <member name="M:Microsoft.Build.Construction.ProjectOtherwiseElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35287             <inheritdoc />
35288         </member>
35289         <member name="T:Microsoft.Build.Construction.ProjectOutputElement">
35290             <summary>
35291             ProjectOutputElement represents the Output element in the MSBuild project.
35292             </summary>
35293         </member>
35294         <member name="M:Microsoft.Build.Construction.ProjectOutputElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectTaskElement,Microsoft.Build.Construction.ProjectRootElement)">
35295             <summary>
35296             Initialize a parented ProjectOutputElement
35297             </summary>
35298         </member>
35299         <member name="M:Microsoft.Build.Construction.ProjectOutputElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
35300             <summary>
35301             Initialize an unparented ProjectOutputElement
35302             </summary>
35303         </member>
35304         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.TaskParameter">
35305             <summary>
35306             Gets or sets the TaskParameter value. 
35307             Returns empty string if it is not present.
35308             </summary>
35309         </member>
35310         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.IsOutputItem">
35311             <summary>
35312             Whether this represents an output item (as opposed to an output property)
35313             </summary>
35314         </member>
35315         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.IsOutputProperty">
35316             <summary>
35317             Whether this represents an output property (as opposed to an output item)
35318             </summary>
35319         </member>
35320         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.ItemType">
35321             <summary>
35322             Gets or sets the ItemType value. 
35323             Returns empty string if it is not present.
35324             Removes the attribute if the value to set is empty.
35325             </summary>
35326             <remarks>
35327             Unfortunately the attribute name chosen in Whidbey was "ItemName" not ItemType.
35328             </remarks>
35329         </member>
35330         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.PropertyName">
35331             <summary>
35332             Gets or sets the PropertyName value. 
35333             Returns empty string if it is not present.
35334             Removes the attribute if the value to set is empty.
35335             </summary>
35336         </member>
35337         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.TaskParameterLocation">
35338             <summary>
35339             Location of the task parameter attribute
35340             </summary>
35341         </member>
35342         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.PropertyNameLocation">
35343             <summary>
35344             Location of the property name attribute, if any
35345             </summary>
35346         </member>
35347         <member name="P:Microsoft.Build.Construction.ProjectOutputElement.ItemTypeLocation">
35348             <summary>
35349             Location of the item type attribute, if any
35350             </summary>
35351         </member>
35352         <member name="M:Microsoft.Build.Construction.ProjectOutputElement.CreateDisconnected(System.String,System.String,System.String,Microsoft.Build.Construction.ProjectRootElement)">
35353             <summary>
35354             Creates an unparented ProjectOutputElement, wrapping an unparented XmlElement.
35355             Validates the parameters.
35356             Exactly one of item name and property name must have a value.
35357             Caller should then ensure the element is added to a parent
35358             </summary>
35359         </member>
35360         <member name="M:Microsoft.Build.Construction.ProjectOutputElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35361             <summary>
35362             Overridden to verify that the potential parent and siblings
35363             are acceptable. Throws InvalidOperationException if they are not.
35364             </summary>
35365         </member>
35366         <member name="M:Microsoft.Build.Construction.ProjectOutputElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35367             <inheritdoc />
35368         </member>
35369         <member name="T:Microsoft.Build.Construction.ProjectExtensionsElement">
35370             <summary>
35371             ProjectExtensionsElement represents the ProjectExtensions element in the MSBuild project.
35372             ProjectExtensions can contain arbitrary XML content.
35373             The ProjectExtensions element is deprecated and provided only for backward compatibility.
35374             Use a property instead. Properties can also contain XML content.
35375             </summary>
35376         </member>
35377         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
35378             <summary>
35379             Initialize a parented ProjectExtensionsElement instance
35380             </summary>
35381         </member>
35382         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
35383             <summary>
35384             Initialize an unparented ProjectExtensionsElement instance
35385             </summary>
35386         </member>
35387         <member name="P:Microsoft.Build.Construction.ProjectExtensionsElement.Condition">
35388             <summary>
35389             Condition should never be set, but the getter returns null instead of throwing 
35390             because a nonexistent condition is implicitly true
35391             </summary>
35392         </member>
35393         <member name="P:Microsoft.Build.Construction.ProjectExtensionsElement.Content">
35394             <summary>
35395             Gets and sets the raw XML content
35396             </summary>
35397         </member>
35398         <member name="P:Microsoft.Build.Construction.ProjectExtensionsElement.ConditionLocation">
35399             <summary>
35400             This does not allow conditions, so it should not be called.
35401             </summary>
35402         </member>
35403         <member name="P:Microsoft.Build.Construction.ProjectExtensionsElement.Item(System.String)">
35404             <summary>
35405             Get or set the content of the first sub-element 
35406             with the provided name.
35407             </summary>
35408         </member>
35409         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
35410             <inheritdoc/>
35411         </member>
35412         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.CreateParented(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
35413             <summary>
35414             Creates a ProjectExtensionsElement parented by a project
35415             </summary>
35416         </member>
35417         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
35418             <summary>
35419             Creates an unparented ProjectExtensionsElement, wrapping an unparented XmlElement.
35420             Caller should then ensure the element is added to a parent
35421             </summary>
35422         </member>
35423         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35424             <summary>
35425             Overridden to verify that the potential parent and siblings
35426             are acceptable. Throws InvalidOperationException if they are not.
35427             </summary>
35428         </member>
35429         <member name="M:Microsoft.Build.Construction.ProjectExtensionsElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35430             <inheritdoc />
35431         </member>
35432         <member name="T:Microsoft.Build.Construction.ProjectPropertyGroupElement">
35433             <summary>
35434             ProjectPropertyGroupElement represents the PropertyGroup element in the MSBuild project.
35435             </summary>
35436         </member>
35437         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
35438             <summary>
35439             Initialize a parented ProjectPropertyGroupElement
35440             </summary>
35441         </member>
35442         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35443             <summary>
35444             Initialize an unparented ProjectPropertyGroupElement
35445             </summary>
35446         </member>
35447         <member name="P:Microsoft.Build.Construction.ProjectPropertyGroupElement.Properties">
35448             <summary>
35449             Get any contained properties.
35450             </summary>
35451         </member>
35452         <member name="P:Microsoft.Build.Construction.ProjectPropertyGroupElement.PropertiesReversed">
35453             <summary>
35454             Get any contained properties.
35455             </summary>
35456         </member>
35457         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.AddProperty(System.String,System.String)">
35458             <summary>
35459             Convenience method that picks a location based on a heuristic:
35460             Adds a new property after the last property in this property group.
35461             </summary>
35462         </member>
35463         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.SetProperty(System.String,System.String)">
35464             <summary>
35465             Convenience method that picks a location based on a heuristic:
35466             If there is an existing property with the same name and no condition,
35467             updates its value. Otherwise it adds a new property after the last property.
35468             </summary>
35469         </member>
35470         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
35471             <summary>
35472             Creates an unparented ProjectPropertyGroupElement, wrapping an unparented XmlElement.
35473             Caller should then ensure the element is added to a parent
35474             </summary>
35475         </member>
35476         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35477             <summary>
35478             Overridden to verify that the potential parent and siblings
35479             are acceptable. Throws InvalidOperationException if they are not.
35480             </summary>
35481         </member>
35482         <member name="M:Microsoft.Build.Construction.ProjectPropertyGroupElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35483             <inheritdoc />
35484         </member>
35485         <member name="T:Microsoft.Build.Construction.ProjectPropertyElement">
35486             <summary>
35487             ProjectPropertyElement class represents the Property element in the MSBuild project.
35488             </summary>
35489             <remarks>
35490             We do not need to use or set the PropertyType enumeration in the CM. 
35491             The CM does not know about Environment or Global properties, and does not create Output properties.
35492             We can just verify that we haven't read a PropertyType.Reserved property ourselves.
35493             So the CM only represents Normal properties.
35494             </remarks>
35495         </member>
35496         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectPropertyGroupElement,Microsoft.Build.Construction.ProjectRootElement)">
35497             <summary>
35498             Initialize a parented ProjectPropertyElement
35499             </summary>
35500         </member>
35501         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35502             <summary>
35503             Initialize an unparented ProjectPropertyElement
35504             </summary>
35505         </member>
35506         <member name="P:Microsoft.Build.Construction.ProjectPropertyElement.Name">
35507             <summary>
35508             Gets or sets the property name.
35509             </summary>
35510         </member>
35511         <member name="P:Microsoft.Build.Construction.ProjectPropertyElement.Value">
35512             <summary>
35513             Gets or sets the unevaluated value. 
35514             Returns empty string if it is not present.
35515             </summary>
35516         </member>
35517         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35518             <summary>
35519             Creates an unparented ProjectPropertyElement, wrapping an unparented XmlElement.
35520             Validates name.
35521             Caller should then ensure the element is added to the XmlDocument in the appropriate location.
35522             </summary>
35523         </member>
35524         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.ChangeName(System.String)">
35525             <summary>
35526             Changes the name.
35527             </summary>
35528             <remarks>
35529             The implementation has to actually replace the element to do this.
35530             </remarks>
35531         </member>
35532         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35533             <summary>
35534             Overridden to verify that the potential parent and siblings
35535             are acceptable. Throws InvalidOperationException if they are not.
35536             </summary>
35537         </member>
35538         <member name="M:Microsoft.Build.Construction.ProjectPropertyElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35539             <inheritdoc />
35540         </member>
35541         <member name="T:Microsoft.Build.Construction.ProjectTargetElement">
35542             <summary>
35543             ProjectTargetElement represents the Target element in the MSBuild project.
35544             </summary>
35545         </member>
35546         <member name="F:Microsoft.Build.Construction.ProjectTargetElement._name">
35547             <summary>
35548             Target name cached for performance
35549             </summary>
35550         </member>
35551         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
35552             <summary>
35553             Initialize a parented ProjectTargetElement
35554             </summary>
35555         </member>
35556         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35557             <summary>
35558             Initialize an unparented ProjectTargetElement
35559             </summary>
35560         </member>
35561         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.ItemGroups">
35562             <summary>
35563             Get an enumerator over any child item groups
35564             </summary>
35565         </member>
35566         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.PropertyGroups">
35567             <summary>
35568             Get an enumerator over any child property groups
35569             </summary>
35570         </member>
35571         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.Tasks">
35572             <summary>
35573             Get an enumerator over any child tasks
35574             </summary>
35575         </member>
35576         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.OnErrors">
35577             <summary>
35578             Get an enumerator over any child onerrors
35579             </summary>
35580         </member>
35581         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.Name">
35582             <summary>
35583             Gets and sets the name of the target element.
35584             </summary>
35585         </member>
35586         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.Inputs">
35587             <summary>
35588             Gets or sets the Inputs value. 
35589             Returns empty string if it is not present.
35590             Removes the attribute if the value to set is empty.
35591             </summary>
35592         </member>
35593         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.Outputs">
35594             <summary>
35595             Gets or sets the Outputs value. 
35596             Returns empty string if it is not present.
35597             Removes the attribute if the value to set is empty.
35598             </summary>
35599         </member>
35600         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.KeepDuplicateOutputs">
35601             <summary>
35602             Gets or sets the TrimDuplicateOutputs value. 
35603             Returns empty string if it is not present.
35604             Removes the attribute if the value to set is empty.
35605             </summary>
35606         </member>
35607         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.DependsOnTargets">
35608             <summary>
35609             Gets or sets the DependsOnTargets value. 
35610             Returns empty string if it is not present.
35611             Removes the attribute if the value to set is empty.
35612             </summary>
35613         </member>
35614         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.BeforeTargets">
35615             <summary>
35616             Gets or sets the BeforeTargets value. 
35617             Returns empty string if it is not present.
35618             Removes the attribute if the value to set is empty.
35619             </summary>
35620         </member>
35621         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.AfterTargets">
35622             <summary>
35623             Gets or sets the AfterTargets value. 
35624             Returns empty string if it is not present.
35625             Removes the attribute if the value to set is empty.
35626             </summary>
35627         </member>
35628         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.Returns">
35629             <summary>
35630             Gets or sets the Returns value. 
35631             Returns null if the attribute is not present -- empty string is an allowable 
35632             value for both getting and setting. 
35633             Removes the attribute only if the value is set to null. 
35634             </summary>
35635         </member>
35636         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.NameLocation">
35637             <summary>
35638             Location of the Name attribute
35639             </summary>
35640         </member>
35641         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.InputsLocation">
35642             <summary>
35643             Location of the Inputs attribute
35644             </summary>
35645         </member>
35646         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.OutputsLocation">
35647             <summary>
35648             Location of the Outputs attribute
35649             </summary>
35650         </member>
35651         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.KeepDuplicateOutputsLocation">
35652             <summary>
35653             Location of the TrimDuplicateOutputs attribute
35654             </summary>
35655         </member>
35656         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.DependsOnTargetsLocation">
35657             <summary>
35658             Location of the DependsOnTargets attribute
35659             </summary>
35660         </member>
35661         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.BeforeTargetsLocation">
35662             <summary>
35663             Location of the BeforeTargets attribute
35664             </summary>
35665         </member>
35666         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.ReturnsLocation">
35667             <summary>
35668             Location of the Returns attribute
35669             </summary>
35670         </member>
35671         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.AfterTargetsLocation">
35672             <summary>
35673             Location of the AfterTargets attribute
35674             </summary>
35675         </member>
35676         <member name="P:Microsoft.Build.Construction.ProjectTargetElement.TargetInstance">
35677             <summary>
35678             A cache of the last instance which was created from this target.
35679             </summary>
35680         </member>
35681         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.AddItemGroup">
35682             <summary>
35683             Convenience method that picks a location based on a heuristic:
35684             Adds an item group after the last child.
35685             </summary>
35686         </member>
35687         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.AddPropertyGroup">
35688             <summary>
35689             Convenience method that picks a location based on a heuristic:
35690             Adds a property group after the last child.
35691             </summary>
35692         </member>
35693         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.AddTask(System.String)">
35694             <summary>
35695             Convenience method to add a task to this target.
35696             Adds after any existing task.
35697             </summary>
35698         </member>
35699         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
35700             <inheritdoc />
35701         </member>
35702         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35703             <summary>
35704             Creates an unparented ProjectTargetElement, wrapping an unparented XmlElement.
35705             Validates the name.
35706             Caller should then ensure the element is added to a parent.
35707             </summary>
35708         </member>
35709         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35710             <summary>
35711             Overridden to verify that the potential parent and siblings
35712             are acceptable. Throws InvalidOperationException if they are not.
35713             </summary>
35714         </member>
35715         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.MarkDirty(System.String,System.String)">
35716             <summary>
35717             Marks this element as dirty.
35718             </summary>
35719         </member>
35720         <member name="M:Microsoft.Build.Construction.ProjectTargetElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35721             <inheritdoc />
35722         </member>
35723         <member name="T:Microsoft.Build.Construction.ProjectTaskElement">
35724             <summary>
35725             ProjectTaskElement represents the Task element in the MSBuild project.
35726             </summary>
35727         </member>
35728         <member name="F:Microsoft.Build.Construction.ProjectTaskElement._parameters">
35729             <summary>
35730             The parameters (excepting condition and continue-on-error)
35731             </summary>
35732         </member>
35733         <member name="F:Microsoft.Build.Construction.ProjectTaskElement._locker">
35734             <summary>
35735             Protection for the parameters cache
35736             </summary>
35737         </member>
35738         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectTargetElement,Microsoft.Build.Construction.ProjectRootElement)">
35739             <summary>
35740             Initialize a parented ProjectTaskElement
35741             </summary>
35742         </member>
35743         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35744             <summary>
35745             Initialize an unparented ProjectTaskElement
35746             </summary>
35747         </member>
35748         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.ContinueOnError">
35749             <summary>
35750             Gets or sets the continue on error value. 
35751             Returns empty string if it is not present.
35752             Removes the attribute if the value to set is empty.
35753             </summary>
35754         </member>
35755         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.MSBuildRuntime">
35756             <summary>
35757             Gets or sets the runtime value for the task. 
35758             Returns empty string if it is not present.
35759             Removes the attribute if the value to set is empty.
35760             </summary>
35761         </member>
35762         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.MSBuildArchitecture">
35763             <summary>
35764             Gets or sets the architecture value for the task. 
35765             Returns empty string if it is not present.
35766             Removes the attribute if the value to set is empty.
35767             </summary>
35768         </member>
35769         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.Name">
35770             <summary>
35771             Gets the task name
35772             </summary>
35773         </member>
35774         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.Outputs">
35775             <summary>
35776             Gets any output children.
35777             </summary>
35778         </member>
35779         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.Parameters">
35780             <summary>
35781             Enumerable over the unevaluated parameters on the task.
35782             Attributes with their own properties, such as ContinueOnError, are not included in this collection.
35783             If parameters differ only by case only the last one will be returned. MSBuild uses only this one.
35784             Hosts can still remove the other parameters by using RemoveAllParameters().
35785             </summary>
35786         </member>
35787         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.ParameterLocations">
35788             <summary>
35789             Enumerable over the locations of parameters on the task.
35790             Condition and ContinueOnError, which have their own properties, are not included in this collection.
35791             If parameters differ only by case only the last one will be returned. MSBuild uses only this one.
35792             Hosts can still remove the other parameters by using RemoveAllParameters().
35793             </summary>
35794         </member>
35795         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.ContinueOnErrorLocation">
35796             <summary>
35797             Location of the "ContinueOnError" attribute on this element, if any.
35798             If there is no such attribute, returns null;
35799             </summary>
35800         </member>
35801         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.MSBuildRuntimeLocation">
35802             <summary>
35803             Location of the "MSBuildRuntime" attribute on this element, if any.
35804             If there is no such attribute, returns null;
35805             </summary>
35806         </member>
35807         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.MSBuildArchitectureLocation">
35808             <summary>
35809             Location of the "MSBuildArchitecture" attribute on this element, if any.
35810             If there is no such attribute, returns null;
35811             </summary>
35812         </member>
35813         <member name="P:Microsoft.Build.Construction.ProjectTaskElement.ParametersForEvaluation">
35814             <summary>
35815             Retrieves a copy of the parameters as used during evaluation.
35816             </summary>
35817         </member>
35818         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.AddOutputItem(System.String,System.String)">
35819             <summary>
35820             Convenience method to add an Output Item to this task. 
35821             Adds after the last child. 
35822             </summary>
35823         </member>
35824         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.AddOutputItem(System.String,System.String,System.String)">
35825             <summary>
35826             Convenience method to add a conditioned Output Item to this task. 
35827             Adds after the last child. 
35828             </summary>
35829         </member>
35830         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.AddOutputProperty(System.String,System.String)">
35831             <summary>
35832             Convenience method to add an Output Property to this task. 
35833             Adds after the last child. 
35834             </summary>
35835         </member>
35836         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.AddOutputProperty(System.String,System.String,System.String)">
35837             <summary>
35838             Convenience method to add a conditioned Output Property to this task. 
35839             Adds after the last child. 
35840             </summary>
35841         </member>
35842         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.GetParameter(System.String)">
35843             <summary>
35844             Gets the value of the parameter with the specified name,
35845             or empty string if it is not present.
35846             </summary>
35847         </member>
35848         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.SetParameter(System.String,System.String)">
35849             <summary>
35850             Adds (or modifies the value of) a parameter on this task
35851             </summary>
35852         </member>
35853         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.RemoveParameter(System.String)">
35854             <summary>
35855             Removes any parameter on this task with the specified name.
35856             If there is no such parameter, does nothing.
35857             </summary>
35858         </member>
35859         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.RemoveAllParameters">
35860             <summary>
35861             Removes all parameters from the task.
35862             Does not remove any "special" parameters: ContinueOnError, Condition, etc.
35863             </summary>
35864         </member>
35865         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.CopyFrom(Microsoft.Build.Construction.ProjectElement)">
35866             <inheritdoc />
35867         </member>
35868         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
35869             <summary>
35870             Creates an unparented ProjectTaskElement, wrapping an unparented XmlElement.
35871             Caller should then ensure the element is added to the XmlDocument in the appropriate location.
35872             </summary>
35873             <remarks>
35874             Any legal XML element name is allowed. We can't easily verify if the name is a legal XML element name,
35875             so this will specifically throw XmlException if it isn't.
35876             </remarks>
35877         </member>
35878         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
35879             <summary>
35880             Overridden to verify that the potential parent and siblings
35881             are acceptable. Throws InvalidOperationException if they are not.
35882             </summary>
35883         </member>
35884         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
35885             <inheritdoc />
35886         </member>
35887         <member name="M:Microsoft.Build.Construction.ProjectTaskElement.EnsureParametersInitialized">
35888             <summary>
35889             Initialize parameters cache.
35890             Must be called within the lock.
35891             </summary>
35892         </member>
35893         <member name="T:Microsoft.Build.Construction.ProjectUsingTaskElement">
35894             <summary>
35895             ProjectUsingTaskElement represents the Import element in the MSBuild project.
35896             </summary>
35897         </member>
35898         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Construction.ProjectRootElement)">
35899             <summary>
35900             Initialize a parented ProjectUsingTaskElement
35901             </summary>
35902         </member>
35903         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
35904             <summary>
35905             Initialize an unparented ProjectUsingTaskElement
35906             </summary>
35907         </member>
35908         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.AssemblyFile">
35909             <summary>
35910             Gets the value of the AssemblyFile attribute.
35911             Returns empty string if it is not present.
35912             </summary>
35913         </member>
35914         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.AssemblyName">
35915             <summary>
35916             Gets and sets the value of the AssemblyName attribute.
35917             Returns empty string if it is not present.
35918             </summary>
35919         </member>
35920         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.TaskName">
35921             <summary>
35922             Gets and sets the value of the TaskName attribute.
35923             </summary>
35924         </member>
35925         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.TaskFactory">
35926             <summary>
35927             Gets and sets the value of the TaskFactory attribute.
35928             </summary>
35929         </member>
35930         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.Runtime">
35931             <summary>
35932             Gets and sets the value of the Runtime attribute.
35933             </summary>
35934         </member>
35935         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.Architecture">
35936             <summary>
35937             Gets and sets the value of the Architecture attribute.
35938             </summary>
35939         </member>
35940         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.TaskBody">
35941             <summary>
35942             Get any contained TaskElement.
35943             </summary>
35944         </member>
35945         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.ParameterGroup">
35946             <summary>
35947             Get any contained ParameterGroup.
35948             </summary>
35949         </member>
35950         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.TaskNameLocation">
35951             <summary>
35952             Location of the task name attribute
35953             </summary>
35954         </member>
35955         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.AssemblyFileLocation">
35956             <summary>
35957             Location of the assembly file attribute, if any
35958             </summary>
35959         </member>
35960         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.AssemblyNameLocation">
35961             <summary>
35962             Location of the assembly name attribute, if any
35963             </summary>
35964         </member>
35965         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.RuntimeLocation">
35966             <summary>
35967             Location of the Runtime attribute, if any
35968             </summary>
35969         </member>
35970         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.ArchitectureLocation">
35971             <summary>
35972             Location of the Architecture attribute, if any
35973             </summary>
35974         </member>
35975         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskElement.TaskFactoryLocation">
35976             <summary>
35977             Location of the TaskFactory attribute, if any
35978             </summary>
35979         </member>
35980         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.AddParameterGroup">
35981             <summary>
35982             Convenience method that picks a location based on a heuristic:
35983                 Adds a new ParameterGroup to the using task to the end of the using task element
35984             </summary>
35985         </member>
35986         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.AddUsingTaskBody(System.String,System.String)">
35987             <summary>
35988             Convenience method that picks a location based on a heuristic:
35989                 Adds a new TaskBody to the using task to the end of the using task element
35990             </summary>
35991         </member>
35992         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.CreateDisconnected(System.String,System.String,System.String,System.String,System.String,Microsoft.Build.Construction.ProjectRootElement)">
35993             <summary>
35994             Creates an unparented ProjectUsingTaskElement, wrapping an unparented XmlElement.
35995             Validates the parameters.
35996             Exactly one of assembly file and assembly name must have a value.
35997             Caller should then ensure the element is added to a parent
35998             </summary>
35999         </member>
36000         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
36001             <summary>
36002             Overridden to verify that the potential parent and siblings
36003             are acceptable. Throws InvalidOperationException if they are not.
36004             </summary>
36005         </member>
36006         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
36007             <inheritdoc />
36008         </member>
36009         <member name="T:Microsoft.Build.Construction.RenameHandlerDelegate">
36010             <summary>
36011             Event handler for the event fired after this project file is named or renamed.
36012             If the project file has not previously had a name, oldFullPath is null.
36013             </summary>
36014         </member>
36015         <member name="T:Microsoft.Build.Construction.ProjectRootElement">
36016             <summary>
36017             ProjectRootElement class represents an MSBuild project, an MSBuild targets file or any other file that conforms to MSBuild
36018             project file schema.
36019             This class and its related classes allow a complete MSBuild project or targets file to be read and written.
36020             Comments and whitespace cannot be edited through this model at present.
36021             
36022             Each project root element is associated with exactly one ProjectCollection. This allows the owner of that project collection
36023             to control its lifetime and not be surprised by edits via another project collection.
36024             </summary>
36025         </member>
36026         <member name="F:Microsoft.Build.Construction.ProjectRootElement.EmptyProjectFileContent">
36027             Constants for default (empty) project file.
36028         </member>
36029         <member name="F:Microsoft.Build.Construction.ProjectRootElement.s_openLoaderDelegate">
36030             <summary>
36031             The singleton delegate that loads projects into the ProjectRootElement
36032             </summary>
36033         </member>
36034         <member name="F:Microsoft.Build.Construction.ProjectRootElement.XmlDeclarationRegEx">
36035             <summary>
36036             Used to determine if a file is an empty XML file if it ONLY contains an XML declaration like &lt;?xml version="1.0" encoding="utf-8"?&gt;.
36037             </summary>
36038         </member>
36039         <member name="F:Microsoft.Build.Construction.ProjectRootElement.s_defaultEncoding">
36040             <summary>
36041             The default encoding to use / assume for a new project.
36042             </summary>
36043         </member>
36044         <member name="F:Microsoft.Build.Construction.ProjectRootElement.s_globalVersionCounter">
36045             <summary>
36046             A global counter used to ensure each project version is distinct from every other.
36047             </summary>
36048             <remarks>
36049             This number is static so that it is unique across the appdomain. That is so that a host
36050             can know when a ProjectRootElement has been unloaded (perhaps after modification) and
36051             reloaded -- the version won't reset to '0'.
36052             </remarks>
36053         </member>
36054         <member name="F:Microsoft.Build.Construction.ProjectRootElement._versionOnDisk">
36055             <summary>
36056             Version number of this object that was last saved to disk, or last loaded from disk.
36057             Used to figure whether this object is dirty for saving.
36058             Saving to or loading from a provided stream reader does not modify this value, only saving to or loading from disk.
36059             The actual value is meaningless (since the counter is shared with all projects) --
36060             it should only be compared to a stored value.
36061             Immediately after loading from disk, this has the same value as <see cref="F:Microsoft.Build.Construction.ProjectRootElement._version">version</see>.
36062             </summary>
36063         </member>
36064         <member name="F:Microsoft.Build.Construction.ProjectRootElement._version">
36065             <summary>
36066             Current version number of this object.
36067             Used to figure whether this object is dirty for saving, or projects evaluated from
36068             this object need to be re-evaluated.
36069             The actual value is meaningless (since the counter is shared with all projects) --
36070             it should only be compared to a stored value.
36071             </summary>
36072             <remarks>
36073             Set this only through <see cref="M:Microsoft.Build.Construction.ProjectRootElement.MarkDirty(System.String,System.String)"/>.
36074             </remarks>
36075         </member>
36076         <member name="F:Microsoft.Build.Construction.ProjectRootElement._encoding">
36077             <summary>
36078             The encoding of the project that was (if applicable) loaded off disk, and that will be used to save the project.
36079             </summary>
36080             <value>Defaults to UTF8 for new projects.</value>
36081         </member>
36082         <member name="P:Microsoft.Build.Construction.ProjectRootElement.XmlNamespace">
36083             <summary>
36084             XML namespace specified and used by this project file. If a namespace was not specified in the project file, this
36085             value will be string.Empty.
36086             </summary>
36087         </member>
36088         <member name="F:Microsoft.Build.Construction.ProjectRootElement._projectFileLocation">
36089             <summary>
36090             The project file's location. It can be null if the project is not directly loaded from a file.
36091             </summary>
36092         </member>
36093         <member name="F:Microsoft.Build.Construction.ProjectRootElement._directory">
36094             <summary>
36095             The directory that the project is in. 
36096             Essential for evaluating relative paths.
36097             If the project is not loaded from disk, returns the current-directory from 
36098             the time the project was loaded - this is the same behavior as Whidbey/Orcas.
36099             </summary>
36100         </member>
36101         <member name="F:Microsoft.Build.Construction.ProjectRootElement._timeLastChangedUtc">
36102             <summary>
36103             The time that this object was last changed. If it hasn't
36104             been changed since being loaded or created, its value is <see cref="F:System.DateTime.MinValue"/>.
36105             Stored as UTC as this is faster when there are a large number of rapid edits.
36106             </summary>
36107         </member>
36108         <member name="F:Microsoft.Build.Construction.ProjectRootElement._lastWriteTimeWhenRead">
36109             <summary>
36110             The last-write-time of the file that was read, when it was read.
36111             This can be used to see whether the file has been changed on disk
36112             by an external means.
36113             </summary>
36114         </member>
36115         <member name="F:Microsoft.Build.Construction.ProjectRootElement._projectRootElementCache">
36116             <summary>
36117             The cache in which this project root element is stored.
36118             </summary>
36119         </member>
36120         <member name="F:Microsoft.Build.Construction.ProjectRootElement._dirtyReason">
36121             <summary>
36122             Reason it was last marked dirty; unlocalized, for debugging
36123             </summary>
36124         </member>
36125         <member name="F:Microsoft.Build.Construction.ProjectRootElement._dirtyParameter">
36126             <summary>
36127             Parameter to be formatted into the dirty reason
36128             </summary>
36129         </member>
36130         <member name="M:Microsoft.Build.Construction.ProjectRootElement.#ctor(System.Xml.XmlReader,Microsoft.Build.Evaluation.ProjectRootElementCache,System.Boolean,System.Boolean)">
36131             <summary>
36132             Initialize a ProjectRootElement instance from a XmlReader.
36133             May throw InvalidProjectFileException.
36134             Leaves the project dirty, indicating there are unsaved changes.
36135             Used to create a root element for solutions loaded by the 3.5 version of the solution wrapper.
36136             </summary>
36137         </member>
36138         <member name="M:Microsoft.Build.Construction.ProjectRootElement.#ctor(Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Evaluation.NewProjectFileOptions)">
36139             <summary>
36140             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36141             Leaves the project dirty, indicating there are unsaved changes.
36142             </summary>
36143         </member>
36144         <member name="M:Microsoft.Build.Construction.ProjectRootElement.#ctor(System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,System.Boolean)">
36145             <summary>
36146             Initialize a ProjectRootElement instance over a project with the specified file path.
36147             Assumes path is already normalized.
36148             May throw InvalidProjectFileException.
36149             </summary>
36150         </member>
36151         <member name="M:Microsoft.Build.Construction.ProjectRootElement.#ctor(Microsoft.Build.Construction.XmlDocumentWithLocation,Microsoft.Build.Evaluation.ProjectRootElementCache)">
36152             <summary>
36153             Initialize a ProjectRootElement instance from an existing document.
36154             May throw InvalidProjectFileException.
36155             Leaves the project dirty, indicating there are unsaved changes.
36156             </summary>
36157             <remarks>
36158             Do not make public: we do not wish to expose particular XML API's.
36159             </remarks>
36160         </member>
36161         <member name="M:Microsoft.Build.Construction.ProjectRootElement.#ctor(Microsoft.Build.Construction.XmlDocumentWithLocation)">
36162             <summary>
36163             Initialize a ProjectRootElement instance from an existing document.
36164             Helper constructor for the <see cref="M:Microsoft.Build.Construction.ProjectRootElement.ReloadFrom(System.String,System.Boolean,System.Nullable{System.Boolean})"/>> mehtod which needs to check if the document parses
36165             </summary>
36166             <remarks>
36167             Do not make public: we do not wish to expose particular XML API's.
36168             </remarks>
36169         </member>
36170         <member name="E:Microsoft.Build.Construction.ProjectRootElement.OnAfterProjectRename">
36171             <summary>
36172             Event raised after this project is renamed
36173             </summary>
36174         </member>
36175         <member name="E:Microsoft.Build.Construction.ProjectRootElement.OnProjectXmlChanged">
36176             <summary>
36177             Event raised after the project XML is changed.
36178             </summary>
36179         </member>
36180         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Condition">
36181             <summary>
36182             Condition should never be set, but the getter returns null instead of throwing 
36183             because a nonexistent condition is implicitly true
36184             </summary>
36185         </member>
36186         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ChooseElements">
36187             <summary>
36188             Get a read-only collection of the child chooses, if any
36189             </summary>
36190             <remarks>
36191             The name is inconsistent to make it more understandable, per API review.
36192             </remarks>
36193         </member>
36194         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ItemDefinitionGroups">
36195             <summary>
36196             Get a read-only collection of the child item definition groups, if any
36197             </summary>
36198         </member>
36199         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ItemDefinitions">
36200             <summary>
36201             Get a read-only collection of the child item definitions, if any, in all item definition groups anywhere in the project file.
36202             </summary>
36203         </member>
36204         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ItemGroups">
36205             <summary>
36206             Get a read-only collection over the child item groups, if any.
36207             Does not include any that may not be at the root, i.e. inside Choose elements.
36208             </summary>
36209         </member>
36210         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Items">
36211             <summary>
36212             Get a read-only collection of the child items, if any, in all item groups anywhere in the project file.
36213             Not restricted to root item groups: traverses through Choose elements.
36214             </summary>
36215         </member>
36216         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ImportGroups">
36217             <summary>
36218             Get a read-only collection of the child import groups, if any.
36219             </summary>
36220         </member>
36221         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Imports">
36222             <summary>
36223             Get a read-only collection of the child imports
36224             </summary>
36225         </member>
36226         <member name="P:Microsoft.Build.Construction.ProjectRootElement.PropertyGroups">
36227             <summary>
36228             Get a read-only collection of the child property groups, if any.
36229             Does not include any that may not be at the root, i.e. inside Choose elements.
36230             </summary>
36231         </member>
36232         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Properties">
36233             <summary>
36234             Geta read-only collection of the child properties, if any, in all property groups anywhere in the project file.
36235             Not restricted to root property groups: traverses through Choose elements.
36236             </summary>
36237         </member>
36238         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Targets">
36239             <summary>
36240             Get a read-only collection of the child targets
36241             </summary>
36242         </member>
36243         <member name="P:Microsoft.Build.Construction.ProjectRootElement.UsingTasks">
36244             <summary>
36245             Get a read-only collection of the child usingtasks, if any
36246             </summary>
36247         </member>
36248         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ItemGroupsReversed">
36249             <summary>
36250             Get a read-only collection of the child item groups, if any, in reverse order
36251             </summary>
36252         </member>
36253         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ItemDefinitionGroupsReversed">
36254             <summary>
36255             Get a read-only collection of the child item definition groups, if any, in reverse order
36256             </summary>
36257         </member>
36258         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ImportGroupsReversed">
36259             <summary>
36260             Get a read-only collection of the child import groups, if any, in reverse order
36261             </summary>
36262         </member>
36263         <member name="P:Microsoft.Build.Construction.ProjectRootElement.PropertyGroupsReversed">
36264             <summary>
36265             Get a read-only collection of the child property groups, if any, in reverse order
36266             </summary>
36267         </member>
36268         <member name="P:Microsoft.Build.Construction.ProjectRootElement.DirectoryPath">
36269             <summary>
36270             The directory that the project is in. 
36271             Essential for evaluating relative paths.
36272             Is never null, even if the FullPath does not contain directory information.
36273             If the project has not been loaded from disk and has not been given a path, returns the current-directory from 
36274             the time the project was loaded - this is the same behavior as Whidbey/Orcas.
36275             If the project has not been loaded from disk but has been given a path, this path may not exist.
36276             </summary>
36277         </member>
36278         <member name="P:Microsoft.Build.Construction.ProjectRootElement.FullPath">
36279             <summary>
36280             Full path to the project file.
36281             If the project has not been loaded from disk and has not been given a path, returns null.
36282             If the project has not been loaded from disk but has been given a path, this path may not exist.
36283             Setter renames the project, if it already had a name.
36284             </summary>
36285             <remarks>
36286             Updates the ProjectRootElement cache.
36287             </remarks>
36288         </member>
36289         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Encoding">
36290             <summary>
36291             Encoding that the project file is saved in, or will be saved in, unless
36292             otherwise specified.
36293             </summary>
36294             <remarks>
36295             Returns the encoding from the Xml declaration if any, otherwise UTF8.
36296             </remarks>
36297         </member>
36298         <member name="P:Microsoft.Build.Construction.ProjectRootElement.DefaultTargets">
36299             <summary>
36300             Gets or sets the value of DefaultTargets. If there is no DefaultTargets, returns empty string.
36301             If the value is null or empty, removes the attribute.
36302             </summary>
36303         </member>
36304         <member name="P:Microsoft.Build.Construction.ProjectRootElement.InitialTargets">
36305             <summary>
36306             Gets or sets the value of InitialTargets. If there is no InitialTargets, returns empty string.
36307             If the value is null or empty, removes the attribute.
36308             </summary>
36309         </member>
36310         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Sdk">
36311             <summary>
36312             Gets or sets a semicolon delimited list of software development kits (SDK) that the project uses.
36313             If  a value is specified, an Sdk.props is simplicity imported at the top of the project and an
36314             Sdk.targets is simplicity imported at the bottom from the specified SDK.
36315             If the value is null or empty, removes the attribute.
36316             </summary>
36317         </member>
36318         <member name="P:Microsoft.Build.Construction.ProjectRootElement.TreatAsLocalProperty">
36319             <summary>
36320             Gets or sets the value of TreatAsLocalProperty. If there is no tag, returns empty string.
36321             If the value being set is null or empty, removes the attribute.
36322             </summary>
36323         </member>
36324         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ToolsVersion">
36325             <summary>
36326             Gets or sets the value of ToolsVersion. If there is no ToolsVersion, returns empty string.
36327             If the value is null or empty, removes the attribute.
36328             </summary>
36329         </member>
36330         <member name="P:Microsoft.Build.Construction.ProjectRootElement.RawXml">
36331             <summary>
36332             Gets the XML representing this project as a string.
36333             Does not remove any dirty flag.
36334             </summary>
36335             <remarks>
36336             Useful for debugging.
36337             Note that we do not expose an XmlDocument or any other specific XML API.
36338             </remarks>
36339         </member>
36340         <member name="P:Microsoft.Build.Construction.ProjectRootElement.HasUnsavedChanges">
36341             <summary>
36342             Whether the XML has been modified since it was last loaded or saved.
36343             </summary>
36344         </member>
36345         <member name="P:Microsoft.Build.Construction.ProjectRootElement.PreserveFormatting">
36346             <summary>
36347             Whether the XML is preserving formatting or not.
36348             </summary>
36349         </member>
36350         <member name="P:Microsoft.Build.Construction.ProjectRootElement.Version">
36351             <summary>
36352             Version number of this object.
36353             A host can compare this to a stored version number to determine whether
36354             a project's XML has changed, even if it has also been saved since.
36355             
36356             The actual value is meaningless: an edit may increment it more than once,
36357             so it should only be compared to a stored value.
36358             </summary>
36359             <remarks>
36360             Used by the Project class to figure whether changes have occurred that 
36361             it might want to pick up by reevaluation.
36362             
36363             Used by the ProjectRootElement class to determine whether it needs to save.
36364             
36365             This number is unique to the appdomain. That means that it is possible
36366             to know when a ProjectRootElement has been unloaded (perhaps after modification) and
36367             reloaded -- the version won't reset to '0'.
36368             
36369             We're assuming we don't have over 2 billion edits.
36370             </remarks>
36371         </member>
36372         <member name="P:Microsoft.Build.Construction.ProjectRootElement.TimeLastChanged">
36373             <summary>
36374             The time that this object was last changed. If it hasn't
36375             been changed since being loaded or created, its value is <see cref="F:System.DateTime.MinValue"/>.
36376             </summary>
36377             <remarks>
36378             This is used by the VB/C# project system.
36379             </remarks>
36380         </member>
36381         <member name="P:Microsoft.Build.Construction.ProjectRootElement.LastWriteTimeWhenRead">
36382             <summary>
36383             The last-write-time of the file that was read, when it was read.
36384             This can be used to see whether the file has been changed on disk
36385             by an external means.
36386             </summary>
36387         </member>
36388         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ConditionLocation">
36389             <summary>
36390             This does not allow conditions, so it should not be called.
36391             </summary>
36392         </member>
36393         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ProjectFileLocation">
36394             <summary>
36395             Location of the originating file itself, not any specific content within it.
36396             If the file has not been given a name, returns an empty location.
36397             This is a case where it is legitimate to "not have a location".
36398             </summary>
36399         </member>
36400         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ToolsVersionLocation">
36401             <summary>
36402             Location of the toolsversion attribute, if any
36403             </summary>
36404         </member>
36405         <member name="P:Microsoft.Build.Construction.ProjectRootElement.DefaultTargetsLocation">
36406             <summary>
36407             Location of the defaulttargets attribute, if any
36408             </summary>
36409         </member>
36410         <member name="P:Microsoft.Build.Construction.ProjectRootElement.InitialTargetsLocation">
36411             <summary>
36412             Location of the initialtargets attribute, if any
36413             </summary>
36414         </member>
36415         <member name="P:Microsoft.Build.Construction.ProjectRootElement.SdkLocation">
36416             <summary>
36417             Location of the Sdk attribute, if any
36418             </summary>
36419         </member>
36420         <member name="P:Microsoft.Build.Construction.ProjectRootElement.TreatAsLocalPropertyLocation">
36421             <summary>
36422             Location of the TreatAsLocalProperty attribute, if any
36423             </summary>
36424         </member>
36425         <member name="P:Microsoft.Build.Construction.ProjectRootElement.IsExplicitlyLoaded">
36426             <summary>
36427             Has the project root element been explicitly loaded for a build or has it been implicitly loaded
36428             as part of building another project.
36429             </summary>
36430             <remarks>
36431             Internal code that wants to set this to true should call <see cref="M:Microsoft.Build.Construction.ProjectRootElement.MarkAsExplicitlyLoaded"/>.
36432             The setter is private to make it more difficult to downgrade an existing PRE to an implicitly loaded state, which should never happen.
36433             </remarks>
36434         </member>
36435         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ProjectRootElementCache">
36436             <summary>
36437             Retrieves the root element cache with which this root element is associated.
36438             </summary>
36439         </member>
36440         <member name="P:Microsoft.Build.Construction.ProjectRootElement.IsMemberOfProjectCollection">
36441             <summary>
36442             Gets a value indicating whether this PRE is known by its containing collection.
36443             </summary>
36444         </member>
36445         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ContainsTargetsWithReturnsAttribute">
36446             <summary>
36447             Indicates whether there are any targets in this project 
36448             that use the "Returns" attribute.  If so, then this project file
36449             is automatically assumed to be "Returns-enabled", and the default behavior
36450             for targets without Returns attributes changes from using the Outputs to 
36451             returning nothing by default. 
36452             </summary>
36453         </member>
36454         <member name="P:Microsoft.Build.Construction.ProjectRootElement.ProjectExtensions">
36455             <summary>
36456             Gets the ProjectExtensions child, if any, otherwise null.
36457             </summary>
36458             <remarks>
36459             Not public as we do not wish to encourage the use of ProjectExtensions.
36460             </remarks>
36461         </member>
36462         <member name="P:Microsoft.Build.Construction.ProjectRootElement.LastDirtyReason">
36463             <summary>
36464             Returns an unlocalized indication of how this file was last dirtied.
36465             This is for debugging purposes only.
36466             String formatting only occurs when retrieved.
36467             </summary>
36468         </member>
36469         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create">
36470             <summary>
36471             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36472             Uses the global project collection.
36473             </summary>
36474         </member>
36475         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(Microsoft.Build.Evaluation.NewProjectFileOptions)">
36476             <summary>
36477             Initialize an in-memory, empty ProjectRootElement instance that can be saved later using the specified <see cref="T:Microsoft.Build.Evaluation.NewProjectFileOptions"/>.
36478             Uses the global project collection.
36479             </summary>
36480         </member>
36481         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(Microsoft.Build.Evaluation.ProjectCollection)">
36482             <summary>
36483             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36484             Uses the specified project collection.
36485             </summary>
36486         </member>
36487         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.NewProjectFileOptions)">
36488             <summary>
36489             Initialize an in-memory, empty ProjectRootElement instance that can be saved later using the specified <see cref="T:Microsoft.Build.Evaluation.ProjectCollection"/> and <see cref="T:Microsoft.Build.Evaluation.NewProjectFileOptions"/>.
36490             </summary>
36491         </member>
36492         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.String)">
36493             <summary>
36494             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36495             Uses the global project collection.
36496             </summary>
36497         </member>
36498         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.String,Microsoft.Build.Evaluation.NewProjectFileOptions)">
36499             <summary>
36500             Initialize an in-memory, empty ProjectRootElement instance that can be saved later using the specified path and <see cref="T:Microsoft.Build.Evaluation.NewProjectFileOptions"/>.
36501             Uses the global project collection.
36502             </summary>
36503         </member>
36504         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.String,Microsoft.Build.Evaluation.ProjectCollection)">
36505             <summary>
36506             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36507             Uses the specified project collection.
36508             </summary>
36509         </member>
36510         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.NewProjectFileOptions)">
36511             <summary>
36512             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36513             Uses the specified project collection.
36514             </summary>
36515         </member>
36516         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.Xml.XmlReader)">
36517             <summary>
36518             Initialize a ProjectRootElement instance from an XmlReader.
36519             Uses the global project collection.
36520             May throw InvalidProjectFileException.
36521             </summary>
36522         </member>
36523         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.Xml.XmlReader,Microsoft.Build.Evaluation.ProjectCollection)">
36524             <summary>
36525             Initialize a ProjectRootElement instance from an XmlReader.
36526             Uses the specified project collection.
36527             May throw InvalidProjectFileException.
36528             </summary>
36529         </member>
36530         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(System.Xml.XmlReader,Microsoft.Build.Evaluation.ProjectCollection,System.Boolean)">
36531             <summary>
36532             Initialize a ProjectRootElement instance from an XmlReader.
36533             Uses the specified project collection.
36534             May throw InvalidProjectFileException.
36535             </summary>
36536         </member>
36537         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Open(System.String)">
36538             <summary>
36539             Initialize a ProjectRootElement instance by loading from the specified file path.
36540             Uses the global project collection.
36541             May throw InvalidProjectFileException.
36542             </summary>
36543         </member>
36544         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Open(System.String,Microsoft.Build.Evaluation.ProjectCollection)">
36545             <summary>
36546             Initialize a ProjectRootElement instance by loading from the specified file path.
36547             Uses the specified project collection.
36548             May throw InvalidProjectFileException.
36549             </summary>
36550         </member>
36551         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Open(System.String,Microsoft.Build.Evaluation.ProjectCollection,System.Nullable{System.Boolean})">
36552             <summary>
36553             Initialize a ProjectRootElement instance by loading from the specified file path.
36554             Uses the specified project collection and preserves the formatting of the document if specified.
36555             </summary>
36556         </member>
36557         <member name="M:Microsoft.Build.Construction.ProjectRootElement.TryOpen(System.String)">
36558             <summary>
36559             Returns the ProjectRootElement for the given path if it has been loaded, or null if it is not currently in memory.
36560             Uses the global project collection.
36561             </summary>
36562             <param name="path">The path of the ProjectRootElement, cannot be null.</param>
36563             <returns>The loaded ProjectRootElement, or null if it is not currently in memory.</returns>
36564             <remarks>
36565             It is possible for ProjectRootElements to be brought into memory and discarded due to memory pressure. Therefore
36566             this method returning false does not indicate that it has never been loaded, only that it is not currently in memory.
36567             </remarks>
36568         </member>
36569         <member name="M:Microsoft.Build.Construction.ProjectRootElement.TryOpen(System.String,Microsoft.Build.Evaluation.ProjectCollection)">
36570             <summary>
36571             Returns the ProjectRootElement for the given path if it has been loaded, or null if it is not currently in memory.
36572             Uses the specified project collection.
36573             </summary>
36574             <param name="path">The path of the ProjectRootElement, cannot be null.</param>
36575             <param name="projectCollection">The <see cref="T:Microsoft.Build.Evaluation.ProjectCollection"/> to load the project into.</param>
36576             <returns>The loaded ProjectRootElement, or null if it is not currently in memory.</returns>
36577             <remarks>
36578             It is possible for ProjectRootElements to be brought into memory and discarded due to memory pressure. Therefore
36579             this method returning false does not indicate that it has never been loaded, only that it is not currently in memory.
36580             </remarks>
36581         </member>
36582         <member name="M:Microsoft.Build.Construction.ProjectRootElement.TryOpen(System.String,Microsoft.Build.Evaluation.ProjectCollection,System.Nullable{System.Boolean})">
36583             <summary>
36584             Returns the ProjectRootElement for the given path if it has been loaded, or null if it is not currently in memory.
36585             Uses the specified project collection.
36586             </summary>
36587             <param name="path">The path of the ProjectRootElement, cannot be null.</param>
36588             <param name="projectCollection">The <see cref="T:Microsoft.Build.Evaluation.ProjectCollection"/> to load the project into.</param>
36589             <param name="preserveFormatting">
36590             The formatting to open with. Must match the formatting in the collection to succeed.
36591             </param>
36592             <returns>The loaded ProjectRootElement, or null if it is not currently in memory.</returns>
36593             <remarks>
36594             It is possible for ProjectRootElements to be brought into memory and discarded due to memory pressure. Therefore
36595             this method returning false does not indicate that it has never been loaded, only that it is not currently in memory.
36596             </remarks>
36597         </member>
36598         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddImport(System.String)">
36599             <summary>
36600             Convenience method that picks a location based on a heuristic:
36601             If import groups exist, inserts into the last one without a condition on it.
36602             Otherwise, creates an import at the end of the project.
36603             </summary>
36604         </member>
36605         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddImportGroup">
36606             <summary>
36607             Convenience method that picks a location based on a heuristic:
36608             Creates an import group at the end of the project.
36609             </summary>
36610         </member>
36611         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddItem(System.String,System.String)">
36612             <summary>
36613             Convenience method that picks a location based on a heuristic:
36614             Finds item group with no condition with at least one item of same type, or else adds a new item group;
36615             adds the item to that item group with items of the same type, ordered by include.
36616             </summary>
36617             <remarks>
36618             Per the previous implementation, it actually finds the last suitable item group, not the first.
36619             </remarks>
36620         </member>
36621         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddItem(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
36622             <summary>
36623             Convenience method that picks a location based on a heuristic:
36624             Finds first item group with no condition with at least one item of same type, or else an empty item group; or else adds a new item group;
36625             adds the item to that item group with items of the same type, ordered by include.
36626             Does not attempt to check whether the item matches an existing wildcard expression; that is only possible
36627             in the evaluated world.
36628             </summary>
36629             <remarks>
36630             Per the previous implementation, it actually finds the last suitable item group, not the first.
36631             </remarks>
36632         </member>
36633         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddItemGroup">
36634             <summary>
36635             Convenience method that picks a location based on a heuristic:
36636             Adds an item group after the last existing item group, if any; otherwise
36637             adds an item group after the last existing property group, if any; otherwise
36638             adds a new item group at the end of the project.
36639             </summary>
36640         </member>
36641         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddItemDefinition(System.String)">
36642             <summary>
36643             Convenience method that picks a location based on a heuristic:
36644             Finds first item definition group with no condition with at least one item definition of same item type, or else adds a new item definition group.
36645             </summary>
36646         </member>
36647         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddItemDefinitionGroup">
36648             <summary>
36649             Convenience method that picks a location based on a heuristic:
36650             Adds an item definition group after the last existing item definition group, if any; otherwise
36651             adds an item definition group after the last existing property group, if any; otherwise
36652             adds a new item definition group at the end of the project.
36653             </summary>
36654         </member>
36655         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddPropertyGroup">
36656             <summary>
36657             Convenience method that picks a location based on a heuristic:
36658             Adds a new property group after the last existing property group, if any; otherwise
36659             at the start of the project.
36660             </summary>
36661         </member>
36662         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddProperty(System.String,System.String)">
36663             <summary>
36664             Convenience method that picks a location based on a heuristic.
36665             Updates the last existing property with the specified name that has no condition on itself or its property group, if any.
36666             Otherwise, adds a new property in the first property group without a condition, creating a property group if necessary after
36667             the last existing property group, else at the start of the project.
36668             </summary>
36669         </member>
36670         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddTarget(System.String)">
36671             <summary>
36672             Convenience method that picks a location based on a heuristic:
36673             Creates a target at the end of the project.
36674             </summary>
36675         </member>
36676         <member name="M:Microsoft.Build.Construction.ProjectRootElement.AddUsingTask(System.String,System.String,System.String)">
36677             <summary>
36678             Convenience method that picks a location based on a heuristic:
36679             Creates a usingtask at the end of the project.
36680             Exactly one of assemblyName or assemblyFile must be null.
36681             </summary>
36682         </member>
36683         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateChooseElement">
36684             <summary>
36685             Creates a choose.
36686             Caller must add it to the location of choice in the project.
36687             </summary>
36688         </member>
36689         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateImportElement(System.String)">
36690             <summary>
36691             Creates an import.
36692             Caller must add it to the location of choice in the project.
36693             </summary>
36694         </member>
36695         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateItemElement(System.String)">
36696             <summary>
36697             Creates an item node.
36698             Caller must add it to the location of choice in the project.
36699             </summary>
36700         </member>
36701         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateItemElement(System.String,System.String)">
36702             <summary>
36703             Creates an item node with an include.
36704             Caller must add it to the location of choice in the project.
36705             </summary>
36706         </member>
36707         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateItemDefinitionElement(System.String)">
36708             <summary>
36709             Creates an item definition.
36710             Caller must add it to the location of choice in the project.
36711             </summary>
36712         </member>
36713         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateItemDefinitionGroupElement">
36714             <summary>
36715             Creates an item definition group.
36716             Caller must add it to the location of choice in the project.
36717             </summary>
36718         </member>
36719         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateItemGroupElement">
36720             <summary>
36721             Creates an item group.
36722             Caller must add it to the location of choice in the project.
36723             </summary>
36724         </member>
36725         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateImportGroupElement">
36726             <summary>
36727             Creates an import group. 
36728             Caller must add it to the location of choice in the project.
36729             </summary>
36730         </member>
36731         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateMetadataElement(System.String)">
36732             <summary>
36733             Creates a metadata node.
36734             Caller must add it to the location of choice in the project.
36735             </summary>
36736         </member>
36737         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateMetadataElement(System.String,System.String)">
36738             <summary>
36739             Creates a metadata node.
36740             Caller must add it to the location of choice in the project.
36741             </summary>
36742         </member>
36743         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateOnErrorElement(System.String)">
36744             <summary>
36745             Creates an on error node.
36746             Caller must add it to the location of choice in the project.
36747             </summary>
36748         </member>
36749         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateOtherwiseElement">
36750             <summary>
36751             Creates an otherwise node.
36752             Caller must add it to the location of choice in the project.
36753             </summary>
36754         </member>
36755         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateOutputElement(System.String,System.String,System.String)">
36756             <summary>
36757             Creates an output node.
36758             Exactly one of itemType and propertyName must be specified.
36759             Caller must add it to the location of choice in the project.
36760             </summary>
36761         </member>
36762         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateProjectExtensionsElement">
36763             <summary>
36764             Creates a project extensions node.
36765             Caller must add it to the location of choice in the project.
36766             </summary>
36767         </member>
36768         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreatePropertyGroupElement">
36769             <summary>
36770             Creates a property group.
36771             Caller must add it to the location of choice in the project.
36772             </summary>
36773         </member>
36774         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreatePropertyElement(System.String)">
36775             <summary>
36776             Creates a property.
36777             Caller must add it to the location of choice in the project.
36778             </summary>
36779         </member>
36780         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateTargetElement(System.String)">
36781             <summary>
36782             Creates a target.
36783             Caller must add it to the location of choice in this project.
36784             </summary>
36785         </member>
36786         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateTaskElement(System.String)">
36787             <summary>
36788             Creates a task.
36789             Caller must add it to the location of choice in this project.
36790             </summary>
36791         </member>
36792         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateUsingTaskElement(System.String,System.String,System.String)">
36793             <summary>
36794             Creates a using task.
36795             Caller must add it to the location of choice in the project.
36796             Exactly one of assembly file and assembly name must be provided.
36797             </summary>
36798         </member>
36799         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateUsingTaskElement(System.String,System.String,System.String,System.String,System.String)">
36800             <summary>
36801             Creates a using task.
36802             Caller must add it to the location of choice in the project.
36803             Exactly one of assembly file and assembly name must be provided.
36804             Also allows providing optional runtime and architecture specifiers.  Null is OK. 
36805             </summary>
36806         </member>
36807         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateUsingTaskParameterGroupElement">
36808             <summary>
36809             Creates a ParameterGroup for use in a using task.
36810             Caller must add it to the location of choice in the project under a using task.
36811             </summary>
36812         </member>
36813         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateUsingTaskParameterElement(System.String,System.String,System.String,System.String)">
36814             <summary>
36815             Creates a Parameter for use in a using ParameterGroup.
36816             Caller must add it to the location of choice in the project under a using task.
36817             </summary>
36818         </member>
36819         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateUsingTaskBodyElement(System.String,System.String)">
36820             <summary>
36821             Creates a Task element for use in a using task.
36822             Caller must add it to the location of choice in the project under a using task.
36823             </summary>
36824         </member>
36825         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateWhenElement(System.String)">
36826             <summary>
36827             Creates a when.
36828             Caller must add it to the location of choice in this project.
36829             </summary>
36830         </member>
36831         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateProjectSdkElement(System.String,System.String)">
36832             <summary>
36833             Creates a project SDK element attached to this project.
36834             </summary>
36835         </member>
36836         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Save">
36837             <summary>
36838             Save the project to the file system, if dirty.
36839             Uses the Encoding returned by the Encoding property.
36840             Creates any necessary directories.
36841             May throw IO-related exceptions.
36842             Clears the dirty flag.
36843             </summary>
36844         </member>
36845         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Save(System.Text.Encoding)">
36846             <summary>
36847             Save the project to the file system, if dirty.
36848             Creates any necessary directories.
36849             May throw IO-related exceptions.
36850             Clears the dirty flag.
36851             </summary>
36852         </member>
36853         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Save(System.String)">
36854             <summary>
36855             Save the project to the file system, if dirty or the path is different.
36856             Creates any necessary directories.
36857             May throw IO related exceptions.
36858             Clears the Dirty flag.
36859             </summary>
36860         </member>
36861         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Save(System.String,System.Text.Encoding)">
36862             <summary>
36863             Save the project to the file system, if dirty or the path is different.
36864             Creates any necessary directories.
36865             May throw IO related exceptions.
36866             Clears the Dirty flag.
36867             </summary>
36868         </member>
36869         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Save(System.IO.TextWriter)">
36870             <summary>
36871             Save the project to the provided TextWriter, whether or not it is dirty.
36872             Uses the encoding of the TextWriter.
36873             Clears the Dirty flag.
36874             </summary>
36875         </member>
36876         <member name="M:Microsoft.Build.Construction.ProjectRootElement.DeepClone">
36877             <summary>
36878             Returns a clone of this project.
36879             </summary>
36880             <returns>The cloned element.</returns>
36881         </member>
36882         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Reload(System.Boolean,System.Nullable{System.Boolean})">
36883             <summary>
36884             Reload the existing project root element from its file.
36885             An <see cref="T:System.InvalidOperationException"/> is thrown if the project root element is not associated with any file on disk.
36886             
36887             See <see cref="M:Microsoft.Build.Construction.ProjectRootElement.ReloadFrom(System.Xml.XmlReader,System.Boolean,System.Nullable{System.Boolean})"/>
36888             </summary>
36889         </member>
36890         <member name="M:Microsoft.Build.Construction.ProjectRootElement.ReloadFrom(System.String,System.Boolean,System.Nullable{System.Boolean})">
36891             <summary>
36892             Reload the existing project root element from the given path
36893             An <see cref="T:System.InvalidOperationException"/> is thrown if the path does not exist.
36894             
36895             See <see cref="M:Microsoft.Build.Construction.ProjectRootElement.ReloadFrom(System.Xml.XmlReader,System.Boolean,System.Nullable{System.Boolean})"/>
36896             </summary>
36897         </member>
36898         <member name="M:Microsoft.Build.Construction.ProjectRootElement.ReloadFrom(System.Xml.XmlReader,System.Boolean,System.Nullable{System.Boolean})">
36899             <summary>
36900             Reload the existing project root element from the given <paramref name="reader"/>
36901             A reload operation completely replaces the state of this <see cref="T:Microsoft.Build.Construction.ProjectRootElement"/> object. This operation marks the 
36902             object as dirty (see <see cref="M:Microsoft.Build.Construction.ProjectRootElement.MarkDirty(System.String,System.String)"/> for side effects). 
36903             
36904             If the new state has invalid XML or MSBuild syntax, then this method throws an <see cref="T:Microsoft.Build.Exceptions.InvalidProjectFileException"/>.
36905             When this happens, the state of this object does not change.
36906             
36907             Reloading from an XMLReader will retain the previous root element location (<see cref="P:Microsoft.Build.Construction.ProjectRootElement.FullPath"/>, <see cref="P:Microsoft.Build.Construction.ProjectRootElement.DirectoryPath"/>, <see cref="P:Microsoft.Build.Construction.ProjectRootElement.ProjectFileLocation"/>).
36908             
36909             </summary>
36910             <param name="reader">Reader to read from</param>
36911             <param name="throwIfUnsavedChanges">
36912               If set to false, the reload operation will discard any unsaved changes.
36913               Otherwise, an <see cref="T:System.InvalidOperationException"/> is thrown when unsaved changes are present.
36914             </param>
36915             <param name="preserveFormatting">
36916               Whether the reload should preserve formatting or not. A null value causes the reload to reuse the existing <see cref="P:Microsoft.Build.Construction.ProjectRootElement.PreserveFormatting"/> value.
36917             </param>
36918         </member>
36919         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Create(Microsoft.Build.Evaluation.ProjectRootElementCache)">
36920             <summary>
36921             Initialize an in-memory, empty ProjectRootElement instance that can be saved later.
36922             Uses the specified project root element cache.
36923             </summary>
36924         </member>
36925         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Open(System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,System.Boolean,System.Nullable{System.Boolean})">
36926             <summary>
36927             Initialize a ProjectRootElement instance by loading from the specified file path.
36928             Assumes path is already normalized.
36929             Uses the specified project root element cache.
36930             May throw InvalidProjectFileException.
36931             </summary>
36932         </member>
36933         <member name="M:Microsoft.Build.Construction.ProjectRootElement.Open(Microsoft.Build.Construction.XmlDocumentWithLocation)">
36934             <summary>
36935             Initialize a ProjectRootElement instance from an existing document.
36936             Uses the global project collection.
36937             May throw InvalidProjectFileException.
36938             </summary>
36939             <remarks>
36940             This is ultimately for unit testing.
36941             Do not make public: we do not wish to expose particular XML API's.
36942             </remarks>
36943         </member>
36944         <member name="M:Microsoft.Build.Construction.ProjectRootElement.OpenProjectOrSolution(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,System.Boolean)">
36945             <summary>
36946             Gets a ProjectRootElement representing an MSBuild file.
36947             Path provided must be a canonicalized full path.
36948             May throw InvalidProjectFileException or an IO-related exception.
36949             </summary>
36950         </member>
36951         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateElement(System.String)">
36952             <summary>
36953             Creates a XmlElement with the specified name in the document
36954             containing this project.
36955             </summary>
36956         </member>
36957         <member name="M:Microsoft.Build.Construction.ProjectRootElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
36958             <summary>
36959             Overridden to verify that the potential parent and siblings
36960             are acceptable. Throws InvalidOperationException if they are not.
36961             </summary>
36962         </member>
36963         <member name="M:Microsoft.Build.Construction.ProjectRootElement.MarkDirty(System.String,System.String)">
36964             <summary>
36965             Marks this project as dirty.
36966             Typically called by child elements to indicate that they themselves have become dirty.
36967             Accepts a reason for debugging purposes only, and optional reason parameter.
36968             </summary>
36969             <remarks>
36970             This is sealed because it is virtual and called in a constructor; by sealing it we
36971             satisfy FXCop that nobody will override it to do something that would rely on
36972             unconstructed state.
36973             Should be protected+internal.
36974             </remarks>
36975         </member>
36976         <member name="M:Microsoft.Build.Construction.ProjectRootElement.MarkProjectDirty(Microsoft.Build.Evaluation.Project)">
36977             <summary>
36978             Bubbles a Project dirty notification up to the ProjectRootElementCache and ultimately to the ProjectCollection.
36979             </summary>
36980             <param name="project">The dirtied project.</param>
36981         </member>
36982         <member name="M:Microsoft.Build.Construction.ProjectRootElement.MarkAsExplicitlyLoaded">
36983             <summary>
36984             Sets the <see cref="P:Microsoft.Build.Construction.ProjectRootElement.IsExplicitlyLoaded"/> property to <c>true</c> to indicate that this PRE
36985             should not be removed from the cache until it is explicitly unloaded by some MSBuild client.
36986             </summary>
36987         </member>
36988         <member name="M:Microsoft.Build.Construction.ProjectRootElement.GetImplicitImportNodes(Microsoft.Build.Construction.ProjectRootElement)">
36989             <summary>
36990             Creates and returns a list of <see cref="T:Microsoft.Build.Construction.ProjectImportElement"/> nodes which are implicitly
36991             referenced by the Project.
36992             </summary>
36993             <param name="currentProjectOrImport">Current project</param>
36994             <returns>An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing details of the SDKs referenced by the project.</returns>
36995         </member>
36996         <member name="M:Microsoft.Build.Construction.ProjectRootElement.IsEmptyXmlFile(System.String)">
36997             <summary>
36998             Determines if the specified file is an empty XML file meaning it has no contents, contains only whitespace, or
36999             only an XML declaration.  If the file does not exist, it is not considered empty.
37000             </summary>
37001             <param name="path">The full path to a file to check.</param>
37002             <returns><code>true</code> if the file is an empty XML file, otherwise <code>false</code>.</returns>
37003         </member>
37004         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37005             <summary>
37006             Returns a new instance of ProjectRootElement that is affiliated with the same ProjectRootElementCache.
37007             </summary>
37008             <param name="owner">The factory to use for creating the new instance.</param>
37009         </member>
37010         <member name="M:Microsoft.Build.Construction.ProjectRootElement.OpenLoader(System.String,Microsoft.Build.Evaluation.ProjectRootElementCache)">
37011             <summary>
37012             Creates a new ProjectRootElement for a specific PRE cache
37013             </summary>
37014             <param name="path">The path to the file to load.</param>
37015             <param name="projectRootElementCache">The cache to load the PRE into.</param>
37016         </member>
37017         <member name="M:Microsoft.Build.Construction.ProjectRootElement.CreateProjectFromPath(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,System.Boolean)">
37018             <summary>
37019             Creates a ProjectRootElement representing a file, where the file may be a .sln instead of
37020             an MSBuild format file.
37021             Assumes path is already normalized.
37022             If the file is in MSBuild format, may throw InvalidProjectFileException.
37023             If the file is a solution, will throw an IO-related exception if the file cannot be read.
37024             </summary>
37025         </member>
37026         <member name="M:Microsoft.Build.Construction.ProjectRootElement.LoadDocument(System.String,System.Boolean)">
37027             <summary>
37028             Constructor helper to load an XmlDocumentWithLocation from a path.
37029             Assumes path is already normalized.
37030             May throw InvalidProjectFileException.
37031             Never returns null.
37032             Does NOT add to the ProjectRootElementCache. Caller should add after verifying subsequent MSBuild parsing succeeds.
37033             </summary>
37034             <param name="fullPath">The full path to the document to load.</param>
37035             <param name="preserveFormatting"><code>true</code> to preserve the formatting of the document, otherwise <code>false</code>.</param>
37036         </member>
37037         <member name="M:Microsoft.Build.Construction.ProjectRootElement.LoadDocument(System.Xml.XmlReader,System.Boolean)">
37038             <summary>
37039             Constructor helper to load an XmlDocumentWithLocation from an XmlReader.
37040             May throw InvalidProjectFileException.
37041             Never returns null.
37042             </summary>
37043         </member>
37044         <member name="M:Microsoft.Build.Construction.ProjectRootElement.IncrementVersion">
37045             <summary>
37046             Boost the appdomain-unique version counter for this object.
37047             This is done when it is modified, and also when it is loaded.
37048             </summary>
37049         </member>
37050         <member name="T:Microsoft.Build.Construction.ProjectChooseElement">
37051             <summary>
37052             ProjectChooseElement represents the Choose element in the MSBuild project.
37053             Currently it does not allow a Condition.
37054             </summary>
37055         </member>
37056         <member name="M:Microsoft.Build.Construction.ProjectChooseElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
37057             <summary>
37058             Initialize a parented ProjectChooseElement
37059             </summary>
37060         </member>
37061         <member name="M:Microsoft.Build.Construction.ProjectChooseElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
37062             <summary>
37063             Initialize an unparented ProjectChooseElement
37064             </summary>
37065         </member>
37066         <member name="P:Microsoft.Build.Construction.ProjectChooseElement.Condition">
37067             <summary>
37068             Condition should never be set, but the getter returns null instead of throwing 
37069             because a nonexistent condition is implicitly true
37070             </summary>
37071         </member>
37072         <member name="P:Microsoft.Build.Construction.ProjectChooseElement.WhenElements">
37073             <summary>
37074             Get the When children.
37075             Will contain at least one entry.
37076             </summary>
37077         </member>
37078         <member name="P:Microsoft.Build.Construction.ProjectChooseElement.OtherwiseElement">
37079             <summary>
37080             Get any Otherwise child.
37081             May be null.
37082             </summary>
37083         </member>
37084         <member name="P:Microsoft.Build.Construction.ProjectChooseElement.ConditionLocation">
37085             <summary>
37086             This does not allow conditions, so it should not be called.
37087             </summary>
37088         </member>
37089         <member name="M:Microsoft.Build.Construction.ProjectChooseElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
37090             <summary>
37091             Creates an unparented ProjectChooseElement, wrapping an unparented XmlElement.
37092             Caller should then ensure the element is added to a parent
37093             </summary>
37094         </member>
37095         <member name="M:Microsoft.Build.Construction.ProjectChooseElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
37096             <summary>
37097             Sets the parent of this element if it is a valid parent,
37098             otherwise throws.
37099             </summary>
37100         </member>
37101         <member name="M:Microsoft.Build.Construction.ProjectChooseElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37102             <inheritdoc />
37103         </member>
37104         <member name="T:Microsoft.Build.Construction.ProjectWhenElement">
37105             <summary>
37106             ProjectWhenElement represents the When element in the MSBuild project.
37107             </summary>
37108         </member>
37109         <member name="M:Microsoft.Build.Construction.ProjectWhenElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectChooseElement,Microsoft.Build.Construction.ProjectRootElement)">
37110             <summary>
37111             Initialize a parented ProjectWhenElement
37112             </summary>
37113         </member>
37114         <member name="M:Microsoft.Build.Construction.ProjectWhenElement.#ctor(System.Xml.XmlElement,Microsoft.Build.Construction.ProjectRootElement)">
37115             <summary>
37116             Initialize an unparented ProjectWhenElement
37117             </summary>
37118         </member>
37119         <member name="P:Microsoft.Build.Construction.ProjectWhenElement.ChooseElements">
37120             <summary>
37121             Get an enumerator over any child chooses
37122             </summary>
37123         </member>
37124         <member name="P:Microsoft.Build.Construction.ProjectWhenElement.ItemGroups">
37125             <summary>
37126             Get an enumerator over any child item groups
37127             </summary>
37128         </member>
37129         <member name="P:Microsoft.Build.Construction.ProjectWhenElement.PropertyGroups">
37130             <summary>
37131             Get an enumerator over any child property groups
37132             </summary>
37133         </member>
37134         <member name="M:Microsoft.Build.Construction.ProjectWhenElement.CreateDisconnected(System.String,Microsoft.Build.Construction.ProjectRootElement)">
37135             <summary>
37136             Creates an unparented ProjectPropertyGroupElement, wrapping an unparented XmlElement.
37137             Caller should then ensure the element is added to a parent
37138             </summary>
37139         </member>
37140         <member name="M:Microsoft.Build.Construction.ProjectWhenElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
37141             <summary>
37142             Overridden to verify that the potential parent and siblings
37143             are acceptable. Throws InvalidOperationException if they are not.
37144             </summary>
37145         </member>
37146         <member name="M:Microsoft.Build.Construction.ProjectWhenElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37147             <inheritdoc />
37148         </member>
37149         <member name="T:Microsoft.Build.Construction.UsingTaskParameterGroupElement">
37150             <summary>
37151             UsingTaskParameterGroupElement represents a ParameterGroup under the using task.
37152             </summary>
37153         </member>
37154         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectRootElement)">
37155             <summary>
37156             Initialize a parented UsingTaskParameterGroupElement
37157             </summary>
37158         </member>
37159         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
37160             <summary>
37161             Initialize an unparented UsingTaskParameterGroupElement
37162             </summary>
37163         </member>
37164         <member name="P:Microsoft.Build.Construction.UsingTaskParameterGroupElement.Condition">
37165             <summary>
37166             Condition should never be set, but the getter returns null instead of throwing 
37167             because a nonexistent condition is implicitly true
37168             </summary>
37169         </member>
37170         <member name="P:Microsoft.Build.Construction.UsingTaskParameterGroupElement.Parameters">
37171             <summary>
37172             Get any contained parameters.
37173             </summary>
37174         </member>
37175         <member name="P:Microsoft.Build.Construction.UsingTaskParameterGroupElement.ConditionLocation">
37176             <summary>
37177             This does not allow conditions, so it should not be called.
37178             </summary>
37179         </member>
37180         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.AddParameter(System.String,System.String,System.String,System.String)">
37181             <summary>
37182             Convenience method that picks a location based on a heuristic:
37183             </summary>
37184         </member>
37185         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.AddParameter(System.String)">
37186             <summary>
37187             Convenience method that picks a location based on a heuristic:
37188             </summary>
37189         </member>
37190         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.CreateDisconnected(Microsoft.Build.Construction.ProjectRootElement)">
37191             <summary>
37192             Creates an unparented UsingTaskParameterGroupElement, wrapping an unparented XmlElement.
37193             Caller should then ensure the element is added to a parent
37194             </summary>
37195         </member>
37196         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
37197             <summary>
37198             Overridden to verify that the potential parent and siblings
37199             are acceptable. Throws InvalidOperationException if they are not.
37200             </summary>
37201         </member>
37202         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37203             <inheritdoc />
37204         </member>
37205         <member name="M:Microsoft.Build.Construction.UsingTaskParameterGroupElement.VerifyCorrectParent(Microsoft.Build.Construction.ProjectElementContainer)">
37206             <summary>
37207             Verify the parent is a usingTaskElement and that the taskFactory attribute is set
37208             </summary>
37209         </member>
37210         <member name="T:Microsoft.Build.Construction.ProjectUsingTaskParameterElement">
37211             <summary>
37212             UsingTaskParameterElement class represents the Parameter element in the MSBuild project.
37213             </summary>
37214         </member>
37215         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.UsingTaskParameterGroupElement,Microsoft.Build.Construction.ProjectRootElement)">
37216             <summary>
37217             Initialize a parented UsingTaskParameterElement instance
37218             </summary>
37219         </member>
37220         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
37221             <summary>
37222             Initialize an unparented UsingTaskParameterElement instance
37223             </summary>
37224         </member>
37225         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.Condition">
37226             <summary>
37227             Condition should never be set, but the getter returns null instead of throwing 
37228             because a nonexistent condition is implicitly true
37229             </summary>
37230         </member>
37231         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.Name">
37232             <summary>
37233             Gets and sets the name of the parameter's name
37234             </summary>
37235         </member>
37236         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.ParameterType">
37237             <summary>
37238             Gets or sets the Type attribute returns "System.String" if not set.
37239             If null or empty is set the attribute will be removed from the element.
37240             </summary>
37241         </member>
37242         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.Output">
37243             <summary>
37244             Gets or sets the output attribute
37245             </summary>
37246         </member>
37247         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.Required">
37248             <summary>
37249             Gets or sets the required attribute
37250             </summary>
37251         </member>
37252         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.ConditionLocation">
37253             <summary>
37254             This does not allow conditions, so it should not be called.
37255             </summary>
37256         </member>
37257         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.ParameterTypeLocation">
37258             <summary>
37259             Location of the Type attribute.
37260             If there is no such attribute, returns the location of the element,
37261             in lieu of the default value it uses for the attribute.
37262             </summary>
37263         </member>
37264         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.OutputLocation">
37265             <summary>
37266             Location of the Output attribute.
37267             If there is no such attribute, returns the location of the element,
37268             in lieu of the default value it uses for the attribute.
37269             </summary>
37270         </member>
37271         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.RequiredLocation">
37272             <summary>
37273             Location of the Required attribute.
37274             If there is no such attribute, returns the location of the element,
37275             in lieu of the default value it uses for the attribute.
37276             </summary>
37277         </member>
37278         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.CreateDisconnected(System.String,System.String,System.String,System.String,Microsoft.Build.Construction.ProjectRootElement)">
37279             <summary>
37280             Creates an unparented UsingTaskParameterElement, wrapping an unparented XmlElement.
37281             Caller should then ensure the element is added to a parent.
37282             </summary>
37283         </member>
37284         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
37285             <summary>
37286             Overridden to verify that the potential parent and siblings
37287             are acceptable. Throws InvalidOperationException if they are not.
37288             </summary>
37289         </member>
37290         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskParameterElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37291             <inheritdoc />
37292         </member>
37293         <member name="T:Microsoft.Build.Construction.ProjectUsingTaskBodyElement">
37294             <summary>
37295             ProjectUsingTaskBodyElement class represents the Task element under the using task element in the MSBuild project.
37296             </summary>
37297         </member>
37298         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectUsingTaskElement,Microsoft.Build.Construction.ProjectRootElement)">
37299             <summary>
37300             Initialize a parented ProjectUsingTaskBodyElement
37301             </summary>
37302         </member>
37303         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.#ctor(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
37304             <summary>
37305             Initialize an unparented ProjectUsingTaskBodyElement
37306             </summary>
37307         </member>
37308         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.Condition">
37309             <summary>
37310             Condition should never be set, but the getter returns null instead of throwing 
37311             because a nonexistent condition is implicitly true
37312             </summary>
37313         </member>
37314         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.TaskBody">
37315             <summary>
37316             Gets or sets the unevaluated value of the contents of the task xml 
37317             Returns empty string if it is not present.
37318             </summary>
37319         </member>
37320         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.Evaluate">
37321             <summary>
37322             Gets the value of the Evaluate attribute.
37323             Returns true if it is not present.
37324             </summary>
37325         </member>
37326         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.ConditionLocation">
37327             <summary>
37328             This does not allow conditions, so it should not be called.
37329             </summary>
37330         </member>
37331         <member name="P:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.EvaluateLocation">
37332             <summary>
37333             Location of the "Condition" attribute on this element, if any.
37334             If there is no such attribute, returns the location of the element,
37335             in lieu of the default value it uses for the attribute.
37336             </summary>
37337         </member>
37338         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.CreateDisconnected(System.String,System.String,Microsoft.Build.Construction.ProjectRootElement)">
37339             <summary>
37340             Creates an unparented ProjectUsingTaskBodyElement, wrapping an unparented XmlElement.
37341             Validates name.
37342             Caller should then ensure the element is added to the XmlDocument in the appropriate location.
37343             </summary>
37344         </member>
37345         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.VerifyThrowInvalidOperationAcceptableLocation(Microsoft.Build.Construction.ProjectElementContainer,Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Construction.ProjectElement)">
37346             <summary>
37347             Overridden to verify that the potential parent and siblings
37348             are acceptable. Throws InvalidOperationException if they are not.
37349             </summary>
37350         </member>
37351         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.CreateNewInstance(Microsoft.Build.Construction.ProjectRootElement)">
37352             <inheritdoc />
37353         </member>
37354         <member name="M:Microsoft.Build.Construction.ProjectUsingTaskBodyElement.VerifyCorrectParent(Microsoft.Build.Construction.ProjectElementContainer)">
37355             <summary>
37356             Verify the parent is a usingTaskElement and that the taskFactory attribute is set
37357             </summary>
37358         </member>
37359         <member name="T:Microsoft.Build.Construction.SolutionConfigurationInSolution">
37360             <summary>
37361             This represents an entry for a solution configuration
37362             </summary>
37363         </member>
37364         <member name="F:Microsoft.Build.Construction.SolutionConfigurationInSolution.ConfigurationPlatformSeparator">
37365             <summary>
37366             Default separator between configuration and platform in configuration
37367             full names
37368             </summary>
37369         </member>
37370         <member name="F:Microsoft.Build.Construction.SolutionConfigurationInSolution._configurationName">
37371             <summary>
37372             The configuration part of this configuration - e.g. "Debug", "Release"
37373             </summary>
37374         </member>
37375         <member name="F:Microsoft.Build.Construction.SolutionConfigurationInSolution._platformName">
37376             <summary>
37377             The platform part of this configuration - e.g. "Any CPU", "Win32"
37378             </summary>
37379         </member>
37380         <member name="F:Microsoft.Build.Construction.SolutionConfigurationInSolution._fullName">
37381             <summary>
37382             The full name of this configuration - e.g. "Debug|Any CPU"
37383             </summary>
37384         </member>
37385         <member name="M:Microsoft.Build.Construction.SolutionConfigurationInSolution.#ctor(System.String,System.String)">
37386             <summary>
37387             Constructor
37388             </summary>
37389         </member>
37390         <member name="P:Microsoft.Build.Construction.SolutionConfigurationInSolution.ConfigurationName">
37391             <summary>
37392             The configuration part of this configuration - e.g. "Debug", "Release"
37393             </summary>
37394         </member>
37395         <member name="P:Microsoft.Build.Construction.SolutionConfigurationInSolution.PlatformName">
37396             <summary>
37397             The platform part of this configuration - e.g. "Any CPU", "Win32"
37398             </summary>
37399         </member>
37400         <member name="P:Microsoft.Build.Construction.SolutionConfigurationInSolution.FullName">
37401             <summary>
37402             The full name of this configuration - e.g. "Debug|Any CPU"
37403             </summary>
37404         </member>
37405         <member name="M:Microsoft.Build.Construction.SolutionConfigurationInSolution.ComputeFullName(System.String,System.String)">
37406             <summary>
37407             Given a configuration name and a platform name, compute the full name 
37408             of this configuration
37409             </summary>
37410         </member>
37411         <member name="T:Microsoft.Build.Construction.ProjectConfigurationInSolution">
37412             <summary>
37413             This class represents an entry for a project configuration in a solution configuration.
37414             </summary>
37415         </member>
37416         <member name="F:Microsoft.Build.Construction.ProjectConfigurationInSolution._configurationName">
37417             <summary>
37418             The configuration part of this configuration - e.g. "Debug", "Release"
37419             </summary>
37420         </member>
37421         <member name="F:Microsoft.Build.Construction.ProjectConfigurationInSolution._platformName">
37422             <summary>
37423             The platform part of this configuration - e.g. "Any CPU", "Win32"
37424             </summary>
37425         </member>
37426         <member name="F:Microsoft.Build.Construction.ProjectConfigurationInSolution._fullName">
37427             <summary>
37428             The full name of this configuration - e.g. "Debug|Any CPU"
37429             </summary>
37430         </member>
37431         <member name="F:Microsoft.Build.Construction.ProjectConfigurationInSolution._includeInBuild">
37432             <summary>
37433             True if this project configuration should be built as part of its parent solution configuration
37434             </summary>
37435         </member>
37436         <member name="M:Microsoft.Build.Construction.ProjectConfigurationInSolution.#ctor(System.String,System.String,System.Boolean)">
37437             <summary>
37438             Constructor
37439             </summary>
37440         </member>
37441         <member name="P:Microsoft.Build.Construction.ProjectConfigurationInSolution.ConfigurationName">
37442             <summary>
37443             The configuration part of this configuration - e.g. "Debug", "Release"
37444             </summary>
37445         </member>
37446         <member name="P:Microsoft.Build.Construction.ProjectConfigurationInSolution.PlatformName">
37447             <summary>
37448             The platform part of this configuration - e.g. "Any CPU", "Win32"
37449             </summary>
37450         </member>
37451         <member name="P:Microsoft.Build.Construction.ProjectConfigurationInSolution.FullName">
37452             <summary>
37453             The full name of this configuration - e.g. "Debug|Any CPU"
37454             </summary>
37455         </member>
37456         <member name="P:Microsoft.Build.Construction.ProjectConfigurationInSolution.IncludeInBuild">
37457             <summary>
37458             True if this project configuration should be built as part of its parent solution configuration
37459             </summary>
37460         </member>
37461         <member name="M:Microsoft.Build.Construction.ProjectConfigurationInSolution.RemoveSpaceFromAnyCpuPlatform(System.String)">
37462             <summary>
37463             This is a hacky method to remove the space in the "Any CPU" platform in project configurations.
37464             The problem is that this platform is stored as "AnyCPU" in project files, but the project system
37465             reports it as "Any CPU" to the solution configuration manager. Because of that all solution configurations
37466             contain the version with a space in it, and when we try and give that name to actual projects, 
37467             they have no clue what we're talking about. We need to remove the space in project platforms so that
37468             the platform name matches the one used in projects.
37469             </summary>
37470         </member>
37471         <member name="T:Microsoft.Build.Construction.SolutionProjectType">
37472             <remarks>
37473             An enumeration defining the different types of projects we might find in an SLN.
37474             </remarks>
37475         </member>
37476         <member name="F:Microsoft.Build.Construction.SolutionProjectType.Unknown">
37477             <summary>
37478             Everything else besides the below well-known project types.
37479             </summary>
37480         </member>
37481         <member name="F:Microsoft.Build.Construction.SolutionProjectType.KnownToBeMSBuildFormat">
37482             <summary>
37483             C#, VB, and VJ# projects
37484             </summary>
37485         </member>
37486         <member name="F:Microsoft.Build.Construction.SolutionProjectType.SolutionFolder">
37487             <summary>
37488             Solution folders appear in the .sln file, but aren't buildable projects.
37489             </summary>
37490         </member>
37491         <member name="F:Microsoft.Build.Construction.SolutionProjectType.WebProject">
37492             <summary>
37493             ASP.NET projects
37494             </summary>
37495         </member>
37496         <member name="F:Microsoft.Build.Construction.SolutionProjectType.WebDeploymentProject">
37497             <summary>
37498             Web Deployment (.wdproj) projects
37499             </summary>
37500         </member>
37501         <member name="F:Microsoft.Build.Construction.SolutionProjectType.EtpSubProject">
37502             <summary>
37503             Project inside an Enterprise Template project
37504             </summary>
37505         </member>
37506         <member name="T:Microsoft.Build.Construction.ProjectInSolution">
37507             <remarks>
37508             This class represents a project (or SLN folder) that is read in from a solution file.
37509             </remarks>
37510         </member>
37511         <member name="F:Microsoft.Build.Construction.ProjectInSolution.s_charsToCleanse">
37512             <summary>
37513             Characters that need to be cleansed from a project name.
37514             </summary>
37515         </member>
37516         <member name="F:Microsoft.Build.Construction.ProjectInSolution.projectNamesToDisambiguate">
37517             <summary>
37518             Project names that need to be disambiguated when forming a target name
37519             </summary>
37520         </member>
37521         <member name="F:Microsoft.Build.Construction.ProjectInSolution.cleanCharacter">
37522             <summary>
37523             Character that will be used to replace 'unclean' ones.
37524             </summary>
37525         </member>
37526         <member name="F:Microsoft.Build.Construction.ProjectInSolution._projectConfigurations">
37527             <summary>
37528             The project configuration in given solution configuration
37529             K: full solution configuration name (cfg + platform)
37530             V: project configuration 
37531             </summary>
37532         </member>
37533         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ProjectName">
37534             <summary>
37535             This project's name
37536             </summary>
37537         </member>
37538         <member name="P:Microsoft.Build.Construction.ProjectInSolution.RelativePath">
37539             <summary>
37540             The path to this project file, relative to the solution location
37541             </summary>
37542         </member>
37543         <member name="P:Microsoft.Build.Construction.ProjectInSolution.AbsolutePath">
37544             <summary>
37545             Returns the absolute path for this project
37546             </summary>
37547         </member>
37548         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ProjectGuid">
37549             <summary>
37550             The unique guid associated with this project, in "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" form
37551             </summary>
37552         </member>
37553         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ParentProjectGuid">
37554             <summary>
37555             The guid, in "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" form, of this project's 
37556             parent project, if any. 
37557             </summary>
37558         </member>
37559         <member name="P:Microsoft.Build.Construction.ProjectInSolution.Dependencies">
37560             <summary>
37561             List of guids, in "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" form, mapping to projects 
37562             that this project has a build order dependency on, as defined in the solution file. 
37563             </summary>
37564         </member>
37565         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ProjectConfigurations">
37566             <summary>
37567             Configurations for this project, keyed off the configuration's full name, e.g. "Debug|x86"
37568             </summary>
37569         </member>
37570         <member name="P:Microsoft.Build.Construction.ProjectInSolution.Extension">
37571             <summary>
37572             Extension of the project file, if any
37573             </summary>
37574         </member>
37575         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ProjectType">
37576             <summary>
37577             This project's type.
37578             </summary>
37579         </member>
37580         <member name="P:Microsoft.Build.Construction.ProjectInSolution.ProjectReferences">
37581             <summary>
37582             Only applies to websites -- for other project types, references are 
37583             either specified as Dependencies above, or as ProjectReferences in the
37584             project file, which the solution doesn't have insight into. 
37585             </summary>
37586         </member>
37587         <member name="M:Microsoft.Build.Construction.ProjectInSolution.AddDependency(System.String)">
37588             <summary>
37589             Add the guid of a referenced project to our dependencies list.
37590             </summary>
37591         </member>
37592         <member name="M:Microsoft.Build.Construction.ProjectInSolution.SetProjectConfiguration(System.String,Microsoft.Build.Construction.ProjectConfigurationInSolution)">
37593             <summary>
37594             Set the requested project configuration. 
37595             </summary>
37596         </member>
37597         <member name="M:Microsoft.Build.Construction.ProjectInSolution.CanBeMSBuildProjectFile(System.String@)">
37598             <summary>
37599             Looks at the project file node and determines (roughly) if the project file is in the MSBuild format.
37600             The results are cached in case this method is called multiple times.
37601             </summary>
37602             <param name="errorMessage">Detailed error message in case we encounter critical problems reading the file</param>
37603             <returns></returns>
37604         </member>
37605         <member name="M:Microsoft.Build.Construction.ProjectInSolution.GetUniqueProjectName">
37606             <summary>
37607             Find the unique name for this project, e.g. SolutionFolder\SubSolutionFolder\ProjectName
37608             </summary>
37609         </member>
37610         <member name="M:Microsoft.Build.Construction.ProjectInSolution.UpdateUniqueProjectName(System.String)">
37611             <summary>
37612             Changes the unique name of the project.
37613             </summary>
37614         </member>
37615         <member name="M:Microsoft.Build.Construction.ProjectInSolution.CleanseProjectName(System.String)">
37616             <summary>
37617             Cleanse the project name, by replacing characters like '@', '$' with '_'
37618             </summary>
37619             <param name="projectName">The name to be cleansed</param>
37620             <returns>string</returns>
37621         </member>
37622         <member name="M:Microsoft.Build.Construction.ProjectInSolution.DisambiguateProjectTargetName(System.String)">
37623             <summary>
37624             If the unique project name provided collides with one of the standard Solution project
37625             entry point targets (Build, Rebuild, Clean, Publish), then disambiguate it by prepending the string "Solution:"
37626             </summary>
37627             <param name="uniqueProjectName">The unique name for the project</param>
37628             <returns>string</returns>
37629         </member>
37630         <member name="T:Microsoft.Build.Construction.SolutionFile">
37631             <remarks>
37632             This class contains the functionality to parse a solution file and return a corresponding
37633             MSBuild project file containing the projects and dependencies defined in the solution.
37634             </remarks>
37635         </member>
37636         <member name="M:Microsoft.Build.Construction.SolutionFile.#ctor">
37637             <summary>
37638             Constructor
37639             </summary>
37640         </member>
37641         <member name="P:Microsoft.Build.Construction.SolutionFile.SolutionParserWarnings">
37642             <summary>
37643             This property returns the list of warnings that were generated during solution parsing
37644             </summary>
37645         </member>
37646         <member name="P:Microsoft.Build.Construction.SolutionFile.SolutionParserComments">
37647             <summary>
37648             This property returns the list of comments that were generated during the solution parsing
37649             </summary>
37650         </member>
37651         <member name="P:Microsoft.Build.Construction.SolutionFile.SolutionParserErrorCodes">
37652             <summary>
37653             This property returns the list of error codes for warnings/errors that were generated during solution parsing. 
37654             </summary>
37655         </member>
37656         <member name="P:Microsoft.Build.Construction.SolutionFile.Version">
37657             <summary>
37658             Returns the actual major version of the parsed solution file
37659             </summary>
37660         </member>
37661         <member name="P:Microsoft.Build.Construction.SolutionFile.VisualStudioVersion">
37662             <summary>
37663             Returns Visual Studio major version
37664             </summary>
37665         </member>
37666         <member name="P:Microsoft.Build.Construction.SolutionFile.ContainsWebProjects">
37667             <summary>
37668             Returns true if the solution contains any web projects
37669             </summary>
37670         </member>
37671         <member name="P:Microsoft.Build.Construction.SolutionFile.ContainsWebDeploymentProjects">
37672             <summary>
37673             Returns true if the solution contains any .wdproj projects.  Used to determine
37674             whether we need to load up any projects to examine dependencies. 
37675             </summary>
37676         </member>
37677         <member name="P:Microsoft.Build.Construction.SolutionFile.ProjectsInOrder">
37678             <summary>
37679             All projects in this solution, in the order they appeared in the solution file
37680             </summary>
37681         </member>
37682         <member name="P:Microsoft.Build.Construction.SolutionFile.ProjectsByGuid">
37683             <summary>
37684             The collection of projects in this solution, accessible by their guids as a 
37685             string in "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" form
37686             </summary>
37687         </member>
37688         <member name="P:Microsoft.Build.Construction.SolutionFile.FullPath">
37689             <summary>
37690             This is the read/write accessor for the solution file which we will parse.  This
37691             must be set before calling any other methods on this class.
37692             </summary>
37693             <value></value>
37694         </member>
37695         <member name="P:Microsoft.Build.Construction.SolutionFile.SolutionReader">
37696             <summary>
37697             For unit-testing only.
37698             </summary>
37699             <value></value>
37700         </member>
37701         <member name="P:Microsoft.Build.Construction.SolutionFile.SolutionConfigurations">
37702             <summary>
37703             The list of all full solution configurations (configuration + platform) in this solution
37704             </summary>
37705         </member>
37706         <member name="M:Microsoft.Build.Construction.SolutionFile.Parse(System.String)">
37707             <summary>
37708             This method takes a path to a solution file, parses the projects and project dependencies
37709             in the solution file, and creates internal data structures representing the projects within
37710             the SLN.
37711             </summary>
37712         </member>
37713         <member name="M:Microsoft.Build.Construction.SolutionFile.IsBuildableProject(Microsoft.Build.Construction.ProjectInSolution)">
37714             <summary>
37715             Returns "true" if it's a project that's expected to be buildable, or false if it's 
37716             not (e.g. a solution folder) 
37717             </summary>
37718             <param name="project">The project in the solution</param>
37719             <returns>Whether the project is expected to be buildable</returns>
37720         </member>
37721         <member name="M:Microsoft.Build.Construction.SolutionFile.GetSolutionFileAndVisualStudioMajorVersions(System.String,System.Int32@,System.Int32@)">
37722             <summary>
37723             Given a solution file, parses the header and returns the major version numbers of the solution file
37724             and the visual studio. 
37725             Throws InvalidProjectFileException if the solution header is invalid, or if the version is less than 
37726             our minimum version. 
37727             </summary>
37728         </member>
37729         <member name="M:Microsoft.Build.Construction.SolutionFile.AddSolutionConfiguration(System.String,System.String)">
37730             <summary>
37731             Adds a configuration to this solution
37732             </summary>
37733         </member>
37734         <member name="M:Microsoft.Build.Construction.SolutionFile.ReadLine">
37735             <summary>
37736             Reads a line from the StreamReader, trimming leading and trailing whitespace.
37737             </summary>
37738             <returns></returns>
37739         </member>
37740         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseSolutionFileForConversion">
37741             <summary>
37742             This method takes a path to a solution file, parses the projects and project dependencies
37743             in the solution file, and creates internal data structures representing the projects within
37744             the SLN.  Used for conversion, which means it allows situations that we refuse to actually build. 
37745             </summary>
37746         </member>
37747         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseSolutionFile">
37748             <summary>
37749             This method takes a path to a solution file, parses the projects and project dependencies
37750             in the solution file, and creates internal data structures representing the projects within
37751             the SLN.
37752             </summary>
37753         </member>
37754         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseSolution">
37755             <summary>
37756             Parses the SLN file represented by the StreamReader in this.reader, and populates internal
37757             data structures based on the SLN file contents.
37758             </summary>
37759         </member>
37760         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseFileHeader">
37761             <summary>
37762             This method searches the first two lines of the solution file opened by the specified
37763             StreamReader for the solution file header.  An exception is thrown if it is not found.
37764             
37765             The solution file header looks like this:
37766             
37767                 Microsoft Visual Studio Solution File, Format Version 9.00
37768             
37769             </summary>
37770         </member>
37771         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseVisualStudioVersion(System.String)">
37772             <summary>
37773             This method parses the Visual Studio version in Dev 12 solution files
37774             The version line looks like this:
37775             
37776             VisualStudioVersion = 12.0.20311.0 VSPRO_PLATFORM
37777             
37778             If such a line is found, the version is stored in this.currentVisualStudioVersion
37779             </summary>
37780         </member>
37781         <member name="M:Microsoft.Build.Construction.SolutionFile.ValidateSolutionFileVersion(System.String)">
37782             <summary>
37783             This method extracts the whole part of the version number from the specified line
37784             containing the solution file format header, and throws an exception if the version number
37785             is outside of the valid range.
37786             
37787             The solution file header looks like this:
37788             
37789                 Microsoft Visual Studio Solution File, Format Version 9.00
37790             
37791             </summary>
37792             <param name="versionString"></param>
37793         </member>
37794         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseProject(System.String)">
37795              <summary>
37796              
37797              This method processes a "Project" section in the solution file opened by the specified
37798              StreamReader, and returns a populated ProjectInSolution instance, if successful.
37799              An exception is thrown if the solution file is invalid.
37800             
37801              The format of the parts of a Project section that we care about is as follows:
37802             
37803               Project("{Project type GUID}") = "Project name", "Relative path to project file", "{Project GUID}"
37804                   ProjectSection(ProjectDependencies) = postProject
37805                       {Parent project unique name} = {Parent project unique name}
37806                       ...
37807                   EndProjectSection
37808               EndProject
37809              
37810              </summary>
37811              <param name="firstLine"></param>
37812              <returns></returns>
37813         </member>
37814         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseEtpProject(Microsoft.Build.Construction.ProjectInSolution)">
37815             <summary>
37816             This method will parse a .etp project recursively and 
37817             add all the projects found to projects and projectsInOrder
37818             </summary>
37819             <param name="etpProj">ETP Project</param>
37820         </member>
37821         <member name="M:Microsoft.Build.Construction.SolutionFile.AddProjectToSolution(Microsoft.Build.Construction.ProjectInSolution)">
37822             <summary>
37823             Adds a given project to the project collections of this class
37824             </summary>
37825             <param name="proj">proj</param>
37826         </member>
37827         <member name="M:Microsoft.Build.Construction.SolutionFile.IsEtpProjectFile(System.String)">
37828             <summary>
37829             Checks whether a given project has a .etp extension.
37830             </summary>
37831             <param name="projectFile"></param>
37832         </member>
37833         <member name="M:Microsoft.Build.Construction.SolutionFile.ValidateProjectRelativePath(Microsoft.Build.Construction.ProjectInSolution)">
37834             <summary>
37835             Validate relative path of a project
37836             </summary>
37837             <param name="proj">proj</param>
37838         </member>
37839         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseAspNetCompilerProperty(Microsoft.Build.Construction.ProjectInSolution,System.String,System.String)">
37840             <summary>
37841             Takes a property name / value that comes from the SLN file for a Venus project, and
37842             stores it appropriately in our data structures.
37843             </summary>
37844             <param name="proj"></param>
37845             <param name="propertyName"></param>
37846             <param name="propertyValue"></param>
37847         </member>
37848         <member name="M:Microsoft.Build.Construction.SolutionFile.TrimQuotes(System.String)">
37849             <summary>
37850             Strips a single pair of leading/trailing double-quotes from a string.
37851             </summary>
37852             <param name="property"></param>
37853             <returns></returns>
37854         </member>
37855         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseFirstProjectLine(System.String,Microsoft.Build.Construction.ProjectInSolution)">
37856              <summary>
37857              Parse the first line of a Project section of a solution file. This line should look like:
37858             
37859               Project("{Project type GUID}") = "Project name", "Relative path to project file", "{Project GUID}"
37860              
37861              </summary>
37862              <param name="firstLine"></param>
37863              <param name="proj"></param>
37864         </member>
37865         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseNestedProjects">
37866             <summary>
37867             Read nested projects section.
37868             This is required to find a unique name for each project's target
37869             </summary>
37870         </member>
37871         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseSolutionConfigurations">
37872             <summary>
37873             Read solution configuration section. 
37874             </summary>
37875             <remarks>
37876             A sample section:
37877             
37878             GlobalSection(SolutionConfigurationPlatforms) = preSolution
37879                 Debug|Any CPU = Debug|Any CPU
37880                 Release|Any CPU = Release|Any CPU
37881             EndGlobalSection
37882             </remarks>
37883         </member>
37884         <member name="M:Microsoft.Build.Construction.SolutionFile.ParseProjectConfigurations">
37885             <summary>
37886             Read project configurations in solution configurations section.
37887             </summary>
37888             <remarks>
37889             A sample (incomplete) section:
37890             
37891             GlobalSection(ProjectConfigurationPlatforms) = postSolution
37892                 {6185CC21-BE89-448A-B3C0-D1C27112E595}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
37893                 {6185CC21-BE89-448A-B3C0-D1C27112E595}.Debug|Any CPU.Build.0 = Debug|Any CPU
37894                 {6185CC21-BE89-448A-B3C0-D1C27112E595}.Debug|Mixed Platforms.ActiveCfg = Release|Any CPU
37895                 {6185CC21-BE89-448A-B3C0-D1C27112E595}.Debug|Mixed Platforms.Build.0 = Release|Any CPU
37896                 {6185CC21-BE89-448A-B3C0-D1C27112E595}.Debug|Win32.ActiveCfg = Debug|Any CPU
37897                 {A6F99D27-47B9-4EA4-BFC9-25157CBDC281}.Release|Any CPU.ActiveCfg = Release|Win32
37898                 {A6F99D27-47B9-4EA4-BFC9-25157CBDC281}.Release|Mixed Platforms.ActiveCfg = Release|Win32
37899                 {A6F99D27-47B9-4EA4-BFC9-25157CBDC281}.Release|Mixed Platforms.Build.0 = Release|Win32
37900                 {A6F99D27-47B9-4EA4-BFC9-25157CBDC281}.Release|Win32.ActiveCfg = Release|Win32
37901                 {A6F99D27-47B9-4EA4-BFC9-25157CBDC281}.Release|Win32.Build.0 = Release|Win32
37902             EndGlobalSection
37903             </remarks>
37904             <returns>An unprocessed hashtable of entries in this section</returns>
37905         </member>
37906         <member name="M:Microsoft.Build.Construction.SolutionFile.ProcessProjectConfigurationSection(System.Collections.Hashtable)">
37907             <summary>
37908             Read the project configuration information for every project in the solution, using pre-cached 
37909             solution section data. 
37910             </summary>
37911             <param name="rawProjectConfigurationsEntries">Cached data from the project configuration section</param>
37912         </member>
37913         <member name="M:Microsoft.Build.Construction.SolutionFile.GetDefaultConfigurationName">
37914             <summary>
37915             Gets the default configuration name for this solution. Usually it's Debug, unless it's not present
37916             in which case it's the first configuration name we find.
37917             </summary>
37918         </member>
37919         <member name="M:Microsoft.Build.Construction.SolutionFile.GetDefaultPlatformName">
37920             <summary>
37921             Gets the default platform name for this solution. Usually it's Mixed Platforms, unless it's not present
37922             in which case it's the first platform name we find.
37923             </summary>
37924         </member>
37925         <member name="M:Microsoft.Build.Construction.SolutionFile.GetProjectUniqueNameByGuid(System.String)">
37926             <summary>
37927             This method takes a string representing one of the project's unique names (guid), and
37928             returns the corresponding "friendly" name for this project.
37929             </summary>
37930             <param name="projectGuid"></param>
37931             <returns></returns>
37932         </member>
37933         <member name="M:Microsoft.Build.Construction.SolutionFile.GetProjectRelativePathByGuid(System.String)">
37934             <summary>
37935             This method takes a string representing one of the project's unique names (guid), and
37936             returns the corresponding relative path to this project.
37937             </summary>
37938             <param name="projectGuid"></param>
37939             <returns></returns>
37940         </member>
37941         <member name="T:Microsoft.Build.Construction.ElementLocation">
37942             <summary>
37943             The location of an XML node in a file.
37944             Any editing of the project XML through the MSBuild API's will invalidate locations in that XML until the XML is reloaded.
37945             </summary>
37946             <remarks>
37947             This object is IMMUTABLE, so that it can be passed around arbitrarily.
37948             DO NOT make these objects any larger. There are huge numbers of them and they are transmitted between nodes.
37949             </remarks>
37950         </member>
37951         <member name="F:Microsoft.Build.Construction.ElementLocation.s_emptyElementLocation">
37952             <summary>
37953             The singleton empty element location.
37954             </summary>
37955         </member>
37956         <member name="P:Microsoft.Build.Construction.ElementLocation.File">
37957             <summary>
37958             The file from which this particular element originated.  It may
37959             differ from the ProjectFile if, for instance, it was part of
37960             an import or originated in a targets file.
37961             If not known, returns empty string.
37962             </summary>
37963         </member>
37964         <member name="P:Microsoft.Build.Construction.ElementLocation.Line">
37965             <summary>
37966             The line number where this element exists in its file.
37967             The first line is numbered 1.
37968             Zero indicates "unknown location".
37969             </summary>
37970         </member>
37971         <member name="P:Microsoft.Build.Construction.ElementLocation.Column">
37972             <summary>
37973             The column number where this element exists in its file.
37974             The first column is numbered 1.
37975             Zero indicates "unknown location".
37976             </summary>
37977         </member>
37978         <member name="P:Microsoft.Build.Construction.ElementLocation.LocationString">
37979             <summary>
37980             The location in a form suitable for replacement
37981             into a message.
37982             Example: "c:\foo\bar.csproj (12,34)"
37983             Calling this creates and formats a new string.
37984             PREFER TO PUT THE LOCATION INFORMATION AT THE START OF THE MESSAGE INSTEAD.
37985             Only in rare cases should the location go within the message itself.
37986             </summary>
37987         </member>
37988         <member name="P:Microsoft.Build.Construction.ElementLocation.EmptyLocation">
37989             <summary>
37990             Gets the empty element location.
37991             This is not to be used when something is "missing": that should have a null location.
37992             It is to be used for the project location when the project has not been given a name.
37993             In that case, it exists, but can't have a specific location.
37994             </summary>
37995         </member>
37996         <member name="M:Microsoft.Build.Construction.ElementLocation.GetHashCode">
37997             <summary>
37998             Get reasonable hash code.
37999             </summary>
38000         </member>
38001         <member name="M:Microsoft.Build.Construction.ElementLocation.Equals(System.Object)">
38002             <summary>
38003             Override Equals so that identical
38004             fields imply equal objects.
38005             </summary>
38006         </member>
38007         <member name="M:Microsoft.Build.Construction.ElementLocation.ToString">
38008             <summary>
38009             Location of element.
38010             </summary>
38011         </member>
38012         <member name="M:Microsoft.Build.Construction.ElementLocation.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
38013             <summary>
38014             Writes the packet to the serializer.
38015             Always send as ints, even if ushorts are being used: otherwise it'd
38016             need a byte to discriminate and the savings would be microscopic.
38017             </summary>
38018         </member>
38019         <member name="M:Microsoft.Build.Construction.ElementLocation.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
38020             <summary>
38021             Factory for serialization.
38022             Custom factory is needed because this class is abstract and uses a factory pattern.
38023             </summary>
38024         </member>
38025         <member name="M:Microsoft.Build.Construction.ElementLocation.Create(System.String)">
38026             <summary>
38027             Constructor for when we only know the file and nothing else.
38028             This is the case when we are creating a new item, for example, and it has
38029             not been evaluated from some XML.
38030             </summary>
38031         </member>
38032         <member name="M:Microsoft.Build.Construction.ElementLocation.Create(System.String,System.Int32,System.Int32)">
38033             <summary>
38034             Constructor for the case where we have most or all information.
38035             Numerical values must be 1-based, non-negative; 0 indicates unknown
38036             File may be null, indicating the file was not loaded from disk.
38037             </summary>
38038             <remarks>
38039             In AG there are 600 locations that have a file but zero line and column.
38040             In theory yet another derived class could be made for these to save 4 bytes each.
38041             </remarks>
38042         </member>
38043         <member name="M:Microsoft.Build.Construction.ElementLocation.GetLocationString(System.String,System.Int32,System.Int32)">
38044             <summary>
38045             The location in a form suitable for replacement
38046             into a message.
38047             Example: "c:\foo\bar.csproj (12,34)"
38048             Calling this creates and formats a new string.
38049             PREFER TO PUT THE LOCATION INFORMATION AT THE START OF THE MESSAGE INSTEAD.
38050             Only in rare cases should the location go within the message itself.
38051             </summary>
38052         </member>
38053         <member name="T:Microsoft.Build.Construction.ElementLocation.RegularElementLocation">
38054             <summary>
38055             Rarer variation for when the line and column won't each fit in a ushort.
38056             </summary>
38057         </member>
38058         <member name="F:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.file">
38059             <summary>
38060             The source file.
38061             </summary>
38062         </member>
38063         <member name="F:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.line">
38064             <summary>
38065             The source line.
38066             </summary>
38067         </member>
38068         <member name="F:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.column">
38069             <summary>
38070             The source column.
38071             </summary>
38072         </member>
38073         <member name="M:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.#ctor(System.String,System.Int32,System.Int32)">
38074             <summary>
38075             Constructor for the case where we have most or all information.
38076             Numerical values must be 1-based, non-negative; 0 indicates unknown
38077             File may be null, indicating the file was not loaded from disk.
38078             </summary>
38079         </member>
38080         <member name="P:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.File">
38081             <summary>
38082             The file from which this particular element originated.  It may
38083             differ from the ProjectFile if, for instance, it was part of
38084             an import or originated in a targets file.
38085             If not known, returns empty string.
38086             </summary>
38087         </member>
38088         <member name="P:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.Line">
38089             <summary>
38090             The line number where this element exists in its file.
38091             The first line is numbered 1.
38092             Zero indicates "unknown location".
38093             </summary>
38094         </member>
38095         <member name="P:Microsoft.Build.Construction.ElementLocation.RegularElementLocation.Column">
38096             <summary>
38097             The column number where this element exists in its file.
38098             The first column is numbered 1.
38099             Zero indicates "unknown location".
38100             </summary>
38101         </member>
38102         <member name="T:Microsoft.Build.Construction.ElementLocation.SmallElementLocation">
38103             <summary>
38104             For when the line and column each fit in a short - under 65536
38105             (almost always will: microsoft.common.targets is less than 5000 lines long)
38106             When loading Australian Government, for example, there are over 31,000 ElementLocation
38107             objects so this saves 4 bytes each = 123KB 
38108             
38109             A "very small" variation that used two bytes (or halves of a short) would fit about half of them
38110             and save 4 more bytes each, but the CLR packs each field to 4 bytes, so it isn't actually any smaller.
38111             </summary>
38112         </member>
38113         <member name="F:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.file">
38114             <summary>
38115             The source file.
38116             </summary>
38117         </member>
38118         <member name="F:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.line">
38119             <summary>
38120             The source line.
38121             </summary>
38122         </member>
38123         <member name="F:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.column">
38124             <summary>
38125             The source column.
38126             </summary>
38127         </member>
38128         <member name="M:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.#ctor(System.String,System.Int32,System.Int32)">
38129             <summary>
38130             Constructor for the case where we have most or all information.
38131             Numerical values must be 1-based, non-negative; 0 indicates unknown
38132             File may be null or empty, indicating the file was not loaded from disk.
38133             </summary>
38134         </member>
38135         <member name="P:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.File">
38136             <summary>
38137             The file from which this particular element originated.  It may
38138             differ from the ProjectFile if, for instance, it was part of
38139             an import or originated in a targets file.
38140             If not known, returns empty string.
38141             </summary>
38142         </member>
38143         <member name="P:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.Line">
38144             <summary>
38145             The line number where this element exists in its file.
38146             The first line is numbered 1.
38147             Zero indicates "unknown location".
38148             </summary>
38149         </member>
38150         <member name="P:Microsoft.Build.Construction.ElementLocation.SmallElementLocation.Column">
38151             <summary>
38152             The column number where this element exists in its file.
38153             The first column is numbered 1.
38154             Zero indicates "unknown location".
38155             </summary>
38156         </member>
38157         <member name="T:Microsoft.Build.Construction.RegistryLocation">
38158             <summary>
38159             The location something in the registry
38160             </summary>
38161             <remarks>
38162             This object is IMMUTABLE, so that it can be passed around arbitrarily.
38163             This is not public because the current implementation only provides correct data for unedited projects.
38164             DO NOT make it public without considering a solution to this problem.
38165             </remarks>
38166         </member>
38167         <member name="F:Microsoft.Build.Construction.RegistryLocation.registryPath">
38168             <summary>
38169             The location.
38170             </summary>
38171         </member>
38172         <member name="M:Microsoft.Build.Construction.RegistryLocation.#ctor(System.String)">
38173             <summary>
38174             Constructor taking the registry location.
38175             </summary>
38176         </member>
38177         <member name="M:Microsoft.Build.Construction.RegistryLocation.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
38178             <summary>
38179             Private constructor for deserialization
38180             </summary>
38181         </member>
38182         <member name="P:Microsoft.Build.Construction.RegistryLocation.File">
38183             <summary>
38184             Not relevant, returns empty string.
38185             </summary>
38186         </member>
38187         <member name="P:Microsoft.Build.Construction.RegistryLocation.Line">
38188             <summary>
38189             Not relevant, returns 0.
38190             </summary>
38191         </member>
38192         <member name="P:Microsoft.Build.Construction.RegistryLocation.Column">
38193             <summary>
38194             Not relevant, returns 0.
38195             </summary>
38196         </member>
38197         <member name="P:Microsoft.Build.Construction.RegistryLocation.LocationString">
38198             <summary>
38199             The location in a form suitable for replacement
38200             into a message.
38201             </summary>
38202         </member>
38203         <member name="M:Microsoft.Build.Construction.RegistryLocation.Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
38204             <summary>
38205             Reads or writes the packet to the serializer.
38206             </summary>
38207         </member>
38208         <member name="M:Microsoft.Build.Construction.RegistryLocation.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
38209             <summary>
38210             Factory for serialization.
38211             </summary>
38212         </member>
38213         <member name="T:Microsoft.Build.Construction.XmlAttributeWithLocation">
38214             <summary>
38215             Derivation of XmlAttribute to implement IXmlLineInfo
38216             </summary>
38217         </member>
38218         <member name="F:Microsoft.Build.Construction.XmlAttributeWithLocation._elementLocation">
38219             <summary>
38220             Line, column, file information
38221             </summary>
38222         </member>
38223         <member name="M:Microsoft.Build.Construction.XmlAttributeWithLocation.#ctor(System.String,System.String,System.String,System.Xml.XmlDocument)">
38224             <summary>
38225             Constructor without location information
38226             </summary>
38227         </member>
38228         <member name="M:Microsoft.Build.Construction.XmlAttributeWithLocation.#ctor(System.String,System.String,System.String,System.Xml.XmlDocument,System.Int32,System.Int32)">
38229             <summary>
38230             Constructor with location information
38231             </summary>
38232         </member>
38233         <member name="P:Microsoft.Build.Construction.XmlAttributeWithLocation.LineNumber">
38234             <summary>
38235             Returns the line number if available, else 0.
38236             IXmlLineInfo member.
38237             </summary>
38238         </member>
38239         <member name="P:Microsoft.Build.Construction.XmlAttributeWithLocation.LinePosition">
38240             <summary>
38241             Returns the column number if available, else 0.
38242             IXmlLineInfo member.
38243             </summary>
38244         </member>
38245         <member name="P:Microsoft.Build.Construction.XmlAttributeWithLocation.Location">
38246             <summary>
38247             Provides an ElementLocation for this attribute.
38248             </summary>
38249             <remarks>
38250             Should have at least the file name if the containing project has been given a file name,
38251             even if it wasn't loaded from disk, or has been edited since. That's because we set that
38252             path on our XmlDocumentWithLocation wrapper class.
38253             </remarks>
38254         </member>
38255         <member name="M:Microsoft.Build.Construction.XmlAttributeWithLocation.HasLineInfo">
38256             <summary>
38257             Whether location is available.
38258             IXmlLineInfo member.
38259             </summary>
38260         </member>
38261         <member name="T:Microsoft.Build.Construction.XmlDocumentWithLocation">
38262             <summary>
38263             Improvement to XmlDocument that during load attaches location information to all elements and attributes.
38264             We don't need a real XmlDocument, as we are careful not to expose Xml types in our public API.
38265             </summary>
38266             <remarks>
38267             XmlDocument has many members, and this can't substitute for all of them. Location finding probably won't work if
38268             certain XmlDocument members are used. So for extra robustness, this could wrap an XmlDocument instead,
38269             and expose the small number of members that the MSBuild code actually uses. 
38270             </remarks>
38271         </member>
38272         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.s_globalStringCache">
38273             <summary>
38274             Used to cache strings used in attribute values and comments.
38275             </summary>
38276         </member>
38277         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.s_nameTable">
38278             <summary>
38279             Used to cache tag names in loaded files.
38280             </summary>
38281         </member>
38282         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.s_readOnlyFlags">
38283             <summary>
38284             Whether we can selectively load as read-only (eg just when in program files directory)
38285             </summary>
38286         </member>
38287         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation._reader">
38288             <summary>
38289             Reader we've hooked
38290             </summary>
38291         </member>
38292         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation._fullPath">
38293             <summary>
38294             Path to the file loaded, if any, otherwise null.
38295             Easier to intercept and store than to derive it from the XmlDocument.BaseUri property.
38296             </summary>
38297         </member>
38298         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation._stringCache">
38299             <summary>
38300             Local cache of strings for attribute values and comments. Used for testing.
38301             </summary>
38302         </member>
38303         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation._loadAsReadOnly">
38304             <summary>
38305             Whether we can expect to never save this file.
38306             In such a case, we can discard as much as possible on load, like comments and whitespace.
38307             </summary>
38308         </member>
38309         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.#ctor">
38310             <summary>
38311             Constructor
38312             </summary>
38313         </member>
38314         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.#ctor(System.Boolean)">
38315             <summary>
38316             Constructor
38317             </summary>
38318         </member>
38319         <member name="T:Microsoft.Build.Construction.XmlDocumentWithLocation.ReadOnlyLoadFlags">
38320             <summary>
38321             Whether to load files read only
38322             </summary>
38323         </member>
38324         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.ReadOnlyLoadFlags.Undefined">
38325             <summary>
38326             Not determined
38327             </summary>
38328         </member>
38329         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.ReadOnlyLoadFlags.LoadAllWriteable">
38330             <summary>
38331             Always load writeable
38332             </summary>
38333         </member>
38334         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.ReadOnlyLoadFlags.LoadAllReadOnly">
38335             <summary>
38336             Always load read-only, to save memory
38337             </summary>
38338         </member>
38339         <member name="F:Microsoft.Build.Construction.XmlDocumentWithLocation.ReadOnlyLoadFlags.LoadReadOnlyIfAppropriate">
38340             <summary>
38341             Load read only selectively, Eg., just when file names begin with "Microsoft."
38342             </summary>
38343         </member>
38344         <member name="P:Microsoft.Build.Construction.XmlDocumentWithLocation.FullPath">
38345             <summary>
38346             Path to the file loaded if any, otherwise null.
38347             If the XmlDocument hasn't been loaded from a file, we wouldn't have a full path.
38348             However the project might actually have been given a path - it might even have been saved.
38349             In order to allow created elements to be able to provide a location with at least
38350             that path, the setter here should be called when the project is given a path.
38351             It may be set to null.
38352             </summary>
38353         </member>
38354         <member name="P:Microsoft.Build.Construction.XmlDocumentWithLocation.StringCache">
38355             <summary>
38356             Sets or gets the string cache used by this XmlDocument.
38357             </summary>
38358             <remarks>
38359             When a particular instance has not been set will use the global string cache. The ability
38360             to use a particular instance is useful for tests.
38361             </remarks>
38362         </member>
38363         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Load(System.Xml.XmlReader)">
38364             <summary>
38365             Loads from an XmlReader, intercepting the reader.
38366             </summary>
38367             <remarks>
38368             This method is called within XmlDocument by all other
38369             Load(..) overloads, and by LoadXml(..), so however the client loads XML,
38370             we will grab the reader.
38371             </remarks>
38372         </member>
38373         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Load(System.String)">
38374             <summary>
38375             Grab the path to the file, for use in our location information.
38376             </summary>
38377         </member>
38378         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateElement(System.String,System.String,System.String)">
38379             <summary>
38380             Called during load, to add an element.
38381             </summary>
38382             <remarks>
38383             We create our own kind of element, that we can give location information to.
38384             </remarks>
38385         </member>
38386         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateAttribute(System.String,System.String,System.String)">
38387             <summary>
38388             Called during load, to add an attribute.
38389             </summary>
38390             <remarks>
38391             We create our own kind of attribute, that we can give location information to.
38392             </remarks>
38393         </member>
38394         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateWhitespace(System.String)">
38395             <summary>
38396             Create a whitespace node.
38397             Overridden to cache attribute values.
38398             </summary>
38399         </member>
38400         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateSignificantWhitespace(System.String)">
38401             <summary>
38402             Create a whitespace node. The definition of "significant" whitespace is obscure
38403             and does not include whitespace in text values in element content, which we always want to keep.
38404             Overridden to cache attribute values.
38405             </summary>
38406         </member>
38407         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateTextNode(System.String)">
38408             <summary>
38409             Create a text node.
38410             Overridden to cache attribute values.
38411             </summary>
38412         </member>
38413         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.CreateComment(System.String)">
38414             <summary>
38415             Create a comment node.
38416             Overridden in order to cache comment strings.
38417             </summary>
38418         </member>
38419         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Save(System.IO.Stream)">
38420             <summary>
38421             Override Save to verify file was not loaded as readonly
38422             </summary>
38423         </member>
38424         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Save(System.String)">
38425             <summary>
38426             Override Save to verify file was not loaded as readonly
38427             </summary>
38428         </member>
38429         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Save(System.IO.TextWriter)">
38430             <summary>
38431             Override Save to verify file was not loaded as readonly
38432             </summary>
38433         </member>
38434         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.Save(System.Xml.XmlWriter)">
38435             <summary>
38436             Override Save to verify file was not loaded as readonly
38437             </summary>
38438         </member>
38439         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.ClearReadOnlyFlags_UnitTestsOnly">
38440             <summary>
38441             Reset state for unit tests that want to set the env var
38442             </summary>
38443         </member>
38444         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.ClearAnyCachedStrings">
38445             <summary>
38446             Called when the XmlDocument is unloaded to remove this XML's
38447             contribution to the string interning cache.
38448             Does NOT zombie the ProjectRootElement or anything else.
38449             </summary>
38450         </member>
38451         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.DetermineWhetherToLoadReadOnly(System.String)">
38452             <summary>
38453             Determine whether we should load this file read only.
38454             We decide yes if it is in program files or the OS directory, and the file name starts with "microsoft", else no.
38455             We are very selective because we don't want to load files read only that the host might want to save, nor
38456             any files in which comments within property/metadata values might be significant - MSBuild does not discard those, normally.
38457             </summary>
38458         </member>
38459         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.DetermineWhetherToLoadReadOnlyIfPossible">
38460             <summary>
38461             Determine whether we would ever load read only
38462             </summary>
38463         </member>
38464         <member name="M:Microsoft.Build.Construction.XmlDocumentWithLocation.VerifyThrowNotReadOnly">
38465             <summary>
38466             Throw if this was loaded read only
38467             </summary>
38468         </member>
38469         <member name="T:Microsoft.Build.Construction.XmlElementWithLocation">
38470             <summary>
38471             Derivation of XmlElement to implement IXmlLineInfo
38472             </summary>
38473             <remarks>
38474             It would be nice to add some helper overloads of base class members that
38475             downcast their return values to XmlElement/AttributeWithLocation. However
38476             C# doesn't currently allow covariance in method overloading, only on delegates.
38477             The caller must bravely downcast.
38478             </remarks>
38479         </member>
38480         <member name="F:Microsoft.Build.Construction.XmlElementWithLocation._elementLocation">
38481             <summary>
38482             Line, column, file information
38483             </summary>
38484         </member>
38485         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.XmlDocumentWithLocation)">
38486             <summary>
38487             Constructor without location information
38488             </summary>
38489         </member>
38490         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.#ctor(System.String,System.String,System.String,Microsoft.Build.Construction.XmlDocumentWithLocation,System.Int32,System.Int32)">
38491             <summary>
38492             Constructor with location information
38493             </summary>
38494         </member>
38495         <member name="P:Microsoft.Build.Construction.XmlElementWithLocation.LineNumber">
38496             <summary>
38497             Returns the line number if available, else 0.
38498             IXmlLineInfo member.
38499             </summary>
38500         </member>
38501         <member name="P:Microsoft.Build.Construction.XmlElementWithLocation.LinePosition">
38502             <summary>
38503             Returns the column number if available, else 0.
38504             IXmlLineInfo member.
38505             </summary>
38506         </member>
38507         <member name="P:Microsoft.Build.Construction.XmlElementWithLocation.Location">
38508             <summary>
38509             Provides an ElementLocation for this element, using the path to the file containing
38510             this element as the project file entry.
38511             Element location may be incorrect, if it was not loaded from disk.
38512             Does not return null.
38513             </summary>
38514             <remarks>
38515             Should have at least the file name if the containing project has been given a file name,
38516             even if it wasn't loaded from disk, or has been edited since. That's because we set that
38517             path on our XmlDocumentWithLocation wrapper class.
38518             </remarks>
38519         </member>
38520         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.HasLineInfo">
38521             <summary>
38522             Whether location is available.
38523             IXmlLineInfo member.
38524             </summary>
38525         </member>
38526         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.GetAttributeWithLocation(System.String)">
38527             <summary>
38528             Returns the XmlAttribute with the specified name or null if a matching attribute was not found.
38529             </summary>
38530         </member>
38531         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.RemoveChild(System.Xml.XmlNode)">
38532             <summary>
38533             Overridden to convert the display of the element from open form (separate open and closed tags) to closed form 
38534             (single closed tag) if the last child is being removed. This is simply for tidiness of the project file.
38535             For example, removing the only piece of metadata from an item will leave behind one tag instead of two.
38536             </summary>
38537         </member>
38538         <member name="M:Microsoft.Build.Construction.XmlElementWithLocation.GetAttributeLocation(System.String)">
38539             <summary>
38540             Gets the location of any attribute on this element with the specified name.
38541             If there is no such attribute, returns null.
38542             </summary>
38543         </member>
38544         <member name="T:Microsoft.Build.Construction.XmlNameTableThreadSafe">
38545             <summary>
38546             XmlNameTable that is thread safe for concurrent users.
38547             </summary>
38548             <remarks>
38549             Fortunately the standard implementation has only four accessible members
38550             and all of them are virtual so we can easily add locks.
38551             </remarks>
38552         </member>
38553         <member name="F:Microsoft.Build.Construction.XmlNameTableThreadSafe._locker">
38554             <summary>
38555             Synchronization object.
38556             </summary>
38557         </member>
38558         <member name="M:Microsoft.Build.Construction.XmlNameTableThreadSafe.Add(System.String)">
38559             <summary>
38560             Add a string to the table.
38561             </summary>
38562         </member>
38563         <member name="M:Microsoft.Build.Construction.XmlNameTableThreadSafe.Add(System.Char[],System.Int32,System.Int32)">
38564             <summary>
38565             Add a string to the table, passed in as
38566             an extent in a char array.
38567             </summary>
38568         </member>
38569         <member name="M:Microsoft.Build.Construction.XmlNameTableThreadSafe.Get(System.String)">
38570             <summary>
38571             Get a string from the table.
38572             </summary>
38573         </member>
38574         <member name="M:Microsoft.Build.Construction.XmlNameTableThreadSafe.Get(System.Char[],System.Int32,System.Int32)">
38575             <summary>
38576             Get a string from the table, passed in as
38577             an extent in a char array.
38578             </summary>
38579         </member>
38580         <member name="T:Microsoft.Build.Construction.ProjectParser">
38581             <summary>
38582             Parses a project from raw XML into strongly typed objects
38583             </summary>
38584         </member>
38585         <member name="F:Microsoft.Build.Construction.ProjectParser.MaximumChooseNesting">
38586             <summary>
38587             Maximum nesting level of Choose elements. No reasonable project needs more than this
38588             </summary>
38589         </member>
38590         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnlyConditionAndLabel">
38591             <summary>
38592             Valid attribute list when only Condition and Label are valid
38593             </summary>
38594         </member>
38595         <member name="F:Microsoft.Build.Construction.ProjectParser.s_knownAttributesOnItem">
38596             <summary>
38597             Valid attribute list for item
38598             </summary>
38599         </member>
38600         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnImport">
38601             <summary>
38602             Valid attributes on import element
38603             </summary>
38604         </member>
38605         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnUsingTask">
38606             <summary>
38607             Valid attributes on usingtask element
38608             </summary>
38609         </member>
38610         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnTarget">
38611             <summary>
38612             Valid attributes on target element
38613             </summary>
38614         </member>
38615         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnOnError">
38616             <summary>
38617             Valid attributes on on error element
38618             </summary>
38619         </member>
38620         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnOutput">
38621             <summary>
38622             Valid attributes on output element
38623             </summary>
38624         </member>
38625         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnUsingTaskParameter">
38626             <summary>
38627             Valid attributes on UsingTaskParameter element
38628             </summary>
38629         </member>
38630         <member name="F:Microsoft.Build.Construction.ProjectParser.s_validAttributesOnUsingTaskBody">
38631             <summary>
38632             Valid attributes on UsingTaskTask element
38633             </summary>
38634         </member>
38635         <member name="F:Microsoft.Build.Construction.ProjectParser._project">
38636             <summary>
38637             The ProjectRootElement to parse into
38638             </summary>
38639         </member>
38640         <member name="F:Microsoft.Build.Construction.ProjectParser._document">
38641             <summary>
38642             The document to parse from
38643             </summary>
38644         </member>
38645         <member name="F:Microsoft.Build.Construction.ProjectParser._seenProjectExtensions">
38646             <summary>
38647             Whether a ProjectExtensions node has been encountered already.
38648             It's not supposed to appear more than once.
38649             </summary>
38650         </member>
38651         <member name="M:Microsoft.Build.Construction.ProjectParser.#ctor(Microsoft.Build.Construction.XmlDocumentWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
38652             <summary>
38653             Private constructor to give static semantics
38654             </summary>
38655         </member>
38656         <member name="M:Microsoft.Build.Construction.ProjectParser.Parse(Microsoft.Build.Construction.XmlDocumentWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
38657             <summary>
38658             Parses the document into the provided ProjectRootElement.
38659             Throws InvalidProjectFileExceptions for syntax errors.
38660             </summary>
38661             <remarks>
38662             The code markers here used to be around the Project class constructor in the old code.
38663             In the new code, that's not very interesting; we are repurposing to wrap parsing the XML.
38664             </remarks>
38665         </member>
38666         <member name="M:Microsoft.Build.Construction.ProjectParser.Parse">
38667             <summary>
38668             Parses the project into the ProjectRootElement
38669             </summary>
38670         </member>
38671         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38672             <summary>
38673             Parse a ProjectRootElement from an element
38674             </summary>
38675         </member>
38676         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectRootElementChildren(Microsoft.Build.Construction.XmlElementWithLocation)">
38677             <summary>
38678             Parse the child of a ProjectRootElement
38679             </summary>
38680         </member>
38681         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectPropertyGroupElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer)">
38682             <summary>
38683             Parse a ProjectPropertyGroupElement from the element
38684             </summary>
38685         </member>
38686         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectPropertyElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectPropertyGroupElement)">
38687             <summary>
38688             Parse a ProjectPropertyElement from the element
38689             </summary>
38690         </member>
38691         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectItemGroupElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer)">
38692             <summary>
38693             Parse a ProjectItemGroupElement
38694             </summary>
38695         </member>
38696         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectItemElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectItemGroupElement)">
38697             <summary>
38698             Parse a ProjectItemElement
38699             </summary>
38700         </member>
38701         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectMetadataElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer)">
38702             <summary>
38703             Parse a ProjectMetadataElement 
38704             </summary>
38705         </member>
38706         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectImportGroupElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectRootElement)">
38707             <summary>
38708             Parse a ProjectImportGroupElement
38709             </summary>
38710             <param name="element">The XML element to parse</param>
38711             <param name="parent">The parent <see cref="T:Microsoft.Build.Construction.ProjectRootElement"/>.</param>
38712             <returns>A ProjectImportGroupElement derived from the XML element passed in</returns>
38713         </member>
38714         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectImportElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer)">
38715             <summary>
38716             Parse a ProjectImportElement that is contained in an ImportGroup
38717             </summary>
38718         </member>
38719         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseUsingTaskParameterGroupElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer)">
38720             <summary>
38721             Parse a UsingTaskParameterGroupElement from the element
38722             </summary>
38723         </member>
38724         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseUsingTaskBodyElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectUsingTaskElement)">
38725             <summary>
38726             Parse a UsingTaskBodyElement from the element
38727             </summary>
38728         </member>
38729         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseUsingTaskParameterElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.UsingTaskParameterGroupElement)">
38730             <summary>
38731             Parse a UsingTaskParameterElement from the element
38732             </summary>
38733         </member>
38734         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectUsingTaskElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38735             <summary>
38736             Parse a ProjectUsingTaskElement
38737             </summary>
38738         </member>
38739         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectTargetElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38740             <summary>
38741             Parse a ProjectTargetElement
38742             </summary>
38743         </member>
38744         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectTaskElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectTargetElement)">
38745             <summary>
38746             Parse a ProjectTaskElement
38747             </summary>
38748         </member>
38749         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectOutputElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectTaskElement)">
38750             <summary>
38751             Parse a ProjectOutputElement
38752             </summary>
38753         </member>
38754         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectOnErrorElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectTargetElement)">
38755             <summary>
38756             Parse a ProjectOnErrorElement
38757             </summary>
38758         </member>
38759         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectItemDefinitionGroupElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38760             <summary>
38761             Parse a ProjectItemDefinitionGroupElement
38762             </summary>
38763         </member>
38764         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectItemDefinitionXml(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectItemDefinitionGroupElement)">
38765             <summary>
38766             Pasre a ProjectItemDefinitionElement
38767             </summary>
38768         </member>
38769         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectChooseElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,System.Int32)">
38770             <summary>
38771             Parse a ProjectChooseElement
38772             </summary>
38773         </member>
38774         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectWhenElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectChooseElement,System.Int32)">
38775             <summary>
38776             Parse a ProjectWhenElement
38777             </summary>
38778         </member>
38779         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectOtherwiseElement(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectChooseElement,System.Int32)">
38780             <summary>
38781             Parse a ProjectOtherwiseElement
38782             </summary>
38783         </member>
38784         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseWhenOtherwiseChildren(Microsoft.Build.Construction.XmlElementWithLocation,Microsoft.Build.Construction.ProjectElementContainer,System.Int32)">
38785             <summary>
38786             Parse the children of a When or Otherwise
38787             </summary>
38788         </member>
38789         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectExtensionsElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38790             <summary>
38791             Parse a ProjectExtensionsElement
38792             </summary>
38793         </member>
38794         <member name="M:Microsoft.Build.Construction.ProjectParser.ParseProjectSdkElement(Microsoft.Build.Construction.XmlElementWithLocation)">
38795             <summary>
38796             Parse a ProjectExtensionsElement
38797             </summary>
38798         </member>
38799         <member name="T:Microsoft.Build.Construction.ProjectStringCache">
38800             <summary>
38801             This class will cache string values for loaded Xml files.
38802             </summary>
38803         </member>
38804         <member name="F:Microsoft.Build.Construction.ProjectStringCache.InitialSize">
38805             <summary>
38806             Start off with a large size as there are very many strings in common scenarios and resizing is expensive.
38807             Note that there is a single instance of this cache for the lifetime of the process (albeit cleared out on XML unload)
38808             Australian Govt has about 3000 strings; a single VC project with all its various XML files has about 4000 strings.
38809             </summary>
38810         </member>
38811         <member name="F:Microsoft.Build.Construction.ProjectStringCache._strings">
38812             <summary>
38813             Store interned strings, and also a ref count, one per document using them.
38814             </summary>
38815         </member>
38816         <member name="F:Microsoft.Build.Construction.ProjectStringCache._documents">
38817             <summary>
38818             Store all the strings a document is using, so their ref count can be decremented.
38819             </summary>
38820         </member>
38821         <member name="F:Microsoft.Build.Construction.ProjectStringCache._locker">
38822             <summary>
38823             Locking object for this shared cache
38824             </summary>
38825         </member>
38826         <member name="M:Microsoft.Build.Construction.ProjectStringCache.#ctor">
38827             <summary>
38828             Public constructor.
38829             </summary>
38830         </member>
38831         <member name="P:Microsoft.Build.Construction.ProjectStringCache.Count">
38832             <summary>
38833             Obtain the number of entries contained in the cache.
38834             </summary>
38835         </member>
38836         <member name="M:Microsoft.Build.Construction.ProjectStringCache.Add(System.String,System.Xml.XmlDocument)">
38837             <summary>
38838             Add the given string to the cache or return the existing string if it is already
38839             in the cache.
38840             Constant time operation.
38841             </summary>
38842         </member>
38843         <member name="M:Microsoft.Build.Construction.ProjectStringCache.Get(System.String)">
38844             <summary>
38845             Find the matching string in the cache.
38846             Constant time operation.
38847             </summary>
38848             <param name="key">String to find in the cache.</param>
38849             <returns>Existing string in the cache, or null if it is not contained.</returns>
38850         </member>
38851         <member name="M:Microsoft.Build.Construction.ProjectStringCache.Clear(System.Xml.XmlDocument)">
38852             <summary>
38853             Indicates that a document's entries should be removed.
38854             If document is unknown, does nothing.
38855             Complexity proportional to the number of strings in the document,
38856             if the document is anywhere in the cache, otherwise O(1).
38857             </summary>
38858         </member>
38859         <member name="M:Microsoft.Build.Construction.ProjectStringCache.VerifyState">
38860             <summary>
38861             Verifies that each string entry has only one instance in the system.
38862             Enable the conditional if and while you make any modifications to the class, then disable as it is very slow.
38863             </summary>
38864         </member>
38865         <member name="M:Microsoft.Build.Construction.ProjectStringCache.OnStrongCacheEntryRemoved(System.Object,Microsoft.Build.Construction.ProjectRootElement)">
38866             <summary>
38867             Handle event that is fired when an entry in the project root element cache is removed 
38868             from its strong cache.
38869             </summary>
38870             <remarks>
38871             When an entry is removed from a project root element cache's strong cache, we will remove
38872             its entries from our string cache. Otherwise the string cache ends up being the only one
38873             holding references to the Xml documents that have already been dropped.
38874             </remarks>
38875         </member>
38876         <member name="T:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry">
38877             <summary>
38878             Represents an entry in the ProjectStringCache.
38879             Can't be a struct because the copy-by-value and the ref counting don't go well together.
38880             </summary>
38881         </member>
38882         <member name="F:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry._cachedString">
38883             <summary>
38884             Cached string
38885             </summary>
38886         </member>
38887         <member name="F:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry._refCount">
38888             <summary>
38889             Number of XmlDocuments where this string is included.
38890             </summary>
38891         </member>
38892         <member name="M:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.#ctor(System.String)">
38893             <summary>
38894             Constructor.
38895             Caller must then do Increment().
38896             </summary>
38897         </member>
38898         <member name="P:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.Key">
38899             <summary>
38900             Key to find it
38901             </summary>
38902         </member>
38903         <member name="P:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.RefCount">
38904             <summary>
38905             Number of documents using this string
38906             </summary>
38907         </member>
38908         <member name="P:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.CachedString">
38909             <summary>
38910             Get the cached string.
38911             </summary>
38912         </member>
38913         <member name="M:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.Increment">
38914             <summary>
38915             Indicates that this entry is included in the given document.
38916             Callers must verify that we were not already adreffed for this document.
38917             </summary>
38918         </member>
38919         <member name="M:Microsoft.Build.Construction.ProjectStringCache.StringCacheEntry.Decrement">
38920             <summary>
38921             Removes a container for this entry.
38922             Callers must verify that this was not already reffed and not subsequently dereffed.
38923             </summary>
38924         </member>
38925         <member name="T:Microsoft.Build.Evaluation.NewProjectFileOptions">
38926             <summary>
38927             Flags to control options when creating a new, in memory, project.
38928             </summary>
38929         </member>
38930         <member name="F:Microsoft.Build.Evaluation.NewProjectFileOptions.None">
38931             <summary>
38932             Do not include any options.
38933             </summary>
38934         </member>
38935         <member name="F:Microsoft.Build.Evaluation.NewProjectFileOptions.IncludeXmlDeclaration">
38936             <summary>
38937             Include the XML declaration element.
38938             </summary>
38939         </member>
38940         <member name="F:Microsoft.Build.Evaluation.NewProjectFileOptions.IncludeToolsVersion">
38941             <summary>
38942             Include the ToolsVersion attribute on the Project element.
38943             </summary>
38944         </member>
38945         <member name="F:Microsoft.Build.Evaluation.NewProjectFileOptions.IncludeXmlNamespace">
38946             <summary>
38947             Include the default MSBuild namespace on the Project element.
38948             </summary>
38949         </member>
38950         <member name="F:Microsoft.Build.Evaluation.NewProjectFileOptions.IncludeAllOptions">
38951             <summary>
38952             Include all file options.
38953             </summary>
38954         </member>
38955         <member name="T:Microsoft.Build.Evaluation.ProjectCollectionChangedState">
38956             <summary>
38957             Properties or other mutable state associated with a <see cref="T:Microsoft.Build.Evaluation.ProjectCollection"/>.
38958             </summary>
38959         </member>
38960         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.DefaultToolsVersion">
38961             <summary>
38962             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.DefaultToolsVersion"/> property changed.
38963             </summary>
38964         </member>
38965         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.Toolsets">
38966             <summary>
38967             The toolsets changed.
38968             </summary>
38969         </member>
38970         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.Loggers">
38971             <summary>
38972             The loggers changed.
38973             </summary>
38974         </member>
38975         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.GlobalProperties">
38976             <summary>
38977             The global properties changed.
38978             </summary>
38979         </member>
38980         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.IsBuildEnabled">
38981             <summary>
38982             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.IsBuildEnabled"/> property changed.
38983             </summary>
38984         </member>
38985         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.OnlyLogCriticalEvents">
38986             <summary>
38987             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.OnlyLogCriticalEvents"/> property changed.
38988             </summary>
38989         </member>
38990         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.HostServices">
38991             <summary>
38992             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.HostServices"/> property changed.
38993             </summary>
38994         </member>
38995         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.DisableMarkDirty">
38996             <summary>
38997             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.DisableMarkDirty"/> property changed.
38998             </summary>
38999         </member>
39000         <member name="F:Microsoft.Build.Evaluation.ProjectCollectionChangedState.SkipEvaluation">
39001             <summary>
39002             The <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.SkipEvaluation"/> property changed.
39003             </summary>
39004         </member>
39005         <member name="T:Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs">
39006             <summary>
39007             Event arguments for the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectCollectionChanged"/> event.
39008             </summary>
39009         </member>
39010         <member name="M:Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs.#ctor(Microsoft.Build.Evaluation.ProjectCollectionChangedState)">
39011             <summary>
39012             Initializes a new instance of the <see cref="T:Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs"/> class.
39013             </summary>
39014         </member>
39015         <member name="P:Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs.Changed">
39016             <summary>
39017             Gets the nature of the change made to the <see cref="T:Microsoft.Build.Evaluation.ProjectCollection"/>.
39018             </summary>
39019         </member>
39020         <member name="T:Microsoft.Build.Evaluation.ProjectImportPathMatch">
39021             <summary>
39022             Class representing a reference to a project import path with property fall-back
39023             </summary>
39024         </member>
39025         <member name="F:Microsoft.Build.Evaluation.ProjectImportPathMatch.None">
39026             <summary>
39027             ProjectImportPathMatch instance representing no fall-back
39028             </summary>
39029         </member>
39030         <member name="F:Microsoft.Build.Evaluation.ProjectImportPathMatch.PropertyName">
39031             <summary>
39032             String representation of the property reference - eg. "MSBuildExtensionsPath32"
39033             </summary>
39034         </member>
39035         <member name="F:Microsoft.Build.Evaluation.ProjectImportPathMatch.MsBuildPropertyFormat">
39036             <summary>
39037             Returns the corresponding property name - eg. "$(MSBuildExtensionsPath32)"
39038             </summary>
39039         </member>
39040         <member name="F:Microsoft.Build.Evaluation.ProjectImportPathMatch.SearchPaths">
39041             <summary>
39042             Enumeration of the search paths for the property.
39043             </summary>
39044         </member>
39045         <member name="M:Microsoft.Build.Evaluation.ProjectImportPathMatch.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
39046             <summary>
39047             Factory for serialization.
39048             </summary>
39049         </member>
39050         <member name="T:Microsoft.Build.Evaluation.ProjectLoadSettings">
39051             <summary>
39052             Flags for controlling the project load.
39053             </summary>
39054             <remarks>
39055             This is a "flags" enum, allowing future settings to be added
39056             in an additive, non breaking fashion.
39057             </remarks>
39058         </member>
39059         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.Default">
39060             <summary>
39061             Normal load. This is the default.
39062             </summary>
39063         </member>
39064         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.IgnoreMissingImports">
39065             <summary>
39066             Ignore nonexistent targets files when evaluating the project
39067             </summary>
39068         </member>
39069         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.RecordDuplicateButNotCircularImports">
39070             <summary>
39071             Record imports including duplicate, but not circular, imports on the ImportsIncludingDuplicates property
39072             </summary>
39073         </member>
39074         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.RejectCircularImports">
39075             <summary>
39076             Throw an exception and stop the evaluation of a project if any circular imports are detected
39077             </summary>
39078         </member>
39079         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.RecordEvaluatedItemElements">
39080             <summary>
39081             Record the item elements that got evaluated
39082             </summary>
39083         </member>
39084         <member name="F:Microsoft.Build.Evaluation.ProjectLoadSettings.IgnoreEmptyImports">
39085             <summary>
39086             Ignore empty targets files when evaluating the project
39087             </summary>
39088         </member>
39089         <member name="T:Microsoft.Build.Evaluation.ItemSpec`2">
39090             <summary>
39091             Represents the elements of an item specification string and 
39092             provides some operations over them (like matching items against a given ItemSpec)
39093             </summary>
39094         </member>
39095         <member name="P:Microsoft.Build.Evaluation.ItemSpec`2.Fragments">
39096             <summary>
39097             The fragments that compose an item spec string (values, globs, item references)
39098             </summary>
39099         </member>
39100         <member name="P:Microsoft.Build.Evaluation.ItemSpec`2.Expander">
39101             <summary>
39102             The expander needs to have a default item factory set.
39103             </summary>
39104         </member>
39105         <member name="P:Microsoft.Build.Evaluation.ItemSpec`2.ItemSpecLocation">
39106             <summary>
39107             The xml attribute where this itemspec comes from
39108             </summary>
39109         </member>
39110         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.#ctor(System.String,Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean)">
39111             <param name="itemSpec">The string containing item syntax</param>
39112             <param name="expander">Expects the expander to have a default item factory set</param>
39113             <param name="itemSpecLocation">The xml location the itemspec comes from</param>
39114             <param name="expandProperties">Expand properties before breaking down fragments. Defaults to true</param>
39115         </member>
39116         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.FilterItems(System.Collections.Generic.IEnumerable{`1})">
39117             <summary>
39118             Return the items in <param name="items"/> that match this itemspec
39119             </summary>
39120         </member>
39121         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.MatchesItem(`1)">
39122             <summary>
39123             Return true if the given <paramref name="item"/> matches this itemspec
39124             </summary>
39125             <param name="item">The item to attempt to find a match for.</param>
39126         </member>
39127         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.FragmentsMatchingItem(System.String,System.Int32@)">
39128             <summary>
39129             Return the fragments that match against the given <paramref name="itemToMatch"/>
39130             </summary>
39131             <param name="itemToMatch">The item to match.</param>
39132             <param name="matches">
39133             Total number of matches. Some fragments match more than once (item expression may contain multiple instances of <paramref name="itemToMatch"/>)
39134             </param>
39135         </member>
39136         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.ToMSBuildGlob">
39137             <summary>
39138             Return an MSBuildGlob that represents this ItemSpec.
39139             </summary>
39140         </member>
39141         <member name="M:Microsoft.Build.Evaluation.ItemSpec`2.FlattenFragmentsAsStrings">
39142             <summary>
39143                 Returns all the fragment strings that represent it.
39144                 "1;*;2;@(foo)" gets returned as ["1", "2", "*", "a", "b"], given that @(foo)=["a", "b"]
39145             
39146                 Order is not preserved. Globs are not expanded. Item expressions get replaced with their referring item instances.
39147             </summary>
39148         </member>
39149         <member name="P:Microsoft.Build.Evaluation.ItemFragment.ItemSpecFragment">
39150             <summary>
39151             The substring from the original itemspec representing this fragment
39152             </summary>
39153         </member>
39154         <member name="P:Microsoft.Build.Evaluation.ItemFragment.ProjectPath">
39155             <summary>
39156             Path of the project the itemspec is coming from
39157             </summary>
39158         </member>
39159         <member name="P:Microsoft.Build.Evaluation.ItemFragment.FileMatcher">
39160             <summary>
39161             Function that checks if a given string matches the <see cref="P:Microsoft.Build.Evaluation.ItemFragment.ItemSpecFragment"/>
39162             </summary>
39163         </member>
39164         <member name="M:Microsoft.Build.Evaluation.ItemFragment.MatchCount(System.String)">
39165             <returns>The number of times the <param name="itemToMatch"></param> appears in this fragment</returns>
39166         </member>
39167         <member name="T:Microsoft.Build.Evaluation.ItemsAndMetadataPair">
39168             <summary>
39169             Wrapper of two tables for a convenient method return value.
39170             </summary>
39171         </member>
39172         <member name="F:Microsoft.Build.Evaluation.ItemsAndMetadataPair._items">
39173             <summary>
39174             The item set
39175             </summary>
39176         </member>
39177         <member name="F:Microsoft.Build.Evaluation.ItemsAndMetadataPair._metadata">
39178             <summary>
39179             The metadata dictionary.
39180             The key is the possibly qualified metadata name, for example
39181             "EmbeddedResource.Culture" or "Culture"
39182             </summary>
39183         </member>
39184         <member name="M:Microsoft.Build.Evaluation.ItemsAndMetadataPair.#ctor(System.Collections.Generic.HashSet{System.String},System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.MetadataReference})">
39185             <summary>
39186             Constructs a pair from an item set and metadata
39187             </summary>
39188             <param name="items">The item set</param>
39189             <param name="metadata">The metadata dictionary</param>
39190         </member>
39191         <member name="P:Microsoft.Build.Evaluation.ItemsAndMetadataPair.Items">
39192             <summary>
39193             Gets or sets the item set
39194             </summary>
39195         </member>
39196         <member name="P:Microsoft.Build.Evaluation.ItemsAndMetadataPair.Metadata">
39197             <summary>
39198             Gets or sets the metadata dictionary
39199             The key is the possibly qualified metadata name, for example
39200             "EmbeddedResource.Culture" or "Culture"
39201             </summary>
39202         </member>
39203         <member name="F:Microsoft.Build.Evaluation.LazyItemEvaluator`4.s_invariantCompareInfo">
39204             <summary>
39205             The CultureInfo from the invariant culture. Used to avoid allocations for
39206             perfoming IndexOf etc.
39207             </summary>
39208         </member>
39209         <member name="M:Microsoft.Build.Evaluation.LazyItemEvaluator`4.GetCurrentDirectoryForConditionEvaluation(Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Evaluation.LazyItemEvaluator{`0,`1,`2,`3})">
39210             <summary>
39211             COMPAT: Whidbey used the "current project file/targets" directory for evaluating Import and PropertyGroup conditions
39212             Orcas broke this by using the current root project file for all conditions
39213             For Dev10+, we'll fix this, and use the current project file/targets directory for Import, ImportGroup and PropertyGroup
39214             but the root project file for the rest. Inside of targets will use the root project file as always.
39215             </summary>
39216         </member>
39217         <member name="M:Microsoft.Build.Evaluation.LazyItemEvaluator`4.MemoizedOperation.MarkAsReferenced">
39218             <summary>
39219             Somebody is referencing this operation
39220             </summary>
39221         </member>
39222         <member name="M:Microsoft.Build.Evaluation.LazyItemEvaluator`4.LazyItemOperation.SelectItems(System.Collections.Immutable.ImmutableList{Microsoft.Build.Evaluation.LazyItemEvaluator{`0,`1,`2,`3}.ItemData}.Builder,System.Collections.Immutable.ImmutableHashSet{System.String})">
39223             <summary>
39224             Produce the items to operate on. For example, create new ones or select existing ones
39225             </summary>
39226         </member>
39227         <member name="M:Microsoft.Build.Evaluation.LazyItemEvaluator`4.LazyItemOperation.SelectItemsMatchingItemSpec(System.Collections.Immutable.ImmutableList{Microsoft.Build.Evaluation.LazyItemEvaluator{`0,`1,`2,`3}.ItemData}.Builder,Microsoft.Build.Shared.IElementLocation)">
39228             <summary>
39229             Collects all the items of this item element's type that match the items (represented as operations)
39230             </summary>
39231         </member>
39232         <member name="T:Microsoft.Build.Evaluation.MetadataReference">
39233             <summary>
39234             This struct represents a reference to a piece of item metadata.  For example,
39235             %(EmbeddedResource.Culture) or %(Culture) in the project file.  In this case,
39236             "EmbeddedResource" is the item name, and "Culture" is the metadata name.
39237             The item name is optional.
39238             </summary>
39239         </member>
39240         <member name="F:Microsoft.Build.Evaluation.MetadataReference.ItemName">
39241             <summary>
39242             The item name
39243             </summary>
39244         </member>
39245         <member name="F:Microsoft.Build.Evaluation.MetadataReference.MetadataName">
39246             <summary>
39247             The metadata name
39248             </summary>
39249         </member>
39250         <member name="M:Microsoft.Build.Evaluation.MetadataReference.#ctor(System.String,System.String)">
39251             <summary>
39252             Constructor
39253             </summary>
39254             <param name="itemName">Name of the item</param>
39255             <param name="metadataName">Name of the metadata</param>
39256         </member>
39257         <member name="T:Microsoft.Build.Evaluation.ProjectChangedEventArgs">
39258             <summary>
39259             Event arguments for the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectChanged"/> event.
39260             </summary>
39261         </member>
39262         <member name="M:Microsoft.Build.Evaluation.ProjectChangedEventArgs.#ctor(Microsoft.Build.Evaluation.Project)">
39263             <summary>
39264             Initializes a new instance of the <see cref="T:Microsoft.Build.Evaluation.ProjectChangedEventArgs"/> class.
39265             </summary>
39266             <param name="project">The changed project.</param>
39267         </member>
39268         <member name="P:Microsoft.Build.Evaluation.ProjectChangedEventArgs.Project">
39269             <summary>
39270             Gets the project that was marked dirty.
39271             </summary>
39272             <value>Never null.</value>
39273         </member>
39274         <member name="T:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs">
39275             <summary>
39276             Event arguments for the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectXmlChanged"/> event.
39277             </summary>
39278         </member>
39279         <member name="F:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs._unformattedReason">
39280             <summary>
39281             The unformatted reason for dirtying the project collection.
39282             </summary>
39283         </member>
39284         <member name="F:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs._formattingParameter">
39285             <summary>
39286             The formatting parameter.
39287             </summary>
39288         </member>
39289         <member name="M:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.String,System.String)">
39290             <summary>
39291             Initializes a new instance of the <see cref="T:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs"/> class
39292             that represents a change to a specific project root element.
39293             </summary>
39294             <param name="projectXml">The ProjectRootElement whose content was actually changed.</param>
39295             <param name="unformattedReason">The unformatted (may contain {0}) reason for the dirty event.</param>
39296             <param name="formattingParameter">The formatting parameter to use with <paramref name="unformattedReason"/>.</param>
39297         </member>
39298         <member name="P:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs.ProjectXml">
39299             <summary>
39300             Gets the project root element which was just changed..
39301             </summary>
39302             <value>Never null.</value>
39303         </member>
39304         <member name="P:Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs.Reason">
39305             <summary>
39306             Gets the reason for the change.
39307             </summary>
39308             <value>May be null.</value>
39309         </member>
39310         <member name="T:Microsoft.Build.Evaluation.IToolsetProvider">
39311             <summary>
39312             Interface for an object which can provide toolsets for evaulation.
39313             </summary>
39314         </member>
39315         <member name="P:Microsoft.Build.Evaluation.IToolsetProvider.Toolsets">
39316             <summary>
39317             Gets an enumeration of all toolsets in the provider.
39318             </summary>
39319         </member>
39320         <member name="M:Microsoft.Build.Evaluation.IToolsetProvider.GetToolset(System.String)">
39321             <summary>
39322             Retrieves a specific toolset.
39323             </summary>
39324             <param name="toolsVersion">The tools version for the toolset.</param>
39325             <returns>The requested toolset.</returns>
39326         </member>
39327         <member name="T:Microsoft.Build.Evaluation.BuiltInMetadata">
39328             <summary>
39329             This class encapsulates the behavior and collection of built-in metadata.  These metadatum
39330             are inferred from the content of the include and sometimes the context of the project or
39331             current directory.
39332             </summary>
39333         </member>
39334         <member name="P:Microsoft.Build.Evaluation.BuiltInMetadata.MetadataCount">
39335             <summary>
39336             Retrieves the count of built-in metadata.
39337             </summary>
39338         </member>
39339         <member name="P:Microsoft.Build.Evaluation.BuiltInMetadata.MetadataNames">
39340             <summary>
39341             Retrieves the list of metadata names.
39342             </summary>
39343         </member>
39344         <member name="M:Microsoft.Build.Evaluation.BuiltInMetadata.GetMetadataValue(System.String,System.String,System.String,System.String,System.String,System.String@)">
39345             <summary>
39346             Retrieves a built-in metadata value and caches it.
39347             Never returns null.
39348             </summary>
39349             <param name="currentDirectory">
39350             The current directory for evaluation.  Null if this is being called from a task, otherwise
39351             it should be the project's directory.
39352             </param>
39353             <param name="evaluatedIncludeBeforeWildcardExpansionEscaped">The evaluated include prior to wildcard expansion.</param>
39354             <param name="evaluatedIncludeEscaped">The evaluated include for the item.</param>
39355             <param name="definingProjectEscaped">The path to the project that defined this item</param>
39356             <param name="name">The name of the metadata.</param>
39357             <param name="fullPath">The generated full path, for caching</param>
39358             <returns>The unescaped metadata value.</returns>
39359         </member>
39360         <member name="M:Microsoft.Build.Evaluation.BuiltInMetadata.GetMetadataValueEscaped(System.String,System.String,System.String,System.String,System.String,System.String@)">
39361             <summary>
39362             Retrieves a built-in metadata value and caches it.
39363             If value is not available, returns empty string.
39364             </summary>
39365             <param name="currentDirectory">
39366             The current directory for evaluation.  Null if this is being called from a task, otherwise
39367             it should be the project's directory.
39368             </param>
39369             <param name="evaluatedIncludeBeforeWildcardExpansionEscaped">The evaluated include prior to wildcard expansion.</param>
39370             <param name="evaluatedIncludeEscaped">The evaluated include for the item.</param>
39371             <param name="definingProjectEscaped">The path to the project that defined this item</param>
39372             <param name="name">The name of the metadata.</param>
39373             <param name="fullPath">The generated full path, for caching</param>
39374             <returns>The escaped as necessary metadata value.</returns>
39375         </member>
39376         <member name="M:Microsoft.Build.Evaluation.BuiltInMetadata.GetRecursiveDirValue(System.String,System.String)">
39377             <summary>
39378             Extract the value for "RecursiveDir", if any, from the Include.
39379             If there is none, returns an empty string.
39380             </summary>
39381             <remarks>
39382             Inputs to and outputs of this function are all escaped.
39383             </remarks>
39384         </member>
39385         <member name="T:Microsoft.Build.Evaluation.ToolsetDefinitionLocations">
39386             <summary>
39387             Flags for controlling the toolset initialization.
39388             </summary>
39389         </member>
39390         <member name="F:Microsoft.Build.Evaluation.ToolsetDefinitionLocations.None">
39391             <summary>
39392             Do not read toolset information from any external location.
39393             </summary>
39394         </member>
39395         <member name="F:Microsoft.Build.Evaluation.ToolsetDefinitionLocations.ConfigurationFile">
39396             <summary>
39397             Read toolset information from the exe configuration file.
39398             </summary>
39399         </member>
39400         <member name="F:Microsoft.Build.Evaluation.ToolsetDefinitionLocations.Registry">
39401             <summary>
39402             Read toolset information from the registry (HKLM\Software\Microsoft\MSBuild\ToolsVersions).
39403             </summary>
39404         </member>
39405         <member name="F:Microsoft.Build.Evaluation.ToolsetDefinitionLocations.Local">
39406             <summary>
39407             Read toolset information from the current exe path
39408             </summary>
39409         </member>
39410         <member name="F:Microsoft.Build.Evaluation.ToolsetDefinitionLocations.Default">
39411             <summary>
39412             Use the default location or locations.
39413             </summary>
39414         </member>
39415         <member name="T:Microsoft.Build.Evaluation.ProjectCollection">
39416             <summary>
39417             This class encapsulates a set of related projects, their toolsets, a default set of global properties,
39418             and the loggers that should be used to build them.
39419             A global version of this class acts as the default ProjectCollection.
39420             Multiple ProjectCollections can exist within an appdomain. However, these must not build concurrently.
39421             </summary>
39422         </member>
39423         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._locker">
39424             <summary>
39425             The object to synchronize with when accessing certain fields.
39426             </summary>
39427         </member>
39428         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.s_globalProjectCollection">
39429             <summary>
39430             The global singleton project collection used as a default for otherwise
39431             unassociated projects.
39432             </summary>
39433         </member>
39434         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.s_engineVersion">
39435             <summary>
39436             Gets the file version of the file in which the Engine assembly lies.
39437             </summary>
39438             <remarks>
39439             This is the Windows file version (specifically the value of the ProductVersion
39440             resource), not necessarily the assembly version.
39441             If you want the assembly version, use Constants.AssemblyVersion.
39442             </remarks>
39443         </member>
39444         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._loadedProjects">
39445             <summary>
39446             The projects loaded into this collection.
39447             </summary>
39448         </member>
39449         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._host">
39450             <summary>
39451             The component host for this collection.
39452             </summary>
39453         </member>
39454         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._loggingService">
39455             <summary>
39456             Single logging service used for all builds of projects in this project collection
39457             </summary>
39458         </member>
39459         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._hostServices">
39460             <summary>
39461             Any object exposing host services.
39462             May be null.
39463             </summary>
39464         </member>
39465         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._toolsetDefinitionLocations">
39466             <summary>
39467             The locations where we look for toolsets.
39468             </summary>
39469         </member>
39470         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._toolsets">
39471             <summary>
39472             A mapping of tools versions to Toolsets, which contain the public Toolsets.
39473             This is the collection we use internally.
39474             </summary>
39475         </member>
39476         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._globalProperties">
39477             <summary>
39478             The default global properties.
39479             </summary>
39480         </member>
39481         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._environmentProperties">
39482             <summary>
39483             The properties representing the environment.
39484             </summary>
39485         </member>
39486         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._defaultToolsVersion">
39487             <summary>
39488             The default tools version obtained by examining all of the toolsets.
39489             </summary>
39490         </member>
39491         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._toolsetsVersion">
39492             <summary>
39493             A counter incremented every time the toolsets change which would necessitate a re-evaluation of
39494             associated projects.
39495             </summary>
39496         </member>
39497         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._isBuildEnabled">
39498             <summary>
39499             This is the default value used by newly created projects for whether or not the building
39500             of projects is enabled.  This is for security purposes in case a host wants to closely
39501             control which projects it allows to run targets/tasks.
39502             </summary>
39503         </member>
39504         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._onlyLogCriticalEvents">
39505             <summary>
39506             We may only wish to log crtitical events, record that fact so we can apply it to build requests
39507             </summary>
39508         </member>
39509         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._skipEvaluation">
39510             <summary>
39511             Whether reevaluation is temporarily disabled on projects in this collection.
39512             This is useful when the host expects to make a number of reads and writes 
39513             to projects, and wants to temporarily sacrifice correctness for performance.
39514             </summary>
39515         </member>
39516         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._disableMarkDirty">
39517             <summary>
39518             Whether <see cref="M:Microsoft.Build.Evaluation.Project.MarkDirty">MarkDirty()</see> is temporarily disabled on
39519             projects in this collection.
39520             This allows, for example, global properties to be set without projects getting
39521             marked dirty for reevaluation as a consequence.
39522             </summary>
39523         </member>
39524         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._maxNodeCount">
39525             <summary>
39526             The maximum number of nodes which can be started during the build
39527             </summary>
39528         </member>
39529         <member name="F:Microsoft.Build.Evaluation.ProjectCollection._projectRootElementCache">
39530             <summary>
39531             The cache of project root elements associated with this project collection.
39532             Each is associated with a specific project collection for two reasons:
39533             - To help protect one project collection from any XML edits through another one:
39534             until a reload from disk - when it's ready to accept changes - it won't see the edits;
39535             - So that the owner of this project collection can force the XML to be loaded again
39536             from disk, by doing <see cref="M:Microsoft.Build.Evaluation.ProjectCollection.UnloadAllProjects"/>.
39537             </summary>
39538         </member>
39539         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#cctor">
39540             <summary>
39541             Hook up last minute dumping of any exceptions bringing down the process
39542             </summary>
39543         </member>
39544         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#ctor">
39545             <summary>
39546             Instantiates a project collection with no global properties or loggers that reads toolset 
39547             information from the configuration file and registry.
39548             </summary>
39549         </member>
39550         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#ctor(Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
39551             <summary>
39552             Instantiates a project collection using toolsets from the specified locations,
39553             and no global properties or loggers.
39554             May throw InvalidToolsetDefinitionException.
39555             </summary>
39556             <param name="toolsetLocations">The locations from which to load toolsets.</param>
39557         </member>
39558         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#ctor(System.Collections.Generic.IDictionary{System.String,System.String})">
39559             <summary>
39560             Instantiates a project collection with specified global properties, no loggers,
39561             and that reads toolset information from the configuration file and registry.
39562             May throw InvalidToolsetDefinitionException.
39563             </summary>
39564             <param name="globalProperties">The default global properties to use. May be null.</param>
39565         </member>
39566         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#ctor(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
39567             <summary>
39568             Instantiates a project collection with specified global properties and loggers and using the
39569             specified toolset locations.
39570             May throw InvalidToolsetDefinitionException.
39571             </summary>
39572             <param name="globalProperties">The default global properties to use. May be null.</param>
39573             <param name="loggers">The loggers to register. May be null.</param>
39574             <param name="toolsetDefinitionLocations">The locations from which to load toolsets.</param>
39575         </member>
39576         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.#ctor(System.Collections.Generic.IDictionary{System.String,System.String},System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord},Microsoft.Build.Evaluation.ToolsetDefinitionLocations,System.Int32,System.Boolean)">
39577             <summary>
39578             Instantiates a project collection with specified global properties and loggers and using the
39579             specified toolset locations, node count, and setting of onlyLogCriticalEvents.
39580             Global properties and loggers may be null.
39581             Throws InvalidProjectFileException if any of the global properties are reserved.
39582             May throw InvalidToolsetDefinitionException.
39583             </summary>
39584             <param name="globalProperties">The default global properties to use. May be null.</param>
39585             <param name="loggers">The loggers to register. May be null and specified to any build instead.</param>
39586             <param name="remoteLoggers">Any remote loggers to register. May be null and specified to any build instead.</param>
39587             <param name="toolsetDefinitionLocations">The locations from which to load toolsets.</param>
39588             <param name="maxNodeCount">The maximum number of nodes to use for building.</param>
39589             <param name="onlyLogCriticalEvents">If set to true, only critical events will be logged.</param>
39590         </member>
39591         <member name="T:Microsoft.Build.Evaluation.ProjectCollection.ProjectAddedEventHandler">
39592             <summary>
39593             Handler to receive which project got added to the project collection.
39594             </summary>
39595         </member>
39596         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectAdded">
39597             <summary>
39598             Event that is fired when a project is added to the ProjectRootElementCache of this project collection.
39599             </summary>
39600         </member>
39601         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectCollectionChanged">
39602             <summary>
39603             Raised when state is changed on this instance.
39604             </summary>
39605             <remarks>
39606             This event is NOT raised for changes in individual projects.
39607             </remarks>
39608         </member>
39609         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectXmlChanged">
39610             <summary>
39611             Raised when a <see cref="T:Microsoft.Build.Construction.ProjectRootElement"/> contained by this instance is changed.
39612             </summary>
39613             <remarks>
39614             This event is NOT raised for changes to global properties, or any other change that doesn't actually dirty the XML.
39615             </remarks>
39616         </member>
39617         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectChanged">
39618             <summary>
39619             Raised when a <see cref="T:Microsoft.Build.Evaluation.Project"/> contained by this instance is directly changed.
39620             </summary>
39621             <remarks>
39622             This event is NOT raised for direct project XML changes via the construction model.
39623             </remarks>
39624         </member>
39625         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.GlobalProjectCollection">
39626             <summary>
39627             Retrieves the global project collection object.
39628             This is a singleton project collection with no global properties or loggers that reads toolset 
39629             information from the configuration file and registry.
39630             May throw InvalidToolsetDefinitionException.
39631             Thread safe.
39632             </summary>
39633         </member>
39634         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.Version">
39635             <summary>
39636             Gets the file version of the file in which the Engine assembly lies.
39637             </summary>
39638             <remarks>
39639             This is the Windows file version (specifically the value of the FileVersion
39640             resource), not necessarily the assembly version.
39641             If you want the assembly version, use Constants.AssemblyVersion.
39642             This is not the <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.ToolsetsVersion">ToolsetCollectionVersion</see>.
39643             </remarks>
39644         </member>
39645         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.DefaultToolsVersion">
39646             <summary>
39647             The default tools version of this project collection. Projects use this tools version if they
39648             aren't otherwise told what tools version to use.
39649             This value is gotten from the .exe.config file, or else in the registry, 
39650             or if neither specify a default tools version then it is hard-coded to the tools version "2.0".
39651             Setter throws InvalidOperationException if a toolset with the provided tools version has not been defined.
39652             Always defined.
39653             </summary>
39654         </member>
39655         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.GlobalProperties">
39656             <summary>
39657             Returns default global properties for all projects in this collection.
39658             Read-only dead dictionary.
39659             </summary>
39660             <remarks>
39661             This is the publicly exposed getter, that translates into a read-only dead IDictionary&lt;string, string&gt;.
39662             
39663             To be consistent with Project, setting and removing global properties is done with 
39664             <see cref="M:Microsoft.Build.Evaluation.ProjectCollection.SetGlobalProperty(System.String,System.String)">SetGlobalProperty</see> and <see cref="M:Microsoft.Build.Evaluation.ProjectCollection.RemoveGlobalProperty(System.String)">RemoveGlobalProperty</see>.
39665             </remarks>
39666         </member>
39667         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjects">
39668             <summary>
39669             All the projects currently loaded into this collection.
39670             Each has a unique combination of path, global properties, and tools version.
39671             </summary>
39672         </member>
39673         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.Count">
39674             <summary>
39675             Number of projects currently loaded into this collection.
39676             </summary>
39677         </member>
39678         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.Loggers">
39679             <summary>
39680             Loggers that all contained projects will use for their builds.
39681             Loggers are added with the <see cref="M:Microsoft.Build.Evaluation.ProjectCollection.RegisterLogger(Microsoft.Build.Framework.ILogger)"/>.
39682             UNDONE: Currently they cannot be removed.
39683             Returns an empty collection if there are no loggers.
39684             </summary>
39685         </member>
39686         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.Toolsets">
39687             <summary>
39688             Returns the toolsets this ProjectCollection knows about.
39689             </summary>
39690             <comments>
39691             ValueCollection is already read-only
39692             </comments>
39693         </member>
39694         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ToolsetLocations">
39695             <summary>
39696             Returns the locations used to find the toolsets.
39697             </summary>
39698         </member>
39699         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.IsBuildEnabled">
39700             <summary>
39701             This is the default value used by newly created projects for whether or not the building
39702             of projects is enabled.  This is for security purposes in case a host wants to closely
39703             control which projects it allows to run targets/tasks.
39704             </summary>
39705         </member>
39706         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.OnlyLogCriticalEvents">
39707             <summary>
39708             When true, only log critical events such as warnings and errors. Has to be in here for API compat
39709             </summary>
39710         </member>
39711         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.HostServices">
39712             <summary>
39713             Object exposing host services to tasks during builds of projects
39714             contained by this project collection.
39715             By default, <see cref="P:Microsoft.Build.Evaluation.ProjectCollection.HostServices">HostServices</see> is used.
39716             May be set to null, but the getter will create a new instance in that case.
39717             </summary>
39718         </member>
39719         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.SkipEvaluation">
39720             <summary>
39721             Whether reevaluation is temporarily disabled on projects in this collection.
39722             This is useful when the host expects to make a number of reads and writes 
39723             to projects, and wants to temporarily sacrifice correctness for performance.
39724             </summary>
39725         </member>
39726         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.DisableMarkDirty">
39727             <summary>
39728             Whether <see cref="M:Microsoft.Build.Evaluation.Project.MarkDirty">MarkDirty()</see> is temporarily disabled on
39729             projects in this collection.
39730             This allows, for example, global properties to be set without projects getting
39731             marked dirty for reevaluation as a consequence.
39732             </summary>
39733         </member>
39734         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.LoggingService">
39735             <summary>
39736             Logging service that should be used for project load and for builds
39737             </summary>
39738         </member>
39739         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.GlobalPropertiesCollection">
39740             <summary>
39741             Gets default global properties for all projects in this collection.
39742             Dead copy.
39743             </summary>
39744         </member>
39745         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.EnvironmentProperties">
39746             <summary>
39747             Returns the property dictionary containing the properties representing the environment.
39748             </summary>
39749         </member>
39750         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ToolsetsVersion">
39751             <summary>
39752             Returns the internal version for this object's state.
39753             Updated when toolsets change, indicating all contained projects are potentially invalid.
39754             </summary>
39755         </member>
39756         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.MaxNodeCount">
39757             <summary>
39758             The maximum number of nodes which can be started during the build
39759             </summary>
39760         </member>
39761         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ProjectRootElementCache">
39762             <summary>
39763             The cache of project root elements associated with this project collection.
39764             Each is associated with a specific project collection for two reasons:
39765             - To help protect one project collection from any XML edits through another one:
39766             until a reload from disk - when it's ready to accept changes - it won't see the edits;
39767             - So that the owner of this project collection can force the XML to be loaded again
39768             from disk, by doing <see cref="M:Microsoft.Build.Evaluation.ProjectCollection.UnloadAllProjects"/>.
39769             </summary>
39770         </member>
39771         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Escape(System.String)">
39772             <summary>
39773             Escape a string using MSBuild escaping format. For example, "%3b" for ";".
39774             Only characters that are especially significant to MSBuild parsing are escaped.
39775             Callers can use this method to make a string safe to be parsed to other methods
39776             that would otherwise expand it; or to make a string safe to be written to a project file.
39777             </summary>
39778         </member>
39779         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Unescape(System.String)">
39780             <summary>
39781             Unescape a string using MSBuild escaping format. For example, "%3b" for ";".
39782             All escaped characters are unescaped.
39783             </summary>
39784         </member>
39785         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ContainsToolset(System.String)">
39786             <summary>
39787             Returns true if there is a toolset defined for the specified 
39788             tools version, otherwise false.
39789             </summary>
39790         </member>
39791         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.AddToolset(Microsoft.Build.Evaluation.Toolset)">
39792             <summary>
39793             Add a new toolset.
39794             Replaces any existing toolset with the same tools version.
39795             </summary>
39796         </member>
39797         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RemoveToolset(System.String)">
39798             <summary>
39799             Remove a toolset.
39800             Returns true if it was present, otherwise false.
39801             </summary>
39802         </member>
39803         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RemoveAllToolsets">
39804             <summary>
39805             Removes all toolsets.
39806             </summary>
39807         </member>
39808         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.GetToolset(System.String)">
39809             <summary>
39810             Get the toolset with the specified tools version.
39811             If it is not present, returns null.
39812             </summary>
39813         </member>
39814         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.GetEffectiveToolsVersion(System.String,System.String)">
39815             <summary>
39816             Figure out what ToolsVersion to use to actually build the project with. 
39817             </summary>
39818             <param name="explicitToolsVersion">The user-specified ToolsVersion (through e.g. /tv: on the command line). May be null</param>
39819             <param name="toolsVersionFromProject">The ToolsVersion from the project file. May be null</param>
39820             <returns>The ToolsVersion we should use to build this project.  Should never be null.</returns>
39821         </member>
39822         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.GetLoadedProjects(System.String)">
39823             <summary>
39824             Returns any and all loaded projects with the provided path.
39825             There may be more than one, if they are distinguished by global properties
39826             and/or tools version.
39827             </summary>
39828         </member>
39829         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.String)">
39830             <summary>
39831             Loads a project with the specified filename, using the collection's global properties and tools version.
39832             If a matching project is already loaded, it will be returned, otherwise a new project will be loaded.
39833             </summary>
39834             <param name="fileName">The project file to load</param>
39835             <returns>A loaded project.</returns>
39836         </member>
39837         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.String,System.String)">
39838             <summary>
39839             Loads a project with the specified filename and tools version, using the collection's global properties.
39840             If a matching project is already loaded, it will be returned, otherwise a new project will be loaded.
39841             </summary>
39842             <param name="fileName">The project file to load</param>
39843             <param name="toolsVersion">The tools version to use. May be null.</param>
39844             <returns>A loaded project.</returns>
39845         </member>
39846         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
39847             <summary>
39848             Loads a project with the specified filename, tools version and global properties.
39849             If a matching project is already loaded, it will be returned, otherwise a new project will be loaded.
39850             </summary>
39851             <param name="fileName">The project file to load</param>
39852             <param name="globalProperties">The global properties to use. May be null, in which case the containing project collection's global properties will be used.</param>
39853             <param name="toolsVersion">The tools version. May be null.</param>
39854             <returns>A loaded project.</returns>
39855         </member>
39856         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.Xml.XmlReader)">
39857             <summary>
39858             Loads a project with the specified reader, using the collection's global properties and tools version.
39859             The project will be added to this project collection when it is named.
39860             </summary>
39861             <param name="xmlReader">Xml reader to read project from</param>
39862             <returns>A loaded project.</returns>
39863         </member>
39864         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.Xml.XmlReader,System.String)">
39865             <summary>
39866             Loads a project with the specified reader and tools version, using the collection's global properties.
39867             The project will be added to this project collection when it is named.
39868             </summary>
39869             <param name="xmlReader">Xml reader to read project from</param>
39870             <param name="toolsVersion">The tools version to use. May be null.</param>
39871             <returns>A loaded project.</returns>
39872         </member>
39873         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadProject(System.Xml.XmlReader,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
39874             <summary>
39875             Loads a project with the specified reader, tools version and global properties.
39876             The project will be added to this project collection when it is named.
39877             </summary>
39878             <param name="xmlReader">Xml reader to read project from</param>
39879             <param name="globalProperties">The global properties to use. May be null in which case the containing project collection's global properties will be used.</param>
39880             <param name="toolsVersion">The tools version. May be null.</param>
39881             <returns>A loaded project.</returns>
39882         </member>
39883         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RegisterLogger(Microsoft.Build.Framework.ILogger)">
39884             <summary>
39885             Adds a logger to the collection of loggers used for builds of projects in this collection.
39886             If the logger object is already in the collection, does nothing.
39887             </summary>
39888         </member>
39889         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RegisterLoggers(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
39890             <summary>
39891             Adds some loggers to the collection of loggers used for builds of projects in this collection.
39892             If any logger object is already in the collection, does nothing for that logger.
39893             May be null.
39894             </summary>
39895         </member>
39896         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RegisterForwardingLoggers(System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
39897             <summary>
39898             Adds some remote loggers to the collection of remote loggers used for builds of projects in this collection.
39899             May be null.
39900             </summary>
39901         </member>
39902         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.UnregisterAllLoggers">
39903             <summary>
39904             Removes all loggers from the collection of loggers used for builds of projects in this collection.
39905             </summary>
39906         </member>
39907         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.UnloadProject(Microsoft.Build.Evaluation.Project)">
39908             <summary>
39909             Unloads the specific project specified.
39910             Host should call this when they are completely done with the project.
39911             If project was not already loaded, throws InvalidOperationException.
39912             </summary>
39913         </member>
39914         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.UnloadProject(Microsoft.Build.Construction.ProjectRootElement)">
39915             <summary>
39916             Unloads a project XML root element from the weak cache.
39917             </summary>
39918             <param name="projectRootElement">The project XML root element to unload.</param>
39919             <exception cref="T:System.InvalidOperationException">
39920             Thrown if the project XML root element to unload is still in use by a loaded project or its imports.
39921             </exception>
39922             <remarks>
39923             This method is useful for the case where the host knows that all projects using this XML element
39924             are unloaded, and desires to discard any unsaved changes.
39925             </remarks>
39926         </member>
39927         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.UnloadAllProjects">
39928             <summary>
39929             Unloads all the projects contained by this ProjectCollection.
39930             Host should call this when they are completely done with all the projects.
39931             </summary>
39932         </member>
39933         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.GetGlobalProperty(System.String)">
39934             <summary>
39935             Get any global property on the project collection that has the specified name,
39936             otherwise returns null.
39937             </summary>
39938         </member>
39939         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.SetGlobalProperty(System.String,System.String)">
39940             <summary>
39941             Set a global property at the collection-level,
39942             and on all projects in the project collection.
39943             </summary>
39944         </member>
39945         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RemoveGlobalProperty(System.String)">
39946             <summary>
39947             Removes a global property from the collection-level set of global properties,
39948             and all projects in the project collection.
39949             If it was on this project collection, returns true.
39950             </summary>
39951         </member>
39952         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Dispose">
39953             <summary>
39954             Called when a host is completely done with the project collection.
39955             UNDONE: This is a hack to make sure the logging thread shuts down if the build used the loggingservice
39956             off the ProjectCollection. After CTP we need to rationalize this and see if we can remove the logging service from
39957             the project collection entirely so this isn't necessary.
39958             </summary>
39959         </member>
39960         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Microsoft#Build#BackEnd#IBuildComponent#InitializeComponent(Microsoft.Build.BackEnd.IBuildComponentHost)">
39961             <summary>
39962             Initializes the component with the component host.
39963             </summary>
39964             <param name="host">The component host.</param>
39965         </member>
39966         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Microsoft#Build#BackEnd#IBuildComponent#ShutdownComponent">
39967             <summary>
39968             Shuts down the component.
39969             </summary>
39970         </member>
39971         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.TryUnloadProject(Microsoft.Build.Construction.ProjectRootElement)">
39972             <summary>
39973             Unloads a project XML root element from the cache entirely, if it is not
39974             in use by project loaded into this collection.
39975             Returns true if it was unloaded successfully, or was not already loaded.
39976             Returns false if it was not unloaded because it was still in use by a loaded <see cref="T:Microsoft.Build.Evaluation.Project"/>.
39977             </summary>
39978             <param name="projectRootElement">The project XML root element to unload.</param>
39979         </member>
39980         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.OnAfterRenameLoadedProject(System.String,Microsoft.Build.Evaluation.Project)">
39981             <summary>
39982             Called by a Project object to load itself into this collection.
39983             If the project was already loaded under a different name, it is unloaded.
39984             Stores the project in the list of loaded projects if it has a name.
39985             Does not store the project if it has no name because it has not been saved to disk yet.
39986             If the project previously had a name, but was not in the collection already, throws InvalidOperationException.
39987             If the project was not previously in the collection, sets the collection's global properties on it.
39988             </summary>
39989         </member>
39990         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.AfterUpdateLoadedProjectGlobalProperties(Microsoft.Build.Evaluation.Project)">
39991             <summary>
39992             Called after a loaded project's global properties are changed, so we can update
39993             our loaded project table.
39994             Project need not already be in the project collection yet, but it can't be in another one.
39995             </summary>
39996             <remarks>
39997             We have to remove and re-add so that there's an error if there's already an equivalent
39998             project loaded.
39999             </remarks>
40000         </member>
40001         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.Dispose(System.Boolean)">
40002             <summary>
40003             Following standard framework guideline dispose pattern.
40004             Shut down logging service if the project collection owns one, in order
40005             to shut down the logger thread and loggers.
40006             </summary>
40007             <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources..</param>
40008         </member>
40009         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RemoveToolsetInternal(System.String)">
40010             <summary>
40011             Remove a toolset and does not raise events. The caller should have acquired a lock on this method's behalf.
40012             </summary>
40013             <param name="toolsVersion">The toolset to remove.</param>
40014             <returns><c>true</c> if the toolset was found and removed; <c>false</c> otherwise.</returns>
40015         </member>
40016         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.RegisterLoggerInternal(Microsoft.Build.Framework.ILogger)">
40017             <summary>
40018             Adds a logger to the collection of loggers used for builds of projects in this collection.
40019             If the logger object is already in the collection, does nothing.
40020             </summary>
40021         </member>
40022         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ProjectRootElementCache_ProjectRootElementAddedHandler(System.Object,Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryEventArgs)">
40023             <summary>
40024             Handler which is called when a project is added to the RootElementCache of this project collection. We then fire an event indicating that a project was added to the collection itself.
40025             </summary>
40026         </member>
40027         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ProjectRootElementCache_ProjectRootElementDirtiedHandler(System.Object,Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs)">
40028             <summary>
40029             Handler which is called when a project that is part of this collection is dirtied. We then fire an event indicating that a project has been dirtied.
40030             </summary>
40031         </member>
40032         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ProjectRootElementCache_ProjectDirtiedHandler(System.Object,Microsoft.Build.Evaluation.ProjectChangedEventArgs)">
40033             <summary>
40034             Handler which is called when a project is dirtied.
40035             </summary>
40036         </member>
40037         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.OnProjectXmlChanged(Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs)">
40038             <summary>
40039             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectXmlChanged"/> event.
40040             </summary>
40041             <param name="e">The event arguments that indicate ProjectRootElement-specific details.</param>
40042         </member>
40043         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.OnProjectChanged(Microsoft.Build.Evaluation.ProjectChangedEventArgs)">
40044             <summary>
40045             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectChanged"/> event.
40046             </summary>
40047             <param name="e">The event arguments that indicate Project-specific details.</param>
40048         </member>
40049         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.OnProjectCollectionChanged(Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs)">
40050             <summary>
40051             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectCollectionChanged"/> event.
40052             </summary>
40053             <param name="e">The event arguments that indicate details on what changed on the collection.</param>
40054         </member>
40055         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.OnProjectCollectionChangedIfNonNull(Microsoft.Build.Evaluation.ProjectCollectionChangedEventArgs)">
40056             <summary>
40057             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectCollection.ProjectCollectionChanged"/> event if the args parameter is non-null.
40058             </summary>
40059             <param name="e">The event arguments that indicate details on what changed on the collection.</param>
40060         </member>
40061         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ShutDownLoggingService">
40062             <summary>
40063             Shutdown the logging service
40064             </summary>
40065         </member>
40066         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.CreateLoggingService(System.Int32,System.Boolean)">
40067             <summary>
40068             Create a new logging service
40069             </summary>
40070         </member>
40071         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ResetToolsetsForTests(Microsoft.Build.Evaluation.ToolsetConfigurationReader)">
40072             <summary>
40073             Reset the toolsets using the provided toolset reader, used by unit tests
40074             </summary>
40075         </member>
40076         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ResetToolsetsForTests(Microsoft.Build.Evaluation.ToolsetRegistryReader)">
40077             <summary>
40078             Reset the toolsets using the provided toolset reader, used by unit tests
40079             </summary>
40080         </member>
40081         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.InitializeToolsetCollection(Microsoft.Build.Evaluation.ToolsetRegistryReader,Microsoft.Build.Evaluation.ToolsetConfigurationReader)">
40082             <summary>
40083             Populate Toolsets with a dictionary of (toolset version, Toolset) 
40084             using information from the registry and config file, if any.  
40085             </summary>
40086         </member>
40087         <member name="T:Microsoft.Build.Evaluation.ProjectCollection.ProjectAddedToProjectCollectionEventArgs">
40088             <summary>
40089             Event to provide information about what project just got added to the project collection.
40090             </summary>
40091         </member>
40092         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ProjectAddedToProjectCollectionEventArgs._rootElement">
40093             <summary>
40094             Root element which was added to the project collection.
40095             </summary>
40096         </member>
40097         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ProjectAddedToProjectCollectionEventArgs.#ctor(Microsoft.Build.Construction.ProjectRootElement)">
40098             <summary>
40099             The root element which was added to the project collection.
40100             </summary>
40101         </member>
40102         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ProjectAddedToProjectCollectionEventArgs.ProjectRootElement">
40103             <summary>
40104             Root element which was added to the project collection.
40105             </summary>
40106         </member>
40107         <member name="T:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger">
40108             <summary>
40109             The ReusableLogger wraps a logger and allows it to be used for both design-time and build-time.  It internally swaps
40110             between the design-time and build-time event sources in response to Initialize and Shutdown events.
40111             </summary>
40112         </member>
40113         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._originalLogger">
40114             <summary>
40115             The logger we are wrapping.
40116             </summary>
40117         </member>
40118         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._designTimeEventSource">
40119             <summary>
40120             The design-time event source
40121             </summary>
40122         </member>
40123         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildTimeEventSource">
40124             <summary>
40125             The build-time event source
40126             </summary>
40127         </member>
40128         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._anyEventHandler">
40129             <summary>
40130             The Any event handler
40131             </summary>
40132         </member>
40133         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildFinishedEventHandler">
40134             <summary>
40135             The BuildFinished event handler
40136             </summary>
40137         </member>
40138         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildStartedEventHandler">
40139             <summary>
40140             The BuildStarted event handler
40141             </summary>
40142         </member>
40143         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._customBuildEventHandler">
40144             <summary>
40145             The Custom event handler
40146             </summary>
40147         </member>
40148         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildErrorEventHandler">
40149             <summary>
40150             The Error event handler
40151             </summary>
40152         </member>
40153         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildMessageEventHandler">
40154             <summary>
40155             The Message event handler
40156             </summary>
40157         </member>
40158         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._projectFinishedEventHandler">
40159             <summary>
40160             The ProjectFinished event handler
40161             </summary>
40162         </member>
40163         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._projectStartedEventHandler">
40164             <summary>
40165             The ProjectStarted event handler
40166             </summary>
40167         </member>
40168         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildStatusEventHandler">
40169             <summary>
40170             The Status event handler
40171             </summary>
40172         </member>
40173         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._targetFinishedEventHandler">
40174             <summary>
40175             The TargetFinished event handler
40176             </summary>
40177         </member>
40178         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._targetStartedEventHandler">
40179             <summary>
40180             The TargetStarted event handler
40181             </summary>
40182         </member>
40183         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._taskFinishedEventHandler">
40184             <summary>
40185             The TaskFinished event handler
40186             </summary>
40187         </member>
40188         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._taskStartedEventHandler">
40189             <summary>
40190             The TaskStarted event handler
40191             </summary>
40192         </member>
40193         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._buildWarningEventHandler">
40194             <summary>
40195             The Warning event handler
40196             </summary>
40197         </member>
40198         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger._telemetryEventHandler">
40199             <summary>
40200              The telemetry event handler.
40201             </summary>
40202         </member>
40203         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.#ctor(Microsoft.Build.Framework.ILogger)">
40204             <summary>
40205             Constructor.
40206             </summary>
40207         </member>
40208         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.MessageRaised">
40209             <summary>
40210             The Message logging event
40211             </summary>
40212         </member>
40213         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ErrorRaised">
40214             <summary>
40215             The Error logging event
40216             </summary>
40217         </member>
40218         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.WarningRaised">
40219             <summary>
40220             The Warning logging event
40221             </summary>
40222         </member>
40223         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.BuildStarted">
40224             <summary>
40225             The BuildStarted logging event
40226             </summary>
40227         </member>
40228         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.BuildFinished">
40229             <summary>
40230             The BuildFinished logging event
40231             </summary>
40232         </member>
40233         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ProjectStarted">
40234             <summary>
40235             The ProjectStarted logging event
40236             </summary>
40237         </member>
40238         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ProjectFinished">
40239             <summary>
40240             The ProjectFinished logging event
40241             </summary>
40242         </member>
40243         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TargetStarted">
40244             <summary>
40245             The TargetStarted logging event
40246             </summary>
40247         </member>
40248         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TargetFinished">
40249             <summary>
40250             The TargetFinished logging event
40251             </summary>
40252         </member>
40253         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TaskStarted">
40254             <summary>
40255             The TashStarted logging event
40256             </summary>
40257         </member>
40258         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TaskFinished">
40259             <summary>
40260             The TaskFinished logging event
40261             </summary>
40262         </member>
40263         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.CustomEventRaised">
40264             <summary>
40265             The Custom logging event
40266             </summary>
40267         </member>
40268         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.StatusEventRaised">
40269             <summary>
40270             The Status logging event
40271             </summary>
40272         </member>
40273         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.AnyEventRaised">
40274             <summary>
40275             The Any logging event
40276             </summary>
40277         </member>
40278         <member name="E:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TelemetryLogged">
40279             <summary>
40280             The telemetry sent event.
40281             </summary>
40282         </member>
40283         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Verbosity">
40284             <summary>
40285             The logger verbosity
40286             </summary>
40287         </member>
40288         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Parameters">
40289             <summary>
40290             The logger parameters
40291             </summary>
40292         </member>
40293         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Initialize(Microsoft.Build.Framework.IEventSource,System.Int32)">
40294             <summary>
40295             If we haven't yet been initialized, we register for design time events and initialize the logger we are holding.
40296             If we are in design-time mode
40297             </summary>
40298         </member>
40299         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Initialize(Microsoft.Build.Framework.IEventSource)">
40300             <summary>
40301             If we haven't yet been initialized, we register for design time events and initialize the logger we are holding.
40302             If we are in design-time mode
40303             </summary>
40304         </member>
40305         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Shutdown">
40306             <summary>
40307             If we are in build-time mode, we unregister for build-time events and re-register for design-time events.
40308             If we are in design-time mode, we unregister for design-time events and shut down the logger we are holding.
40309             </summary>
40310         </member>
40311         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.RegisterForEvents(Microsoft.Build.Framework.IEventSource)">
40312             <summary>
40313             Registers for all of the events on the specified event source.
40314             </summary>
40315         </member>
40316         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.UnregisterForEvents(Microsoft.Build.Framework.IEventSource)">
40317             <summary>
40318             Unregisters for all events on the specified event source.
40319             </summary>
40320         </member>
40321         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.WarningRaisedHandler(System.Object,Microsoft.Build.Framework.BuildWarningEventArgs)">
40322             <summary>
40323             Handler for Warning events.
40324             </summary>
40325         </member>
40326         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TaskStartedHandler(System.Object,Microsoft.Build.Framework.TaskStartedEventArgs)">
40327             <summary>
40328             Handler for TaskStartedevents.
40329             </summary>
40330         </member>
40331         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TaskFinishedHandler(System.Object,Microsoft.Build.Framework.TaskFinishedEventArgs)">
40332             <summary>
40333             Handler for TaskFinished events.
40334             </summary>
40335         </member>
40336         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TargetStartedHandler(System.Object,Microsoft.Build.Framework.TargetStartedEventArgs)">
40337             <summary>
40338             Handler for TargetStarted events.
40339             </summary>
40340         </member>
40341         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TargetFinishedHandler(System.Object,Microsoft.Build.Framework.TargetFinishedEventArgs)">
40342             <summary>
40343             Handler for TargetFinished events.
40344             </summary>
40345         </member>
40346         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.StatusEventRaisedHandler(System.Object,Microsoft.Build.Framework.BuildStatusEventArgs)">
40347             <summary>
40348             Handler for Status events.
40349             </summary>
40350         </member>
40351         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ProjectStartedHandler(System.Object,Microsoft.Build.Framework.ProjectStartedEventArgs)">
40352             <summary>
40353             Handler for ProjectStarted events.
40354             </summary>
40355         </member>
40356         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ProjectFinishedHandler(System.Object,Microsoft.Build.Framework.ProjectFinishedEventArgs)">
40357             <summary>
40358             Handler for ProjectFinished events.
40359             </summary>
40360         </member>
40361         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.MessageRaisedHandler(System.Object,Microsoft.Build.Framework.BuildMessageEventArgs)">
40362             <summary>
40363             Handler for Message events.
40364             </summary>
40365         </member>
40366         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.ErrorRaisedHandler(System.Object,Microsoft.Build.Framework.BuildErrorEventArgs)">
40367             <summary>
40368             Handler for Error events.
40369             </summary>
40370         </member>
40371         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.CustomEventRaisedHandler(System.Object,Microsoft.Build.Framework.CustomBuildEventArgs)">
40372             <summary>
40373             Handler for Custom events.
40374             </summary>
40375         </member>
40376         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.BuildStartedHandler(System.Object,Microsoft.Build.Framework.BuildStartedEventArgs)">
40377             <summary>
40378             Handler for BuildStarted events.
40379             </summary>
40380         </member>
40381         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.BuildFinishedHandler(System.Object,Microsoft.Build.Framework.BuildFinishedEventArgs)">
40382             <summary>
40383             Handler for BuildFinished events.
40384             </summary>
40385         </member>
40386         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.AnyEventRaisedHandler(System.Object,Microsoft.Build.Framework.BuildEventArgs)">
40387             <summary>
40388             Handler for Any events.
40389             </summary>
40390         </member>
40391         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.TelemetryLoggedHandler(System.Object,Microsoft.Build.Framework.TelemetryEventArgs)">
40392             <summary>
40393             Handler for telemetry events.
40394             </summary>
40395         </member>
40396         <member name="T:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection">
40397             <summary>
40398             Holder for the projects loaded into this collection.
40399             </summary>
40400         </member>
40401         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection._loadedProjects">
40402              <summary>
40403              The collection of all projects already loaded into this collection.
40404              Key is the full path to the project, value is a list of projects with that path, each
40405              with different global properties and/or tools version.
40406              </summary>
40407              <remarks>
40408              If hosts tend to load lots of projects with the same path, the value will have to be 
40409              changed to a more efficient type of collection.
40410             
40411              Lock on this object. Concurrent load must be thread safe.
40412              Not using ConcurrentDictionary because some of the add/update
40413              semantics would get convoluted.
40414              </remarks>
40415         </member>
40416         <member name="F:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection._count">
40417             <summary>
40418             Count of loaded projects
40419             </summary>
40420         </member>
40421         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.#ctor">
40422             <summary>
40423             Constructor
40424             </summary>
40425         </member>
40426         <member name="P:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.Count">
40427             <summary>
40428             Returns the number of projects currently loaded
40429             </summary>
40430         </member>
40431         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.GetEnumerator">
40432             <summary>
40433             Enumerate all the projects
40434             </summary>
40435         </member>
40436         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.System#Collections#IEnumerable#GetEnumerator">
40437             <summary>
40438             Enumerate all the projects.
40439             </summary>
40440         </member>
40441         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.GetMatchingProjectsIfAny(System.String)">
40442             <summary>
40443             Get all projects with the provided path.
40444             Returns an empty list if there are none.
40445             </summary>
40446         </member>
40447         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.GetMatchingProjectIfAny(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
40448             <summary>
40449             Returns the project in the collection matching the path, global properties, and tools version provided.
40450             There can be no more than one match.
40451             If none is found, returns null.
40452             </summary>
40453         </member>
40454         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.AddProject(Microsoft.Build.Evaluation.Project)">
40455             <summary>
40456             Adds the provided project to the collection.
40457             If there is already an equivalent project, throws InvalidOperationException.
40458             </summary>
40459         </member>
40460         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.RemoveProject(Microsoft.Build.Evaluation.Project)">
40461             <summary>
40462             Removes the provided project from the collection.
40463             If project was not loaded, returns false.
40464             </summary>
40465         </member>
40466         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.RemoveProject(System.String,Microsoft.Build.Evaluation.Project)">
40467             <summary>
40468             Removes a project, using the specified full path to use as the key to find it.
40469             This is specified separately in case the project was previously stored under a different path.
40470             </summary>
40471         </member>
40472         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.RemoveAllProjects">
40473             <summary>
40474             Removes all projects from the collection.
40475             </summary>
40476         </member>
40477         <member name="M:Microsoft.Build.Evaluation.ProjectCollection.LoadedProjectCollection.HasEquivalentGlobalPropertiesAndToolsVersion(Microsoft.Build.Evaluation.Project,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
40478             <summary>
40479             Returns true if the global properties and tools version provided are equivalent to
40480             those in the provided project, otherwise false.
40481             </summary>
40482         </member>
40483         <member name="T:Microsoft.Build.Evaluation.Project">
40484             <summary>
40485             Represents an evaluated project with design time semantics.
40486             Always backed by XML; can be built directly, or an instance can be cloned off to add virtual items/properties and build.
40487             Edits to this project always update the backing XML.
40488             </summary>
40489             <remarks>
40490             UNDONE: (Multiple configurations.) Protect against problems when attempting to edit, after edits were made to the same ProjectRootElement either directly or through other projects evaluated from that ProjectRootElement.
40491             </remarks>
40492         </member>
40493         <member name="F:Microsoft.Build.Evaluation.Project.s_debugEvaluation">
40494             <summary>
40495             Whether to write information about why we evaluate to debug output.
40496             </summary>
40497         </member>
40498         <member name="F:Microsoft.Build.Evaluation.Project._xml">
40499             <summary>
40500             Backing XML object.
40501             Can never be null: projects must always be backed by XML
40502             </summary>
40503         </member>
40504         <member name="F:Microsoft.Build.Evaluation.Project._projectCollection">
40505             <summary>
40506             Project collection in which this Project is a member.
40507             All Project's are a member of exactly one ProjectCollection.
40508             Their backing ProjectRootElement may be shared with Projects in another ProjectCollection.
40509             </summary>
40510         </member>
40511         <member name="F:Microsoft.Build.Evaluation.Project.s_buildEventContext">
40512             <summary>
40513             Context to log messages and events in
40514             </summary>
40515         </member>
40516         <member name="F:Microsoft.Build.Evaluation.Project._data">
40517             <summary>
40518             Backing data; stored in a nested class so it can be passed to the Evaluator to fill
40519             in on re-evaluation, without having to expose property setters for that purpose.
40520             Also it makes it easy to re-evaluate this project without creating a new project object.
40521             </summary>
40522         </member>
40523         <member name="F:Microsoft.Build.Evaluation.Project._evaluatedVersion">
40524             <summary>
40525             The highest version of the backing ProjectRootElements (including imports) that this object was last evaluated from.
40526             Edits to the ProjectRootElement either by this Project or another Project increment the number.
40527             If that number is different from this one a reevaluation is necessary at some point.
40528             </summary>
40529         </member>
40530         <member name="F:Microsoft.Build.Evaluation.Project._evaluatedToolsetCollectionVersion">
40531             <summary>
40532             The version of the tools information in the project collection against we were last evaluated.
40533             </summary>
40534         </member>
40535         <member name="F:Microsoft.Build.Evaluation.Project._explicitlyMarkedDirty">
40536             <summary>
40537             Whether the project has been explicitly marked as dirty. Generally this is not necessary to set; all edits affecting
40538             this project will automatically make it dirty. However there are potential corner cases where it is necessary to mark it dirty
40539             directly. For example, if the project has an import conditioned on a file existing on disk, and the file did not exist at
40540             evaluation time, then someone subsequently writes the file, the project will not know that reevaluation would be productive,
40541             and would not dirty itself. In such a case the host should help us by setting the dirty flag explicitly.
40542             </summary>
40543         </member>
40544         <member name="F:Microsoft.Build.Evaluation.Project._isBuildEnabled">
40545             <summary>
40546             This controls whether or not the building of targets/tasks is enabled for this
40547             project.  This is for security purposes in case a host wants to closely
40548             control which projects it allows to run targets/tasks.
40549             </summary>
40550         </member>
40551         <member name="F:Microsoft.Build.Evaluation.Project._loadSettings">
40552             <summary>
40553             The load settings, such as to ignore missing imports.
40554             This is retained after construction as it will be needed for reevaluation.
40555             </summary>
40556         </member>
40557         <member name="F:Microsoft.Build.Evaluation.Project._renameHandler">
40558             <summary>
40559             The delegate registered with the ProjectRootElement to be called if the file name
40560             is changed. Retained so that ultimately it can be unregistered.
40561             If it has been set to null, the project has been unloaded from its collection.
40562             </summary>
40563         </member>
40564         <member name="F:Microsoft.Build.Evaluation.Project.DefaultNewProjectTemplateOptions">
40565             <summary>
40566             Default project template options (include all features).
40567             </summary>
40568         </member>
40569         <member name="M:Microsoft.Build.Evaluation.Project.#ctor">
40570             <summary>
40571             Construct an empty project, evaluating with the global project collection's
40572             global properties and default tools version.
40573             Project will be added to the global project collection when it is named.
40574             </summary>
40575         </member>
40576         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Evaluation.NewProjectFileOptions)">
40577             <summary>
40578             Construct an empty project, evaluating with the global project collection's
40579             global properties and default tools version.
40580             Project will be added to the global project collection when it is named.
40581             </summary>
40582         </member>
40583         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Evaluation.ProjectCollection)">
40584             <summary>
40585             Construct an empty project, evaluating with the specified project collection's
40586             global properties and default tools version.
40587             Project will be added to the specified project collection when it is named.
40588             </summary>
40589         </member>
40590         <member name="P:Microsoft.Build.Evaluation.Project.ThrowInsteadOfSplittingItemElement">
40591              <summary>
40592              Certain item operations split the item element in multiple elements if the include
40593              contains globs, references to items or properties, or multiple item values.
40594             
40595              The items operations that may expand item elements are:
40596              - <see cref="M:Microsoft.Build.Evaluation.Project.RemoveItem(Microsoft.Build.Evaluation.ProjectItem)"/>
40597              - <see cref="M:Microsoft.Build.Evaluation.Project.RemoveItems(System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.ProjectItem})"/>
40598              - <see cref="M:Microsoft.Build.Evaluation.ProjectItem.ChangeItemType(System.String)"/>
40599              - <see cref="M:Microsoft.Build.Evaluation.ProjectItem.Rename(System.String)"/>
40600              - <see cref="M:Microsoft.Build.Evaluation.ProjectItem.RemoveMetadata(System.String)"/>
40601              - <see cref="M:Microsoft.Build.Evaluation.ProjectItem.SetMetadataValue(System.String,System.String)"/>
40602              
40603              When this property is set to true, the previous item operations throw an <exception cref="T:System.InvalidOperationException"></exception>
40604              instead of expanding the item element. 
40605              </summary>
40606         </member>
40607         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.NewProjectFileOptions)">
40608             <summary>
40609             Construct an empty project, evaluating with the specified project collection's
40610             global properties and default tools version.
40611             Project will be added to the specified project collection when it is named.
40612             </summary>
40613         </member>
40614         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
40615             <summary>
40616             Construct an empty project, evaluating with the specified project collection and
40617             the specified global properties and default tools version, either of which may be null.
40618             Project will be added to the specified project collection when it is named.
40619             </summary>
40620             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40621             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40622             <param name="projectCollection">The <see cref="P:Microsoft.Build.Evaluation.Project.ProjectCollection"/> the project is added to.</param>
40623         </member>
40624         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.NewProjectFileOptions)">
40625             <summary>
40626             Construct an empty project, evaluating with the specified project collection and
40627             the specified global properties and default tools version, either of which may be null.
40628             Project will be added to the specified project collection when it is named.
40629             </summary>
40630             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40631             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40632             <param name="projectCollection">The <see cref="P:Microsoft.Build.Evaluation.Project.ProjectCollection"/> the project is added to.</param>
40633             <param name="newProjectFileOptions">The <see cref="T:Microsoft.Build.Evaluation.NewProjectFileOptions"/> to use for the new project.</param>
40634         </member>
40635         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Construction.ProjectRootElement)">
40636             <summary>
40637             Construct over a ProjectRootElement object, evaluating with the global project collection's
40638             global properties and default tools version.
40639             Project is added to the global project collection if it has a name, or else when it is named.
40640             Throws InvalidProjectFileException if the evaluation fails.
40641             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40642             </summary>
40643             <param name="xml">ProjectRootElement to use</param>
40644         </member>
40645         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
40646             <summary>
40647             Construct over a ProjectRootElement object, evaluating with specified
40648             global properties and toolset, either or both of which may be null.
40649             Project is added to the global project collection if it has a name, or else when it is named.
40650             Throws InvalidProjectFileException if the evaluation fails.
40651             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40652             </summary>
40653             <param name="xml">ProjectRootElement to use</param>
40654             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40655             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40656         </member>
40657         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
40658             <summary>
40659             Construct over a ProjectRootElement object, evaluating with specified
40660             global properties and toolset, either or both of which may be null.
40661             Project is added to the global project collection if it has a name, or else when it is named.
40662             Throws InvalidProjectFileException if the evaluation fails.
40663             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40664             </summary>
40665             <param name="xml">ProjectRootElement to use</param>
40666             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40667             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40668             <param name="projectCollection">The <see cref="P:Microsoft.Build.Evaluation.Project.ProjectCollection"/> the project is added to.</param>
40669         </member>
40670         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40671             <summary>
40672             Construct over a ProjectRootElement object, evaluating with specified
40673             global properties and toolset, either or both of which may be null.
40674             Project is added to the global project collection if it has a name, or else when it is named.
40675             Throws InvalidProjectFileException if the evaluation fails.
40676             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40677             </summary>
40678             <param name="xml">ProjectRootElement to use</param>
40679             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40680             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40681             <param name="projectCollection">The <see cref="P:Microsoft.Build.Evaluation.Project.ProjectCollection"/> the project is added to.</param>
40682             <param name="loadSettings">The <see cref="T:Microsoft.Build.Evaluation.ProjectLoadSettings"/> to use for evaluation.</param>
40683         </member>
40684         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(Microsoft.Build.Construction.ProjectRootElement,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40685             <summary>
40686             Construct over a ProjectRootElement object, evaluating with specified
40687             global properties and toolset, either or both of which may be null.
40688             Project is added to the global project collection if it has a name, or else when it is named.
40689             Throws InvalidProjectFileException if the evaluation fails.
40690             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40691             </summary>
40692             <param name="xml">ProjectRootElement to use</param>
40693             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40694             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40695             <param name="subToolsetVersion">Sub-toolset version to explicitly evaluate the toolset with.  May be null.</param>
40696             <param name="projectCollection">The <see cref="P:Microsoft.Build.Evaluation.Project.ProjectCollection"/> the project is added to.</param>
40697             <param name="loadSettings">The <see cref="T:Microsoft.Build.Evaluation.ProjectLoadSettings"/> to use for evaluation.</param>
40698         </member>
40699         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Xml.XmlReader)">
40700             <summary>
40701             Construct over a text reader over project xml, evaluating with the global project collection's
40702             global properties and default tools version.
40703             Project will be added to the global project collection when it is named.
40704             Throws InvalidProjectFileException if the evaluation fails.
40705             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40706             </summary>
40707             <param name="xmlReader">Xml reader to read project from</param>
40708         </member>
40709         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Xml.XmlReader,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
40710             <summary>
40711             Construct over a text reader over project xml, evaluating with specified
40712             global properties and toolset, either or both of which may be null.
40713             Project will be added to the global project collection when it is named.
40714             Throws InvalidProjectFileException if the evaluation fails.
40715             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40716             </summary>
40717             <param name="xmlReader">Xml reader to read project from</param>
40718             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40719             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40720         </member>
40721         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Xml.XmlReader,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
40722             <summary>
40723             Construct over a text reader over project xml, evaluating with specified
40724             global properties and toolset, either or both of which may be null.
40725             Project will be added to the specified project collection when it is named.
40726             Throws InvalidProjectFileException if the evaluation fails.
40727             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40728             </summary>
40729             <param name="xmlReader">Xml reader to read project from</param>
40730             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40731             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40732             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40733         </member>
40734         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Xml.XmlReader,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40735             <summary>
40736             Construct over a text reader over project xml, evaluating with specified
40737             global properties and toolset, either or both of which may be null.
40738             Project will be added to the specified project collection when it is named.
40739             Throws InvalidProjectFileException if the evaluation fails.
40740             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40741             </summary>
40742             <param name="xmlReader">Xml reader to read project from</param>
40743             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40744             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40745             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40746             <param name="loadSettings">The <see cref="T:Microsoft.Build.Evaluation.ProjectLoadSettings"/> to use for evaluation.</param>
40747         </member>
40748         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.Xml.XmlReader,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40749             <summary>
40750             Construct over a text reader over project xml, evaluating with specified
40751             global properties and toolset, either or both of which may be null.
40752             Project will be added to the specified project collection when it is named.
40753             Throws InvalidProjectFileException if the evaluation fails.
40754             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40755             </summary>
40756             <param name="xmlReader">Xml reader to read project from</param>
40757             <param name="globalProperties">Global properties to evaluate with. May be null in which case the containing project collection's global properties will be used.</param>
40758             <param name="toolsVersion">Tools version to evaluate with. May be null</param>
40759             <param name="subToolsetVersion">Sub-toolset version to explicitly evaluate the toolset with.  May be null.</param>
40760             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40761             <param name="loadSettings">The load settings for this project.</param>
40762         </member>
40763         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.String)">
40764             <summary>
40765             Construct over an existing project file, evaluating with the global project collection's
40766             global properties and default tools version.
40767             Project is added to the global project collection.
40768             Throws InvalidProjectFileException if the evaluation fails.
40769             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40770             May throw IO-related exceptions.
40771             </summary>
40772             <exception cref="T:Microsoft.Build.Exceptions.InvalidProjectFileException">If the evaluation fails.</exception>
40773         </member>
40774         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
40775             <summary>
40776             Construct over an existing project file, evaluating with specified
40777             global properties and toolset, either or both of which may be null.
40778             Project is added to the global project collection.
40779             Throws InvalidProjectFileException if the evaluation fails.
40780             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40781             May throw IO-related exceptions.
40782             </summary>
40783         </member>
40784         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection)">
40785             <summary>
40786             Construct over an existing project file, evaluating with the specified global properties and 
40787             using the tools version provided, either or both of which may be null.
40788             Project is added to the global project collection.
40789             Throws InvalidProjectFileException if the evaluation fails.
40790             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40791             May throw IO-related exceptions.
40792             </summary>
40793             <param name="projectFile">The project file</param>
40794             <param name="globalProperties">The global properties. May be null.</param>
40795             <param name="toolsVersion">The tools version. May be null.</param>
40796             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40797         </member>
40798         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40799             <summary>
40800             Construct over an existing project file, evaluating with the specified global properties and 
40801             using the tools version provided, either or both of which may be null.
40802             Project is added to the global project collection.
40803             Throws InvalidProjectFileException if the evaluation fails.
40804             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40805             May throw IO-related exceptions.
40806             </summary>
40807             <param name="projectFile">The project file</param>
40808             <param name="globalProperties">The global properties. May be null.</param>
40809             <param name="toolsVersion">The tools version. May be null.</param>
40810             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40811             <param name="loadSettings">The load settings for this project.</param>
40812         </member>
40813         <member name="M:Microsoft.Build.Evaluation.Project.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Evaluation.ProjectLoadSettings)">
40814             <summary>
40815             Construct over an existing project file, evaluating with the specified global properties and 
40816             using the tools version provided, either or both of which may be null.
40817             Project is added to the global project collection.
40818             Throws InvalidProjectFileException if the evaluation fails.
40819             Throws InvalidOperationException if there is already an equivalent project loaded in the project collection.
40820             May throw IO-related exceptions.
40821             </summary>
40822             <param name="projectFile">The project file</param>
40823             <param name="globalProperties">The global properties. May be null.</param>
40824             <param name="toolsVersion">The tools version. May be null.</param>
40825             <param name="subToolsetVersion">Sub-toolset version to explicitly evaluate the toolset with.  May be null.</param>
40826             <param name="projectCollection">The collection with which this project should be associated. May not be null.</param>
40827             <param name="loadSettings">The load settings for this project.</param>
40828         </member>
40829         <member name="T:Microsoft.Build.Evaluation.Project.BuildEnabledSetting">
40830             <summary>
40831             Whether build is enabled for this project.
40832             </summary>
40833         </member>
40834         <member name="F:Microsoft.Build.Evaluation.Project.BuildEnabledSetting.BuildEnabled">
40835             <summary>
40836             Explicitly enabled
40837             </summary>
40838         </member>
40839         <member name="F:Microsoft.Build.Evaluation.Project.BuildEnabledSetting.BuildDisabled">
40840             <summary>
40841             Explicitly disabled
40842             </summary>
40843         </member>
40844         <member name="F:Microsoft.Build.Evaluation.Project.BuildEnabledSetting.UseProjectCollectionSetting">
40845             <summary>
40846             No explicit setting, uses the setting on the
40847             project collection.
40848             This is the default.
40849             </summary>
40850         </member>
40851         <member name="P:Microsoft.Build.Evaluation.Project.ProjectCollection">
40852             <summary>
40853             Gets or sets the project collection which contains this project.
40854             Can never be null.
40855             Cannot be modified.
40856             </summary>
40857         </member>
40858         <member name="P:Microsoft.Build.Evaluation.Project.Xml">
40859             <summary>
40860             The backing Xml project.
40861             Can never be null
40862             </summary>
40863             <remarks>
40864             There is no setter here as that doesn't make sense. If you have a new ProjectRootElement, evaluate it into a new Project.
40865             </remarks>
40866         </member>
40867         <member name="P:Microsoft.Build.Evaluation.Project.IsDirty">
40868             <summary>
40869             Whether this project is dirty such that it needs reevaluation.
40870             This may be because its underlying XML has changed (either through this project or another)
40871             either the XML of the main project or an imported file; 
40872             or because its toolset may have changed.
40873             </summary>
40874         </member>
40875         <member name="P:Microsoft.Build.Evaluation.Project.GlobalProperties">
40876             <summary>
40877             Read only dictionary of the global properties used in the evaluation
40878             of this project.
40879             </summary>
40880             <remarks>
40881             This is the publicly exposed getter, that translates into a read-only dead IDictionary&lt;string, string&gt;.
40882             
40883             In order to easily tell when we're dirtied, setting and removing global properties is done with 
40884             <see cref="M:Microsoft.Build.Evaluation.Project.SetGlobalProperty(System.String,System.String)">SetGlobalProperty</see> and <see cref="M:Microsoft.Build.Evaluation.Project.RemoveGlobalProperty(System.String)">RemoveGlobalProperty</see>.
40885             </remarks>
40886         </member>
40887         <member name="P:Microsoft.Build.Evaluation.Project.ItemTypes">
40888             <summary>
40889             Item types in this project.
40890             This is an ordered collection.
40891             </summary>
40892             <comments>
40893             data.ItemTypes is a KeyCollection, so it doesn't need any 
40894             additional read-only protection
40895             </comments>
40896         </member>
40897         <member name="P:Microsoft.Build.Evaluation.Project.Properties">
40898             <summary>
40899             Properties in this project.
40900             Since evaluation has occurred, this is an unordered collection.
40901             </summary>
40902         </member>
40903         <member name="P:Microsoft.Build.Evaluation.Project.ConditionedProperties">
40904             <summary>
40905             Collection of possible values implied for properties contained in the conditions found on properties,
40906             property groups, imports, and whens.
40907             
40908             For example, if the following conditions existed on properties in a project:
40909             
40910             Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'"
40911             Condition="'$(Configuration)' == 'Release'"
40912             
40913             the table would be populated with
40914             
40915             { "Configuration", { "Debug", "Release" }}
40916             { "Platform", { "x86" }}
40917             
40918             This is used by Visual Studio to determine the configurations defined in the project.
40919             </summary>
40920         </member>
40921         <member name="P:Microsoft.Build.Evaluation.Project.ItemDefinitions">
40922             <summary>
40923             Read-only dictionary of item definitions in this project.
40924             Keyed by item type
40925             </summary>
40926         </member>
40927         <member name="P:Microsoft.Build.Evaluation.Project.Items">
40928             <summary>
40929             Items in this project, ordered within groups of item types
40930             </summary>
40931         </member>
40932         <member name="P:Microsoft.Build.Evaluation.Project.ItemsIgnoringCondition">
40933             <summary>
40934             Items in this project, ordered within groups of item types,
40935             including items whose conditions evaluated to false, or that were
40936             contained within item groups who themselves had conditioned evaluated to false.
40937             This is useful for hosts that wish to display all items, even if they might not be part 
40938             of the build in the current configuration.
40939             </summary>
40940         </member>
40941         <member name="P:Microsoft.Build.Evaluation.Project.Imports">
40942             <summary>
40943             All the files that during evaluation contributed to this project, as ProjectRootElements,
40944             with the ProjectImportElement that caused them to be imported.
40945             This does not include projects that were never imported because a condition on an Import element was false.
40946             The outer ProjectRootElement that maps to this project itself is not included.
40947             </summary>
40948             <remarks>
40949             This can be used by the host to figure out what projects might be impacted by a change to a particular file.
40950             It could also be used, for example, to find the .user file, and use its ProjectRootElement to modify properties in it.
40951             </remarks>
40952         </member>
40953         <member name="P:Microsoft.Build.Evaluation.Project.ImportsIncludingDuplicates">
40954             <summary>
40955             This list will contain duplicate imports if an import is imported multiple times. However, only the first import was used in evaluation.
40956             </summary>
40957         </member>
40958         <member name="P:Microsoft.Build.Evaluation.Project.Targets">
40959             <summary>
40960             Targets in the project. The key to the dictionary is the target's name.
40961             Overridden targets are not included in this collection.
40962             This collection is read-only.
40963             </summary>
40964         </member>
40965         <member name="P:Microsoft.Build.Evaluation.Project.AllEvaluatedProperties">
40966             <summary>
40967             Properties encountered during evaluation. These are read during the first evaluation pass.
40968             Unlike those returned by the Properties property, these are ordered, and includes any properties that
40969             were subsequently overridden by others with the same name. It does not include any 
40970             properties whose conditions did not evaluate to true.
40971             It does not include any properties added since the last evaluation.
40972             </summary>
40973         </member>
40974         <member name="P:Microsoft.Build.Evaluation.Project.AllEvaluatedItemDefinitionMetadata">
40975             <summary>
40976             Item definition metadata encountered during evaluation. These are read during the second evaluation pass.
40977             Unlike those returned by the ItemDefinitions property, these are ordered, and include any metadata that
40978             were subsequently overridden by others with the same name and item type. It does not include any 
40979             elements whose conditions did not evaluate to true.
40980             It does not include any item definition metadata added since the last evaluation.
40981             </summary>
40982         </member>
40983         <member name="P:Microsoft.Build.Evaluation.Project.AllEvaluatedItems">
40984             <summary>
40985             Items encountered during evaluation. These are read during the third evaluation pass.
40986             Unlike those returned by the Items property, these are ordered with respect to all other items 
40987             encountered during evaluation, not just ordered with respect to items of the same item type.
40988             In some applications, like the F# language, this complete mutual ordering is significant, and such hosts
40989             can use this property.
40990             It does not include any elements whose conditions did not evaluate to true.
40991             It does not include any items added since the last evaluation.
40992             </summary>
40993         </member>
40994         <member name="P:Microsoft.Build.Evaluation.Project.ToolsVersion">
40995             <summary>
40996             The tools version this project was evaluated with, if any.
40997             Not necessarily the same as the tools version on the Project tag, if any;
40998             it may have been externally specified, for example with a /tv switch.
40999             The actual tools version on the Project tag, can be gotten from <see cref="P:Microsoft.Build.Evaluation.Project.Xml">Xml.ToolsVersion</see>.
41000             Cannot be changed once the project has been created.
41001             </summary>
41002             <remarks>
41003             Set by construction.
41004             </remarks>
41005         </member>
41006         <member name="P:Microsoft.Build.Evaluation.Project.SubToolsetVersion">
41007             <summary>
41008             The sub-toolset version that, combined with the ToolsVersion, was used to determine
41009             the toolset properties for this project.  
41010             </summary>
41011         </member>
41012         <member name="P:Microsoft.Build.Evaluation.Project.DirectoryPath">
41013             <summary>
41014             The root directory for this project.
41015             Is never null: in-memory projects use the current directory from the time of load.
41016             </summary>
41017         </member>
41018         <member name="P:Microsoft.Build.Evaluation.Project.FullPath">
41019             <summary>
41020             The full path to this project's file.
41021             May be null, if the project was not loaded from disk.
41022             Setter renames the project, if it already had a name.
41023             </summary>
41024         </member>
41025         <member name="P:Microsoft.Build.Evaluation.Project.SkipEvaluation">
41026             <summary>
41027             Whether ReevaluateIfNecessary is temporarily disabled.
41028             This is useful when the host expects to make a number of reads and writes 
41029             to the project, and wants to temporarily sacrifice correctness for performance.
41030             </summary>
41031         </member>
41032         <member name="P:Microsoft.Build.Evaluation.Project.DisableMarkDirty">
41033             <summary>
41034             Whether <see cref="M:Microsoft.Build.Evaluation.Project.MarkDirty">MarkDirty()</see> is temporarily disabled.
41035             This allows, for example, a global property to be set without the project getting
41036             marked dirty for reevaluation as a consequence.
41037             </summary>
41038         </member>
41039         <member name="P:Microsoft.Build.Evaluation.Project.IsBuildEnabled">
41040             <summary>
41041             This controls whether or not the building of targets/tasks is enabled for this
41042             project.  This is for security purposes in case a host wants to closely
41043             control which projects it allows to run targets/tasks.  By default, for a newly
41044             created project, we will use whatever setting is in the parent project collection.
41045             When build is disabled, the Build method on this class will fail. However if
41046             the host has already created a ProjectInstance, it can still build it. (It is 
41047             free to put a similar check around where it does this.)
41048             </summary>
41049         </member>
41050         <member name="P:Microsoft.Build.Evaluation.Project.ProjectFileLocation">
41051             <summary>
41052             Location of the originating file itself, not any specific content within it.
41053             If the file has not been given a name, returns an empty location.
41054             </summary>
41055         </member>
41056         <member name="P:Microsoft.Build.Evaluation.Project.EvaluationCounter">
41057             <summary>
41058             Obsolete. Use <see cref="P:Microsoft.Build.Evaluation.Project.LastEvaluationId"/> instead.
41059             </summary>
41060         </member>
41061         <member name="P:Microsoft.Build.Evaluation.Project.LastEvaluationId">
41062             <summary>
41063             The ID of the last evaluation for this Project.
41064             A project is always evaluated upon construction and can subsequently get evaluated multiple times via
41065             <see cref="M:Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary" />
41066             
41067             It is an arbitrary number that changes when this project reevaluates.
41068             Hosts don't know whether an evaluation actually happened in an interval, but they can compare this number to
41069             their previously stored value to find out, and if so perhaps decide to update their own state.
41070             Note that the number may not increase monotonically.
41071             
41072             This number corresponds to the <seealso cref="P:Microsoft.Build.Framework.BuildEventContext.EvaluationId"/> and can be used to connect
41073             evaluation logging events back to the Project instance.
41074             </summary>
41075         </member>
41076         <member name="P:Microsoft.Build.Evaluation.Project.GlobalPropertiesToTreatAsLocal">
41077             <summary>
41078             List of names of the properties that, while global, are still treated as overridable 
41079             </summary>
41080         </member>
41081         <member name="P:Microsoft.Build.Evaluation.Project.LoggingService">
41082             <summary>
41083             The logging service used for evaluation errors
41084             </summary>
41085         </member>
41086         <member name="M:Microsoft.Build.Evaluation.Project.GetEvaluatedItemIncludeEscaped(Microsoft.Build.Evaluation.ProjectItem)">
41087             <summary>
41088             Returns the evaluated, escaped value of the provided item's include.
41089             </summary>
41090         </member>
41091         <member name="M:Microsoft.Build.Evaluation.Project.GetEvaluatedItemIncludeEscaped(Microsoft.Build.Evaluation.ProjectItemDefinition)">
41092             <summary>
41093             Returns the evaluated, escaped value of the provided item definition's include.
41094             </summary>
41095         </member>
41096         <member name="M:Microsoft.Build.Evaluation.Project.GetAllGlobs">
41097              <summary>
41098              Finds all the globs specified in item includes.
41099              </summary>
41100              <example>
41101              
41102              <code>
41103             <P>*.txt</P>
41104              
41105             <Bar Include="bar"/> (both outside and inside project cone)
41106             <Zar Include="C:\**\*.foo"/> (both outside and inside project cone)
41107             <Foo Include="*.a;*.b" Exclude="3.a"/>
41108             <Foo Remove="2.a" />
41109             <Foo Include="**\*.b" Exclude="1.b;**\obj\*.b;**\bar\*.b"/>
41110             <Foo Include="$(P)"/> 
41111             <Foo Include="*.a;@(Bar);3.a"/> (If Bar has globs, they will have been included when querying Bar ProjectItems for globs)
41112             <Foo Include="*.cs" Exclude="@(Bar)"/>
41113             </code>
41114              
41115             Example result: 
41116             [
41117             GlobResult(glob: "C:\**\*.foo", exclude: []),
41118             GlobResult(glob: ["*.a", "*.b"], exclude=["3.a"], remove=["2.a"]),
41119             GlobResult(glob: "**\*.b", exclude=["1.b, **\obj\*.b", **\bar\*.b"]),
41120             GlobResult(glob: "*.txt", exclude=[]),
41121             GlobResult(glob: "*.a", exclude=[]),
41122             GlobResult(glob: "*.cs", exclude=["bar"])
41123             ]
41124              </example>
41125              <remarks>
41126              <see cref="P:Microsoft.Build.Evaluation.GlobResult.MsBuildGlob"/> is a <see cref="T:Microsoft.Build.Globbing.IMSBuildGlob"/> that combines all globs in the include element and ignores
41127              all the fragments in the exclude attribute and all the fragments in all Remove elements that apply to the include element.
41128              
41129              Users can construct a composite glob that incorporates all the globs in the Project:
41130              <code>
41131              var uberGlob = new CompositeGlob(project.GetAllGlobs().Select(r => r.MSBuildGlob).ToArray());
41132              uberGlob.IsMatch("foo.cs");
41133              </code>
41134              
41135              </remarks>
41136              <returns>
41137              List of <see cref="T:Microsoft.Build.Evaluation.GlobResult"/>.
41138              </returns>
41139         </member>
41140         <member name="M:Microsoft.Build.Evaluation.Project.GetAllGlobs(System.String)">
41141             <summary>
41142             Overload of <see cref="M:Microsoft.Build.Evaluation.Project.GetAllGlobs"/>
41143             </summary>
41144             <param name="itemType">Confine search to item elements of this type</param>
41145         </member>
41146         <member name="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(System.String)">
41147              <summary>
41148              Finds all the item elements in the logical project with itemspecs that match the given string:
41149              - elements that would include (or exclude) the string
41150              - elements that would update the string (not yet implemented)
41151              - elements that would remove the string (not yet implemented)
41152              </summary>
41153              
41154              <example>
41155              The following snippet shows what <c>GetItemProvenance("a.cs")</c> returns for various item elements
41156              <code>
41157              <A Include="a.cs;*.cs"/> // Occurences:2; Operation: Include; Provenance: StringLiteral | Glob
41158              <B Include="*.cs" Exclude="a.cs"/> // Occurences: 1; Operation: Exclude; Provenance: StringLiteral
41159              <C Include="b.cs"/> // NA
41160              <D Include="@(A)"/> // Occurences: 2; Operation: Include; Provenance: Inconclusive (it is an indirect occurence from a referenced item)
41161              <E Include="$(P)"/> // Occurences: 4; Operation: Include; Provenance: FromLiteral (direct reference in $P) | Glob (direct reference in $P) | Inconclusive (it is an indirect occurence from referenced properties and items)
41162              <PropertyGroup>
41163                  <P>a.cs;*.cs;@(A)</P>
41164              </PropertyGroup>
41165              </code>
41166              
41167              </example>
41168              
41169              <remarks>
41170              This method and its overloads are useful for clients that need to inspect all the item elements
41171              that might refer to a specific item instance. For example, Visual Studio uses it to inspect
41172              projects with globs. Upon a file system or IDE file artifact change, VS calls this method to find all the items
41173              that might refer to the detected file change (e.g. 'which item elements refer to "Program.cs"?').
41174              It uses such information to know which elements it should edit to reflect the user or file system changes.
41175              
41176              Literal string matching tries to first match the strings. If the check fails, it then tries to match
41177              the strings as if they represented files: it normalizes both strings as files relative to the current project directory
41178             
41179              GetItemProvenance suffers from some sources of innacuracy:
41180              - it is performed after evaluation, thus is insensitive to item data flow when item references are present
41181              (it sees items as they are at the end of evaluation)
41182              
41183              This API and its return types are prone to change.
41184              </remarks>
41185              
41186              <param name="itemToMatch">The string to perform matching against</param>
41187              
41188              <returns>
41189              A list of <see cref="T:Microsoft.Build.Evaluation.ProvenanceResult"/>, sorted in project evaluation order.
41190              </returns>
41191         </member>
41192         <member name="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(System.String,System.String)">
41193             <summary>
41194             Overload of <see cref="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(System.String)"/>
41195             </summary>
41196             <param name="itemToMatch">The string to perform matching against</param>
41197             <param name="itemType">The item type to constrain the search in</param>
41198         </member>
41199         <member name="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(Microsoft.Build.Evaluation.ProjectItem)">
41200             <summary>
41201             Overload of <see cref="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(System.String)"/>
41202             </summary>
41203             <param name="item"> 
41204             The ProjectItem object that indicates: the itemspec to match and the item type to constrain the search in.
41205             The search is also constrained on item elements appearing before the item element that produced this <paramref name="item"/>.
41206             The element that produced this <paramref name="item"/> is included in the results.
41207             </param>
41208         </member>
41209         <member name="M:Microsoft.Build.Evaluation.Project.GetEvaluatedItemElements">
41210             <summary>
41211             Some project APIs need to do analysis that requires the Evaluator to record more data than usual as it evaluates.
41212             This method checks if the Evaluator was run with the extra required settings and if not, does a re-evaluation.
41213             If a re-evaluation was necessary, it saves this information so a next call does not re-evaluate.
41214             
41215             Using this method avoids storing extra data in memory when its not needed.
41216             </summary>
41217         </member>
41218         <member name="M:Microsoft.Build.Evaluation.Project.ItemMatchesInItemSpecString(System.String,System.String,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.Expander{Microsoft.Build.Evaluation.ProjectProperty,Microsoft.Build.Evaluation.ProjectItem},Microsoft.Build.Evaluation.Provenance@)">
41219             <summary>
41220             Since:
41221                 - we have no proper AST and interpreter for itemspecs that we can do analysis on
41222                 - GetItemProvenance needs to have correct counts for exclude strings (as correct as it can get while doing it after evaluation)
41223             
41224             The temporary hack is to use the expander to expand the strings, and if any property or item references were encountered, return Provenance.Inconclusive
41225             </summary>
41226         </member>
41227         <member name="M:Microsoft.Build.Evaluation.Project.GetMetadataValueEscaped(Microsoft.Build.Evaluation.ProjectMetadata)">
41228             <summary>
41229             Gets the escaped value of the provided metadatum. 
41230             </summary>
41231         </member>
41232         <member name="M:Microsoft.Build.Evaluation.Project.GetMetadataValueEscaped(Microsoft.Build.Evaluation.ProjectItem,System.String)">
41233             <summary>
41234             Gets the escaped value of the metadatum with the provided name on the provided item. 
41235             </summary>
41236         </member>
41237         <member name="M:Microsoft.Build.Evaluation.Project.GetMetadataValueEscaped(Microsoft.Build.Evaluation.ProjectItemDefinition,System.String)">
41238             <summary>
41239             Gets the escaped value of the metadatum with the provided name on the provided item definition. 
41240             </summary>
41241         </member>
41242         <member name="M:Microsoft.Build.Evaluation.Project.GetPropertyValueEscaped(Microsoft.Build.Evaluation.ProjectProperty)">
41243             <summary>
41244             Get the escaped value of the provided property
41245             </summary>
41246         </member>
41247         <member name="M:Microsoft.Build.Evaluation.Project.GetLogicalProject">
41248             <summary>
41249             Returns an iterator over the "logical project". The logical project is defined as
41250             the unevaluated project obtained from the single MSBuild file that is the result 
41251             of inlining the text of all imports of the original MSBuild project manifest file.
41252             </summary>
41253         </member>
41254         <member name="M:Microsoft.Build.Evaluation.Project.GetProperty(System.String)">
41255             <summary>
41256             Get any property in the project that has the specified name,
41257             otherwise returns null
41258             </summary>
41259         </member>
41260         <member name="M:Microsoft.Build.Evaluation.Project.GetPropertyValue(System.String)">
41261             <summary>
41262             Get the unescaped value of a property in this project, or 
41263             an empty string if it does not exist.
41264             </summary>
41265             <remarks>
41266             A property with a value of empty string and no property
41267             at all are not distinguished between by this method.
41268             That makes it easier to use. To find out if a property is set at
41269             all in the project, use GetProperty(name).
41270             </remarks>
41271         </member>
41272         <member name="M:Microsoft.Build.Evaluation.Project.SetProperty(System.String,System.String)">
41273             <summary>
41274             Set or add a property with the specified name and value.
41275             Overwrites the value of any property with the same name already in the collection if it did not originate in an imported file.
41276             If there is no such existing property, uses this heuristic:
41277             Updates the last existing property with the specified name that has no condition on itself or its property group, if any,
41278             and is in this project file rather than an imported file.
41279             Otherwise, adds a new property in the first property group without a condition, creating a property group if necessary after
41280             the last existing property group, else at the start of the project.
41281             Returns the property set.
41282             Evaluates on a best-effort basis:
41283                 -expands with all properties. Properties that are defined in the XML below the new property may be used, even though in a real evaluation they would not be.
41284                 -only this property is evaluated. Anything else that would depend on its value is not affected.
41285             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41286             </summary>
41287         </member>
41288         <member name="M:Microsoft.Build.Evaluation.Project.SetGlobalProperty(System.String,System.String)">
41289             <summary>
41290             Change a global property after the project has been evaluated.
41291             If the value changes, this makes the project require reevaluation.
41292             If the value changes, returns true, otherwise false.
41293             </summary>
41294         </member>
41295         <member name="M:Microsoft.Build.Evaluation.Project.AddItem(System.String,System.String)">
41296             <summary>
41297             Adds an item with no metadata to the project.
41298             Any metadata can be added subsequently.
41299             Does not modify the XML if a wildcard expression would already include the new item.
41300             Evaluates on a best-effort basis:
41301                 -expands with all items. Items that are defined in the XML below the new item may be used, even though in a real evaluation they would not be.
41302                 -only this item is evaluated. Other items that might depend on it is not affected.
41303             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41304             </summary>
41305         </member>
41306         <member name="M:Microsoft.Build.Evaluation.Project.AddItem(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
41307             <summary>
41308             Adds an item with metadata to the project.
41309             Metadata may be null, indicating no metadata.
41310             Does not modify the XML if a wildcard expression would already include the new item.
41311             Evaluates on a best-effort basis:
41312                 -expands with all items. Items that are defined in the XML below the new item may be used, even though in a real evaluation they would not be.
41313                 -only this item is evaluated. Other items that might depend on it is not affected.
41314             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41315             </summary>
41316         </member>
41317         <member name="M:Microsoft.Build.Evaluation.Project.AddItemFast(System.String,System.String)">
41318             <summary>
41319             Adds an item with no metadata to the project.
41320             Makes no effort to see if an existing wildcard would already match the new item, unless it is the first item in an item group.
41321             Makes no effort to locate the new item near similar items.
41322             Appends the item to the first item group that does not have a condition and has either no children or whose first child is an item of the same type.
41323             Evaluates on a best-effort basis:
41324                 -expands with all items. Items that are defined in the XML below the new item may be used, even though in a real evaluation they would not be.
41325                 -only this item is evaluated. Other items that might depend on it is not affected.
41326             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41327             </summary>
41328         </member>
41329         <member name="M:Microsoft.Build.Evaluation.Project.AddItemFast(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
41330             <summary>
41331             Adds an item with metadata to the project.
41332             Metadata may be null, indicating no metadata.
41333             Makes no effort to see if an existing wildcard would already match the new item, unless it is the first item in an item group.
41334             Makes no effort to locate the new item near similar items.
41335             Appends the item to the first item group that does not have a condition and has either no children or whose first child is an item of the same type.
41336             Evaluates on a best-effort basis:
41337                 -expands with all items. Items that are defined in the XML below the new item may be used, even though in a real evaluation they would not be.
41338                 -only this item is evaluated. Other items that might depend on it is not affected.
41339             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41340             </summary>
41341         </member>
41342         <member name="M:Microsoft.Build.Evaluation.Project.GetItems(System.String)">
41343             <summary>
41344             All the items in the project of the specified
41345             type.
41346             If there are none, returns an empty list.
41347             Use AddItem or RemoveItem to modify items in this project.
41348             </summary>
41349             <comments>
41350             data.GetItems returns a read-only collection, so no need to re-wrap it here. 
41351             </comments>
41352         </member>
41353         <member name="M:Microsoft.Build.Evaluation.Project.GetItemsIgnoringCondition(System.String)">
41354             <summary>
41355             All the items in the project of the specified
41356             type, irrespective of whether the conditions on them evaluated to true.
41357             This is a read-only list: use AddItem or RemoveItem to modify items in this project.
41358             </summary>
41359             <comments>
41360             ItemDictionary[] returns a read only collection, so no need to wrap it. 
41361             </comments>
41362         </member>
41363         <member name="M:Microsoft.Build.Evaluation.Project.GetItemsByEvaluatedInclude(System.String)">
41364             <summary>
41365             Returns all items that have the specified evaluated include.
41366             For example, all items that have the evaluated include "bar.cpp".
41367             Typically there will be zero or one, but sometimes there are two items with the
41368             same path and different item types, or even the same item types. This will return
41369             them all.
41370             </summary>
41371             <comments>
41372             data.GetItemsByEvaluatedInclude already returns a read-only collection, so no need
41373             to wrap it further.
41374             </comments>
41375         </member>
41376         <member name="M:Microsoft.Build.Evaluation.Project.RemoveProperty(Microsoft.Build.Evaluation.ProjectProperty)">
41377             <summary>
41378             Removes the specified property.
41379             Property must be associated with this project.
41380             Property must not originate from an imported file.
41381             Returns true if the property was in this evaluated project, otherwise false.
41382             As a convenience, if the parent property group becomes empty, it is also removed.
41383             Updates the evaluated project, but does not affect anything else in the project until reevaluation. For example,
41384             if "p" is removed, it will be removed from the evaluated project, but "q" which is evaluated from "$(p)" will not be modified until reevaluation.
41385             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state.
41386             </summary>
41387         </member>
41388         <member name="M:Microsoft.Build.Evaluation.Project.RemoveGlobalProperty(System.String)">
41389             <summary>
41390             Removes a global property.
41391             If it was set, returns true, and marks the project
41392             as requiring reevaluation.
41393             </summary>
41394         </member>
41395         <member name="M:Microsoft.Build.Evaluation.Project.RemoveItem(Microsoft.Build.Evaluation.ProjectItem)">
41396             <summary>
41397             Removes an item from the project.
41398             Item must be associated with this project.
41399             Item must not originate from an imported file.
41400             Returns true if the item was in this evaluated project, otherwise false.
41401             As a convenience, if the parent item group becomes empty, it is also removed.
41402             If the item originated from a wildcard or semicolon separated expression, expands that expression into multiple items first.
41403             Updates the evaluated project, but does not affect anything else in the project until reevaluation. For example,
41404             if an item of type "i" is removed, "j" which is evaluated from "@(i)" will not be modified until reevaluation.
41405             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state until reevaluation.
41406             </summary>
41407             <remarks>
41408             Normally this will return true, since if the item isn't in the project, it will throw.
41409             The exception is removing an item that was only in ItemsIgnoringCondition.
41410             </remarks>
41411         </member>
41412         <member name="M:Microsoft.Build.Evaluation.Project.RemoveItems(System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.ProjectItem})">
41413             <summary>
41414             Removes all the specified items from the project.
41415             Items that are not associated with this project are skipped.
41416             </summary>
41417             <remarks>
41418             Removing one item could cause the backing XML
41419             to be expanded, which could zombie (disassociate) the next item.
41420             To make this case easy for the caller, if an item
41421             is not associated with this project it is simply skipped.
41422             </remarks>
41423         </member>
41424         <member name="M:Microsoft.Build.Evaluation.Project.ExpandString(System.String)">
41425             <summary>
41426             Evaluates the provided string by expanding items and properties,
41427             as if it was found at the very end of the project file.
41428             This is useful for some hosts for which this kind of best-effort
41429             evaluation is sufficient.
41430             Does not expand bare metadata expressions.
41431             </summary>
41432         </member>
41433         <member name="M:Microsoft.Build.Evaluation.Project.CreateProjectInstance">
41434             <summary>
41435             Returns an instance based on this project, but completely disconnected.
41436             This instance can be used to build independently.
41437             Before creating the instance, this will reevaluate the project if necessary, so it will not be dirty.
41438             </summary>
41439         </member>
41440         <member name="M:Microsoft.Build.Evaluation.Project.CreateProjectInstance(Microsoft.Build.Execution.ProjectInstanceSettings)">
41441             <summary>
41442             Returns an instance based on this project, but completely disconnected.
41443             This instance can be used to build independently.
41444             Before creating the instance, this will reevaluate the project if necessary, so it will not be dirty.
41445             The instance is immutable; none of the objects that form it can be modified. This makes it safe to 
41446             access concurrently from multiple threads.
41447             </summary>
41448         </member>
41449         <member name="M:Microsoft.Build.Evaluation.Project.MarkDirty">
41450             <summary>
41451             Called to forcibly mark the project as dirty requiring reevaluation. Generally this is not necessary to set; all edits affecting
41452             this project will automatically make it dirty. However there are potential corner cases where it is necessary to mark the project dirty
41453             directly. For example, if the project has an import conditioned on a file existing on disk, and the file did not exist at
41454             evaluation time, then someone subsequently creates that file, the project cannot know that reevaluation would be productive.
41455             In such a case the host can help us by setting the dirty flag explicitly so that <see cref="M:Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary">ReevaluateIfNecessary()</see>
41456             will recognize an evaluation is indeed necessary.
41457             Does not mark the underlying project file as requiring saving.
41458             </summary>
41459         </member>
41460         <member name="M:Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary">
41461             <summary>
41462             Reevaluate the project to get it into a queryable state, if it's dirty.
41463             This incorporates all changes previously made to the backing XML by editing this project.
41464             Throws InvalidProjectFileException if the evaluation fails.
41465             </summary>
41466         </member>
41467         <member name="M:Microsoft.Build.Evaluation.Project.Save">
41468             <summary>
41469             Save the project to the file system, if dirty.
41470             Uses the default encoding.
41471             </summary>
41472         </member>
41473         <member name="M:Microsoft.Build.Evaluation.Project.Save(System.Text.Encoding)">
41474             <summary>
41475             Save the project to the file system, if dirty.
41476             </summary>
41477         </member>
41478         <member name="M:Microsoft.Build.Evaluation.Project.Save(System.String)">
41479             <summary>
41480             Save the project to the file system, if dirty or the path is different.
41481             Uses the default encoding.
41482             </summary>
41483         </member>
41484         <member name="M:Microsoft.Build.Evaluation.Project.Save(System.String,System.Text.Encoding)">
41485             <summary>
41486             Save the project to the file system, if dirty or the path is different.
41487             </summary>
41488         </member>
41489         <member name="M:Microsoft.Build.Evaluation.Project.Save(System.IO.TextWriter)">
41490             <summary>
41491             Save the project to the provided TextWriter, whether or not it is dirty.
41492             Uses the encoding of the TextWriter.
41493             Clears the Dirty flag.
41494             </summary>
41495         </member>
41496         <member name="M:Microsoft.Build.Evaluation.Project.SaveLogicalProject(System.IO.TextWriter)">
41497             <summary>
41498             Saves a "logical" or "preprocessed" project file, that includes all the imported 
41499             files as if they formed a single file.
41500             </summary>
41501         </member>
41502         <member name="M:Microsoft.Build.Evaluation.Project.Build">
41503             <summary>
41504             Starts a build using this project, building the default targets.
41505             Returns true on success, false on failure.
41506             Works on a privately cloned instance. To set or get
41507             virtual items for build purposes, clone an instance explicitly and build that.
41508             Does not modify the Project object.
41509             </summary>
41510         </member>
41511         <member name="M:Microsoft.Build.Evaluation.Project.Build(Microsoft.Build.Framework.ILogger)">
41512             <summary>
41513             Starts a build using this project, building the default targets and the specified logger.
41514             Returns true on success, false on failure.
41515             Works on a privately cloned instance. To set or get
41516             virtual items for build purposes, clone an instance explicitly and build that.
41517             Does not modify the Project object.
41518             </summary>
41519         </member>
41520         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
41521             <summary>
41522             Starts a build using this project, building the default targets and the specified loggers.
41523             Returns true on success, false on failure.
41524             Works on a privately cloned instance. To set or get
41525             virtual items for build purposes, clone an instance explicitly and build that.
41526             Does not modify the Project object.
41527             </summary>
41528         </member>
41529         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
41530             <summary>
41531             Starts a build using this project, building the default targets and the specified loggers.
41532             Returns true on success, false on failure.
41533             Works on a privately cloned instance. To set or get
41534             virtual items for build purposes, clone an instance explicitly and build that.
41535             Does not modify the Project object.
41536             </summary>
41537         </member>
41538         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String)">
41539             <summary>
41540             Starts a build using this project, building the specified target.
41541             Returns true on success, false on failure.
41542             Works on a privately cloned instance. To set or get
41543             virtual items for build purposes, clone an instance explicitly and build that.
41544             Does not modify the Project object.
41545             </summary>
41546         </member>
41547         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String,System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
41548             <summary>
41549             Starts a build using this project, building the specified target with the specified loggers.
41550             Returns true on success, false on failure.
41551             Works on a privately cloned instance. To set or get
41552             virtual items for build purposes, clone an instance explicitly and build that.
41553             Does not modify the Project object.
41554             </summary>
41555         </member>
41556         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String,System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
41557             <summary>
41558             Starts a build using this project, building the specified target with the specified loggers.
41559             Returns true on success, false on failure.
41560             Works on a privately cloned instance. To set or get
41561             virtual items for build purposes, clone an instance explicitly and build that.
41562             Does not modify the Project object.
41563             </summary>
41564         </member>
41565         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String[])">
41566             <summary>
41567             Starts a build using this project, building the specified targets.
41568             Returns true on success, false on failure.
41569             Works on a privately cloned instance. To set or get
41570             virtual items for build purposes, clone an instance explicitly and build that.
41571             Does not modify the Project object.
41572             </summary>
41573         </member>
41574         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger})">
41575             <summary>
41576             Starts a build using this project, building the specified targets with the specified loggers.
41577             Returns true on success, false on failure.
41578             If build is disabled on this project, does not build, and returns false.
41579             Works on a privately cloned instance. To set or get
41580             virtual items for build purposes, clone an instance explicitly and build that.
41581             Does not modify the Project object.
41582             </summary>
41583         </member>
41584         <member name="M:Microsoft.Build.Evaluation.Project.Build(System.String[],System.Collections.Generic.IEnumerable{Microsoft.Build.Framework.ILogger},System.Collections.Generic.IEnumerable{Microsoft.Build.Logging.ForwardingLoggerRecord})">
41585             <summary>
41586             Starts a build using this project, building the specified targets with the specified loggers.
41587             Returns true on success, false on failure.
41588             If build is disabled on this project, does not build, and returns false.
41589             Works on a privately cloned instance. To set or get
41590             virtual items for build purposes, clone an instance explicitly and build that.
41591             Does not modify the Project object.
41592             </summary>
41593         </member>
41594         <member name="M:Microsoft.Build.Evaluation.Project.UsesProjectRootElement(Microsoft.Build.Construction.ProjectRootElement)">
41595             <summary>
41596             Tests whether a given project IS or IMPORTS some given project xml root element.
41597             </summary>
41598             <param name="xmlRootElement">The project xml root element in question.</param>
41599             <returns>True if this project is or imports the xml file; false otherwise.</returns>
41600         </member>
41601         <member name="M:Microsoft.Build.Evaluation.Project.SplitItemElementIfNecessary(Microsoft.Build.Construction.ProjectItemElement)">
41602             <summary>
41603             If the ProjectItemElement evaluated to more than one ProjectItem, replaces it with a new ProjectItemElement for each one of them.
41604             If the ProjectItemElement did not evaluate into more than one ProjectItem, does nothing.
41605             Returns true if a split occurred, otherwise false.
41606             </summary>
41607             <remarks>
41608             A ProjectItemElement could have resulted in several items if it contains wildcards or item or property expressions.
41609             Before any edit to a ProjectItem (remove, rename, set metadata, or remove metadata) this must be called to make
41610             sure that the edit does not affect any other ProjectItems originating in the same ProjectItemElement.
41611             
41612             For example, an item xml with an include of "@(x)" could evaluate to items "a", "b", and "c". If "b" is removed, then the original
41613             item xml must be removed and replaced with three, then the one corresponding to "b" can be removed.
41614             
41615             This is an unsophisticated approach; the best that can be said is that the result will likely be correct, if not ideal.
41616             For example, perhaps the user would rather remove the item from the original list "x" instead of expanding the list.
41617             Or, perhaps the user would rather the property in "$(p)\a;$(p)\b" not be expanded when "$(p)\b" is removed.
41618             If that's important, the host can manipulate the ProjectItemElement's directly, instead, and it can be as fastidious as it wishes.
41619             </remarks>
41620         </member>
41621         <member name="M:Microsoft.Build.Evaluation.Project.IsSuitableExistingItemXml(Microsoft.Build.Construction.ProjectItemElement,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
41622             <summary>
41623             Examines the provided ProjectItemElement to see if it has a wildcard that would match the 
41624             item we wish to add, and does not have a condition or an exclude.
41625             Works conservatively - if there is anything that might cause doubt, considers the candidate to not be suitable.
41626             Returns true if it is suitable, otherwise false.
41627             </summary>
41628             <remarks>
41629             Outside this class called ONLY from <see cref="M:Microsoft.Build.Evaluation.ProjectItem.Rename(System.String)"/>ProjectItem.Rename(string name).
41630             </remarks>
41631         </member>
41632         <member name="M:Microsoft.Build.Evaluation.Project.RemoveItemBeforeItemTypeChange(Microsoft.Build.Evaluation.ProjectItem)">
41633             <summary>
41634             Before an item changes its item type, it must be removed from
41635             our datastructures, which key off item type. 
41636             This should be called ONLY by ProjectItems, in this situation.
41637             </summary>
41638         </member>
41639         <member name="M:Microsoft.Build.Evaluation.Project.ReAddExistingItemAfterItemTypeChange(Microsoft.Build.Evaluation.ProjectItem)">
41640             <summary>
41641             After an item has changed its item type, it needs to be added back again,
41642             since our data structures key off the item type.
41643             This should be called ONLY by ProjectItems, in this situation.
41644             </summary>
41645         </member>
41646         <member name="M:Microsoft.Build.Evaluation.Project.ExpandPropertyValueBestEffortLeaveEscaped(System.String,Microsoft.Build.Construction.ElementLocation)">
41647             <summary>
41648             Provided a property that is already part of this project, does a best-effort expansion
41649             of the unevaluated value provided and sets it as the evaluated value.
41650             </summary>
41651             <remarks>
41652             On project in order to keep Project's expander hidden.
41653             </remarks>
41654         </member>
41655         <member name="M:Microsoft.Build.Evaluation.Project.ExpandItemIncludeBestEffortLeaveEscaped(Microsoft.Build.Construction.ProjectItemElement)">
41656             <summary>
41657             Provided an item element that has been renamed with a new unevaluated include,
41658             returns a best effort guess at the evaluated include that results.
41659             If the best effort expansion produces anything other than one item, it just
41660             returns the unevaluated include.
41661             This is not at all generalized, but useful for the majority case where an item is a very
41662             simple file name with perhaps a property prefix.
41663             </summary>
41664             <remarks>
41665             On project in order to keep Project's expander hidden.
41666             </remarks>
41667         </member>
41668         <member name="M:Microsoft.Build.Evaluation.Project.ExpandMetadataValueBestEffortLeaveEscaped(Microsoft.Build.Evaluation.IMetadataTable,System.String,Microsoft.Build.Construction.ElementLocation)">
41669             <summary>
41670             Provided a metadatum that is already part of this project, does a best-effort expansion
41671             of the unevaluated value provided and returns the resulting value.
41672             This is a interim expansion only: it may not be the value that a full project reevaluation would produce.
41673             The metadata table passed in is that of the parent item or item definition.
41674             </summary>
41675             <remarks>
41676             On project in order to keep Project's expander hidden.
41677             </remarks>
41678         </member>
41679         <member name="M:Microsoft.Build.Evaluation.Project.Zombify">
41680             <summary>
41681             Called by the project collection to indicate to this project that it is no longer loaded.
41682             </summary>
41683         </member>
41684         <member name="M:Microsoft.Build.Evaluation.Project.VerifyThrowInvalidOperationNotZombie">
41685             <summary>
41686             Verify that the project has not been unloaded from its collection.
41687             Once it's been unloaded, it cannot be used.
41688             </summary>
41689         </member>
41690         <member name="M:Microsoft.Build.Evaluation.Project.VerifyThrowInvalidOperationNotImported(Microsoft.Build.Construction.ProjectRootElement)">
41691             <summary>
41692             Verify that the provided object location is in the same file as the project.
41693             If it is not, throws an InvalidOperationException indicating that imported evaluated objects should not be modified.
41694             This prevents, for example, accidentally updating something like the OutputPath property, that you want be in the 
41695             main project, but for some reason was actually read in from an imported targets file.
41696             </summary>
41697         </member>
41698         <member name="M:Microsoft.Build.Evaluation.Project.AddItemHelper(Microsoft.Build.Construction.ProjectItemElement,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
41699             <summary>
41700             Common code for the AddItem methods.
41701             </summary>
41702         </member>
41703         <member name="M:Microsoft.Build.Evaluation.Project.RemoveItemHelper(Microsoft.Build.Evaluation.ProjectItem)">
41704             <summary>
41705             Helper for <see cref="M:Microsoft.Build.Evaluation.Project.RemoveItem(Microsoft.Build.Evaluation.ProjectItem)"/> and <see cref="M:Microsoft.Build.Evaluation.Project.RemoveItems(System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.ProjectItem})"/>.
41706             If the item is not associated with a project, returns false.
41707             If the item is not present in the evaluated project, returns false.
41708             If the item is associated with another project, throws ArgumentException.
41709             Otherwise removes the item and returns true.
41710             </summary>
41711         </member>
41712         <member name="M:Microsoft.Build.Evaluation.Project.CreateProjectInstance(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Execution.ProjectInstanceSettings)">
41713             <summary>
41714             Creates a project instance based on this project using the specified logging service.
41715             </summary>  
41716         </member>
41717         <member name="M:Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary(Microsoft.Build.BackEnd.Logging.ILoggingService)">
41718             <summary>
41719             Re-evaluates the project using the specified logging service.
41720             </summary>
41721         </member>
41722         <member name="M:Microsoft.Build.Evaluation.Project.ReevaluateIfNecessary(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Evaluation.ProjectLoadSettings)">
41723             <summary>
41724             Re-evaluates the project using the specified logging service and load settings.
41725             </summary>
41726         </member>
41727         <member name="M:Microsoft.Build.Evaluation.Project.Initialize(System.Collections.Generic.IDictionary{System.String,System.String},System.String,System.String,Microsoft.Build.Evaluation.ProjectLoadSettings)">
41728             <summary>
41729             Common code for the constructors.
41730             Applies global properties that are on the collection.
41731             Global properties provided for the project overwrite any global properties from the collection that have the same name.
41732             Global properties may be null.
41733             Tools version may be null.
41734             </summary>
41735         </member>
41736         <member name="M:Microsoft.Build.Evaluation.Project.ProjectRootElement_ProjectXmlChangedHandler(System.Object,Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs)">
41737             <summary>
41738             Raised when any XML in the underlying ProjectRootElement has changed.
41739             </summary>
41740         </member>
41741         <member name="M:Microsoft.Build.Evaluation.Project.GetAnySuitableExistingItemXml(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}},Microsoft.Build.Construction.ProjectItemElement@)">
41742             <summary>
41743             Tries to find a ProjectItemElement already in the project file XML that has a wildcard that would match the
41744             item we wish to add, does not have a condition or an exclude, and is within an itemgroup without a condition.
41745             
41746             For perf reasons, this method does several jobs in one.
41747             If it finds a suitable existing item element, it returns that as the out parameter, otherwise the out parameter returns null.
41748             Otherwise, if it finds an item element suitable to be just below our new element, it returns that.
41749             Otherwise, if it finds an item group at least that's suitable to put our element in somewhere, it returns that.
41750             
41751             Returns null if the include of the item being added itself has wildcards, or semicolons, as the case is too difficult.
41752             </summary>
41753         </member>
41754         <member name="M:Microsoft.Build.Evaluation.Project.GetLogicalProject(System.Collections.Generic.IEnumerable{Microsoft.Build.Construction.ProjectElement})">
41755             <summary>
41756             Recursive helper for <see cref="M:Microsoft.Build.Evaluation.Project.GetLogicalProject">GetLogicalProject</see>.
41757             </summary>
41758         </member>
41759         <member name="T:Microsoft.Build.Evaluation.Project.Data">
41760             <summary>
41761             Encapsulates the backing data of a Project, so that it can be passed to the Evaluator to
41762             fill in on a re-evaluation without having to expose property setters.
41763             </summary>
41764             <remarks>
41765             This object is only passed to the Evaluator.
41766             </remarks>
41767         </member>
41768         <member name="F:Microsoft.Build.Evaluation.Project.Data._project">
41769             <summary>
41770             Project that owns this data
41771             </summary>
41772         </member>
41773         <member name="F:Microsoft.Build.Evaluation.Project.Data._globalProperties">
41774             <summary>
41775             The global properties to evaluate with, if any.
41776             Can never be null.
41777             </summary>
41778         </member>
41779         <member name="F:Microsoft.Build.Evaluation.Project.Data.s_typicalTargetsCollection">
41780             <summary>
41781             Almost always, projects have the same set of targets because they all import the same ones.
41782             So we keep around the last set seen and if ours is the same at the end of evaluation, unify the references.
41783             </summary>
41784         </member>
41785         <member name="F:Microsoft.Build.Evaluation.Project.Data.s_shouldTreatHigherToolsVersionsAsCurrent">
41786             <summary>
41787             Save off the contents of the environment variable that specifies whether we should treat higher toolsversions as the current 
41788             toolsversion.  (Some hosts require this.)
41789             </summary>
41790         </member>
41791         <member name="F:Microsoft.Build.Evaluation.Project.Data.s_shouldTreatOtherToolsVersionsAsCurrent">
41792             <summary>
41793             Save off the contents of the environment variable that specifies whether we should treat all toolsversions, regardless of 
41794             whether they are higher or lower, as the current toolsversion.  (Some hosts require this.)
41795             </summary>
41796         </member>
41797         <member name="F:Microsoft.Build.Evaluation.Project.Data._globalPropertiesToTreatAsLocal">
41798             <summary>
41799             List of names of the properties that, while global, are still treated as overridable 
41800             </summary>
41801         </member>
41802         <member name="F:Microsoft.Build.Evaluation.Project.Data._items">
41803             <summary>
41804             List of items that link the XML items and evaluated items.
41805             This is an ordered collection
41806             </summary>
41807             <remarks>
41808             Private so we can make sure that <see cref="F:Microsoft.Build.Evaluation.Project.Data._itemsByEvaluatedInclude">itemsByEvaluatedInclude</see> is updated
41809             on changes.
41810             </remarks>
41811         </member>
41812         <member name="F:Microsoft.Build.Evaluation.Project.Data._itemsByEvaluatedInclude">
41813             <summary>
41814             Items indexed by their evaluated include value.
41815             Useful for hosts to find an item again after reevaluation.
41816             </summary>
41817             <remarks>
41818             Include value is unescaped 
41819             </remarks>
41820         </member>
41821         <member name="F:Microsoft.Build.Evaluation.Project.Data._usingDifferentToolsVersionFromProjectFile">
41822             <summary>
41823             Whether when we read a ToolsVersion that does not match the current one from the Project tag, we treat it as though it 
41824             was current.
41825             </summary>
41826         </member>
41827         <member name="F:Microsoft.Build.Evaluation.Project.Data._originalProjectToolsVersion">
41828             <summary>
41829             The toolsversion that was originally on the project's Project root element
41830             </summary>
41831         </member>
41832         <member name="M:Microsoft.Build.Evaluation.Project.Data.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.String,System.String)">
41833             <summary>
41834             Constructor taking the immutable global properties and tools version.
41835             Tools version may be null.
41836             </summary>
41837         </member>
41838         <member name="P:Microsoft.Build.Evaluation.Project.Data.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Evaluation#ProjectProperty,Microsoft#Build#Evaluation#ProjectItem,Microsoft#Build#Evaluation#ProjectMetadata,Microsoft#Build#Evaluation#ProjectItemDefinition}#ShouldEvaluateForDesignTime">
41839             <summary>
41840             Whether evaluation should collect items ignoring condition,
41841             as well as items respecting condition; and collect
41842             conditioned properties, as well as regular properties
41843             </summary>
41844         </member>
41845         <member name="P:Microsoft.Build.Evaluation.Project.Data.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Evaluation#ProjectProperty,Microsoft#Build#Evaluation#ProjectItem,Microsoft#Build#Evaluation#ProjectMetadata,Microsoft#Build#Evaluation#ProjectItemDefinition}#ItemDefinitionsEnumerable">
41846             <summary>
41847             Collection of all evaluated item definitions, one per item-type
41848             </summary>
41849         </member>
41850         <member name="P:Microsoft.Build.Evaluation.Project.Data.DefaultTargets">
41851             <summary>
41852             DefaultTargets specified in the project, or
41853             the logically first target if no DefaultTargets is
41854             specified in the project.
41855             </summary>
41856         </member>
41857         <member name="P:Microsoft.Build.Evaluation.Project.Data.GlobalPropertiesDictionary">
41858             <summary>
41859             The global properties to evaluate with, if any.
41860             Can never be null.
41861             Read-only; to use different global properties, evaluate yourself a new project.
41862             </summary>
41863         </member>
41864         <member name="P:Microsoft.Build.Evaluation.Project.Data.GlobalPropertiesToTreatAsLocal">
41865             <summary>
41866             List of names of the properties that, while global, are still treated as overridable 
41867             </summary>
41868         </member>
41869         <member name="P:Microsoft.Build.Evaluation.Project.Data.InitialTargets">
41870             <summary>
41871             InitialTargets specified in the project, plus those
41872             in all imports, gathered depth-first.
41873             </summary>
41874         </member>
41875         <member name="P:Microsoft.Build.Evaluation.Project.Data.BeforeTargets">
41876             <summary>
41877             Sets or retrieves the list of targets which run before the keyed target.
41878             </summary>
41879         </member>
41880         <member name="P:Microsoft.Build.Evaluation.Project.Data.AfterTargets">
41881             <summary>
41882             Sets or retrieves the list of targets which run after the keyed target.
41883             </summary>
41884         </member>
41885         <member name="P:Microsoft.Build.Evaluation.Project.Data.ExplicitToolsVersion">
41886             <summary>
41887             The externally specified tools version, if any.
41888             For example, the tools version from a /tv switch.
41889             Not necessarily the same as the tools version from the project tag or of the toolset used.
41890             May be null.
41891             Flows through to called projects.
41892             </summary>
41893         </member>
41894         <member name="P:Microsoft.Build.Evaluation.Project.Data.Toolset">
41895             <summary>
41896             The toolset data used during evaluation.
41897             </summary>
41898         </member>
41899         <member name="P:Microsoft.Build.Evaluation.Project.Data.ExplicitSubToolsetVersion">
41900             <summary>
41901             The externally specified sub-toolset version that, combined with the ToolsVersion, is used to determine
41902             the toolset properties for this project.  
41903             </summary>
41904         </member>
41905         <member name="P:Microsoft.Build.Evaluation.Project.Data.SubToolsetVersion">
41906             <summary>
41907             The sub-toolset version that, combined with the ToolsVersion, was used to determine
41908             the toolset properties for this project.  
41909             </summary>
41910         </member>
41911         <member name="P:Microsoft.Build.Evaluation.Project.Data.Items">
41912             <summary>
41913             Items in this project, ordered within groups of item types.
41914             Protected by an upcast to IEnumerable.
41915             </summary>
41916         </member>
41917         <member name="P:Microsoft.Build.Evaluation.Project.Data.ItemsIgnoringCondition">
41918             <summary>
41919             List of items that link the XML items and evaluated items,
41920             evaluated as if their conditions were true.
41921             This is useful for hosts that wish to display all items regardless of their condition.
41922             This is an ordered collection.
41923             </summary>
41924         </member>
41925         <member name="P:Microsoft.Build.Evaluation.Project.Data.Properties">
41926             <summary>
41927             Collection of properties that link the XML properties and evaluated properties.
41928             Since evaluation has occurred, this is an unordered collection.
41929             Includes any global and reserved properties.
41930             </summary>
41931         </member>
41932         <member name="P:Microsoft.Build.Evaluation.Project.Data.ConditionedProperties">
41933             <summary>
41934             Collection of possible values implied for properties contained in the conditions found on properties,
41935             property groups, imports, and whens.
41936             
41937             For example, if the following conditions existed on properties in a project:
41938             
41939             Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'"
41940             Condition="'$(Configuration)' == 'Release'"
41941             
41942             the table would be populated with
41943             
41944             { "Configuration", { "Debug", "Release" }}
41945             { "Platform", { "x86" }}
41946             
41947             This is used by Visual Studio to determine the configurations defined in the project.
41948             </summary>
41949         </member>
41950         <member name="P:Microsoft.Build.Evaluation.Project.Data.EvaluationId">
41951             <inheritdoc />
41952         </member>
41953         <member name="P:Microsoft.Build.Evaluation.Project.Data.Directory">
41954             <summary>
41955             The root directory for this project
41956             </summary>
41957         </member>
41958         <member name="P:Microsoft.Build.Evaluation.Project.Data.TaskRegistry">
41959             <summary>
41960             Registry of usingtasks, for build
41961             </summary>
41962         </member>
41963         <member name="P:Microsoft.Build.Evaluation.Project.Data.ItemTypes">
41964             <summary>
41965             Get the item types that have at least one item.
41966             Read only collection.
41967             </summary>
41968             <comments>
41969             item.ItemTypes is a KeyCollection, so it doesn't need any 
41970             additional read-only protection
41971             </comments>
41972         </member>
41973         <member name="P:Microsoft.Build.Evaluation.Project.Data.AllEvaluatedProperties">
41974             <summary>
41975             Properties encountered during evaluation. These are read during the first evaluation pass.
41976             Unlike those returned by the Properties property, these are ordered, and includes any properties that
41977             were subsequently overridden by others with the same name. It does not include any 
41978             properties whose conditions did not evaluate to true.
41979             It does not include any properties added since the last evaluation.
41980             </summary>
41981         </member>
41982         <member name="P:Microsoft.Build.Evaluation.Project.Data.AllEvaluatedItemDefinitionMetadata">
41983             <summary>
41984             Item definition metadata encountered during evaluation. These are read during the second evaluation pass.
41985             Unlike those returned by the ItemDefinitions property, these are ordered, and include any metadata that
41986             were subsequently overridden by others with the same name and item type. It does not include any 
41987             elements whose conditions did not evaluate to true.
41988             It does not include any item definition metadata added since the last evaluation.
41989             </summary>
41990         </member>
41991         <member name="P:Microsoft.Build.Evaluation.Project.Data.AllEvaluatedItems">
41992             <summary>
41993             Items encountered during evaluation. These are read during the third evaluation pass.
41994             Unlike those returned by the Items property, these are ordered.
41995             It does not include any elements whose conditions did not evaluate to true.
41996             It does not include any items added since the last evaluation.
41997             </summary>
41998         </member>
41999         <member name="P:Microsoft.Build.Evaluation.Project.Data.Expander">
42000             <summary>
42001             Expander to use to expand any expressions encountered after the project has been fully evaluated.
42002             For example, to expand the values of any properties added at design time.
42003             It's convenient to store it here.
42004             </summary>
42005         </member>
42006         <member name="P:Microsoft.Build.Evaluation.Project.Data.HasUnsavedChanges">
42007             <summary>
42008             Whether something in this data has been modified since evaluation.
42009             For example, a global property has been set.
42010             </summary>
42011         </member>
42012         <member name="P:Microsoft.Build.Evaluation.Project.Data.ItemDefinitions">
42013             <summary>
42014             Collection of all evaluated item definitions, one per item-type
42015             </summary>
42016         </member>
42017         <member name="P:Microsoft.Build.Evaluation.Project.Data.Project">
42018             <summary>
42019             Project that owns this data
42020             </summary>
42021         </member>
42022         <member name="P:Microsoft.Build.Evaluation.Project.Data.Targets">
42023             <summary>
42024             Targets in the project, used to build
42025             </summary>
42026         </member>
42027         <member name="P:Microsoft.Build.Evaluation.Project.Data.ImportClosure">
42028             <summary>
42029             Complete list of all imports pulled in during evaluation.
42030             This includes the outer project itself.
42031             </summary>
42032         </member>
42033         <member name="P:Microsoft.Build.Evaluation.Project.Data.ImportClosureWithDuplicates">
42034             <summary>
42035             Complete list of all imports pulled in during evaluation including duplicate imports.
42036             This includes the outer project itself.
42037             </summary>
42038         </member>
42039         <member name="P:Microsoft.Build.Evaluation.Project.Data.OriginalProjectToolsVersion">
42040             <summary>
42041             The toolsversion that was originally specified on the project's root element
42042             </summary>
42043         </member>
42044         <member name="P:Microsoft.Build.Evaluation.Project.Data.UsingDifferentToolsVersionFromProjectFile">
42045             <summary>
42046             Whether when we read a ToolsVersion other than the current one in the Project tag, we treat it as the current one.
42047             </summary>
42048         </member>
42049         <member name="P:Microsoft.Build.Evaluation.Project.Data.ItemsByEvaluatedIncludeCache">
42050             <summary>
42051             expose mutable precalculated cache to outside so that other can take advantage of the cache as well.
42052             </summary>
42053         </member>
42054         <member name="M:Microsoft.Build.Evaluation.Project.Data.InitializeForEvaluation(Microsoft.Build.Evaluation.IToolsetProvider)">
42055             <summary>
42056             Prepares the data object for evaluation.
42057             </summary>
42058         </member>
42059         <member name="M:Microsoft.Build.Evaluation.Project.Data.FinishEvaluation">
42060             <summary>
42061             Indicates to the data block that evaluation has completed,
42062             so for example it can mark datastructures read-only.
42063             </summary>
42064         </member>
42065         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddItem(Microsoft.Build.Evaluation.ProjectItem)">
42066             <summary>
42067             Adds a new item.
42068             </summary>
42069         </member>
42070         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddItemIgnoringCondition(Microsoft.Build.Evaluation.ProjectItem)">
42071             <summary>
42072             Adds a new item to the collection of all items ignoring condition
42073             </summary>
42074         </member>
42075         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddToAllEvaluatedPropertiesList(Microsoft.Build.Evaluation.ProjectProperty)">
42076             <summary>
42077             Properties encountered during evaluation. These are read during the first evaluation pass.
42078             Unlike those returned by the Properties property, these are ordered, and includes any properties that
42079             were subsequently overridden by others with the same name. It does not include any 
42080             properties whose conditions did not evaluate to true.
42081             </summary>
42082         </member>
42083         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddToAllEvaluatedItemDefinitionMetadataList(Microsoft.Build.Evaluation.ProjectMetadata)">
42084             <summary>
42085             Item definition metadata encountered during evaluation. These are read during the second evaluation pass.
42086             Unlike those returned by the ItemDefinitions property, these are ordered, and include any metadata that
42087             were subsequently overridden by others with the same name and item type. It does not include any 
42088             elements whose conditions did not evaluate to true.
42089             </summary>
42090         </member>
42091         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddToAllEvaluatedItemsList(Microsoft.Build.Evaluation.ProjectItem)">
42092             <summary>
42093             Items encountered during evaluation. These are read during the third evaluation pass.
42094             Unlike those returned by the Items property, these are ordered.
42095             It does not include any elements whose conditions did not evaluate to true.
42096             It does not include any items added since the last evaluation.
42097             </summary>
42098         </member>
42099         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddItemDefinition(System.String)">
42100             <summary>
42101             Adds a new item definition
42102             </summary>
42103         </member>
42104         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetItemDefinition(System.String)">
42105             <summary>
42106             Gets an existing item definition, if any.
42107             </summary>
42108         </member>
42109         <member name="M:Microsoft.Build.Evaluation.Project.Data.SetProperty(System.String,System.String,System.Boolean,System.Boolean)">
42110             <summary>
42111             Sets a property which is not derived from Xml.
42112             </summary>
42113         </member>
42114         <member name="M:Microsoft.Build.Evaluation.Project.Data.SetProperty(Microsoft.Build.Construction.ProjectPropertyElement,System.String,Microsoft.Build.Evaluation.ProjectProperty)">
42115             <summary>
42116             Sets a property derived from Xml.
42117             Predecessor is any immediately previous property that was overridden by this one during evaluation.
42118             This would include all properties with the same name that lie above in the logical
42119             project file, and whose conditions evaluated to true.
42120             If there are none above this is null.
42121             </summary>
42122         </member>
42123         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetTarget(System.String)">
42124             <summary>
42125             Retrieves an existing target, if any.
42126             </summary>
42127         </member>
42128         <member name="M:Microsoft.Build.Evaluation.Project.Data.AddTarget(Microsoft.Build.Execution.ProjectTargetInstance)">
42129             <summary>
42130             Adds the specified target, overwriting any existing target with the same name.
42131             </summary>
42132         </member>
42133         <member name="M:Microsoft.Build.Evaluation.Project.Data.RecordImport(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
42134             <summary>
42135             Record an import opened during evaluation.
42136             This is used to check later whether any of them have been changed.
42137             </summary>
42138             <remarks>
42139             This may include imported files that ended up contributing nothing to the evaluated project.
42140             These might otherwise have no strong references to them at all.
42141             If they are dirtied, though, they might affect the evaluated project; and that's why we record them. 
42142             Mostly these will be common imports, so they'll be shared anyway.
42143             </remarks>
42144         </member>
42145         <member name="M:Microsoft.Build.Evaluation.Project.Data.RecordImportWithDuplicates(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
42146             <summary>
42147             Record a duplicate import, possible a duplicate import opened during evaluation.
42148             </summary>
42149         </member>
42150         <member name="M:Microsoft.Build.Evaluation.Project.Data.Microsoft#Build#Evaluation#IEvaluatorData{Microsoft#Build#Evaluation#ProjectProperty,Microsoft#Build#Evaluation#ProjectItem,Microsoft#Build#Evaluation#ProjectMetadata,Microsoft#Build#Evaluation#ProjectItemDefinition}#ExpandString(System.String)">
42151             <summary>
42152             Evaluates the provided string by expanding items and properties,
42153             using the current items and properties available.
42154             This is useful for the immediate window.
42155             Does not expand bare metadata expressions.
42156             </summary>
42157             <comment>
42158             Not for internal use.
42159             </comment>
42160         </member>
42161         <member name="M:Microsoft.Build.Evaluation.Project.Data.EvaluateCondition(System.String)">
42162             <summary>
42163             Evaluates the provided string as a condition by expanding items and properties,
42164             using the current items and properties available, then doing a logical evaluation.
42165             This is useful for the immediate window.
42166             Does not expand bare metadata expressions.
42167             </summary>
42168             <comment>
42169             Not for internal use.
42170             </comment>
42171         </member>
42172         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetItems(System.String)">
42173             <summary>
42174             Returns a list of items of the specified type.
42175             If there are none, returns an empty list.
42176             </summary>
42177             <comments>
42178             ItemDictionary returns a read-only collection, so no need to wrap it here.
42179             </comments>
42180             <param name="itemType">The type of items to return.</param>
42181             <returns>A list of matching items.</returns>
42182         </member>
42183         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetProperty(System.String)">
42184             <summary>
42185             Returns the property with the specified name or null if it was not present
42186             </summary>
42187             <param name="name">The property name.</param>
42188             <returns>The property.</returns>
42189         </member>
42190         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetProperty(System.String,System.Int32,System.Int32)">
42191             <summary>
42192             Returns the property with the specified name or null if it was not present
42193             </summary>
42194             <returns>The property.</returns>
42195         </member>
42196         <member name="M:Microsoft.Build.Evaluation.Project.Data.ClearCachedFlags">
42197             <summary>
42198             Clears out certain cached values. 
42199             FOR UNIT TESTING ONLY
42200             </summary>
42201         </member>
42202         <member name="M:Microsoft.Build.Evaluation.Project.Data.RemoveItem(Microsoft.Build.Evaluation.ProjectItem)">
42203             <summary>
42204             Removes an item.
42205             Returns true if it was previously present, otherwise false.
42206             </summary>
42207         </member>
42208         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetItemsByEvaluatedInclude(System.String)">
42209             <summary>
42210             Returns all items that have the specified evaluated include.
42211             For example, all items that have the evaluated include "bar.cpp".
42212             Typically there will be no more than one, but sometimes there are two items with the
42213             same path and different item types, or even the same item types. This will return
42214             them all.
42215             </summary>
42216             <remarks>
42217             Assumes that the evaluated include value is unescaped.
42218             </remarks>
42219         </member>
42220         <member name="M:Microsoft.Build.Evaluation.Project.Data.GetPropertyValue(System.String)">
42221             <summary>
42222             Get the value of a property in this project, or 
42223             an empty string if it does not exist.
42224             Returns the unescaped value.
42225             </summary>
42226             <remarks>
42227             A property with a value of empty string and no property
42228             at all are not distinguished between by this method.
42229             That makes it easier to use. To find out if a property is set at
42230             all in the project, use GetProperty(name).
42231             </remarks>
42232         </member>
42233         <member name="T:Microsoft.Build.Evaluation.GlobResult">
42234             <summary>
42235             Data class representing a result from <see cref="M:Microsoft.Build.Evaluation.Project.GetAllGlobs"/> and its overloads.
42236             This represents all globs found in an item include together with the item element it came from,
42237             the excludes that were present on that item, and all the Remove item elements pertaining to the Include item element.
42238             </summary>
42239         </member>
42240         <member name="P:Microsoft.Build.Evaluation.GlobResult.ItemElement">
42241             <summary>
42242             Gets the original <see cref="T:Microsoft.Build.Construction.ProjectItemElement"/> that contained the globs.
42243             </summary>
42244         </member>
42245         <member name="P:Microsoft.Build.Evaluation.GlobResult.IncludeGlobs">
42246             <summary>
42247             Gets all the evaluated glob strings (properties expanded) from the include.
42248             </summary>
42249         </member>
42250         <member name="P:Microsoft.Build.Evaluation.GlobResult.MsBuildGlob">
42251             <summary>
42252             A <see cref="T:Microsoft.Build.Globbing.IMSBuildGlob"/> representing the include globs. It also takes the excludes and relevant removes into consideration.
42253             </summary>
42254         </member>
42255         <member name="P:Microsoft.Build.Evaluation.GlobResult.Excludes">
42256             <summary>
42257             Gets an <see cref="T:System.Collections.Generic.ISet`1"/> containing strings that were excluded.
42258             </summary>
42259         </member>
42260         <member name="P:Microsoft.Build.Evaluation.GlobResult.Removes">
42261             <summary>
42262             Gets an <see cref="T:System.Collections.Generic.ISet`1"/> containing strings that were later removed via the Remove element.
42263             </summary>
42264         </member>
42265         <member name="M:Microsoft.Build.Evaluation.GlobResult.#ctor(Microsoft.Build.Construction.ProjectItemElement,System.Collections.Generic.IEnumerable{System.String},Microsoft.Build.Globbing.IMSBuildGlob,System.Collections.Generic.IEnumerable{System.String},System.Collections.Generic.IEnumerable{System.String})">
42266             <summary>
42267             Constructor
42268             </summary>
42269         </member>
42270         <member name="T:Microsoft.Build.Evaluation.Provenance">
42271             <summary>
42272             Bit flag enum that specifies how a string representing an item matched against an itemspec.
42273             </summary>
42274         </member>
42275         <member name="F:Microsoft.Build.Evaluation.Provenance.Undefined">
42276             <summary>
42277             Undefined is the bottom element and should not appear in actual results 
42278             </summary>
42279         </member>
42280         <member name="F:Microsoft.Build.Evaluation.Provenance.StringLiteral">
42281             <summary>
42282             A string matched against a string literal from an itemspec
42283             </summary>
42284         </member>
42285         <member name="F:Microsoft.Build.Evaluation.Provenance.Glob">
42286             <summary>
42287             A string matched against a glob pattern from an itemspec
42288             </summary>
42289         </member>
42290         <member name="F:Microsoft.Build.Evaluation.Provenance.Inconclusive">
42291             <summary>
42292             Inconclusive means that the match is indirect, coming from either property or item references.
42293             </summary>
42294         </member>
42295         <member name="T:Microsoft.Build.Evaluation.Operation">
42296             <summary>
42297             Enum that specifies how an item element references an item
42298             </summary>
42299         </member>
42300         <member name="F:Microsoft.Build.Evaluation.Operation.Include">
42301             <summary>
42302             The element referenced the item by an Include.
42303             </summary>
42304         </member>
42305         <member name="F:Microsoft.Build.Evaluation.Operation.Exclude">
42306             <summary>
42307             The element referenced the item by an Exclude.
42308             </summary>
42309         </member>
42310         <member name="F:Microsoft.Build.Evaluation.Operation.Update">
42311             <summary>
42312             The element referenced the item by an Update.
42313             </summary>
42314         </member>
42315         <member name="F:Microsoft.Build.Evaluation.Operation.Remove">
42316             <summary>
42317             The element referenced the item by a Remove.
42318             </summary>
42319         </member>
42320         <member name="T:Microsoft.Build.Evaluation.ProvenanceResult">
42321             <summary>
42322             Data class representing a result from <see cref="M:Microsoft.Build.Evaluation.Project.GetItemProvenance(System.String)"/> and its overloads.
42323             </summary>
42324         </member>
42325         <member name="P:Microsoft.Build.Evaluation.ProvenanceResult.Operation">
42326             <summary>
42327             Gets the <see cref="P:Microsoft.Build.Evaluation.ProvenanceResult.Operation"/> that was performed.
42328             </summary>
42329         </member>
42330         <member name="P:Microsoft.Build.Evaluation.ProvenanceResult.ItemElement">
42331             <summary>
42332             Gets the <see cref="T:Microsoft.Build.Construction.ProjectItemElement"/> that contains the operation.
42333             </summary>
42334         </member>
42335         <member name="P:Microsoft.Build.Evaluation.ProvenanceResult.Provenance">
42336             <summary>
42337             Gets the <see cref="P:Microsoft.Build.Evaluation.ProvenanceResult.Provenance"/> of how the item appeared in the operation.
42338             </summary>
42339         </member>
42340         <member name="P:Microsoft.Build.Evaluation.ProvenanceResult.Occurrences">
42341             <summary>
42342             Gets the number of occurences of the item.
42343             </summary>
42344         </member>
42345         <member name="M:Microsoft.Build.Evaluation.ProvenanceResult.#ctor(Microsoft.Build.Construction.ProjectItemElement,Microsoft.Build.Evaluation.Operation,Microsoft.Build.Evaluation.Provenance,System.Int32)">
42346             <summary>
42347             Initializes an instance of the ProvenanceResult class.
42348             </summary>
42349         </member>
42350         <member name="T:Microsoft.Build.Evaluation.ProjectItem">
42351             <summary>
42352             An evaluated design-time item
42353             </summary>
42354             <remarks>
42355             Edits to this object will indirectly dirty the containing project because they will modify the backing XML.
42356             </remarks>
42357             <comment>
42358             We cannot use a copy-on-write table for the metadata, as ProjectMetadata objects are mutable. However,
42359             we do use it for build-time items.
42360             </comment>
42361         </member>
42362         <member name="F:Microsoft.Build.Evaluation.ProjectItem._project">
42363             <summary>
42364             Project that this item lives in.
42365             ProjectItems always live in a project.
42366             Used to get item definitions and project directory.
42367             </summary>
42368         </member>
42369         <member name="F:Microsoft.Build.Evaluation.ProjectItem._evaluatedIncludeBeforeWildcardExpansionEscaped">
42370             <summary>
42371             Fragment of the original include that led to this item,
42372             with properties expanded but not wildcards.  Escaped as necessary
42373             </summary>
42374             <remarks>
42375             This is ONLY used to figure out %(RecursiveDir) when it is requested.
42376             It's likely too expensive to figure that out if it isn't needed, so we store 
42377             the necessary material here.
42378             </remarks>
42379         </member>
42380         <member name="F:Microsoft.Build.Evaluation.ProjectItem._inheritedItemDefinitions">
42381             <summary>
42382             Item definitions are stored in one single table shared by all items of a particular item type.
42383             
42384             When an item is created from another item, such as by using an expression like Include="@(x)",
42385             any item definition metadata those source items have must override any item definition metadata 
42386             associated with the new item type. 
42387             
42388             Copying all those item definition metadata into real metadata on this item would be very inefficient, because
42389             it would turn a single shared table into a separate table for every item.
42390             
42391             Instead, we get a reference to the item definition of the source items, and consult
42392             that table before we consult our own item type's item definition. Since item definitions can't change at this point,
42393             it's safe to reference their original table.
42394             
42395             If our item gets copied again, we need a reference to the inherited item definition and we need the real item
42396             definition of the source items. Thus a list is created. On copying, a list is created, beginning with a clone
42397             of any list the source item had, and ending with the item definition list of the source item type.
42398             
42399             When we look up a metadata value we look at 
42400             (1) directly associated metadata and built-in metadata
42401             (2) the inherited item definition list, starting from the top
42402             (3) the item definition associated with our item type
42403             </summary>
42404         </member>
42405         <member name="F:Microsoft.Build.Evaluation.ProjectItem._xml">
42406             <summary>
42407             Backing XML item.
42408             Can never be null
42409             </summary>
42410         </member>
42411         <member name="F:Microsoft.Build.Evaluation.ProjectItem._evaluatedIncludeEscaped">
42412             <summary>
42413             Evaluated include.
42414             The original XML may have evaluated to several of these items,
42415             each with a different include.
42416             May be empty, for example from expanding an empty list or from a transform with undefined metadata.
42417             Escaped as necessary
42418             </summary>
42419         </member>
42420         <member name="F:Microsoft.Build.Evaluation.ProjectItem._directMetadata">
42421             <summary>
42422             Collection of metadata that link the XML metadata and evaluated metadata.
42423             Since evaluation has occurred, this is an unordered collection.
42424             May be null.
42425             </summary>
42426             <remarks>
42427             Lazily created, as there are lots of items
42428             that have no metadata at all.
42429             </remarks>
42430         </member>
42431         <member name="F:Microsoft.Build.Evaluation.ProjectItem._fullPath">
42432             <summary>
42433             Cached value of the fullpath metadata. All other metadata are computed on demand.
42434             </summary>
42435         </member>
42436         <member name="M:Microsoft.Build.Evaluation.ProjectItem.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectItemElement,System.String,System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Evaluation.ProjectMetadata},System.Collections.Generic.List{Microsoft.Build.Evaluation.ProjectItemDefinition})">
42437             <summary>
42438             Called by the Evaluator during project evaluation.
42439             Direct metadata may be null, indicating no metadata. It is assumed to have already been cloned.
42440             Inherited item definition metadata may be null. It is assumed that its list has already been cloned.
42441             ProjectMetadata objects may be shared with other items.
42442             </summary>
42443         </member>
42444         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Xml">
42445             <summary>
42446             Backing XML item.
42447             Can never be null.
42448             </summary>
42449         </member>
42450         <member name="P:Microsoft.Build.Evaluation.ProjectItem.ItemType">
42451             <summary>
42452             Gets or sets the type of this item.
42453             </summary>
42454         </member>
42455         <member name="P:Microsoft.Build.Evaluation.ProjectItem.UnevaluatedInclude">
42456             <summary>
42457             Gets or sets the unevaluated value of the Include.
42458             </summary>
42459         </member>
42460         <member name="P:Microsoft.Build.Evaluation.ProjectItem.EvaluatedInclude">
42461             <summary>
42462             Gets the evaluated value of the include, unescaped. 
42463             </summary>
42464         </member>
42465         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IItem#EvaluatedIncludeEscaped">
42466             <summary>
42467             Gets the evaluated value of the include, escaped as necessary.
42468             </summary>
42469         </member>
42470         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IItem#ProjectDirectory">
42471             <summary>
42472             The directory of the project being built
42473             Never null: If there is no project filename yet, it will use the current directory
42474             </summary>
42475         </member>
42476         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Project">
42477             <summary>
42478             Project that this item lives in.
42479             ProjectItems always live in a project.
42480             </summary>
42481         </member>
42482         <member name="P:Microsoft.Build.Evaluation.ProjectItem.IsImported">
42483             <summary>
42484             If the item originated in an imported file, returns true.
42485             Otherwise returns false.
42486             </summary>
42487         </member>
42488         <member name="P:Microsoft.Build.Evaluation.ProjectItem.DirectMetadata">
42489             <summary>
42490             Metadata directly on the item, if any.
42491             Does not include metadata from item definitions.
42492             Does not include built-in metadata.
42493             Never returns null.
42494             </summary>
42495         </member>
42496         <member name="P:Microsoft.Build.Evaluation.ProjectItem.DirectMetadataCount">
42497             <summary>
42498             Count of direct metadata on this item, if any.
42499             Does NOT count any metadata inherited from item definitions.
42500             Does not count built-in metadata, such as "FullPath".
42501             </summary>
42502         </member>
42503         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Metadata">
42504             <summary>
42505             Metadata on the item, if any.  Includes metadata specified by the definition, if any.
42506             If there is no metadata, returns an empty collection.
42507             Does not include built-in metadata, such as "FullPath".
42508             Get the values of built-in metadata using <see cref="M:Microsoft.Build.Evaluation.ProjectItem.GetMetadataValue(System.String)"/>.
42509             This is a read-only collection. To modify the metadata, use <see cref="M:Microsoft.Build.Evaluation.ProjectItem.SetMetadataValue(System.String,System.String)"/>.
42510             </summary>
42511         </member>
42512         <member name="P:Microsoft.Build.Evaluation.ProjectItem.MetadataCount">
42513             <summary>
42514             Count of metadata on this item, if any.
42515             Includes any metadata inherited from item definitions.
42516             Includes both custom and built-in metadata.
42517             </summary>
42518         </member>
42519         <member name="P:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Collections#IKeyed#Key">
42520             <summary>
42521             Implementation of IKeyed exposing the item type, so items
42522             can be put in a dictionary conveniently.
42523             </summary>
42524         </member>
42525         <member name="P:Microsoft.Build.Evaluation.ProjectItem.MetadataCollection">
42526             <summary>
42527             Internal version of <see cref="P:Microsoft.Build.Evaluation.ProjectItem.Metadata">Metadata</see> that returns
42528             a full ICollection.
42529             Unordered collection of evaluated metadata on the item.
42530             If there is no metadata, returns an empty collection.
42531             Does not include built-in metadata.
42532             Includes any from item definitions not masked by directly set metadata.
42533             This is a read-only collection. To modify the metadata, use <see cref="M:Microsoft.Build.Evaluation.ProjectItem.SetMetadataValue(System.String,System.String)"/>.
42534             </summary>
42535         </member>
42536         <member name="P:Microsoft.Build.Evaluation.ProjectItem.EvaluatedIncludeBeforeWildcardExpansion">
42537             <summary>
42538             Accesses the unescaped evaluated include prior to wildcard expansion
42539             </summary>
42540         </member>
42541         <member name="P:Microsoft.Build.Evaluation.ProjectItem.EvaluatedIncludeBeforeWildcardExpansionEscaped">
42542             <summary>
42543             Accesses the evaluated include prior to wildcard expansion
42544             </summary>
42545         </member>
42546         <member name="P:Microsoft.Build.Evaluation.ProjectItem.InheritedItemDefinitions">
42547             <summary>
42548             Accesses the inherited item definitions, if any.
42549             Used ONLY by the ProjectInstance, when cloning a ProjectItem.
42550             </summary>
42551         </member>
42552         <member name="M:Microsoft.Build.Evaluation.ProjectItem.GetMetadata(System.String)">
42553             <summary>
42554             Gets an evaluated metadata on this item.
42555             Potentially includes a metadata from an item definition.
42556             Does not return built-in metadata, such as "FullPath".
42557             Returns null if not found.
42558             </summary>
42559         </member>
42560         <member name="M:Microsoft.Build.Evaluation.ProjectItem.GetMetadataValue(System.String)">
42561             <summary>
42562             Get the evaluated value of a metadata on this item, possibly from an item definition. 
42563             Returns empty string if it does not exist.
42564             To determine whether a piece of metadata does not exist vs. simply has no value, use <see cref="M:Microsoft.Build.Evaluation.ProjectItem.HasMetadata(System.String)">HasMetadata</see>.
42565             May be used to access the value of built-in metadata, such as "FullPath".
42566             Attempting to get built-in metadata on a value that is not a valid path throws InvalidOperationException.
42567             </summary>
42568         </member>
42569         <member name="M:Microsoft.Build.Evaluation.ProjectItem.HasMetadata(System.String)">
42570             <summary>
42571             Returns true if a particular piece of metadata is defined on this item,
42572             otherwise false.
42573             Includes built-in metadata and metadata inherited from item definitions.
42574             </summary>
42575         </member>
42576         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IItem#GetMetadataValueEscaped(System.String)">
42577             <summary>
42578             See <see cref="M:Microsoft.Build.Evaluation.ProjectItem.GetMetadataValue(System.String)">GetMetadataValue</see> for a more detailed explanation.  
42579             Returns the escaped value of the metadatum requested.  
42580             </summary>
42581         </member>
42582         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IItem{Microsoft#Build#Evaluation#ProjectMetadata}#GetMetadata(System.String)">
42583             <summary>
42584             Gets any existing ProjectMetadata on the item, or
42585             else any on an applicable item definition.
42586             This is ONLY called during evaluation.
42587             Does not return built-in metadata, such as "FullPath".
42588             Returns null if not found.
42589             </summary>
42590         </member>
42591         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IItem{Microsoft#Build#Evaluation#ProjectMetadata}#SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
42592             <summary>
42593             Adds a ProjectMetadata to the item. 
42594             This is ONLY called during evaluation and does not affect the XML.
42595             </summary>
42596         </member>
42597         <member name="M:Microsoft.Build.Evaluation.ProjectItem.SetMetadataValue(System.String,System.String)">
42598             <summary>
42599             Adds metadata with the specified name and value to the item.
42600             Updates an existing metadata if one already exists with the same name on the item directly, as opposed to inherited from an item definition.
42601             Updates the evaluated project, but does not affect anything else in the project until reevaluation. For example,
42602             if a piece of metadata named "m" is added on item of type "i", it does not affect "j" which is evaluated from "@(j->'%(m)')" until reevaluation.
42603             Also if the unevaluated value of "m" is set to something that is modified by evaluation, such as "$(p)", the evaluated value will be set to literally "$(p)" until reevaluation.
42604             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state.
42605             Returns the new or existing metadatum.
42606             </summary>
42607             <remarks>Unevaluated value is assumed to be escaped as necessary</remarks>
42608         </member>
42609         <member name="M:Microsoft.Build.Evaluation.ProjectItem.RemoveMetadata(System.String)">
42610             <summary>
42611             Removes any metadata with the specified name.
42612             Returns true if the evaluated metadata existed, otherwise false.
42613             If the metadata name is one of the built-in metadata, like "FullPath", throws InvalidArgumentException.
42614             If the metadata originates in an item definition, and was not overridden, throws InvalidOperationException.
42615             </summary>
42616         </member>
42617         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Rename(System.String)">
42618             <summary>
42619             Renames the item.
42620             Equivalent to setting the <see cref="P:Microsoft.Build.Evaluation.ProjectItem.UnevaluatedInclude"/> value.
42621             Generally, no expansion occurs. This is because it would potentially result in several items, 
42622             which is not meaningful semantics when renaming a single item.
42623             However if the item does not need to be split (which would invalidate its ProjectItemElement),
42624             and the new value expands to exactly one item, then its evaluated include is updated
42625             with the expanded value, rather than the unexpanded value.
42626             </summary>
42627             <remarks>
42628             Even if the new value expands to zero items, we do not expand it.
42629             The common case we are interested in for expansion here is setting something 
42630             like "$(sourcesroot)\foo.cs" and expanding that to a single item. 
42631             If say "@(foo)" is set as the new name, and it expands to blank, that might 
42632             be surprising to the host and maybe even unhandled, if on full reevaluation 
42633             it wouldn’t expand to blank. That’s why we're being cautious and supporting 
42634             the most common scenario only. 
42635             Many hosts will do a ReevaluateIfNecessary before reading anyway.
42636             </remarks>
42637         </member>
42638         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String)">
42639             <summary>
42640             Retrieves any value we have in our metadata table for the metadata name specified.
42641             If no value is available, returns empty string.
42642             Value, if escaped, remains escaped.
42643             </summary>
42644         </member>
42645         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String,System.String)">
42646             <summary>
42647             Retrieves any value we have in our metadata table for the metadata name and item type specified.
42648             If no value is available, returns empty string.
42649             If item type is null, it is ignored, otherwise it must match.
42650             Value, if escaped, remains escaped.
42651             </summary>
42652         </member>
42653         <member name="M:Microsoft.Build.Evaluation.ProjectItem.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValueIfPresent(System.String,System.String)">
42654             <summary>
42655             Returns the value if it exists.
42656             If no value is available, returns null.
42657             If item type is null, it is ignored, otherwise it must match.
42658             Value, if escaped, remains escaped.
42659             </summary>
42660         </member>
42661         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ChangeItemType(System.String)">
42662             <summary>
42663             Changes the item type of this item.
42664             Until reevaluation puts it in the correct place, it will be placed at
42665             the end of the list of items of its new type.
42666             </summary>
42667             <remarks>
42668             This is a little involved, as it requires replacing
42669             the XmlElement, and updating the project's datastructures.
42670             </remarks>
42671         </member>
42672         <member name="M:Microsoft.Build.Evaluation.ProjectItem.SplitOwnItemElement">
42673             <summary>
42674             Creates new xml objects for itself, disconnecting from the old xml objects.
42675             Called ONLY by <see cref="M:Microsoft.Build.Evaluation.Project.SplitItemElementIfNecessary(Microsoft.Build.Construction.ProjectItemElement)"/>
42676             </summary>
42677             <remarks>
42678             Called when breaking up a single ProjectItemElement that evaluates into several ProjectItems.
42679             </remarks>
42680         </member>
42681         <member name="M:Microsoft.Build.Evaluation.ProjectItem.GetBuiltInMetadataEscaped(System.String)">
42682             <summary>
42683             Helper to get the value of a built-in metadatum with
42684             the specified name, if any.
42685             </summary>
42686         </member>
42687         <member name="M:Microsoft.Build.Evaluation.ProjectItem.GetItemDefinitionMetadata(System.String)">
42688             <summary>
42689             Retrieves the named metadata from the item definition, if any.
42690             If it is not present, returns null
42691             </summary>
42692             <param name="name">The metadata name.</param>
42693             <returns>The value if it exists, null otherwise.</returns>
42694         </member>
42695         <member name="T:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory">
42696             <summary>
42697             A class factory for ProjectItems.
42698             </summary>
42699         </member>
42700         <member name="F:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory._project">
42701             <summary>
42702             The Project with which each item should be associated.
42703             </summary>
42704         </member>
42705         <member name="F:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory._xml">
42706             <summary>
42707             The project item's XML
42708             </summary>
42709         </member>
42710         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.#ctor(Microsoft.Build.Evaluation.Project)">
42711             <summary>
42712             Creates an item factory which does not specify an item xml.  The item xml must
42713             be specified later.
42714             </summary>
42715             <param name="project">The project for items generated.</param>
42716         </member>
42717         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectItemElement)">
42718             <summary>
42719             Constructor
42720             </summary>
42721             <param name="project">The project for items generated.</param>
42722             <param name="xml">The xml for items generated.</param>
42723         </member>
42724         <member name="P:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.ItemType">
42725             <summary>
42726             Item type that items created by this factory will have.
42727             </summary>
42728         </member>
42729         <member name="P:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.ItemElement">
42730             <summary>
42731             Set the item xml from which items will be created.
42732             Used by the evaluator only.
42733             </summary>
42734         </member>
42735         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.CreateItem(System.String,System.String)">
42736             <summary>
42737             Creates an item with the specified type and evaluated include.
42738             Used for making items from "just strings" and from expressions like "@(Compile, ';')"
42739             </summary>
42740             <param name="include">The include.</param>
42741             <param name="definingProject">The path to the project that defined the item.</param>
42742             <returns>A new project item.</returns>
42743             <comments>
42744             NOTE: defining project is ignored because we already know the ItemElement associated with 
42745             this item, and use that for where it is defined. 
42746             </comments>
42747         </member>
42748         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.CreateItem(Microsoft.Build.Evaluation.ProjectItem,System.String)">
42749             <summary>
42750             Creates an item based on the provided item, but with
42751             the project and xml of this factory. Metadata is cloned,
42752             but continues to point to the original ProjectMetadataElement objects.
42753             This is to support the scenario Include="@(i)" where we are copying
42754             metadata, and are happy to see changes in the original metadata, but
42755             setting metadata should create new XML.
42756             </summary>
42757             <comments>
42758             NOTE: defining project is ignored because we already know the ItemElement associated with 
42759             this item, and use that for where it is defined. 
42760             </comments>
42761         </member>
42762         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.CreateItem(System.String,Microsoft.Build.Evaluation.ProjectItem,System.String)">
42763             <summary>
42764             Creates an item based on the provided item, but with
42765             the project and xml of this factory and the specified include. Metadata is cloned,
42766             but continues to point to the original ProjectMetadataElement objects.
42767             This is to support this scenario: Include="@(i->'xxx')"
42768             </summary>
42769             <remarks>
42770             If the item type of the source is the same as the item type of the destination,
42771             then it's not necessary to copy metadata originating in an item definition.
42772             If it's not, we have to clone that too.
42773             </remarks>
42774             <comments>
42775             NOTE: defining project is ignored because we already know the ItemElement associated with 
42776             this item, and use that for where it is defined. 
42777             </comments>
42778         </member>
42779         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.CreateItem(System.String,System.String,System.String)">
42780             <summary>
42781             Creates an item with the specified include and include before wildcard expansion.
42782             This is to support creating items from an include that may have a wildcard expression in it.
42783             </summary>
42784             <comments>
42785             NOTE: defining project is ignored because we already know the ItemElement associated with 
42786             this item, and use that for where it is defined. 
42787             </comments>
42788         </member>
42789         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.SetMetadata(System.Collections.Generic.IEnumerable{Microsoft.Build.Shared.Pair{Microsoft.Build.Construction.ProjectMetadataElement,System.String}},System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.ProjectItem})">
42790             <summary>
42791             Applies the supplied metadata to the destination item.
42792             </summary>
42793         </member>
42794         <member name="M:Microsoft.Build.Evaluation.ProjectItem.ProjectItemFactory.CreateItem(System.String,System.String,Microsoft.Build.Evaluation.ProjectItem)">
42795             <summary>
42796             Creates an item based on the provided item, with the specified include and item type.
42797             </summary>
42798         </member>
42799         <member name="T:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable">
42800             <summary>
42801             Implementation of IMetadataTable that can be passed to expander
42802             to expose only built-in metadata on this item.
42803             </summary>
42804         </member>
42805         <member name="F:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable._item">
42806             <summary>
42807             Backing item
42808             </summary>
42809         </member>
42810         <member name="M:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable.#ctor(Microsoft.Build.Evaluation.ProjectItem)">
42811             <summary>
42812             Constructor.
42813             </summary>
42814         </member>
42815         <member name="M:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable.GetEscapedValue(System.String)">
42816             <summary>
42817             Retrieves any value we have in our metadata table for the metadata name specified.
42818             If no value is available, returns empty string.
42819             </summary>
42820         </member>
42821         <member name="M:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable.GetEscapedValue(System.String,System.String)">
42822             <summary>
42823             Retrieves any value we have in our metadata table for the metadata name and item type specified.
42824             If item type is null, it is ignored.
42825             If no value is available, returns empty string.
42826             </summary>
42827         </member>
42828         <member name="M:Microsoft.Build.Evaluation.ProjectItem.BuiltInMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
42829             <summary>
42830             Returns the value if it exists, null otherwise.
42831             If item type is null, it is ignored.
42832             </summary>
42833         </member>
42834         <member name="T:Microsoft.Build.Evaluation.ProjectItemDefinition">
42835             <summary>
42836             An evaluated item definition for a particular item-type.
42837             </summary>
42838             <remarks>
42839             Note that these are somewhat different to items. Like items, they can have metadata; like properties, the metadata
42840             can override each other. So during evaluation all the item definitions for a type are rolled together (assuming
42841             their conditions are true) to create one ProjectItemDefinition for each type. For this reason, the ProjectItemDefinition
42842             often will not point to a single ProjectItemDefinitionElement. The metadata within, however, will each point to a single
42843             ProjectMetadataElement, and these can be added, removed, and modified.
42844             </remarks>
42845         </member>
42846         <member name="F:Microsoft.Build.Evaluation.ProjectItemDefinition._project">
42847             <summary>
42848             Project that this item definition lives in.
42849             ProjectItemDefinitions always live in a project.
42850             Used to evaluate any updates to child metadata.
42851             </summary>
42852         </member>
42853         <member name="F:Microsoft.Build.Evaluation.ProjectItemDefinition._itemType">
42854             <summary>
42855             Item type, for example "Compile", that this item definition applies to
42856             </summary>
42857         </member>
42858         <member name="F:Microsoft.Build.Evaluation.ProjectItemDefinition._metadata">
42859             <summary>
42860             Collection of metadata that link the XML metadata and instance metadata
42861             Since evaluation has occurred, this is an unordered collection.
42862             </summary>
42863         </member>
42864         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.#ctor(Microsoft.Build.Evaluation.Project,System.String)">
42865             <summary>
42866             Called by the Evaluator during project evaluation.
42867             </summary>
42868             <remarks>
42869             Assumes that the itemType string originated in a ProjectItemDefinitionElement and therefore
42870             was already validated.
42871             </remarks>
42872         </member>
42873         <member name="P:Microsoft.Build.Evaluation.ProjectItemDefinition.Project">
42874             <summary>
42875             Project that this item lives in.
42876             ProjectDefinitions always live in a project.
42877             </summary>
42878         </member>
42879         <member name="P:Microsoft.Build.Evaluation.ProjectItemDefinition.ItemType">
42880             <summary>
42881             Type of this item definition.
42882             </summary>
42883         </member>
42884         <member name="P:Microsoft.Build.Evaluation.ProjectItemDefinition.Metadata">
42885             <summary>
42886             Metadata on the item definition.
42887             If there is no metadata, returns empty collection.
42888             This is a read-only collection.
42889             </summary>
42890         </member>
42891         <member name="P:Microsoft.Build.Evaluation.ProjectItemDefinition.MetadataCount">
42892             <summary>
42893             Count of metadata on the item definition.
42894             </summary>
42895         </member>
42896         <member name="P:Microsoft.Build.Evaluation.ProjectItemDefinition.Microsoft#Build#Collections#IKeyed#Key">
42897             <summary>
42898             Implementation of IKeyed exposing the item type, so these 
42899             can be put in a dictionary conveniently.
42900             </summary>
42901         </member>
42902         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.GetMetadata(System.String)">
42903             <summary>
42904             Get any metadata in the item that has the specified name,
42905             otherwise returns null
42906             </summary>
42907         </member>
42908         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.GetMetadataValue(System.String)">
42909             <summary>
42910             Get the value of any metadata in the item that has the specified
42911             name, otherwise returns null
42912             </summary>
42913         </member>
42914         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.SetMetadataValue(System.String,System.String)">
42915             <summary>
42916             Sets a new metadata value on the ItemDefinition.
42917             </summary>
42918             <remarks>Unevaluated value is assumed to be escaped as necessary</remarks>
42919         </member>
42920         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.Microsoft#Build#Evaluation#IItemDefinition{Microsoft#Build#Evaluation#ProjectMetadata}#SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String,Microsoft.Build.Evaluation.ProjectMetadata)">
42921             <summary>
42922             Sets a new metadata value on the ItemDefinition.
42923             This is ONLY called during evaluation and does not affect the XML.
42924             </summary>
42925         </member>
42926         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String)">
42927             <summary>
42928             Retrieves the value of the named metadatum.
42929             </summary>
42930             <param name="name">The metadatum to retrieve.</param>
42931             <returns>The value, or an empty string if there is none by that name.</returns>
42932         </member>
42933         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValue(System.String,System.String)">
42934             <summary>
42935             Retrieves the value of the named metadatum.
42936             </summary>
42937             <param name="specifiedItemType">The type of item.</param>
42938             <param name="name">The metadatum to retrieve.</param>
42939             <returns>The value, or an empty string if there is none by that name.</returns>
42940         </member>
42941         <member name="M:Microsoft.Build.Evaluation.ProjectItemDefinition.Microsoft#Build#Evaluation#IMetadataTable#GetEscapedValueIfPresent(System.String,System.String)">
42942             <summary>
42943             Retrieves the value of the named metadatum, or null if it doesn't exist
42944             </summary>
42945             <param name="specifiedItemType">The type of item.</param>
42946             <param name="name">The metadatum to retrieve.</param>
42947             <returns>The value, or null if there is none by that name.</returns>
42948         </member>
42949         <member name="T:Microsoft.Build.Evaluation.ProjectMetadata">
42950             <summary>
42951             An evaluated design-time metadatum.
42952             Parented either by a ProjectItemDefinition or a ProjectItem.
42953             </summary>
42954             <remarks>
42955             Never used to represent built-in metadata, like %(Filename). There is always a backing XML object.
42956             </remarks>
42957         </member>
42958         <member name="F:Microsoft.Build.Evaluation.ProjectMetadata._parent">
42959             <summary>
42960             Parent item or item definition that this metadatum lives in.
42961             ProjectMetadata's always live in a project and always have a parent.
42962             The project can be gotten from this parent.
42963             Used to evaluate any updates.
42964             </summary>
42965         </member>
42966         <member name="F:Microsoft.Build.Evaluation.ProjectMetadata._xml">
42967             <summary>
42968             Backing XML metadata.
42969             Can never be null.
42970             </summary>
42971         </member>
42972         <member name="F:Microsoft.Build.Evaluation.ProjectMetadata._evaluatedValueEscaped">
42973             <summary>
42974             Evaluated value
42975             </summary>
42976         </member>
42977         <member name="F:Microsoft.Build.Evaluation.ProjectMetadata._predecessor">
42978             <summary>
42979             Any immediately previous metadatum (from item definition or item) that was overridden by this one during evaluation.
42980             This would include all metadata with the same name that lie above in the logical
42981             project file, who are on item definitions of the same type, and whose conditions evaluated to true.
42982             If this metadatum is on an item, it would include any previous metadatum with the same name on the same item whose condition
42983             evaluated to true, and following that any item definition metadata.
42984             If there are none above this is null.
42985             If the project has not been reevaluated since the last modification this value may be incorrect.
42986             </summary>
42987         </member>
42988         <member name="M:Microsoft.Build.Evaluation.ProjectMetadata.#ctor(Microsoft.Build.Evaluation.IProjectMetadataParent,Microsoft.Build.Construction.ProjectMetadataElement,System.String,Microsoft.Build.Evaluation.ProjectMetadata)">
42989             <summary>
42990             Creates a metadata backed by XML. 
42991             Constructed during evaluation of a project.
42992             </summary>
42993         </member>
42994         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Name">
42995             <summary>
42996             Name of the metadata
42997             </summary>
42998         </member>
42999         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.EvaluatedValue">
43000             <summary>
43001             Gets the evaluated metadata value.
43002             Cannot be set directly: only the unevaluated value can be set.
43003             Is never null.
43004             </summary>
43005         </member>
43006         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.UnevaluatedValue">
43007             <summary>
43008             Gets or sets the unevaluated metadata value.
43009             
43010             As well as updating the unevaluated value, the setter updates the evaluated value, but does not affect anything else in the project until reevaluation. For example,
43011                 --if a piece of metadata named "m" is modified on item of type "i", it does not affect "j" which is evaluated from "@(j->'%(m)')" until reevaluation.
43012                 --if the unevaluated value of "m" is set to something that is modified by evaluation, such as "$(p)", the evaluated value will be set to "$(p)" until reevaluation.
43013             This is a convenience that it is understood does not necessarily leave the project in a perfectly self consistent state.
43014             
43015             Setting metadata through a ProjectItem may cause the underlying ProjectItemElement to be split, if it originated with an itemlist, wildcard, or semicolon expression,
43016             because it was clear that the caller intended to only affect that particular item.
43017             Setting metadata through a ProjectMetadata does not cause any splitting, because we assume the caller presumably intends to affect all items using the underlying
43018             ProjectMetadataElement. At least, this seems a reasonable assumption, and it avoids the need for metadata to hold a pointer to their containing items.
43019             </summary>
43020             <remarks>
43021             The containing project will be dirtied by the XML modification.  Unevaluated values are assumed to be passed in escaped as necessary. 
43022             </remarks>
43023         </member>
43024         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Xml">
43025             <summary>
43026             Backing XML metadata.
43027             Can never be null.
43028             </summary>
43029         </member>
43030         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Project">
43031             <summary>
43032             Project that this metadatum lives in.
43033             ProjectMetadata's always live in a project.
43034             </summary>
43035         </member>
43036         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.ItemType">
43037             <summary>
43038             The item type of the parent item definition or item.
43039             </summary>
43040         </member>
43041         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Predecessor">
43042             <summary>
43043             Any immediately previous metadatum (from item definition or item) that was overridden by this one during evaluation.
43044             This would include all metadata with the same name that lie above in the logical
43045             project file, who are on item definitions of the same type, and whose conditions evaluated to true.
43046             If this metadatum is on an item, it would include any previous metadatum with the same name on the same item whose condition
43047             evaluated to true, and following that any item definition metadata.
43048             If there are none above this is null.
43049             If the project has not been reevaluated since the last modification this value may be incorrect.
43050             </summary>
43051         </member>
43052         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.IsImported">
43053             <summary>
43054             If the metadatum originated in an imported file, returns true.
43055             Otherwise returns false.
43056             </summary>
43057         </member>
43058         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Location">
43059             <summary>
43060             Location of the element
43061             </summary>
43062         </member>
43063         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.ConditionLocation">
43064             <summary>
43065             Location of the condition attribute
43066             </summary>
43067         </member>
43068         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Microsoft#Build#Collections#IKeyed#Key">
43069             <summary>
43070             Implementation of IKeyed exposing the metadata name, so metadata
43071             can be put in a dictionary conveniently.
43072             </summary>
43073         </member>
43074         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.Microsoft#Build#Collections#IValued#EscapedValue">
43075             <summary>
43076             Implementation of IValued
43077             </summary>
43078         </member>
43079         <member name="P:Microsoft.Build.Evaluation.ProjectMetadata.EvaluatedValueEscaped">
43080             <summary>
43081             Gets the evaluated metadata value.
43082             Cannot be set directly: only the unevaluated value can be set.
43083             Is never null.
43084             </summary>
43085         </member>
43086         <member name="M:Microsoft.Build.Evaluation.ProjectMetadata.System#IEquatable{Microsoft#Build#Evaluation#ProjectMetadata}#Equals(Microsoft.Build.Evaluation.ProjectMetadata)">
43087             <summary>
43088             Compares this metadata to another for equivalence.
43089             </summary>
43090             <param name="other">The other metadata</param>
43091             <returns>True if they are equivalent, false otherwise.</returns>
43092         </member>
43093         <member name="M:Microsoft.Build.Evaluation.ProjectMetadata.DeepClone">
43094             <summary>
43095             Deep clone a metadatum, retaining the same parent.
43096             </summary>
43097         </member>
43098         <member name="T:Microsoft.Build.Evaluation.ProjectProperty">
43099             <summary>
43100             An evaluated design-time property 
43101             </summary>
43102         </member>
43103         <member name="F:Microsoft.Build.Evaluation.ProjectProperty._project">
43104             <summary>
43105             Project that this property lives in.
43106             ProjectProperty's always live in a project.
43107             Used to evaluate any updates.
43108             </summary>
43109         </member>
43110         <member name="F:Microsoft.Build.Evaluation.ProjectProperty._evaluatedValueEscaped">
43111             <summary>
43112             Evaluated value of the property.  Escaped as necessary.
43113             </summary>
43114         </member>
43115         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.#ctor(Microsoft.Build.Evaluation.Project,System.String)">
43116             <summary>
43117             Creates a property.
43118             </summary>
43119         </member>
43120         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Name">
43121             <summary>
43122             Name of the property.
43123             Cannot be set.
43124             </summary>
43125             <comment>
43126             If this could be set, it would be necessary to have a callback
43127             so that the containing collections could be updated, as they use the name as 
43128             their key.
43129             </comment>
43130         </member>
43131         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.EvaluatedValue">
43132             <summary>
43133             Gets the evaluated property value.
43134             Cannot be set directly: only the unevaluated value can be set.
43135             Is never null.
43136             </summary>
43137             <remarks>
43138             Unescaped value of the evaluated property
43139             </remarks>
43140         </member>
43141         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Microsoft#Build#Evaluation#IProperty#EvaluatedValueEscaped">
43142             <summary>
43143             Gets the evaluated property value.
43144             Cannot be set directly: only the unevaluated value can be set.
43145             Is never null.
43146             </summary>
43147             <remarks>
43148             Evaluated property escaped as necessary
43149             </remarks>
43150         </member>
43151         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.UnevaluatedValue">
43152             <summary>
43153             Gets or sets the unevaluated property value.
43154             Updates the evaluated value in the project, although this is not sure to be correct until re-evaluation.
43155             </summary>
43156         </member>
43157         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.IsEnvironmentProperty">
43158             <summary>
43159             Whether the property originated from the environment (or the toolset)
43160             </summary>
43161         </member>
43162         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.IsGlobalProperty">
43163             <summary>
43164             Whether the property is a global property
43165             </summary>
43166         </member>
43167         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.IsReservedProperty">
43168             <summary>
43169             Whether the property is a reserved property,
43170             like 'MSBuildProjectFile'.
43171             </summary>
43172         </member>
43173         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Xml">
43174             <summary>
43175             Backing XML property.
43176             Null only if this is a global, environment, or built-in property.
43177             </summary>
43178         </member>
43179         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Project">
43180             <summary>
43181             Project that this property lives in.
43182             ProjectProperty's always live in a project.
43183             </summary>
43184         </member>
43185         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Predecessor">
43186             <summary>
43187             Any immediately previous property that was overridden by this one during evaluation.
43188             This would include all properties with the same name that lie above in the logical
43189             project file, and whose conditions evaluated to true.
43190             If there are none above this is null.
43191             If the project has not been reevaluated since the last modification this value may be incorrect.
43192             </summary>
43193         </member>
43194         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.IsImported">
43195             <summary>
43196             If the property originated in an imported file, returns true.
43197             If the property originates from the environment, a global property, or is a built-in property, returns false.
43198             Otherwise returns false.
43199             </summary>
43200         </member>
43201         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Microsoft#Build#Collections#IKeyed#Key">
43202             <summary>
43203             Implementation of IKeyed exposing the property name, so properties
43204             can be put in a dictionary conveniently.
43205             </summary>
43206         </member>
43207         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.Microsoft#Build#Collections#IValued#EscapedValue">
43208             <summary>
43209             Implementation of IValued
43210             </summary>
43211         </member>
43212         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.System#IEquatable{Microsoft#Build#Evaluation#ProjectProperty}#Equals(Microsoft.Build.Evaluation.ProjectProperty)">
43213             <summary>
43214             Compares this property to another for equivalence.
43215             </summary>
43216             <param name="other">The other property.</param>
43217             <returns>True if the properties are equivalent, false otherwise.</returns>
43218         </member>
43219         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.Create(Microsoft.Build.Evaluation.Project,System.String,System.String,System.Boolean,System.Boolean)">
43220             <summary>
43221             Creates a property without backing XML. 
43222             Property MAY BE global, and property MAY HAVE a reserved name (such as "MSBuildProjectDirectory") if indicated.
43223             This is ONLY to be used by the Evaluator (and Project.SetGlobalProperty) and ONLY for Global, Environment, and Built-in properties.
43224             All other properties originate in XML, and should have a backing XML object.
43225             </summary>
43226         </member>
43227         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.Create(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectPropertyElement,System.String,Microsoft.Build.Evaluation.ProjectProperty)">
43228             <summary>
43229             Creates a regular evaluated property, with backing XML.
43230             Called by Project.SetProperty.
43231             Property MAY NOT have reserved name and MAY NOT overwrite a global property.
43232             Predecessor is any immediately previous property that was overridden by this one during evaluation and may be null.
43233             </summary>
43234         </member>
43235         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.UpdateEvaluatedValue(System.String)">
43236             <summary>
43237             Called ONLY by the project in order to update the evaluated value
43238             after a property set occurring between full evaluations.
43239             </summary>
43240             <remarks>
43241             Method instead of a setter on EvaluatedValue to try to make clear its limited purpose.
43242             </remarks>
43243         </member>
43244         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.ProjectHasMatchingGlobalProperty(Microsoft.Build.Evaluation.Project,System.String)">
43245             <summary>
43246             Looks for a matching global property.
43247             </summary>
43248             <remarks>
43249             The reason we do this and not just look at project.GlobalProperties is
43250             that when the project is being loaded, the GlobalProperties collection is already populated.  When we do our
43251             evaluation, we may attempt to add some properties, such as environment variables, to the master Properties 
43252             collection.  As GlobalProperties are supposed to override these and thus be added last, we can't check against
43253             the GlobalProperties collection as they are being added.  The correct behavior is to always check against the
43254             collection which is accumulating properties as we go, which is the Properties collection.  Once the project has
43255             been fully populated, this method will also ensure that further properties do not attempt to override global
43256             properties, as those will have the global property flag set.
43257             </remarks>
43258             <param name="project">The project to compare with.</param>
43259             <param name="propertyName">The property name to look up</param>
43260             <returns>True if there is a matching global property, false otherwise.</returns>
43261         </member>
43262         <member name="T:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked">
43263             <summary>
43264             Regular property, originating in an XML node, but with no predecessor (property with same name that it overrode during evaluation)
43265             </summary>
43266         </member>
43267         <member name="F:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked._xml">
43268             <summary>
43269             Backing XML property.
43270             Never null.
43271             </summary>
43272         </member>
43273         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectPropertyElement,System.String)">
43274             <summary>
43275             Creates a regular evaluated property, with backing XML.
43276             Called by Project.SetProperty.
43277             Property MAY NOT have reserved name and MAY NOT overwrite a global property.
43278             Predecessor is any immediately previous property that was overridden by this one during evaluation and may be null.
43279             </summary>
43280         </member>
43281         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.Name">
43282             <summary>
43283             Name of the property.
43284             Cannot be set.
43285             </summary>
43286             <comment>
43287             If this could be set, it would be necessary to have a callback
43288             so that the containing collections could be updated, as they use the name as 
43289             their key.
43290             </comment>
43291         </member>
43292         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.UnevaluatedValue">
43293             <summary>
43294             Gets or sets the unevaluated property value.
43295             Updates the evaluated value in the project, although this is not sure to be correct until re-evaluation.
43296             </summary>
43297             <remarks>
43298             The containing project will be dirtied by the XML modification.
43299             If there is no XML backing, the evaluated value returned is the value of the property that has been 
43300             escaped as necessary.
43301             </remarks>
43302         </member>
43303         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.IsEnvironmentProperty">
43304             <summary>
43305             Whether the property originated from the environment (or the toolset)
43306             </summary>
43307         </member>
43308         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.IsGlobalProperty">
43309             <summary>
43310             Whether the property is a global property
43311             </summary>
43312         </member>
43313         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.IsReservedProperty">
43314             <summary>
43315             Whether the property is a reserved property,
43316             like 'MSBuildProjectFile'.
43317             </summary>
43318         </member>
43319         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.Xml">
43320             <summary>
43321             Backing XML property.
43322             </summary>
43323         </member>
43324         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.Predecessor">
43325             <summary>
43326             Any immediately previous property that was overridden by this one during evaluation.
43327             This would include all properties with the same name that lie above in the logical
43328             project file, and whose conditions evaluated to true.
43329             In this class this is null.
43330             If the project has not been reevaluated since the last modification this value may be incorrect.
43331             </summary>
43332         </member>
43333         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBacked.IsImported">
43334             <summary>
43335             If the property originated in an imported file, returns true.
43336             Otherwise returns false.
43337             </summary>
43338         </member>
43339         <member name="T:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBackedWithPredecessor">
43340             <summary>
43341             Regular property, originating in an XML node, and with a predecessor (property with same name that was overridden during evaluation)
43342             </summary>
43343         </member>
43344         <member name="F:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBackedWithPredecessor._predecessor">
43345             <summary>
43346             Any immediately previous property that was overridden by this one during evaluation.
43347             This would include all properties with the same name that lie above in the logical
43348             project file, and whose conditions evaluated to true.
43349             If there are none above this is null.
43350             If the project has not been reevaluated since the last modification this value may be incorrect.
43351             </summary>
43352         </member>
43353         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBackedWithPredecessor.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectPropertyElement,System.String,Microsoft.Build.Evaluation.ProjectProperty)">
43354             <summary>
43355             Creates a regular evaluated property, with backing XML.
43356             Called by Project.SetProperty.
43357             Property MAY NOT have reserved name and MAY NOT overwrite a global property.
43358             Predecessor is any immediately previous property that was overridden by this one during evaluation and may be null.
43359             </summary>
43360         </member>
43361         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyXmlBackedWithPredecessor.Predecessor">
43362             <summary>
43363             Any immediately previous property that was overridden by this one during evaluation.
43364             This would include all properties with the same name that lie above in the logical
43365             project file, and whose conditions evaluated to true.
43366             If there are none above this is null.
43367             If the project has not been reevaluated since the last modification this value may be incorrect.
43368             </summary>
43369         </member>
43370         <member name="T:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked">
43371             <summary>
43372             Global/environment/toolset properties are the minority;
43373             they don't originate with XML, so we must store their name (instead)
43374             </summary>
43375         </member>
43376         <member name="F:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked._name">
43377             <summary>
43378             Name of the property.
43379             </summary>
43380         </member>
43381         <member name="M:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.#ctor(Microsoft.Build.Evaluation.Project,System.String,System.String,System.Boolean,System.Boolean)">
43382             <summary>
43383             Creates a property without backing XML. 
43384             Property MAY BE global, and property MAY HAVE a reserved name (such as "MSBuildProjectDirectory") if indicated.
43385             This is ONLY to be used by the Evaluator (and Project.SetGlobalProperty) and ONLY for Global, Environment, and Built-in properties.
43386             All other properties originate in XML, and should have a backing XML object.
43387             </summary>
43388         </member>
43389         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.Name">
43390             <summary>
43391             Name of the property.
43392             Cannot be set.
43393             </summary>
43394             <comment>
43395             If this could be set, it would be necessary to have a callback
43396             so that the containing collections could be updated, as they use the name as 
43397             their key.
43398             </comment>
43399         </member>
43400         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.UnevaluatedValue">
43401             <summary>
43402             Gets or sets the unevaluated property value.
43403             Updates the evaluated value in the project, although this is not sure to be correct until re-evaluation.
43404             </summary>
43405             <remarks>
43406             The containing project will be dirtied.
43407             As there is no XML backing, the evaluated value returned is the value of the property that has been 
43408             escaped as necessary.
43409             </remarks>
43410         </member>
43411         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.IsEnvironmentProperty">
43412             <summary>
43413             Whether the property originated from the environment (or the toolset)
43414             </summary>
43415         </member>
43416         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.IsGlobalProperty">
43417             <summary>
43418             Whether the property is a global property
43419             </summary>
43420         </member>
43421         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.IsReservedProperty">
43422             <summary>
43423             Whether the property is a reserved property,
43424             like 'MSBuildProjectFile'.
43425             </summary>
43426         </member>
43427         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.Xml">
43428             <summary>
43429             Backing XML property.
43430             Null because this is a global, environment, or built-in property.
43431             </summary>
43432         </member>
43433         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.Predecessor">
43434             <summary>
43435             Any immediately previous property that was overridden by this one during evaluation.
43436             Because these properties are not backed by XML, they cannot have precedessors.
43437             </summary>
43438         </member>
43439         <member name="P:Microsoft.Build.Evaluation.ProjectProperty.ProjectPropertyNotXmlBacked.IsImported">
43440             <summary>
43441             Whether the property originated in an imported file.
43442             Because these properties did not originate in an XML file, this always returns null.
43443             </summary>
43444         </member>
43445         <member name="T:Microsoft.Build.Evaluation.ResolvedImport">
43446             <summary>
43447             Encapsulates an import relationship in an evaluated project
43448             between a ProjectImportElement and the ProjectRootElement of the
43449             imported project.
43450             </summary>
43451             <comment>
43452             This struct is functionally identical to KeyValuePair, but is necessary to avoid
43453             CA908 warnings (types that in ngen images that will JIT).
43454             It works because although this is a value type, it is not defined in mscorlib.
43455             Essentially we would use KeyValuePair except for this technical reason.
43456             </comment>
43457         </member>
43458         <member name="F:Microsoft.Build.Evaluation.ResolvedImport._importingElement">
43459             <summary>
43460             Element doing the import
43461             </summary>
43462         </member>
43463         <member name="F:Microsoft.Build.Evaluation.ResolvedImport._importedProject">
43464             <summary>
43465             One of the files it causes to import
43466             </summary>
43467         </member>
43468         <member name="F:Microsoft.Build.Evaluation.ResolvedImport._isImported">
43469             <summary>
43470             Whether the importing element is itself imported.
43471             </summary>
43472         </member>
43473         <member name="M:Microsoft.Build.Evaluation.ResolvedImport.#ctor(Microsoft.Build.Evaluation.Project,Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement)">
43474             <summary>
43475             Initializes a new instance of the <see cref="T:Microsoft.Build.Evaluation.ResolvedImport"/> struct.
43476             </summary>
43477         </member>
43478         <member name="P:Microsoft.Build.Evaluation.ResolvedImport.ImportingElement">
43479             <summary>
43480             Gets the element doing the import.
43481             </summary>
43482         </member>
43483         <member name="P:Microsoft.Build.Evaluation.ResolvedImport.ImportedProject">
43484             <summary>
43485             Gets one of the imported projects.
43486             </summary>
43487         </member>
43488         <member name="P:Microsoft.Build.Evaluation.ResolvedImport.IsImported">
43489             <summary>
43490             Whether the importing element is itself imported.
43491             </summary>
43492         </member>
43493         <member name="T:Microsoft.Build.Evaluation.SubToolset">
43494             <summary>
43495             Aggregation of a set of properties that correspond to a particular sub-toolset.  
43496             </summary>
43497         </member>
43498         <member name="F:Microsoft.Build.Evaluation.SubToolset._subToolsetVersion">
43499             <summary>
43500             VisualStudioVersion that corresponds to this subtoolset
43501             </summary>
43502         </member>
43503         <member name="F:Microsoft.Build.Evaluation.SubToolset._properties">
43504             <summary>
43505             The properties defined by the subtoolset.
43506             </summary> 
43507         </member>
43508         <member name="M:Microsoft.Build.Evaluation.SubToolset.#ctor(System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
43509             <summary>
43510             Constructor that associates a set of properties with a sub-toolset version.  
43511             </summary>
43512         </member>
43513         <member name="M:Microsoft.Build.Evaluation.SubToolset.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
43514             <summary>
43515             Private constructor for translation
43516             </summary>
43517         </member>
43518         <member name="P:Microsoft.Build.Evaluation.SubToolset.SubToolsetVersion">
43519             <summary>
43520             VisualStudioVersion that corresponds to this subtoolset
43521             </summary>
43522         </member>
43523         <member name="P:Microsoft.Build.Evaluation.SubToolset.Properties">
43524             <summary>
43525             The properties that correspond to this particular sub-toolset. 
43526             </summary>
43527         </member>
43528         <member name="M:Microsoft.Build.Evaluation.SubToolset.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
43529             <summary>
43530             Translates the sub-toolset.
43531             </summary>
43532         </member>
43533         <member name="M:Microsoft.Build.Evaluation.SubToolset.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
43534             <summary>
43535             Factory for deserialization.
43536             </summary>
43537         </member>
43538         <member name="T:Microsoft.Build.Evaluation.LoadXmlFromPath">
43539             <summary>
43540             Delegate for loading an Xml file, for unit testing.
43541             </summary>
43542             <param name="path">The path to load.</param>
43543             <returns>An Xml document.</returns>
43544         </member>
43545         <member name="T:Microsoft.Build.Evaluation.Toolset">
43546             <summary>
43547             Aggregation of a toolset version (eg. "2.0"), tools path, and optional set of associated properties.
43548             Toolset is immutable.
43549             </summary>
43550             <remarks>
43551             UNDONE: Review immutability. If this is not immutable, add a mechanism to notify the project collection/s owning it to increment their toolsetVersion.
43552             </remarks>
43553         </member>
43554         <member name="F:Microsoft.Build.Evaluation.Toolset.DefaultTasksFilePattern">
43555             <summary>
43556             these files list all default tasks and task assemblies that do not need to be explicitly declared by projects
43557             </summary> 
43558         </member>
43559         <member name="F:Microsoft.Build.Evaluation.Toolset.OverrideTasksFilePattern">
43560             <summary>
43561             these files list all Override tasks and task assemblies that do not need to be explicitly declared by projects
43562             </summary> 
43563         </member>
43564         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10OverallInstallKeyRegistryPath">
43565             <summary>
43566             Regkey that we check to see whether Dev10 is installed.  This should exist if any SKU of Dev10 is installed, 
43567             but is not removed even when the last version of Dev10 is uninstalled, due to 10.0\bsln sticking around. 
43568             </summary>
43569         </member>
43570         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10UltimateInstallKeyRegistryPath">
43571             <summary>
43572             Regkey that we check to see whether Dev10 Ultimate is installed.  This will exist if it is installed, and be 
43573             properly removed after it has been uninstalled.  
43574             </summary>
43575         </member>
43576         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10PremiumInstallKeyRegistryPath">
43577             <summary>
43578             Regkey that we check to see whether Dev10 Premium is installed.  This will exist if it is installed, and be 
43579             properly removed after it has been uninstalled.  
43580             </summary>
43581         </member>
43582         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10ProfessionalInstallKeyRegistryPath">
43583             <summary>
43584             Regkey that we check to see whether Dev10 Professional is installed.  This will exist if it is installed, and be 
43585             properly removed after it has been uninstalled.  
43586             </summary>
43587         </member>
43588         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10VCSExpressInstallKeyRegistryPath">
43589             <summary>
43590             Regkey that we check to see whether C# Express 2010 is installed.  This will exist if it is installed, and be 
43591             properly removed after it has been uninstalled.  
43592             </summary>
43593         </member>
43594         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10VBExpressInstallKeyRegistryPath">
43595             <summary>
43596             Regkey that we check to see whether VB Express 2010 is installed.  This will exist if it is installed, and be 
43597             properly removed after it has been uninstalled.  
43598             </summary>
43599         </member>
43600         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10VCExpressInstallKeyRegistryPath">
43601             <summary>
43602             Regkey that we check to see whether VC Express 2010 is installed.  This will exist if it is installed, and be 
43603             properly removed after it has been uninstalled.  
43604             </summary>
43605         </member>
43606         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10VWDExpressInstallKeyRegistryPath">
43607             <summary>
43608             Regkey that we check to see whether VWD Express 2010 is installed.  This will exist if it is installed, and be 
43609             properly removed after it has been uninstalled.  
43610             </summary>
43611         </member>
43612         <member name="F:Microsoft.Build.Evaluation.Toolset.Dev10LightSwitchInstallKeyRegistryPath">
43613             <summary>
43614             Regkey that we check to see whether LightSwitch 2010 is installed.  This will exist if it is installed, and be 
43615             properly removed after it has been uninstalled.  
43616             </summary>
43617         </member>
43618         <member name="F:Microsoft.Build.Evaluation.Toolset.s_dev10IsInstalled">
43619             <summary>
43620             Null if it hasn't been figured out yet; true if (some variation of) Visual Studio 2010 is installed on 
43621             the current machine, false otherwise. 
43622             </summary>
43623         </member>
43624         <member name="F:Microsoft.Build.Evaluation.Toolset._toolsVersion">
43625             <summary>
43626             Name of the tools version
43627             </summary> 
43628         </member>
43629         <member name="F:Microsoft.Build.Evaluation.Toolset._toolsPath">
43630             <summary>
43631             The MSBuildBinPath (and ToolsPath) for this tools version
43632             </summary> 
43633         </member>
43634         <member name="F:Microsoft.Build.Evaluation.Toolset._properties">
43635             <summary>
43636             The properties defined by the toolset.
43637             </summary> 
43638         </member>
43639         <member name="F:Microsoft.Build.Evaluation.Toolset._overrideTasksPath">
43640             <summary>
43641             Path to look for msbuild override task files.
43642             </summary>
43643         </member>
43644         <member name="F:Microsoft.Build.Evaluation.Toolset._defaultOverrideToolsVersion">
43645             <summary>
43646             ToolsVersion to use as the default ToolsVersion for this version of MSBuild
43647             </summary>
43648         </member>
43649         <member name="F:Microsoft.Build.Evaluation.Toolset._environmentProperties">
43650             <summary>
43651             The environment properties
43652             </summary>
43653         </member>
43654         <member name="F:Microsoft.Build.Evaluation.Toolset._globalProperties">
43655             <summary>
43656             The build-global properties
43657             </summary>
43658         </member>
43659         <member name="F:Microsoft.Build.Evaluation.Toolset._defaultTasksRegistrationAttempted">
43660             <summary>
43661             indicates if the default tasks file has already been scanned
43662             </summary> 
43663         </member>
43664         <member name="F:Microsoft.Build.Evaluation.Toolset._overrideTasksRegistrationAttempted">
43665             <summary>
43666             indicates if the override tasks file has already been scanned
43667             </summary> 
43668         </member>
43669         <member name="F:Microsoft.Build.Evaluation.Toolset._defaultTaskRegistry">
43670             <summary>
43671             holds all the default tasks we know about and the assemblies they exist in
43672             </summary> 
43673         </member>
43674         <member name="F:Microsoft.Build.Evaluation.Toolset._overrideTaskRegistry">
43675             <summary>
43676             holds all the override tasks we know about and the assemblies they exist in
43677             </summary> 
43678         </member>
43679         <member name="F:Microsoft.Build.Evaluation.Toolset._getFiles">
43680             <summary>
43681             Delegate to retrieving files.  For unit testing only.
43682             </summary>
43683         </member>
43684         <member name="F:Microsoft.Build.Evaluation.Toolset._directoryExists">
43685             <summary>
43686             Delegate to check to see if a directory exists
43687             </summary>
43688         </member>
43689         <member name="F:Microsoft.Build.Evaluation.Toolset._loadXmlFromPath">
43690             <summary>
43691             Delegate for loading Xml.  For unit testing only.
43692             </summary>
43693         </member>
43694         <member name="F:Microsoft.Build.Evaluation.Toolset._expander">
43695             <summary>
43696             Expander to expand the properties and items in the using tasks files
43697             </summary>
43698         </member>
43699         <member name="F:Microsoft.Build.Evaluation.Toolset._propertyBag">
43700             <summary>
43701             Bag of properties for the expander to expand the properties and items in the using tasks files
43702             </summary>
43703         </member>
43704         <member name="F:Microsoft.Build.Evaluation.Toolset._subToolsets">
43705             <summary>
43706             SubToolsets that map to this toolset. 
43707             </summary>
43708         </member>
43709         <member name="F:Microsoft.Build.Evaluation.Toolset._defaultSubToolsetVersion">
43710             <summary>
43711             If no sub-toolset is specified, this is the default sub-toolset version.  Null == no default 
43712             sub-toolset, just use the base toolset. 
43713             </summary>
43714         </member>
43715         <member name="F:Microsoft.Build.Evaluation.Toolset._propertySearchPathsTable">
43716             <summary>
43717             Map of project import properties to their list of fall-back search paths
43718             </summary>
43719         </member>
43720         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,Microsoft.Build.Evaluation.ProjectCollection,System.String)">
43721             <summary>
43722             Constructor taking only tools version and a matching tools path
43723             </summary>
43724             <param name="toolsVersion">Name of the toolset</param>
43725             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43726             <param name="projectCollection">The project collection from which to obtain the properties.</param>
43727             <param name="msbuildOverrideTasksPath">The path to search for msbuild overridetasks files.</param>
43728         </member>
43729         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.Evaluation.ProjectCollection,System.String)">
43730             <summary>
43731             Constructor that also associates a set of properties with the tools version
43732             </summary>
43733             <param name="toolsVersion">Name of the toolset</param>
43734             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43735             <param name="buildProperties">
43736             Properties that should be associated with the Toolset.
43737             May be null, in which case an empty property group will be used.
43738             </param>
43739             <param name="projectCollection">The project collection that this toolset should inherit from</param>
43740             <param name="msbuildOverrideTasksPath">The override tasks path.</param>
43741         </member>
43742         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,System.Collections.Generic.IDictionary{System.String,System.String},Microsoft.Build.Evaluation.ProjectCollection,System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Evaluation.SubToolset},System.String)">
43743             <summary>
43744             Constructor that also associates a set of properties with the tools version
43745             </summary>
43746             <param name="toolsVersion">Name of the toolset</param>
43747             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43748             <param name="buildProperties">
43749             Properties that should be associated with the Toolset.
43750             May be null, in which case an empty property group will be used.
43751             </param>
43752             <param name="projectCollection">The project collection that this toolset should inherit from</param>
43753             <param name="subToolsets">The set of sub-toolsets to add to this toolset</param>
43754             <param name="msbuildOverrideTasksPath">The override tasks path.</param>
43755         </member>
43756         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.String,System.String)">
43757             <summary>
43758             Constructor taking only tools version and a matching tools path
43759             </summary>
43760             <param name="toolsVersion">Name of the toolset</param>
43761             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43762             <param name="environmentProperties">A <see cref="T:Microsoft.Build.Collections.PropertyDictionary`1"/> containing the environment properties.</param>
43763             <param name="globalProperties">A <see cref="T:Microsoft.Build.Collections.PropertyDictionary`1"/> containing the global properties.</param>
43764             <param name="msbuildOverrideTasksPath">The override tasks path.</param>
43765             <param name="defaultOverrideToolsVersion">ToolsVersion to use as the default ToolsVersion for this version of MSBuild.</param>
43766         </member>
43767         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Collections.Generic.IDictionary{System.String,Microsoft.Build.Evaluation.SubToolset},System.String,System.String,System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.ProjectImportPathMatch})">
43768             <summary>
43769             Constructor that also associates a set of properties with the tools version
43770             </summary>
43771             <param name="toolsVersion">Name of the toolset</param>
43772             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43773             <param name="buildProperties">
43774             Properties that should be associated with the Toolset.
43775             May be null, in which case an empty property group will be used.
43776             </param>
43777             <param name="environmentProperties">A <see cref="T:Microsoft.Build.Collections.PropertyDictionary`1"/> containing the environment properties.</param>
43778             <param name="globalProperties">A <see cref="T:Microsoft.Build.Collections.PropertyDictionary`1"/> containing the global properties.</param>
43779             <param name="subToolsets">A list of <see cref="T:Microsoft.Build.Evaluation.SubToolset"/> to use.</param>
43780             <param name="msbuildOverrideTasksPath">The override tasks path.</param>
43781             <param name="defaultOverrideToolsVersion">ToolsVersion to use as the default ToolsVersion for this version of MSBuild.</param>
43782             <param name="importSearchPathsTable">Map of parameter name to property search paths for use during Import.</param>
43783         </member>
43784         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(System.String,System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ProjectCollection,Microsoft.Build.Shared.DirectoryGetFiles,Microsoft.Build.Evaluation.LoadXmlFromPath,System.String,Microsoft.Build.Shared.DirectoryExists)">
43785             <summary>
43786             Additional constructor to make unit testing the TaskRegistry support easier
43787             </summary>
43788             <remarks>
43789             Internal for unit test purposes only.
43790             </remarks>
43791             <param name="toolsVersion">Name of the toolset</param>
43792             <param name="toolsPath">Path to this toolset's tasks and targets</param>
43793             <param name="buildProperties">
43794             Properties that should be associated with the Toolset.
43795             May be null, in which case an empty property group will be used.
43796             </param>
43797             <param name="projectCollection">The project collection.</param>
43798             <param name="getFiles">A delegate to intercept GetFiles calls.  For unit testing.</param>
43799             <param name="loadXmlFromPath">A delegate to intercept Xml load calls.  For unit testing.</param>
43800             <param name="msbuildOverrideTasksPath">The override tasks path.</param>
43801             <param name="directoryExists"></param>
43802         </member>
43803         <member name="M:Microsoft.Build.Evaluation.Toolset.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
43804             <summary>
43805             Private constructor for serialization.
43806             </summary>
43807         </member>
43808         <member name="M:Microsoft.Build.Evaluation.Toolset.GetProjectImportSearchPaths(System.String)">
43809             <summary>
43810             Returns a ProjectImportPathMatch struct for the first property found in the expression for which
43811             project import search paths is enabled.
43812             <param name="expression">Expression to search for properties in (first level only, not recursive)</param>
43813             <returns>List of search paths or ProjectImportPathMatch.None if empty</returns>
43814             </summary>
43815         </member>
43816         <member name="P:Microsoft.Build.Evaluation.Toolset.ToolsVersion">
43817             <summary>
43818             Name of this toolset
43819             </summary>
43820         </member>
43821         <member name="P:Microsoft.Build.Evaluation.Toolset.ToolsPath">
43822             <summary>
43823             Path to this toolset's tasks and targets. Corresponds to $(MSBuildToolsPath) in a project or targets file.
43824             </summary>
43825         </member>
43826         <member name="P:Microsoft.Build.Evaluation.Toolset.Properties">
43827             <summary>
43828             Properties associated with the toolset
43829             </summary>
43830         </member>
43831         <member name="P:Microsoft.Build.Evaluation.Toolset.SubToolsets">
43832             <summary>
43833             The set of sub-toolsets associated with this toolset.
43834             </summary>
43835         </member>
43836         <member name="P:Microsoft.Build.Evaluation.Toolset.DefaultSubToolsetVersion">
43837             <summary>
43838             Returns the default sub-toolset version for this sub-toolset.  Heuristic used is: 
43839             1) If Visual Studio 2010 is installed and our ToolsVersion is "4.0", use the base toolset, and return 
43840                a sub-toolset version of "10.0", to be set as a publicly visible property so that e.g. targets can 
43841                consume it.  This is to handle the fact that Visual Studio 2010 did not have any concept of sub-toolsets. 
43842             2) Otherwise, use the highest-versioned sub-toolset found.  Sub-toolsets with numbered versions will 
43843                be ordered numerically; any additional sub-toolsets will be prepended to the beginning of the list in 
43844                the order found. We use the highest-versioned sub-toolset because, in the absence of any other information, 
43845                we assume that higher-versioned tools will be more likely to be able to generate something more correct.  
43846             
43847             Will return null if there is no sub-toolset available (and Dev10 is not installed). 
43848             </summary>
43849         </member>
43850         <member name="P:Microsoft.Build.Evaluation.Toolset.Dev10IsInstalled">
43851             <summary>
43852             Null if it hasn't been figured out yet; true if (some variation of) Visual Studio 2010 is installed on 
43853             the current machine, false otherwise. 
43854             </summary>
43855             <comments>
43856             Internal so that unit tests can use it too. 
43857             </comments>
43858         </member>
43859         <member name="P:Microsoft.Build.Evaluation.Toolset.OverrideTasksPath">
43860             <summary>
43861             Path to look for msbuild override task files.
43862             </summary>
43863         </member>
43864         <member name="P:Microsoft.Build.Evaluation.Toolset.DefaultOverrideToolsVersion">
43865             <summary>
43866             ToolsVersion to use as the default ToolsVersion for this version of MSBuild
43867             </summary>
43868         </member>
43869         <member name="P:Microsoft.Build.Evaluation.Toolset.ImportPropertySearchPathsTable">
43870             <summary>
43871             Map of properties to their list of fall-back search paths
43872             </summary>
43873         </member>
43874         <member name="P:Microsoft.Build.Evaluation.Toolset.MSBuildExtensionsPathSearchPathsTable">
43875             <summary>
43876             Map of MSBuildExtensionsPath properties to their list of fallback search paths
43877             </summary>
43878         </member>
43879         <member name="M:Microsoft.Build.Evaluation.Toolset.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
43880             <summary>
43881             Function for serialization.
43882             </summary>
43883         </member>
43884         <member name="M:Microsoft.Build.Evaluation.Toolset.GenerateSubToolsetVersion">
43885             <summary>
43886             Generates the sub-toolset version to be used with this toolset.  Sub-toolset version is based on:
43887             1. If "VisualStudioVersion" is set as a property on the toolset itself (global or environment), 
43888                use that. 
43889             2. Otherwise, use the default sub-toolset version for this toolset. 
43890             
43891             The sub-toolset version returned may be null; if so, that means that no sub-toolset should be used, 
43892             just the base toolset on its own. The sub-toolset version returned may not map to an existing 
43893             sub-toolset.  
43894             </summary>
43895         </member>
43896         <member name="M:Microsoft.Build.Evaluation.Toolset.GenerateSubToolsetVersion(System.Collections.Generic.IDictionary{System.String,System.String},System.Int32)">
43897             <summary>
43898             Generates the sub-toolset version to be used with this toolset.  Sub-toolset version is based on:
43899             1. If the "VisualStudioVersion" global property exists in the set of properties passed to us, use it. 
43900             2. Otherwise, if "VisualStudioVersion" is set as a property on the toolset itself (global or environment), 
43901                use that. 
43902             3. Otherwise, use Visual Studio version from solution file if it maps to an existing sub-toolset. 
43903             4. Otherwise, use the default sub-toolset version for this toolset. 
43904             
43905             The sub-toolset version returned may be null; if so, that means that no sub-toolset should be used, 
43906             just the base toolset on its own. The sub-toolset version returned may not map to an existing 
43907             sub-toolset.  
43908             
43909             The global properties dictionary may be null. 
43910             </summary>
43911         </member>
43912         <member name="M:Microsoft.Build.Evaluation.Toolset.GetProperty(System.String,System.String)">
43913             <summary>
43914             Given a property name and a sub-toolset version, searches for that property first in the 
43915             sub-toolset, then falls back to the base toolset if necessary, and returns the property 
43916             if it was found. 
43917             </summary>
43918         </member>
43919         <member name="M:Microsoft.Build.Evaluation.Toolset.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
43920             <summary>
43921             Factory for deserialization.
43922             </summary>
43923         </member>
43924         <member name="M:Microsoft.Build.Evaluation.Toolset.GetTaskFiles(Microsoft.Build.Shared.DirectoryGetFiles,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.String,System.String,System.String)">
43925             <summary>
43926             Given a search path and a task pattern get a list of task or override task files.
43927             </summary>
43928         </member>
43929         <member name="M:Microsoft.Build.Evaluation.Toolset.GenerateSubToolsetVersion(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
43930             <summary>
43931             Generates the sub-toolset version to be used with this toolset.  Sub-toolset version is based on:
43932             1. If the "VisualStudioVersion" global property exists in the set of properties passed to us, use it. 
43933             2. Otherwise, if "VisualStudioVersion" is set as a property on the toolset itself (global or environment), 
43934                use that. 
43935             3. Otherwise, use Visual Studio version from solution file if it maps to an existing sub-toolset. 
43936             4. Otherwise, use the default sub-toolset version for this toolset. 
43937             
43938             The sub-toolset version returned may be null; if so, that means that no sub-toolset should be used, 
43939             just the base toolset on its own. The sub-toolset version returned may not map to an existing 
43940             sub-toolset.  
43941             
43942             The global properties dictionary may be null. 
43943             </summary>
43944         </member>
43945         <member name="M:Microsoft.Build.Evaluation.Toolset.GenerateSubToolsetVersion(System.Int32)">
43946             <summary>
43947             Generates the sub-toolset version to be used with this toolset.  Sub-toolset version is based on:
43948             1. If the "VisualStudioVersion" global property exists in the set of properties passed to us, use it. 
43949             2. Otherwise, if "VisualStudioVersion" is set as a property on the toolset itself (global or environment), 
43950                use that. 
43951             3. Otherwise, use Visual Studio version from solution file if it maps to an existing sub-toolset. 
43952             4. Otherwise, use the default sub-toolset version for this toolset. 
43953             
43954             The sub-toolset version returned may be null; if so, that means that no sub-toolset should be used, 
43955             just the base toolset on its own. The sub-toolset version returned may not map to an existing 
43956             sub-toolset.  
43957             
43958             The global properties dictionary may be null. 
43959             </summary>
43960         </member>
43961         <member name="M:Microsoft.Build.Evaluation.Toolset.GetTaskRegistry(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
43962             <summary>
43963             Return a task registry stub for the tasks in the *.tasks file for this toolset         
43964             </summary>
43965             <param name="loggingServices">The logging services used to log during task registration.</param>
43966             <param name="buildEventContext">The build event context used to log during task registration.</param>
43967             <param name="projectRootElementCache">The <see cref="T:Microsoft.Build.Evaluation.ProjectRootElementCache"/> to use.</param>
43968             <returns>The task registry</returns>
43969         </member>
43970         <member name="M:Microsoft.Build.Evaluation.Toolset.GenerateSubToolsetVersionUsingVisualStudioVersion(System.Collections.Generic.IDictionary{System.String,System.String},System.Int32)">
43971             <summary>
43972             Get SubToolset version using Visual Studio version from Dev 12 solution file
43973             </summary>
43974         </member>
43975         <member name="M:Microsoft.Build.Evaluation.Toolset.GetOverrideTaskRegistry(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
43976             <summary>
43977             Return a task registry for the override tasks in the *.overridetasks file for this toolset         
43978             </summary>
43979             <param name="loggingServices">The logging services used to log during task registration.</param>
43980             <param name="buildEventContext">The build event context used to log during task registration.</param>
43981             <param name="projectRootElementCache">The <see cref="T:Microsoft.Build.Evaluation.ProjectRootElementCache"/> to use.</param>
43982             <returns>The task registry</returns>
43983         </member>
43984         <member name="M:Microsoft.Build.Evaluation.Toolset.RegisterDefaultTasks(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
43985             <summary>
43986             Used to load information about default MSBuild tasks i.e. tasks that do not need to be explicitly declared in projects
43987             with the &lt;UsingTask&gt; element. Default task information is read from special files, which are located in the same
43988             directory as the MSBuild binaries.
43989             </summary>
43990             <remarks>
43991             1) a default tasks file needs the &lt;Project&gt; root tag in order to be well-formed
43992             2) the XML declaration tag &lt;?xml ...&gt; is ignored
43993             3) comment tags are always ignored regardless of their placement
43994             4) the rest of the tags are expected to be &lt;UsingTask&gt; tags
43995             </remarks>
43996             <param name="loggingServices">The logging services to use to log during this registration.</param>
43997             <param name="buildEventContext">The build event context to use to log during this registration.</param>
43998             <param name="projectRootElementCache">The <see cref="T:Microsoft.Build.Evaluation.ProjectRootElementCache"/> to use.</param>
43999         </member>
44000         <member name="M:Microsoft.Build.Evaluation.Toolset.InitializeProperties(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
44001             <summary>
44002             Initialize the properties which are used to evaluate the tasks files.
44003             </summary>
44004         </member>
44005         <member name="M:Microsoft.Build.Evaluation.Toolset.RegisterOverrideTasks(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
44006             <summary>
44007             Used to load information about MSBuild override tasks i.e. tasks that override tasks declared in tasks or project files.
44008             </summary>
44009         </member>
44010         <member name="M:Microsoft.Build.Evaluation.Toolset.LoadAndRegisterFromTasksFile(System.String,System.String[],Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,System.String,System.String,Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Execution.TaskRegistry)">
44011             <summary>
44012             Do the actual loading of the tasks or override tasks file and register the tasks in the task registry
44013             </summary>
44014         </member>
44015         <member name="T:Microsoft.Build.Evaluation.ToolsetConfigurationReader">
44016             <summary>
44017             Class used to read toolset configurations.
44018             </summary>
44019         </member>
44020         <member name="F:Microsoft.Build.Evaluation.ToolsetConfigurationReader._configurationSection">
44021             <summary>
44022             A section of a toolset configuration
44023             </summary>
44024         </member>
44025         <member name="F:Microsoft.Build.Evaluation.ToolsetConfigurationReader._readApplicationConfiguration">
44026             <summary>
44027             Delegate used to read application configurations
44028             </summary>
44029         </member>
44030         <member name="F:Microsoft.Build.Evaluation.ToolsetConfigurationReader._configurationReadAttempted">
44031             <summary>
44032             Flag indicating that an attempt has been made to read the configuration
44033             </summary>
44034         </member>
44035         <member name="F:Microsoft.Build.Evaluation.ToolsetConfigurationReader._separatorForExtensionsPathSearchPaths">
44036             <summary>
44037             Character used to separate search paths specified for MSBuildExtensionsPath* in
44038             the config file
44039             </summary>
44040         </member>
44041         <member name="F:Microsoft.Build.Evaluation.ToolsetConfigurationReader._projectImportSearchPathsCache">
44042             <summary>
44043             Cached values of tools version -> project import search paths table
44044             </summary>
44045         </member>
44046         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.#ctor(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
44047             <summary>
44048             Default constructor
44049             </summary>
44050         </member>
44051         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.#ctor(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Func{System.Configuration.Configuration})">
44052             <summary>
44053             Constructor taking a delegate for unit test purposes only
44054             </summary>
44055         </member>
44056         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationReader.ToolsVersions">
44057             <summary>
44058             Returns the list of tools versions
44059             </summary>
44060         </member>
44061         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationReader.DefaultToolsVersion">
44062             <summary>
44063             Returns the default tools version, or null if none was specified
44064             </summary>
44065         </member>
44066         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationReader.MSBuildOverrideTasksPath">
44067             <summary>
44068             Returns the path to find override tasks, or null if none was specified
44069             </summary>
44070         </member>
44071         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationReader.DefaultOverrideToolsVersion">
44072             <summary>
44073             DefaultOverrideToolsVersion attribute on msbuildToolsets element, specifying the tools version that should be used by 
44074             default to build projects with this version of MSBuild.
44075             </summary>
44076         </member>
44077         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationReader.ConfigurationSection">
44078             <summary>
44079             Lazy getter for the ToolsetConfigurationSection
44080             Returns null if the section is not present
44081             </summary>
44082         </member>
44083         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.GetPropertyDefinitions(System.String)">
44084             <summary>
44085             Provides an enumerator over property definitions for a specified tools version
44086             </summary>
44087         </member>
44088         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.GetSubToolsetVersions(System.String)">
44089             <summary>
44090             Provides an enumerator over the set of sub-toolset names available to a particular
44091             tools version.  MSBuild config files do not currently support sub-toolsets, so
44092             we return nothing. 
44093             </summary>
44094             <param name="toolsVersion">The tools version.</param>
44095             <returns>An enumeration of the sub-toolsets that belong to that tools version.</returns>
44096         </member>
44097         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.GetSubToolsetPropertyDefinitions(System.String,System.String)">
44098             <summary>
44099             Provides an enumerator over property definitions for a specified sub-toolset version 
44100             under a specified toolset version. In the ToolsetConfigurationReader case, breaks 
44101             immediately because we do not currently support sub-toolsets in the configuration file. 
44102             </summary>
44103             <param name="toolsVersion">The tools version.</param>
44104             <param name="subToolsetVersion">The sub-toolset version.</param>
44105             <returns>An enumeration of property definitions.</returns>
44106         </member>
44107         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.GetProjectImportSearchPathsTable(System.String,System.String)">
44108             <summary>
44109             Returns a map of project property names / list of search paths for the specified toolsVersion and os
44110             </summary>
44111         </member>
44112         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.ComputeDistinctListOfSearchPaths(Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection)">
44113             <summary>
44114             Returns a list of the search paths for a given search path property collection
44115             </summary>
44116         </member>
44117         <member name="M:Microsoft.Build.Evaluation.ToolsetConfigurationReader.ReadApplicationConfiguration">
44118             <summary>
44119             Reads the application configuration file.
44120             NOTE: this is abstracted into a method to support unit testing GetToolsetDataFromConfiguration().
44121             Unit tests wish to avoid reading (nunit.exe) application configuration file.
44122             </summary>
44123         </member>
44124         <member name="T:Microsoft.Build.Evaluation.ToolsetConfigurationReaderHelpers">
44125             <summary>
44126             Helper class for reading toolsets out of the configuration file.
44127             </summary>
44128         </member>
44129         <member name="T:Microsoft.Build.Evaluation.ToolsetElement">
44130             <summary>
44131             Class representing the Toolset element
44132             </summary>
44133             <remarks>
44134             Internal for unit testing only
44135             </remarks>
44136         </member>
44137         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.toolsVersion">
44138             <summary>
44139             ToolsVersion attribute of the element
44140             </summary>
44141         </member>
44142         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElements">
44143             <summary>
44144             Property element collection 
44145             </summary>
44146         </member>
44147         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.AllProjectImportSearchPaths">
44148             <summary>
44149             Collection of all the search paths for project imports, per OS
44150             </summary>
44151         </member>
44152         <member name="T:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection">
44153             <summary>
44154             Class representing all the per-OS search paths for MSBuildExtensionsPath*
44155             </summary>
44156         </member>
44157         <member name="F:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection._previouslySeenOS">
44158             <summary>
44159             We use this dictionary to track whether or not we've seen a given
44160             searchPaths definition before, since the .NET configuration classes
44161             won't perform this check without respect for case.
44162             </summary>
44163         </member>
44164         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.CollectionType">
44165             <summary>
44166             Type of the collection
44167             This has to be public as cannot change access modifier when overriding
44168             </summary>
44169         </member>
44170         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.ThrowOnDuplicate">
44171             <summary>
44172             Throw exception if an element with a duplicate key is added to the collection
44173             </summary>
44174         </member>
44175         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.ElementName">
44176             <summary>
44177             Name of the element
44178             </summary>
44179         </member>
44180         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.GetElement(System.String)">
44181             <summary>
44182             Gets an element with the specified name
44183             </summary>
44184             <param name="os">OS of the element</param>
44185             <returns>element</returns>
44186         </member>
44187         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.GetElement(System.Int32)">
44188             <summary>
44189             Gets an element based at the specified position
44190             </summary>
44191             <param name="index">position</param>
44192             <returns>element</returns>
44193         </member>
44194         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.GetElementKey(System.Configuration.ConfigurationElement)">
44195             <summary>
44196             Returns the key value for the given element
44197             </summary>
44198             <param name="element">element whose key is returned</param>
44199             <returns>key</returns>
44200         </member>
44201         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.CreateNewElement">
44202             <summary>
44203             Creates a new element of the collection
44204             </summary>
44205             <returns>Created element</returns>
44206         </member>
44207         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.BaseAdd(System.Int32,System.Configuration.ConfigurationElement)">
44208             <summary>
44209             overridden so we can track previously seen elements
44210             </summary>
44211         </member>
44212         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.BaseAdd(System.Configuration.ConfigurationElement)">
44213             <summary>
44214             overridden so we can track previously seen elements
44215             </summary>
44216         </member>
44217         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathsElementCollection.UpdateOSMap(System.Configuration.ConfigurationElement)">
44218             <summary>
44219             Stores the name of the OS in a case-insensitive map
44220             so we can detect if it is specified more than once but with
44221             different case
44222             </summary>
44223         </member>
44224         <member name="T:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathElement">
44225             <summary>
44226             Class representing searchPaths element for a single OS
44227             </summary>
44228         </member>
44229         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathElement.OS">
44230             <summary>
44231             OS attribute of the element
44232             </summary>
44233         </member>
44234         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.ExtensionsPathElement.PropertyElements">
44235             <summary>
44236             Property element collection
44237             </summary>
44238         </member>
44239         <member name="T:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection">
44240             <summary>
44241             Class representing collection of property elements
44242             </summary>
44243         </member>
44244         <member name="F:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection._previouslySeenPropertyNames">
44245             <summary>
44246             We use this dictionary to track whether or not we've seen a given
44247             property definition before, since the .NET configuration classes
44248             won't perform this check without respect for case.
44249             </summary>
44250         </member>
44251         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.CollectionType">
44252             <summary>
44253             Collection type
44254             This has to be public as cannot change access modifier when overriding  
44255             </summary>
44256         </member>
44257         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.ThrowOnDuplicate">
44258             <summary>
44259             Throw exception if an element with a duplicate is added
44260             </summary>
44261         </member>
44262         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.ElementName">
44263             <summary>
44264             name of the element
44265             </summary>
44266         </member>
44267         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.GetElement(System.String)">
44268             <summary>
44269             Gets an element with the specified name
44270             </summary>
44271             <param name="name">name of the element</param>
44272             <returns>element</returns>
44273         </member>
44274         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.GetElement(System.Int32)">
44275             <summary>
44276             Gets an element at the specified position
44277             </summary>
44278             <param name="index">position</param>
44279             <returns>element</returns>
44280         </member>
44281         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.CreateNewElement">
44282             <summary>
44283             Creates a new element
44284             </summary>
44285             <returns>element</returns>
44286         </member>
44287         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.BaseAdd(System.Int32,System.Configuration.ConfigurationElement)">
44288             <summary>
44289             overridden so we can track previously seen property names
44290             </summary>
44291         </member>
44292         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.BaseAdd(System.Configuration.ConfigurationElement)">
44293             <summary>
44294             overridden so we can track previously seen property names
44295             </summary>
44296         </member>
44297         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.GetElementKey(System.Configuration.ConfigurationElement)">
44298             <summary>
44299             Gets the key for the element
44300             </summary>
44301             <param name="element">element</param>
44302             <returns>key</returns>
44303         </member>
44304         <member name="M:Microsoft.Build.Evaluation.ToolsetElement.PropertyElementCollection.UpdatePropertyNameMap(System.Configuration.ConfigurationElement)">
44305             <summary>
44306             Stores the name of the tools version in a case-insensitive map
44307             so we can detect if it is specified more than once but with
44308             different case
44309             </summary>
44310         </member>
44311         <member name="T:Microsoft.Build.Evaluation.ToolsetElement.PropertyElement">
44312             <summary>
44313             This class represents property element
44314             </summary>
44315         </member>
44316         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElement.Name">
44317             <summary>
44318             name attribute
44319             </summary>
44320         </member>
44321         <member name="P:Microsoft.Build.Evaluation.ToolsetElement.PropertyElement.Value">
44322             <summary>
44323             value attribute
44324             </summary>
44325         </member>
44326         <member name="T:Microsoft.Build.Evaluation.ToolsetElementCollection">
44327             <summary>
44328             Class representing the collection of toolset elements
44329             </summary>
44330             <remarks>
44331             Internal for unit testing only
44332             </remarks>
44333         </member>
44334         <member name="F:Microsoft.Build.Evaluation.ToolsetElementCollection._previouslySeenToolsVersions">
44335             <summary>
44336             We use this dictionary to track whether or not we've seen a given
44337             toolset definition before, since the .NET configuration classes
44338             won't perform this check without respect for case.
44339             </summary>
44340         </member>
44341         <member name="P:Microsoft.Build.Evaluation.ToolsetElementCollection.CollectionType">
44342             <summary>
44343             Type of the collection
44344             This has to be public as cannot change access modifier when overriding
44345             </summary>
44346         </member>
44347         <member name="P:Microsoft.Build.Evaluation.ToolsetElementCollection.ThrowOnDuplicate">
44348             <summary>
44349             Throw exception if an element with a duplicate key is added to the collection
44350             </summary>
44351         </member>
44352         <member name="P:Microsoft.Build.Evaluation.ToolsetElementCollection.ElementName">
44353             <summary>
44354             Name of the element
44355             </summary>
44356         </member>
44357         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.GetElement(System.String)">
44358             <summary>
44359             Gets an element with the specified name
44360             </summary>
44361             <param name="toolsVersion">toolsVersion of the element</param>
44362             <returns>element</returns>
44363         </member>
44364         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.GetElement(System.Int32)">
44365             <summary>
44366             Gets an element based at the specified position
44367             </summary>
44368             <param name="index">position</param>
44369             <returns>element</returns>
44370         </member>
44371         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.GetElementKey(System.Configuration.ConfigurationElement)">
44372             <summary>
44373             Returns the key value for the given element
44374             </summary>
44375             <param name="element">element whose key is returned</param>
44376             <returns>key</returns>
44377         </member>
44378         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.CreateNewElement">
44379             <summary>
44380             Creates a new element of the collection
44381             </summary>
44382             <returns>Created element</returns>
44383         </member>
44384         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.BaseAdd(System.Int32,System.Configuration.ConfigurationElement)">
44385             <summary>
44386             overridden so we can track previously seen tools versions
44387             </summary>
44388         </member>
44389         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.BaseAdd(System.Configuration.ConfigurationElement)">
44390             <summary>
44391             overridden so we can track previously seen tools versions
44392             </summary>
44393         </member>
44394         <member name="M:Microsoft.Build.Evaluation.ToolsetElementCollection.UpdateToolsVersionMap(System.Configuration.ConfigurationElement)">
44395             <summary>
44396             Stores the name of the tools version in a case-insensitive map
44397             so we can detect if it is specified more than once but with
44398             different case
44399             </summary>
44400         </member>
44401         <member name="T:Microsoft.Build.Evaluation.ToolsetConfigurationSection">
44402             <summary>
44403             This class is used to programmatically read msbuildToolsets section
44404             in from the configuration file.  An example of application config file:
44405             
44406             &lt;configuration&gt;
44407                 &lt;msbuildToolsets default="2.0"&gt;
44408                     &lt;toolset toolsVersion="2.0"&gt;
44409                         &lt;property name="MSBuildBinPath" value="D:\windows\Microsoft.NET\Framework\v2.0.x86ret\"/&gt;
44410                         &lt;property name="SomeOtherProperty" value="SomeOtherPropertyValue"/&gt;
44411                     &lt;/toolset&gt;
44412                     &lt;toolset toolsVersion="3.5"&gt;
44413                         &lt;property name="MSBuildBinPath" value="D:\windows\Microsoft.NET\Framework\v3.5.x86ret\"/&gt;
44414                     &lt;/toolset&gt;
44415                 &lt;/msbuildToolsets&gt;
44416             &lt;/configuration&gt;
44417             
44418             </summary>
44419             <remarks>
44420             Internal for unit testing only
44421             </remarks>
44422         </member>
44423         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationSection.Toolsets">
44424             <summary>
44425             toolsVersion element collection 
44426             </summary>
44427         </member>
44428         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationSection.Default">
44429             <summary>
44430             default attribute on msbuildToolsets element, specifying the default ToolsVersion
44431             </summary>
44432         </member>
44433         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationSection.MSBuildOverrideTasksPath">
44434             <summary>
44435             MsBuildOverrideTasksPath attribute on msbuildToolsets element, specifying the path to find msbuildOverrideTasks files
44436             </summary>
44437         </member>
44438         <member name="P:Microsoft.Build.Evaluation.ToolsetConfigurationSection.DefaultOverrideToolsVersion">
44439             <summary>
44440             DefaultOverrideToolsVersion attribute on msbuildToolsets element, specifying the toolsversion that should be used by 
44441             default to build projects with this version of MSBuild.
44442             </summary>
44443         </member>
44444         <member name="T:Microsoft.Build.Evaluation.ToolsetPropertyDefinition">
44445             <summary>
44446             A class representing a property.  Used internally by the toolset readers.
44447             </summary>
44448         </member>
44449         <member name="F:Microsoft.Build.Evaluation.ToolsetPropertyDefinition._name">
44450             <summary>
44451             The property name
44452             </summary>
44453         </member>
44454         <member name="F:Microsoft.Build.Evaluation.ToolsetPropertyDefinition._value">
44455             <summary>
44456             The property value
44457             </summary>
44458         </member>
44459         <member name="F:Microsoft.Build.Evaluation.ToolsetPropertyDefinition._source">
44460             <summary>
44461             The property source
44462             </summary>
44463         </member>
44464         <member name="M:Microsoft.Build.Evaluation.ToolsetPropertyDefinition.#ctor(System.String,System.String,Microsoft.Build.Shared.IElementLocation)">
44465             <summary>
44466             Creates a new property
44467             </summary>
44468             <param name="name">The property name</param>
44469             <param name="value">The property value</param>
44470             <param name="source">The property source</param>
44471         </member>
44472         <member name="P:Microsoft.Build.Evaluation.ToolsetPropertyDefinition.Name">
44473             <summary>
44474             The name of the property
44475             </summary>
44476         </member>
44477         <member name="P:Microsoft.Build.Evaluation.ToolsetPropertyDefinition.Value">
44478             <summary>
44479             The value of the property
44480             </summary>
44481         </member>
44482         <member name="P:Microsoft.Build.Evaluation.ToolsetPropertyDefinition.Source">
44483             <summary>
44484             A description of the location where the property was defined,
44485             such as a registry key path or a path to a config file and 
44486             line number.
44487             </summary>
44488         </member>
44489         <member name="T:Microsoft.Build.Evaluation.ToolsetReader">
44490             <summary>
44491             The abstract base class for all Toolset readers.
44492             </summary>
44493         </member>
44494         <member name="F:Microsoft.Build.Evaluation.ToolsetReader._globalProperties">
44495             <summary>
44496             The global properties used to read the toolset.
44497             </summary>
44498         </member>
44499         <member name="F:Microsoft.Build.Evaluation.ToolsetReader._environmentProperties">
44500             <summary>
44501             The environment properties used to read the toolset.
44502             </summary>
44503         </member>
44504         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.#ctor(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
44505             <summary>
44506             Constructor
44507             </summary>
44508         </member>
44509         <member name="P:Microsoft.Build.Evaluation.ToolsetReader.ToolsVersions">
44510             <summary>
44511             Returns the list of tools versions
44512             </summary>
44513         </member>
44514         <member name="P:Microsoft.Build.Evaluation.ToolsetReader.DefaultToolsVersion">
44515             <summary>
44516             Returns the default tools version, or null if none was specified
44517             </summary>
44518         </member>
44519         <member name="P:Microsoft.Build.Evaluation.ToolsetReader.MSBuildOverrideTasksPath">
44520             <summary>
44521             Returns the path to find override tasks, or null if none was specified
44522             </summary>
44523         </member>
44524         <member name="P:Microsoft.Build.Evaluation.ToolsetReader.DefaultOverrideToolsVersion">
44525             <summary>
44526             ToolsVersion to use as the default ToolsVersion for this version of MSBuild
44527             </summary>
44528         </member>
44529         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ReadAllToolsets(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.Toolset},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
44530             <summary>
44531             Gathers toolset data from the registry and configuration file, if any:
44532             allows you to specify which of the registry and configuration file to
44533             read from by providing ToolsetInitialization
44534             </summary>
44535         </member>
44536         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ReadAllToolsets(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.Toolset},Microsoft.Build.Evaluation.ToolsetRegistryReader,Microsoft.Build.Evaluation.ToolsetConfigurationReader,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
44537             <summary>
44538             Gathers toolset data from the registry and configuration file, if any.
44539             NOTE:  this method is internal for unit testing purposes only.
44540             </summary>
44541         </member>
44542         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ReadToolsets(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.Toolset},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Boolean,System.String@,System.String@)">
44543             <summary>
44544             Populates the toolset collection passed in with the toolsets read from some location.
44545             </summary>
44546             <remarks>Internal for unit testing only</remarks>
44547             <returns>the default tools version if available, or null otherwise</returns>
44548         </member>
44549         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.GetPropertyDefinitions(System.String)">
44550             <summary>
44551             Provides an enumerator over property definitions for a specified tools version
44552             </summary>
44553             <param name="toolsVersion">The tools version.</param>
44554             <returns>An enumeration of property definitions.</returns>
44555         </member>
44556         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.GetSubToolsetVersions(System.String)">
44557             <summary>
44558             Provides an enumerator over the set of sub-toolset names available to a particular
44559             toolsversion
44560             </summary>
44561             <param name="toolsVersion">The tools version.</param>
44562             <returns>An enumeration of the sub-toolsets that belong to that toolsversion.</returns>
44563         </member>
44564         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.GetSubToolsetPropertyDefinitions(System.String,System.String)">
44565             <summary>
44566             Provides an enumerator over property definitions for a specified sub-toolset version 
44567             under a specified toolset version. 
44568             </summary>
44569             <param name="toolsVersion">The tools version.</param>
44570             <param name="subToolsetVersion">The sub-toolset version.</param>
44571             <returns>An enumeration of property definitions.</returns>
44572         </member>
44573         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.GetProjectImportSearchPathsTable(System.String,System.String)">
44574             <summary>
44575             Returns a map of MSBuildExtensionsPath* property names/kind to list of search paths
44576             </summary>
44577         </member>
44578         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ReadEachToolset(System.Collections.Generic.Dictionary{System.String,Microsoft.Build.Evaluation.Toolset},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Boolean)">
44579             <summary>
44580             Reads all the toolsets and populates the given ToolsetCollection with them
44581             </summary>
44582         </member>
44583         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ReadToolset(Microsoft.Build.Evaluation.ToolsetPropertyDefinition,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Boolean)">
44584             <summary>
44585             Reads the settings for a specified tools version
44586             </summary>
44587         </member>
44588         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.CreateStandardProperties(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.String,System.String,System.String)">
44589             <summary>
44590             Create a dictionary with standard properties.
44591             </summary>
44592         </member>
44593         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.AppendStandardProperties(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.String,System.String,System.String)">
44594             <summary>
44595             Appends standard properties to a dictionary. These properties are read from
44596             the registry under Windows (they are a part of a toolset definition).
44597             </summary>
44598         </member>
44599         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.EvaluateAndSetProperty(Microsoft.Build.Evaluation.ToolsetPropertyDefinition,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},System.Boolean,System.String@,System.String@,Microsoft.Build.Evaluation.Expander{Microsoft.Build.Execution.ProjectPropertyInstance,Microsoft.Build.Execution.ProjectItemInstance}@)">
44600             <summary>
44601             Processes a particular ToolsetPropertyDefinition into the correct value and location in the initial and/or final property set. 
44602             </summary>
44603             <param name="property">The ToolsetPropertyDefinition being analyzed.</param>
44604             <param name="properties">The final set of properties that we wish this toolset property to be added to. </param>
44605             <param name="globalProperties">The global properties, used for expansion and to make sure none are overridden.</param>
44606             <param name="initialProperties">The initial properties, used for expansion and added to if "accumulateProperties" is true.</param>
44607             <param name="accumulateProperties">If "true", we add this property to the initialProperties dictionary, as well, so that properties later in the toolset can use this value.</param>
44608             <param name="toolsPath">If this toolset property is the "MSBuildToolsPath" property, we will return the value in this parameter.</param>
44609             <param name="binPath">If this toolset property is the "MSBuildBinPath" property, we will return the value in this parameter.</param>
44610             <param name="expander">The expander used to expand the value of the properties.  Ref because if we are accumulating the properties, we need to re-create the expander to account for the new property value.</param>
44611         </member>
44612         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ExpandPropertyUnescaped(Microsoft.Build.Evaluation.ToolsetPropertyDefinition,Microsoft.Build.Evaluation.Expander{Microsoft.Build.Execution.ProjectPropertyInstance,Microsoft.Build.Execution.ProjectItemInstance})">
44613             <summary>
44614             Expands the given unexpanded property expression using the properties in the
44615             given expander.
44616             </summary>
44617         </member>
44618         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.SetProperty(Microsoft.Build.Evaluation.ToolsetPropertyDefinition,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
44619             <summary>
44620             Sets the given property in the given property group.
44621             </summary>
44622         </member>
44623         <member name="M:Microsoft.Build.Evaluation.ToolsetReader.ExpandRelativePathsRelativeToExeLocation(System.String)">
44624             <summary>
44625             Given a path, de-relativizes it using the location of the currently
44626             executing .exe as the base directory. For example, the path "..\foo"
44627             becomes "c:\windows\microsoft.net\framework\foo" if the current exe is
44628             "c:\windows\microsoft.net\framework\v3.5.1234\msbuild.exe".
44629             If the path is not relative, it is returned without modification.
44630             If the path is invalid, it is returned without modification.
44631             </summary>
44632         </member>
44633         <member name="T:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind">
44634             <summary>
44635             struct representing a reference to MSBuildExtensionsPath* property
44636             </summary>
44637         </member>
44638         <member name="F:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.Default">
44639             <summary>
44640             MSBuildExtensionsPathReferenceKind instance for property named "MSBuildExtensionsPath"
44641             </summary>
44642         </member>
44643         <member name="F:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.Path32">
44644             <summary>
44645             MSBuildExtensionsPathReferenceKind instance for property named "MSBuildExtensionsPath32"
44646             </summary>
44647         </member>
44648         <member name="F:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.Path64">
44649             <summary>
44650             MSBuildExtensionsPathReferenceKind instance for property named "MSBuildExtensionsPath64"
44651             </summary>
44652         </member>
44653         <member name="F:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.None">
44654             <summary>
44655             MSBuildExtensionsPathReferenceKind instance representing no MSBuildExtensionsPath* property reference
44656             </summary>
44657         </member>
44658         <member name="P:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.StringRepresentation">
44659             <summary>
44660             String representation of the property reference - eg. "MSBuildExtensionsPath32"
44661             </summary>
44662         </member>
44663         <member name="P:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.MSBuildPropertyName">
44664             <summary>
44665             Returns the corresponding property name - eg. "$(MSBuildExtensionsPath32)"
44666             </summary>
44667         </member>
44668         <member name="M:Microsoft.Build.Evaluation.MSBuildExtensionsPathReferenceKind.FindIn(System.String)">
44669             <summary>
44670             Tries to find a reference to MSBuildExtensionsPath* property in the given string
44671             </summary>
44672         </member>
44673         <member name="T:Microsoft.Build.Evaluation.ToolsetRegistryReader">
44674             <summary>
44675             Reads registry at the base key and returns a Dictionary keyed on ToolsVersion.
44676             Dictionary contains another dictionary of (property name, property value) pairs.
44677             If a registry value is not a string, this will throw a InvalidToolsetDefinitionException.
44678             An example of how the registry will look (note that the DefaultToolsVersion is per-MSBuild-version)
44679             [HKLM]\SOFTWARE\Microsoft
44680               msbuild
44681                 3.5
44682                   @DefaultToolsVersion = 2.0
44683                 ToolsVersions
44684                   2.0
44685                     @MSBuildToolsPath = D:\SomeFolder
44686                   3.5
44687                     @MSBuildToolsPath = D:\SomeOtherFolder
44688                     @MSBuildBinPath = D:\SomeOtherFolder
44689                     @SomePropertyName = PropertyOtherValue
44690             </summary>
44691         </member>
44692         <member name="F:Microsoft.Build.Evaluation.ToolsetRegistryReader.MSBuildRegistryPath">
44693             <summary>
44694             Registry location for storing tools version dependent data for msbuild
44695             </summary> 
44696         </member>
44697         <member name="F:Microsoft.Build.Evaluation.ToolsetRegistryReader._msbuildRegistryWrapper">
44698             <summary>
44699             Cached registry wrapper at root of the msbuild entries
44700             </summary> 
44701         </member>
44702         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.#ctor(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance})">
44703             <summary>
44704             Default constructor
44705             </summary>
44706         </member>
44707         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.#ctor(Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Internal.RegistryKeyWrapper)">
44708             <summary>
44709             Constructor overload accepting a registry wrapper for unit testing purposes only
44710             </summary>
44711         </member>
44712         <member name="P:Microsoft.Build.Evaluation.ToolsetRegistryReader.ToolsVersions">
44713             <summary>
44714             Returns the list of tools versions
44715             </summary>
44716         </member>
44717         <member name="P:Microsoft.Build.Evaluation.ToolsetRegistryReader.DefaultToolsVersion">
44718             <summary>
44719             Returns the default tools version, or null if none was specified
44720             </summary>
44721         </member>
44722         <member name="P:Microsoft.Build.Evaluation.ToolsetRegistryReader.MSBuildOverrideTasksPath">
44723             <summary>
44724             Returns the path to find override tasks, or null if none was specified
44725             </summary>
44726         </member>
44727         <member name="P:Microsoft.Build.Evaluation.ToolsetRegistryReader.DefaultOverrideToolsVersion">
44728             <summary>
44729             ToolsVersion to use as the default ToolsVersion for this version of MSBuild
44730             </summary>
44731         </member>
44732         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.GetPropertyDefinitions(System.String)">
44733             <summary>
44734             Provides an enumerator over property definitions for a specified tools version
44735             </summary>
44736             <param name="toolsVersion">The tools version</param>
44737             <returns>An enumeration of property definitions</returns>
44738         </member>
44739         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.GetSubToolsetVersions(System.String)">
44740             <summary>
44741             Provides an enumerator over the set of sub-toolset names available to a particular
44742             toolsversion
44743             </summary>
44744             <param name="toolsVersion">The tools version.</param>
44745             <returns>An enumeration of the sub-toolsets that belong to that toolsversion.</returns>
44746         </member>
44747         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.GetSubToolsetPropertyDefinitions(System.String,System.String)">
44748             <summary>
44749             Provides an enumerator over property definitions for a specified sub-toolset version 
44750             under a specified toolset version. 
44751             </summary>
44752             <param name="toolsVersion">The tools version.</param>
44753             <param name="subToolsetVersion">The sub-toolset version.</param>
44754             <returns>An enumeration of property definitions.</returns>
44755         </member>
44756         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.GetProjectImportSearchPathsTable(System.String,System.String)">
44757             <summary>
44758             Returns a map of MSBuildExtensionsPath* property names/kind to list of search paths
44759             </summary>
44760         </member>
44761         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.CreatePropertyFromRegistry(Microsoft.Build.Internal.RegistryKeyWrapper,System.String)">
44762             <summary>
44763             Given a registry location containing a property name and value, create the ToolsetPropertyDefinition that maps to it
44764             </summary>
44765             <param name="toolsetWrapper">Wrapper for the key that we're getting values from</param>
44766             <param name="propertyName">The name of the property whose value we wish to generate a ToolsetPropertyDefinition for.</param>
44767             <returns>A ToolsetPropertyDefinition instance corresponding to the property name requested.</returns>
44768         </member>
44769         <member name="M:Microsoft.Build.Evaluation.ToolsetRegistryReader.GetValue(Microsoft.Build.Internal.RegistryKeyWrapper,System.String)">
44770             <summary>
44771             Reads a string value from the specified registry key
44772             </summary>
44773             <param name="wrapper">wrapper around key</param>
44774             <param name="valueName">name of the value</param>
44775             <returns>string data in the value</returns>
44776         </member>
44777         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.UpdateConditionedPropertiesTable(System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.List{System.String}},System.String,System.String)">
44778              <summary>
44779              Update our table which keeps track of all the properties that are referenced
44780              inside of a condition and the string values that they are being tested against.
44781              So, for example, if the condition was " '$(Configuration)' == 'Debug' ", we
44782              would get passed in leftValue="$(Configuration)" and rightValueExpanded="Debug".
44783              This call would add the string "Debug" to the list of possible values for the 
44784              "Configuration" property.
44785             
44786              This method also handles the case when two or more properties are being
44787              concatenated together with a vertical bar, as in '
44788                  $(Configuration)|$(Platform)' == 'Debug|x86'
44789              </summary>
44790              <param name="conditionedPropertiesTable"></param>
44791              <param name="leftValue"></param>
44792              <param name="rightValueExpanded"></param>
44793         </member>
44794         <member name="F:Microsoft.Build.Evaluation.ConditionEvaluator.s_disableExpressionCaching">
44795             <summary>
44796             For debugging leaks, a way to disable caching expression trees, to reduce noise
44797             </summary>
44798         </member>
44799         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.EvaluateCondition``2(System.String,Microsoft.Build.Evaluation.ParserOptions,Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions,System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
44800             <summary>
44801             Evaluates a string representing a condition from a "condition" attribute.
44802             If the condition is a malformed string, it throws an InvalidProjectFileException.
44803             This method uses cached expression trees to avoid generating them from scratch every time it's called.
44804             This method is thread safe and is called from engine and task execution module threads
44805             </summary>
44806         </member>
44807         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.EvaluateConditionCollectingConditionedProperties``2(System.String,Microsoft.Build.Evaluation.ParserOptions,Microsoft.Build.Evaluation.Expander{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.List{System.String}},System.String,Microsoft.Build.Construction.ElementLocation,Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Evaluation.ProjectRootElementCache)">
44808             <summary>
44809             Evaluates a string representing a condition from a "condition" attribute.
44810             If the condition is a malformed string, it throws an InvalidProjectFileException.
44811             This method uses cached expression trees to avoid generating them from scratch every time it's called.
44812             This method is thread safe and is called from engine and task execution module threads
44813             Logging service may be null.
44814             </summary>
44815         </member>
44816         <member name="P:Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState.ConditionedPropertiesInProject">
44817             <summary>
44818             Table of conditioned properties and their values.
44819             Used to populate configuration lists in some project systems.
44820             If this is null, as it is for command line builds, conditioned properties
44821             are not recorded.
44822             </summary>
44823         </member>
44824         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState.ExpandIntoStringBreakEarly(System.String)">
44825             <summary>
44826             May return null if the expression would expand to non-empty and it broke out early.
44827             Otherwise, returns the correctly expanded expression.
44828             </summary>
44829         </member>
44830         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState.ExpandIntoTaskItems(System.String)">
44831             <summary>
44832             Expands the specified expression into a list of TaskItem's.
44833             </summary>
44834         </member>
44835         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState.ExpandIntoString(System.String)">
44836             <summary>
44837             Expands the specified expression into a string.
44838             </summary>
44839         </member>
44840         <member name="P:Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState.LoadedProjectsCache">
44841             <summary>
44842             PRE cache
44843             </summary>
44844         </member>
44845         <member name="T:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2">
44846             <summary>
44847             All the state necessary for the evaluation of conditionals so that the expression tree 
44848             is stateless and reusable
44849             </summary>
44850         </member>
44851         <member name="P:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.Condition">
44852             <summary>
44853             Condition that was parsed. This does not belong here,
44854             it belongs to the expression tree, not the condition evaluation state.
44855             </summary>
44856         </member>
44857         <member name="P:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.ConditionedPropertiesInProject">
44858             <summary>
44859             Table of conditioned properties and their values.
44860             Used to populate configuration lists in some project systems.
44861             If this is null, as it is for command line builds, conditioned properties
44862             are not recorded.
44863             </summary>
44864         </member>
44865         <member name="P:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.LoadedProjectsCache">
44866             <summary>
44867             PRE collection. 
44868             </summary>
44869         </member>
44870         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.ExpandIntoStringBreakEarly(System.String)">
44871             <summary>
44872             May return null if the expression would expand to non-empty and it broke out early.
44873             Otherwise, returns the correctly expanded expression.
44874             </summary>
44875         </member>
44876         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.ExpandIntoTaskItems(System.String)">
44877             <summary>
44878             Expands the properties and items in the specified expression into a list of taskitems.
44879             </summary>
44880             <param name="expression">The expression to expand.</param>
44881             <returns>A list of items.</returns>
44882         </member>
44883         <member name="M:Microsoft.Build.Evaluation.ConditionEvaluator.ConditionEvaluationState`2.ExpandIntoString(System.String)">
44884             <summary>
44885             Expands the specified expression into a string.
44886             </summary>
44887             <param name="expression">The expression to expand.</param>
44888             <returns>The expanded string.</returns>
44889         </member>
44890         <member name="T:Microsoft.Build.Evaluation.AndExpressionNode">
44891             <summary>
44892             Performs logical AND on children
44893             Does not update conditioned properties table
44894             </summary>
44895         </member>
44896         <member name="M:Microsoft.Build.Evaluation.AndExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44897             <summary>
44898             Evaluate as boolean
44899             </summary>
44900         </member>
44901         <member name="T:Microsoft.Build.Evaluation.EqualExpressionNode">
44902             <summary>
44903             Compares for equality
44904             </summary>
44905         </member>
44906         <member name="M:Microsoft.Build.Evaluation.EqualExpressionNode.Compare(System.Double,System.Double)">
44907             <summary>
44908             Compare numbers
44909             </summary>
44910         </member>
44911         <member name="M:Microsoft.Build.Evaluation.EqualExpressionNode.Compare(System.Boolean,System.Boolean)">
44912             <summary>
44913             Compare booleans
44914             </summary>
44915         </member>
44916         <member name="M:Microsoft.Build.Evaluation.EqualExpressionNode.Compare(System.String,System.String)">
44917             <summary>
44918             Compare strings
44919             </summary>
44920         </member>
44921         <member name="T:Microsoft.Build.Evaluation.FunctionCallExpressionNode">
44922             <summary>
44923             Evaluates a function expression, such as "Exists('foo')"
44924             </summary>
44925         </member>
44926         <member name="M:Microsoft.Build.Evaluation.FunctionCallExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44927             <summary>
44928             Evaluate node as boolean
44929             </summary>
44930         </member>
44931         <member name="M:Microsoft.Build.Evaluation.FunctionCallExpressionNode.ExpandArgumentForScalarParameter(System.String,Microsoft.Build.Evaluation.GenericExpressionNode,Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState,System.Boolean)">
44932             <summary>
44933             Expands properties and items in the argument, and verifies that the result is consistent
44934             with a scalar parameter type.
44935             </summary>
44936             <param name="function">Function name for errors</param>
44937             <param name="argumentNode">Argument to be expanded</param>
44938             <param name="state"></param>
44939             <param name="isFilePath">True if this is afile name and the path should be normalized</param>
44940             <returns>Scalar result</returns>
44941         </member>
44942         <member name="M:Microsoft.Build.Evaluation.FunctionCallExpressionNode.VerifyArgumentCount(System.Int32,Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44943             <summary>
44944             Check that the number of function arguments is correct.
44945             </summary>
44946         </member>
44947         <member name="T:Microsoft.Build.Evaluation.GenericExpressionNode">
44948             <summary>
44949             Base class for all expression nodes.
44950             </summary>
44951         </member>
44952         <member name="M:Microsoft.Build.Evaluation.GenericExpressionNode.EvaluatesToEmpty(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44953             <summary>
44954             Returns true if this node evaluates to an empty string,
44955             otherwise false.
44956             (It may be cheaper to determine whether an expression will evaluate
44957             to empty than to fully evaluate it.)
44958             Implementations should cache the result so that calls after the first are free.
44959             </summary>
44960         </member>
44961         <member name="M:Microsoft.Build.Evaluation.GenericExpressionNode.GetExpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44962             <summary>
44963             Value after any item and property expressions are expanded
44964             </summary>
44965             <returns></returns>
44966         </member>
44967         <member name="M:Microsoft.Build.Evaluation.GenericExpressionNode.GetUnexpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44968             <summary>
44969             Value before any item and property expressions are expanded
44970             </summary>
44971             <returns></returns>
44972         </member>
44973         <member name="M:Microsoft.Build.Evaluation.GenericExpressionNode.ResetState">
44974             <summary>
44975             If any expression nodes cache any state for the duration of evaluation, 
44976             now's the time to clean it up
44977             </summary>
44978         </member>
44979         <member name="M:Microsoft.Build.Evaluation.GenericExpressionNode.Evaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
44980             <summary>
44981             The main evaluate entry point for expression trees
44982             </summary>
44983             <param name="state"></param>
44984             <returns></returns>
44985         </member>
44986         <member name="T:Microsoft.Build.Evaluation.GreaterThanExpressionNode">
44987             <summary>
44988             Compares for left > right
44989             </summary>
44990         </member>
44991         <member name="M:Microsoft.Build.Evaluation.GreaterThanExpressionNode.Compare(System.Double,System.Double)">
44992             <summary>
44993             Compare numerically
44994             </summary>
44995         </member>
44996         <member name="M:Microsoft.Build.Evaluation.GreaterThanExpressionNode.Compare(System.Version,System.Version)">
44997             <summary>
44998             Compare Versions. This is only intended to compare version formats like "A.B.C.D" which can otherwise not be compared numerically
44999             </summary>
45000             <returns></returns>
45001         </member>
45002         <member name="M:Microsoft.Build.Evaluation.GreaterThanExpressionNode.Compare(System.Version,System.Double)">
45003             <summary>
45004             Compare mixed numbers and Versions
45005             </summary>
45006         </member>
45007         <member name="M:Microsoft.Build.Evaluation.GreaterThanExpressionNode.Compare(System.Double,System.Version)">
45008             <summary>
45009             Compare mixed numbers and Versions
45010             </summary>
45011         </member>
45012         <member name="T:Microsoft.Build.Evaluation.GreaterThanOrEqualExpressionNode">
45013             <summary>
45014             Compares for left >= right
45015             </summary>
45016         </member>
45017         <member name="M:Microsoft.Build.Evaluation.GreaterThanOrEqualExpressionNode.Compare(System.Double,System.Double)">
45018             <summary>
45019             Compare numerically
45020             </summary>
45021         </member>
45022         <member name="M:Microsoft.Build.Evaluation.GreaterThanOrEqualExpressionNode.Compare(System.Version,System.Version)">
45023             <summary>
45024             Compare Versions. This is only intended to compare version formats like "A.B.C.D" which can otherwise not be compared numerically
45025             </summary>
45026             <returns></returns>
45027         </member>
45028         <member name="M:Microsoft.Build.Evaluation.GreaterThanOrEqualExpressionNode.Compare(System.Version,System.Double)">
45029             <summary>
45030             Compare mixed numbers and Versions
45031             </summary>
45032         </member>
45033         <member name="M:Microsoft.Build.Evaluation.GreaterThanOrEqualExpressionNode.Compare(System.Double,System.Version)">
45034             <summary>
45035             Compare mixed numbers and Versions
45036             </summary>
45037         </member>
45038         <member name="T:Microsoft.Build.Evaluation.LessThanExpressionNode">
45039             <summary>
45040             Compares for left &lt; right
45041             </summary>
45042         </member>
45043         <member name="M:Microsoft.Build.Evaluation.LessThanExpressionNode.Compare(System.Double,System.Double)">
45044             <summary>
45045             Compare numerically
45046             </summary>
45047         </member>
45048         <member name="M:Microsoft.Build.Evaluation.LessThanExpressionNode.Compare(System.Version,System.Version)">
45049             <summary>
45050             Compare Versions. This is only intended to compare version formats like "A.B.C.D" which can otherwise not be compared numerically
45051             </summary>
45052             <returns></returns>
45053         </member>
45054         <member name="M:Microsoft.Build.Evaluation.LessThanExpressionNode.Compare(System.Version,System.Double)">
45055             <summary>
45056             Compare mixed numbers and Versions
45057             </summary>
45058         </member>
45059         <member name="M:Microsoft.Build.Evaluation.LessThanExpressionNode.Compare(System.Double,System.Version)">
45060             <summary>
45061             Compare mixed numbers and Versions
45062             </summary>
45063         </member>
45064         <member name="T:Microsoft.Build.Evaluation.LessThanOrEqualExpressionNode">
45065             <summary>
45066             Compares for left &lt;= right
45067             </summary>
45068         </member>
45069         <member name="M:Microsoft.Build.Evaluation.LessThanOrEqualExpressionNode.Compare(System.Double,System.Double)">
45070             <summary>
45071             Compare numerically
45072             </summary>
45073         </member>
45074         <member name="M:Microsoft.Build.Evaluation.LessThanOrEqualExpressionNode.Compare(System.Version,System.Version)">
45075             <summary>
45076             Compare Versions. This is only intended to compare version formats like "A.B.C.D" which can otherwise not be compared numerically
45077             </summary>
45078             <returns></returns>
45079         </member>
45080         <member name="M:Microsoft.Build.Evaluation.LessThanOrEqualExpressionNode.Compare(System.Version,System.Double)">
45081             <summary>
45082             Compare mixed numbers and Versions
45083             </summary>
45084         </member>
45085         <member name="M:Microsoft.Build.Evaluation.LessThanOrEqualExpressionNode.Compare(System.Double,System.Version)">
45086             <summary>
45087             Compare mixed numbers and Versions
45088             </summary>
45089         </member>
45090         <member name="T:Microsoft.Build.Evaluation.MultipleComparisonNode">
45091             <summary>
45092             Evaluates as boolean and evaluates children as boolean, numeric, or string.
45093             Order in which comparisons are attempted is numeric, boolean, then string.
45094             Updates conditioned properties table.
45095             </summary>
45096         </member>
45097         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.Compare(System.Double,System.Double)">
45098             <summary>
45099             Compare numbers
45100             </summary>
45101         </member>
45102         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.Compare(System.Boolean,System.Boolean)">
45103             <summary>
45104             Compare booleans
45105             </summary>
45106         </member>
45107         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.Compare(System.String,System.String)">
45108             <summary>
45109             Compare strings
45110             </summary>
45111         </member>
45112         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45113             <summary>
45114             Evaluates as boolean and evaluates children as boolean, numeric, or string.
45115             Order in which comparisons are attempted is numeric, boolean, then string.
45116             Updates conditioned properties table.
45117             </summary>
45118         </member>
45119         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.ResetState">
45120             <summary>
45121             Reset temporary state
45122             </summary>
45123         </member>
45124         <member name="M:Microsoft.Build.Evaluation.MultipleComparisonNode.UpdateConditionedProperties(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45125             <summary>
45126             Updates the conditioned properties table if it hasn't already been done.
45127             </summary>
45128         </member>
45129         <member name="T:Microsoft.Build.Evaluation.NotEqualExpressionNode">
45130             <summary>
45131             Compares for inequality
45132             </summary>
45133         </member>
45134         <member name="M:Microsoft.Build.Evaluation.NotEqualExpressionNode.Compare(System.Double,System.Double)">
45135             <summary>
45136             Compare numbers
45137             </summary>
45138         </member>
45139         <member name="M:Microsoft.Build.Evaluation.NotEqualExpressionNode.Compare(System.Boolean,System.Boolean)">
45140             <summary>
45141             Compare booleans
45142             </summary>
45143         </member>
45144         <member name="M:Microsoft.Build.Evaluation.NotEqualExpressionNode.Compare(System.String,System.String)">
45145             <summary>
45146             Compare strings
45147             </summary>
45148         </member>
45149         <member name="T:Microsoft.Build.Evaluation.NotExpressionNode">
45150             <summary>
45151             Performs logical NOT on left child
45152             Does not update conditioned properties table
45153             </summary>
45154         </member>
45155         <member name="M:Microsoft.Build.Evaluation.NotExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45156             <summary>
45157             Evaluate as boolean
45158             </summary>
45159         </member>
45160         <member name="M:Microsoft.Build.Evaluation.NotExpressionNode.GetUnexpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45161             <summary>
45162             Returns unexpanded value with '!' prepended. Useful for error messages.
45163             </summary>
45164         </member>
45165         <member name="M:Microsoft.Build.Evaluation.NotExpressionNode.GetExpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45166             <summary>
45167             Returns expanded value with '!' prepended. Useful for error messages.
45168             </summary>
45169         </member>
45170         <member name="T:Microsoft.Build.Evaluation.NumericComparisonExpressionNode">
45171             <summary>
45172             Evaluates a numeric comparison, such as less-than, or greater-or-equal-than
45173             Does not update conditioned properties table.
45174             </summary>
45175         </member>
45176         <member name="M:Microsoft.Build.Evaluation.NumericComparisonExpressionNode.Compare(System.Double,System.Double)">
45177             <summary>
45178             Compare numbers
45179             </summary>
45180         </member>
45181         <member name="M:Microsoft.Build.Evaluation.NumericComparisonExpressionNode.Compare(System.Version,System.Version)">
45182             <summary>
45183             Compare Versions. This is only intended to compare version formats like "A.B.C.D" which can otherwise not be compared numerically
45184             </summary>
45185         </member>
45186         <member name="M:Microsoft.Build.Evaluation.NumericComparisonExpressionNode.Compare(System.Version,System.Double)">
45187             <summary>
45188             Compare mixed numbers and Versions
45189             </summary>
45190         </member>
45191         <member name="M:Microsoft.Build.Evaluation.NumericComparisonExpressionNode.Compare(System.Double,System.Version)">
45192             <summary>
45193             Compare mixed numbers and Versions
45194             </summary>
45195         </member>
45196         <member name="M:Microsoft.Build.Evaluation.NumericComparisonExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45197             <summary>
45198             Evaluate as boolean
45199             </summary>
45200         </member>
45201         <member name="T:Microsoft.Build.Evaluation.NumericExpressionNode">
45202             <summary>
45203             Represents a number - evaluates as numeric.
45204             </summary>
45205         </member>
45206         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45207             <summary>
45208             Evaluate as boolean
45209             </summary>
45210         </member>
45211         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.NumericEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45212             <summary>
45213             Evaluate as numeric
45214             </summary>
45215         </member>
45216         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.VersionEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45217             <summary>
45218             Evaluate as a Version
45219             </summary>
45220         </member>
45221         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.CanBoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45222             <summary>
45223             Whether it can be evaluated as a boolean: never allowed for numerics
45224             </summary>
45225         </member>
45226         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.CanNumericEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45227             <summary>
45228             Whether it can be evaluated as numeric
45229             </summary>
45230         </member>
45231         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.CanVersionEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45232             <summary>
45233             Whether it can be evaluated as a Version
45234             </summary>
45235         </member>
45236         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.GetUnexpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45237             <summary>
45238             Get the unexpanded value
45239             </summary>
45240         </member>
45241         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.GetExpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45242             <summary>
45243             Get the expanded value
45244             </summary>
45245         </member>
45246         <member name="M:Microsoft.Build.Evaluation.NumericExpressionNode.ResetState">
45247             <summary>
45248             If any expression nodes cache any state for the duration of evaluation, 
45249             now's the time to clean it up
45250             </summary>
45251         </member>
45252         <member name="T:Microsoft.Build.Evaluation.OperandExpressionNode">
45253             <summary>
45254             Base class for all nodes that are operands (are leaves in the parse tree)
45255             </summary>
45256         </member>
45257         <member name="T:Microsoft.Build.Evaluation.OperatorExpressionNode">
45258             <summary>
45259             Base class for nodes that are operators (have children in the parse tree)
45260             </summary>
45261         </member>
45262         <member name="F:Microsoft.Build.Evaluation.OperatorExpressionNode._leftChild">
45263             <summary>
45264             Storage for the left and right children of the operator
45265             </summary>
45266         </member>
45267         <member name="F:Microsoft.Build.Evaluation.OperatorExpressionNode._rightChild">
45268             <summary>
45269             Storage for the left and right children of the operator
45270             </summary>
45271         </member>
45272         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.NumericEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45273             <summary>
45274             Numeric evaluation is never allowed for operators
45275             </summary>
45276         </member>
45277         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.VersionEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45278             <summary>
45279             Version evaluation is never allowed for operators
45280             </summary>
45281         </member>
45282         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.CanBoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45283             <summary>
45284             Whether boolean evaluation is allowed: always allowed for operators
45285             </summary>
45286         </member>
45287         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.CanNumericEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45288             <summary>
45289             Whether the node can be evaluated as a numeric: by default,
45290             this is not allowed
45291             </summary>
45292         </member>
45293         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.CanVersionEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45294             <summary>
45295             Whether the node can be evaluated as a version: by default,
45296             this is not allowed
45297             </summary>
45298         </member>
45299         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.GetExpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45300             <summary>
45301             Value after any item and property expressions are expanded
45302             </summary>
45303             <returns></returns>
45304         </member>
45305         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.GetUnexpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45306             <summary>
45307             Value before any item and property expressions are expanded
45308             </summary>
45309             <returns></returns>
45310         </member>
45311         <member name="M:Microsoft.Build.Evaluation.OperatorExpressionNode.ResetState">
45312             <summary>
45313             If any expression nodes cache any state for the duration of evaluation, 
45314             now's the time to clean it up
45315             </summary>
45316         </member>
45317         <member name="P:Microsoft.Build.Evaluation.OperatorExpressionNode.LeftChild">
45318             <summary>
45319             Storage for the left child
45320             </summary>
45321         </member>
45322         <member name="P:Microsoft.Build.Evaluation.OperatorExpressionNode.RightChild">
45323             <summary>
45324             Storage for the right child
45325             </summary>
45326         </member>
45327         <member name="T:Microsoft.Build.Evaluation.OrExpressionNode">
45328             <summary>
45329             Performs logical OR on children
45330             Does not update conditioned properties table
45331             </summary>
45332         </member>
45333         <member name="M:Microsoft.Build.Evaluation.OrExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45334             <summary>
45335             Evaluate as boolean
45336             </summary>
45337         </member>
45338         <member name="T:Microsoft.Build.Evaluation.Parser">
45339              <summary>
45340              This class implements the grammar for complex conditionals.
45341             
45342              The usage is:
45343                 Parser p = new Parser(CultureInfo);
45344                 ExpressionTree t = p.Parse(expression, XmlNode);
45345             
45346              The expression tree can then be evaluated and re-evaluated as needed.
45347              </summary>
45348              <remarks>
45349              UNDONE: When we copied over the conditionals code, we didn't copy over the unit tests for scanner, parser, and expression tree.
45350              </remarks>
45351         </member>
45352         <member name="P:Microsoft.Build.Evaluation.Parser.LogBuildEventContext">
45353             <summary>
45354              Location contextual information which are attached to logging events to 
45355              say where they are in relation to the process, engine, project, target,task which is executing
45356             </summary>
45357         </member>
45358         <member name="P:Microsoft.Build.Evaluation.Parser.LoggingServices">
45359             <summary>
45360             Engine Logging Service reference where events will be logged to
45361             </summary>
45362         </member>
45363         <member name="T:Microsoft.Build.Evaluation.Scanner">
45364             <summary>
45365             Class:       Scanner
45366             This class does the scanning of the input and returns tokens.
45367             The usage pattern is:
45368                Scanner s = new Scanner(expression, CultureInfo)
45369                do {
45370                  s.Advance();
45371                while (s.IsNext(Token.EndOfInput));
45372             
45373              After Advance() is called, you can get the current token (s.CurrentToken),
45374              check it's type (s.IsNext()), get the string for it (s.NextString()).
45375             </summary>
45376         </member>
45377         <member name="P:Microsoft.Build.Evaluation.Scanner.EndOfInput">
45378             <summary>
45379             Lazily format resource string to help avoid (in some perf critical cases) even loading
45380             resources at all.
45381             </summary>
45382         </member>
45383         <member name="M:Microsoft.Build.Evaluation.Scanner.GetErrorResource">
45384             <summary>
45385             If the lexer errors, it has the best knowledge of the error message to show. For example,
45386             'unexpected character' or 'illformed operator'. This method returns the name of the resource
45387             string that the parser should display.
45388             </summary>
45389             <remarks>Intentionally not a property getter to avoid the debugger triggering the Assert dialog</remarks>
45390             <returns></returns>
45391         </member>
45392         <member name="M:Microsoft.Build.Evaluation.Scanner.Advance">
45393              <summary>
45394              Advance
45395              returns true on successful advance
45396                  and false on an erroneous token
45397             
45398              Doesn't return error until the bogus input is encountered.
45399              Advance() returns true even after EndOfInput is encountered.
45400              </summary>
45401         </member>
45402         <member name="M:Microsoft.Build.Evaluation.Scanner.ParsePropertyOrItemMetadata">
45403             <summary>
45404             Parses either the $(propertyname) syntax or the %(metadataname) syntax, 
45405             and returns the parsed string beginning with the '$' or '%', and ending with the
45406             closing parenthesis.
45407             </summary>
45408             <returns></returns>
45409         </member>
45410         <member name="M:Microsoft.Build.Evaluation.Scanner.ScanForPropertyExpressionEnd(System.String,System.Int32)">
45411             <summary>
45412             Scan for the end of the property expression
45413             </summary>
45414         </member>
45415         <member name="M:Microsoft.Build.Evaluation.Scanner.ParseProperty">
45416             <summary>
45417             Parses a string of the form $(propertyname).
45418             </summary>
45419             <returns></returns>
45420         </member>
45421         <member name="M:Microsoft.Build.Evaluation.Scanner.ParseItemMetadata">
45422             <summary>
45423             Parses a string of the form %(itemmetadataname).
45424             </summary>
45425             <returns></returns>
45426         </member>
45427         <member name="M:Microsoft.Build.Evaluation.Scanner.CheckForUnexpectedMetadata(System.String)">
45428             <summary>
45429             Helper to verify that any AllowBuiltInMetadata or AllowCustomMetadata
45430             specifications are not respected.
45431             Returns true if it is ok, otherwise false.
45432             </summary>
45433         </member>
45434         <member name="M:Microsoft.Build.Evaluation.Scanner.ParseQuotedString">
45435             <summary>
45436             Parse any part of the conditional expression that is quoted. It may contain a property, item, or 
45437             metadata element that needs expansion during evaluation.
45438             </summary>
45439         </member>
45440         <member name="T:Microsoft.Build.Evaluation.StringExpressionNode">
45441             <summary>
45442             Node representing a string
45443             </summary>
45444         </member>
45445         <member name="F:Microsoft.Build.Evaluation.StringExpressionNode._expandable">
45446             <summary>
45447             Whether the string potentially has expandable content,
45448             such as a property expression or escaped character.
45449             </summary>
45450         </member>
45451         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.BoolEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45452             <summary>
45453             Evaluate as boolean
45454             </summary>
45455         </member>
45456         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.NumericEvaluate(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45457             <summary>
45458             Evaluate as numeric
45459             </summary>
45460         </member>
45461         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.EvaluatesToEmpty(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45462             <summary>
45463             Returns true if this node evaluates to an empty string,
45464             otherwise false.
45465             It may be cheaper to determine whether an expression will evaluate
45466             to empty than to fully evaluate it.
45467             Implementations should cache the result so that calls after the first are free.
45468             </summary>
45469         </member>
45470         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.GetUnexpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45471             <summary>
45472             Value before any item and property expressions are expanded
45473             </summary>
45474             <returns></returns>
45475         </member>
45476         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.GetExpandedValue(Microsoft.Build.Evaluation.ConditionEvaluator.IConditionEvaluationState)">
45477             <summary>
45478             Value after any item and property expressions are expanded
45479             </summary>
45480             <returns></returns>
45481         </member>
45482         <member name="M:Microsoft.Build.Evaluation.StringExpressionNode.ResetState">
45483             <summary>
45484             If any expression nodes cache any state for the duration of evaluation, 
45485             now's the time to clean it up
45486             </summary>
45487         </member>
45488         <member name="T:Microsoft.Build.Evaluation.Token">
45489             <summary>
45490             This class represents a token in the Complex Conditionals grammar.  It's
45491             really just a bag that contains the type of the token and the string that
45492             was parsed into the token.  This isn't very useful for operators, but
45493             is useful for strings and such.
45494             </summary>
45495         </member>
45496         <member name="T:Microsoft.Build.Evaluation.Token.TokenType">
45497             <summary>
45498             Valid tokens
45499             </summary>
45500         </member>
45501         <member name="M:Microsoft.Build.Evaluation.Token.#ctor(Microsoft.Build.Evaluation.Token.TokenType)">
45502             <summary>
45503             Constructor for types that don't have values
45504             </summary>
45505             <param name="tokenType"></param>
45506         </member>
45507         <member name="M:Microsoft.Build.Evaluation.Token.#ctor(Microsoft.Build.Evaluation.Token.TokenType,System.String)">
45508             <summary>
45509             Constructor takes the token type and the string that
45510             represents the token
45511             </summary>
45512             <param name="type"></param>
45513             <param name="tokenString"></param>
45514         </member>
45515         <member name="M:Microsoft.Build.Evaluation.Token.#ctor(Microsoft.Build.Evaluation.Token.TokenType,System.String,System.Boolean)">
45516             <summary>
45517             Constructor takes the token type and the string that
45518             represents the token.
45519             If the string may contain content that needs expansion, expandable is set.
45520             </summary>
45521         </member>
45522         <member name="P:Microsoft.Build.Evaluation.Token.Expandable">
45523             <summary>
45524             Whether the content potentially has expandable content,
45525             such as a property expression or escaped character.
45526             </summary>
45527         </member>
45528         <member name="M:Microsoft.Build.Evaluation.Token.IsToken(Microsoft.Build.Evaluation.Token.TokenType)">
45529             <summary>
45530             
45531             </summary>
45532             <param name="type"></param>
45533             <returns></returns>
45534         </member>
45535         <member name="T:Microsoft.Build.Evaluation.EvaluatorMetadataTable">
45536             <summary>
45537             Implementation of a metadata table for use by the evaluator.
45538             Accumulates ProjectMetadataElement objects and their evaluated value,
45539             overwriting any previous metadata with that name.
45540             </summary>
45541         </member>
45542         <member name="F:Microsoft.Build.Evaluation.EvaluatorMetadataTable._metadata">
45543             <summary>
45544             The actual metadata dictionary.
45545             </summary>
45546         </member>
45547         <member name="F:Microsoft.Build.Evaluation.EvaluatorMetadataTable._implicitItemType">
45548             <summary>
45549             The type of item the metadata should be considered to apply to.
45550             </summary>
45551         </member>
45552         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.#ctor(System.String)">
45553             <summary>
45554             Creates a new table using the specified item type.
45555             </summary>
45556         </member>
45557         <member name="P:Microsoft.Build.Evaluation.EvaluatorMetadataTable.Entries">
45558             <summary>
45559             Enumerator over the entries in this table
45560             </summary>
45561         </member>
45562         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.GetEscapedValue(System.String)">
45563             <summary>
45564             Retrieves any value we have in our metadata table for the metadata name specified,
45565             whatever the item type.
45566             If no value is available, returns empty string.
45567             </summary>
45568         </member>
45569         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.GetEscapedValue(System.String,System.String)">
45570             <summary>
45571             Retrieves any value we have in our metadata table for the metadata name and item type specified.
45572             If no value is available, returns empty string.
45573             </summary>
45574         </member>
45575         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
45576             <summary>
45577             Retrieves any value we have in our metadata table for the metadata name and item type specified.
45578             If no value is available, returns null.
45579             </summary>
45580         </member>
45581         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.SetValue(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
45582             <summary>
45583             Adds a metadata entry to the table
45584             </summary>
45585         </member>
45586         <member name="T:Microsoft.Build.Evaluation.EvaluatorMetadataTable.EvaluatorMetadata">
45587             <summary>
45588             An entry in the evaluator's metadata table.
45589             </summary>
45590         </member>
45591         <member name="M:Microsoft.Build.Evaluation.EvaluatorMetadataTable.EvaluatorMetadata.#ctor(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
45592             <summary>
45593             Construct a new EvaluatorMetadata
45594             </summary>
45595         </member>
45596         <member name="P:Microsoft.Build.Evaluation.EvaluatorMetadataTable.EvaluatorMetadata.Xml">
45597             <summary>
45598             Gets or sets the metadata Xml
45599             </summary>
45600         </member>
45601         <member name="P:Microsoft.Build.Evaluation.EvaluatorMetadataTable.EvaluatorMetadata.EvaluatedValue">
45602             <summary>
45603             Gets or sets the evaluated value, unescaped
45604             </summary>
45605         </member>
45606         <member name="P:Microsoft.Build.Evaluation.EvaluatorMetadataTable.EvaluatorMetadata.EvaluatedValueEscaped">
45607             <summary>
45608             Gets or sets the evaluated value, escaped as necessary
45609             </summary>
45610         </member>
45611         <member name="T:Microsoft.Build.Evaluation.IEvaluatorData`4">
45612             <summary>
45613             An interface for objects which the Evaluator can use as a destination for evaluation of ProjectRootElement.
45614             </summary>
45615             <typeparam name="P">The type of properties to be produced.</typeparam>
45616             <typeparam name="I">The type of items to be produced.</typeparam>
45617             <typeparam name="M">The type of metadata on those items.</typeparam>
45618             <typeparam name="D">The type of item definitions to be produced.</typeparam>
45619         </member>
45620         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.EvaluationId">
45621             <summary>
45622             The ID of this evaluation
45623             </summary>
45624         </member>
45625         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.Directory">
45626             <summary>
45627             The (project) directory that should be used during evaluation
45628             </summary>
45629         </member>
45630         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.TaskRegistry">
45631             <summary>
45632             Task classes and locations known to this project. 
45633             This is the project-specific task registry, which is consulted before
45634             the toolset's task registry.
45635             </summary>
45636         </member>
45637         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.Toolset">
45638             <summary>
45639             The toolset data used during evaluation, and which should be used for build.
45640             </summary>
45641         </member>
45642         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.SubToolsetVersion">
45643             <summary>
45644             The sub-toolset version that should be used with this toolset to determine 
45645             the full set of properties to be used by the build. 
45646             </summary>
45647         </member>
45648         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.ExplicitToolsVersion">
45649             <summary>
45650             The externally specified tools version to evaluate with, if any.
45651             For example, the tools version from a /tv switch.
45652             This is not the tools version specified on the Project tag, if any.
45653             May be null.
45654             </summary>
45655         </member>
45656         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.GlobalPropertiesDictionary">
45657             <summary>
45658             Gets the global properties
45659             </summary>
45660         </member>
45661         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.GlobalPropertiesToTreatAsLocal">
45662             <summary>
45663             List of names of the properties that, while global, are still treated as overridable 
45664             </summary>
45665         </member>
45666         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.InitialTargets">
45667             <summary>
45668             Sets the initial targets
45669             </summary>
45670         </member>
45671         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.DefaultTargets">
45672             <summary>
45673             Sets the default targets
45674             </summary>
45675         </member>
45676         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.BeforeTargets">
45677             <summary>
45678             Sets or retrieves the list of targets which run before the keyed target.
45679             </summary>
45680         </member>
45681         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.AfterTargets">
45682             <summary>
45683             Sets or retrieves the list of targets which run after the keyed target.
45684             </summary>
45685         </member>
45686         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.ConditionedProperties">
45687             <summary>
45688             List of possible values for properties inferred from certain conditions,
45689             keyed by the property name.
45690             </summary>
45691         </member>
45692         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.ShouldEvaluateForDesignTime">
45693             <summary>
45694             Whether evaluation should collect items ignoring condition,
45695             as well as items respecting condition; and collect
45696             conditioned properties, as well as regular properties
45697             </summary>
45698         </member>
45699         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.Properties">
45700             <summary>
45701             Enumerator over properties in this project.
45702             Exposed for debugging display.
45703             </summary>
45704         </member>
45705         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.ItemDefinitionsEnumerable">
45706             <summary>
45707             Enumerator over all item definitions.
45708             Exposed for debugging display.
45709             Ideally the dictionary would be exposed, but there are 
45710             covariance problems. (A dictionary of Key, Value cannot be upcast
45711             to a Dictionary of Key, IValue).
45712             </summary>
45713         </member>
45714         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.Items">
45715             <summary>
45716             Enumerator over all items.
45717             Exposed for debugging display.
45718             Ideally the dictionary would be exposed, but there are 
45719             covariance problems. (A dictionary of Key, Value cannot be upcast
45720             to a Dictionary of Key, IValue).
45721             </summary>
45722         </member>
45723         <member name="P:Microsoft.Build.Evaluation.IEvaluatorData`4.EvaluatedItemElements">
45724             <summary>
45725             Evaluation ordered list of project item elements that were evaluated by the Evaluator
45726             It means that both the item element's condition and the item group element's conditions evaluated to true
45727             </summary>
45728         </member>
45729         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.InitializeForEvaluation(Microsoft.Build.Evaluation.IToolsetProvider)">
45730             <summary>
45731             Prepares the data block for a new evaluation pass
45732             </summary>
45733         </member>
45734         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.FinishEvaluation">
45735             <summary>
45736             Indicates to the data block that evaluation has completed,
45737             so for example it can mark datastructures read-only.
45738             </summary>
45739         </member>
45740         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddItem(`1)">
45741             <summary>
45742             Adds a new item
45743             </summary>
45744         </member>
45745         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddItemIgnoringCondition(`1)">
45746             <summary>
45747             Adds a new item to the collection of all items ignoring condition
45748             </summary>
45749         </member>
45750         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddItemDefinition(System.String)">
45751             <summary>
45752             Adds a new item definition
45753             </summary>
45754         </member>
45755         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddToAllEvaluatedPropertiesList(`0)">
45756             <summary>
45757             Properties encountered during evaluation. These are read during the first evaluation pass.
45758             Unlike those returned by the Properties property, these are ordered, and include any properties that
45759             were subsequently overridden by others with the same name. It does not include any 
45760             properties whose conditions did not evaluate to true.
45761             </summary>
45762         </member>
45763         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddToAllEvaluatedItemDefinitionMetadataList(`2)">
45764             <summary>
45765             Item definition metadata encountered during evaluation. These are read during the second evaluation pass.
45766             Unlike those returned by the ItemDefinitions property, these are ordered, and include any metadata that
45767             were subsequently overridden by others with the same name and item type. It does not include any 
45768             elements whose conditions did not evaluate to true.
45769             </summary>
45770         </member>
45771         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddToAllEvaluatedItemsList(`1)">
45772             <summary>
45773             Items encountered during evaluation. These are read during the third evaluation pass.
45774             Unlike those returned by the Items property, these are ordered.
45775             It does not include any elements whose conditions did not evaluate to true.
45776             It does not include any items added since the last evaluation.
45777             </summary>
45778         </member>
45779         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.GetItemDefinition(System.String)">
45780             <summary>
45781             Retrieves an existing item definition, if any.
45782             </summary>
45783         </member>
45784         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.SetProperty(System.String,System.String,System.Boolean,System.Boolean)">
45785             <summary>
45786             Sets a property which does not come from the Xml.
45787             </summary>
45788         </member>
45789         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.SetProperty(Microsoft.Build.Construction.ProjectPropertyElement,System.String,`0)">
45790             <summary>
45791             Sets a property which comes from the Xml.
45792             Predecessor is any immediately previous property that was overridden by this one during evaluation.
45793             This would include all properties with the same name that lie above in the logical
45794             project file, and whose conditions evaluated to true.
45795             If there are none above this is null.
45796             </summary>
45797         </member>
45798         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.GetTarget(System.String)">
45799             <summary>
45800             Retrieves an existing target, if any.
45801             </summary>
45802         </member>
45803         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.AddTarget(Microsoft.Build.Execution.ProjectTargetInstance)">
45804             <summary>
45805             Adds a new target, overwriting any existing target with the same name.
45806             </summary>
45807         </member>
45808         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.RecordImport(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
45809             <summary>
45810             Record an import opened during evaluation, if appropriate.
45811             </summary>
45812         </member>
45813         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.RecordImportWithDuplicates(Microsoft.Build.Construction.ProjectImportElement,Microsoft.Build.Construction.ProjectRootElement,System.Int32)">
45814             <summary>
45815             Record an import opened during evaluation, if appropriate.
45816             </summary>
45817         </member>
45818         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.ExpandString(System.String)">
45819             <summary>
45820             Evaluates the provided string by expanding items and properties,
45821             using the current items and properties available.
45822             This is useful for the immediate window.
45823             Does not expand bare metadata expressions.
45824             </summary>
45825             <comment>
45826             Not for internal use.
45827             </comment>
45828         </member>
45829         <member name="M:Microsoft.Build.Evaluation.IEvaluatorData`4.EvaluateCondition(System.String)">
45830             <summary>
45831             Evaluates the provided string as a condition by expanding items and properties,
45832             using the current items and properties available, then doing a logical evaluation.
45833             This is useful for the immediate window.
45834             Does not expand bare metadata expressions.
45835             </summary>
45836             <comment>
45837             Not for internal use.
45838             </comment>
45839         </member>
45840         <member name="T:Microsoft.Build.Evaluation.IItem">
45841             <summary>
45842             This interface represents an item without exposing its type.
45843             </summary>
45844         </member>
45845         <member name="P:Microsoft.Build.Evaluation.IItem.EvaluatedInclude">
45846             <summary>
45847             Gets the evaluated include value for this item, unescaped.
45848             </summary>
45849         </member>
45850         <member name="P:Microsoft.Build.Evaluation.IItem.EvaluatedIncludeEscaped">
45851             <summary>
45852             Gets the evaluated include value for this item, escaped as necessary.
45853             </summary>
45854         </member>
45855         <member name="P:Microsoft.Build.Evaluation.IItem.ProjectDirectory">
45856             <summary>
45857             The directory of the project being built
45858             If there is no project filename defined, returns null.
45859             </summary>
45860         </member>
45861         <member name="M:Microsoft.Build.Evaluation.IItem.GetMetadataValue(System.String)">
45862             <summary>
45863             Returns the metadata with the specified key.
45864             Returns null if it does not exist.
45865             Attempting to get built-in metadata on a value that is not a valid path throws InvalidOperationException.
45866             Metadata value is unescaped.
45867             </summary>
45868         </member>
45869         <member name="M:Microsoft.Build.Evaluation.IItem.GetMetadataValueEscaped(System.String)">
45870             <summary>
45871             Returns the metadata with the specified key.
45872             Returns null if it does not exist.
45873             Attempting to get built-in metadata on a value that is not a valid path throws InvalidOperationException.
45874             Metadata value is the escaped value initially set.
45875             </summary>
45876         </member>
45877         <member name="T:Microsoft.Build.Evaluation.IItemDefinition`1">
45878             <summary>
45879             Interface representing item definition objects for use by the Evaulator.
45880             </summary>
45881             <typeparam name="M">Type of metadata objects.</typeparam>
45882         </member>
45883         <member name="M:Microsoft.Build.Evaluation.IItemDefinition`1.GetMetadata(System.String)">
45884             <summary>
45885             Gets any metadatum on this item definition with the specified name.
45886             </summary>
45887         </member>
45888         <member name="M:Microsoft.Build.Evaluation.IItemDefinition`1.SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String,`0)">
45889             <summary>
45890             Adds the specified metadata to the item definition.
45891             </summary>
45892         </member>
45893         <member name="T:Microsoft.Build.Evaluation.IItemFactory`2">
45894             <summary>
45895             This interface is used to describe a class which can act as a factory for creating
45896             items when the Expander expands certain expressions.
45897             </summary>
45898             <typeparam name="S">The type of items this factory can clone from.</typeparam>
45899             <typeparam name="T">The type of items this factory will create.</typeparam>
45900         </member>
45901         <member name="P:Microsoft.Build.Evaluation.IItemFactory`2.ItemType">
45902             <summary>
45903             The item type of the items that this factory will create.
45904             May be null, if the items will not have an itemtype (ie., for ITaskItems)
45905             May not be settable (eg., for ITaskItems and for ProjectItems)
45906             </summary>
45907         </member>
45908         <member name="P:Microsoft.Build.Evaluation.IItemFactory`2.ItemElement">
45909             <summary>
45910             Used in the evaluator
45911             </summary>
45912         </member>
45913         <member name="M:Microsoft.Build.Evaluation.IItemFactory`2.CreateItem(System.String,System.String)">
45914             <summary>
45915             Creates an item with the specified evaluated include and defining project.
45916             Include must not be zero length.
45917             </summary>
45918             <param name="include">The include</param>
45919             <param name="definingProject">The project from which this item was created</param>
45920             <returns>A new item instance</returns>
45921         </member>
45922         <member name="M:Microsoft.Build.Evaluation.IItemFactory`2.CreateItem(`0,System.String)">
45923             <summary>
45924             Creates an item based off the provided item, with cloning semantics.
45925             New item is associated with the passed in defining project, not that of the original item. 
45926             </summary>
45927         </member>
45928         <member name="M:Microsoft.Build.Evaluation.IItemFactory`2.CreateItem(System.String,`0,System.String)">
45929             <summary>
45930             Creates an item with the specified include and the metadata from the specified base item
45931             New item is associated with the passed in defining project, not that of the original item. 
45932             </summary>
45933         </member>
45934         <member name="M:Microsoft.Build.Evaluation.IItemFactory`2.CreateItem(System.String,System.String,System.String)">
45935             <summary>
45936             Creates an item using the specified evaluated include, include before wildcard expansion, 
45937             and defining project.
45938             </summary>
45939         </member>
45940         <member name="M:Microsoft.Build.Evaluation.IItemFactory`2.SetMetadata(System.Collections.Generic.IEnumerable{Microsoft.Build.Shared.Pair{Microsoft.Build.Construction.ProjectMetadataElement,System.String}},System.Collections.Generic.IEnumerable{`1})">
45941             <summary>
45942             Applies the supplied metadata to the destination items.
45943             </summary>
45944         </member>
45945         <member name="T:Microsoft.Build.Evaluation.IItem`1">
45946             <summary>
45947             This interface represents an item without exposing its type.
45948             It's convenient to not genericise the base interface, to make it easier to use
45949             for the majority of code that doesn't call these methods.
45950             </summary>
45951             <typeparam name="M">Type of metadata object.</typeparam>
45952         </member>
45953         <member name="M:Microsoft.Build.Evaluation.IItem`1.GetMetadata(System.String)">
45954             <summary>
45955             Gets any existing metadatum on the item, or
45956             else any on an applicable item definition.
45957             </summary>
45958         </member>
45959         <member name="M:Microsoft.Build.Evaluation.IItem`1.SetMetadata(Microsoft.Build.Construction.ProjectMetadataElement,System.String)">
45960             <summary>
45961             Sets the specified metadata.
45962             Predecessor is any preceding overridden metadata
45963             </summary>
45964         </member>
45965         <member name="T:Microsoft.Build.Evaluation.IItemProvider`1">
45966             <summary>
45967             This interface represents an object which can act as a source of items for the Expander.
45968             </summary>
45969             <typeparam name="T">The type of items provided by the implementation.</typeparam>
45970         </member>
45971         <member name="M:Microsoft.Build.Evaluation.IItemProvider`1.GetItems(System.String)">
45972             <summary>
45973             Returns a list of items with the specified item type.
45974             
45975             If there are no items of this type, returns an empty list.
45976             </summary>
45977             <param name="itemType">The item type of items to return.</param>
45978             <returns>A list of matching items.</returns>
45979         </member>
45980         <member name="T:Microsoft.Build.Evaluation.IMetadataTable">
45981             <summary>
45982             Table of metadata useable to expand expressions
45983             </summary>
45984         </member>
45985         <member name="M:Microsoft.Build.Evaluation.IMetadataTable.GetEscapedValue(System.String)">
45986             <summary>
45987             Retrieves any value we have in our metadata table for the metadata name specified.
45988             If no value is available, returns empty string.
45989             </summary>
45990         </member>
45991         <member name="M:Microsoft.Build.Evaluation.IMetadataTable.GetEscapedValue(System.String,System.String)">
45992             <summary>
45993             Retrieves any value we have in our metadata table for the metadata name and item type specified.
45994             If item type is null, it is ignored.
45995             If no value is available, returns empty string.
45996             </summary>
45997         </member>
45998         <member name="M:Microsoft.Build.Evaluation.IMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
45999             <summary>
46000             Returns the value if it exists, null otherwise.
46001             If item type is null, it is ignored.
46002             </summary>
46003         </member>
46004         <member name="T:Microsoft.Build.Evaluation.IntrinsicFunctions">
46005             <summary>
46006             The Intrinsic class provides static methods that can be accessed from MSBuild's
46007             property functions using $([MSBuild]::Function(x,y))
46008             </summary>
46009         </member>
46010         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Add(System.Double,System.Double)">
46011             <summary>
46012             Add two doubles
46013             </summary>
46014         </member>
46015         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Add(System.Int64,System.Int64)">
46016             <summary>
46017             Add two longs
46018             </summary>
46019         </member>
46020         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Subtract(System.Double,System.Double)">
46021             <summary>
46022             Subtract two doubles
46023             </summary>
46024         </member>
46025         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Subtract(System.Int64,System.Int64)">
46026             <summary>
46027             Subtract two longs
46028             </summary>
46029         </member>
46030         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Multiply(System.Double,System.Double)">
46031             <summary>
46032             Multiply two doubles
46033             </summary>
46034         </member>
46035         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Multiply(System.Int64,System.Int64)">
46036             <summary>
46037             Multiply two longs
46038             </summary>
46039         </member>
46040         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Divide(System.Double,System.Double)">
46041             <summary>
46042             Divide two doubles
46043             </summary>
46044         </member>
46045         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Divide(System.Int64,System.Int64)">
46046             <summary>
46047             Divide two longs
46048             </summary>
46049         </member>
46050         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Modulo(System.Double,System.Double)">
46051             <summary>
46052             Modulo two doubles
46053             </summary>
46054         </member>
46055         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Modulo(System.Int64,System.Int64)">
46056             <summary>
46057             Modulo two longs
46058             </summary>
46059         </member>
46060         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Escape(System.String)">
46061             <summary>
46062             Escape the string according to MSBuild's escaping rules
46063             </summary>
46064         </member>
46065         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.Unescape(System.String)">
46066             <summary>
46067             Unescape the string according to MSBuild's escaping rules
46068             </summary>
46069         </member>
46070         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.BitwiseOr(System.Int32,System.Int32)">
46071             <summary>
46072             Perform a bitwise OR on the first and second (first | second) 
46073             </summary>
46074         </member>
46075         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.BitwiseAnd(System.Int32,System.Int32)">
46076             <summary>
46077             Perform a bitwise AND on the first and second (first &amp; second) 
46078             </summary>
46079         </member>
46080         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.BitwiseXor(System.Int32,System.Int32)">
46081             <summary>
46082             Perform a bitwise XOR on the first and second (first ^ second) 
46083             </summary>
46084         </member>
46085         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.BitwiseNot(System.Int32)">
46086             <summary>
46087             Perform a bitwise NOT on the first and second (~first) 
46088             </summary>
46089         </member>
46090         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetRegistryValue(System.String,System.String)">
46091             <summary>
46092             Get the value of the registry key and value, default value is null
46093             </summary>
46094         </member>
46095         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetRegistryValue(System.String,System.String,System.Object)">
46096             <summary>
46097             Get the value of the registry key and value
46098             </summary>
46099         </member>
46100         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetRegistryValueFromView(System.String,System.String,System.Object,System.Object[])">
46101             <summary>
46102             Get the value of the registry key from one of the RegistryView's specified
46103             </summary>
46104         </member>
46105         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.MakeRelative(System.String,System.String)">
46106             <summary>
46107             Given the absolute location of a file, and a disc location, returns relative file path to that disk location. 
46108             Throws UriFormatException.
46109             </summary>
46110             <param name="basePath">
46111             The base path we want to relativize to. Must be absolute.  
46112             Should <i>not</i> include a filename as the last segment will be interpreted as a directory.
46113             </param>
46114             <param name="path">
46115             The path we need to make relative to basePath.  The path can be either absolute path or a relative path in which case it is relative to the base path.
46116             If the path cannot be made relative to the base path (for example, it is on another drive), it is returned verbatim.
46117             </param>
46118             <returns>relative path (can be the full path)</returns>
46119         </member>
46120         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetDirectoryNameOfFileAbove(System.String,System.String)">
46121             <summary>
46122             Locate a file in either the directory specified or a location in the
46123             direcorty structure above that directory.
46124             </summary>
46125         </member>
46126         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetPathOfFileAbove(System.String,System.String)">
46127             <summary>
46128             Searches for a file based on the specified <see cref="T:Microsoft.Build.Shared.IElementLocation"/>.
46129             </summary>
46130             <param name="file">The file to search for.</param>
46131             <param name="startingDirectory">An optional directory to start the search in.  The default location is the directory
46132             of the file containing the property funciton.</param>
46133             <returns>The full path of the file if it is found, otherwise an empty string.</returns>
46134         </member>
46135         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.ValueOrDefault(System.String,System.String)">
46136             <summary>
46137             Return the string in parameter 'defaultValue' only if parameter 'conditionValue' is empty
46138             else, return the value conditionValue
46139             </summary>
46140         </member>
46141         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.DoesTaskHostExist(System.String,System.String)">
46142             <summary>
46143             Returns true if a task host exists that can service the requested runtime and architecture
46144             values, and false otherwise. 
46145             </summary>
46146         </member>
46147         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.EnsureTrailingSlash(System.String)">
46148             <summary>
46149             If the given path doesn't have a trailing slash then add one.
46150             If the path is an empty string, does not modify it.
46151             </summary>
46152             <param name="path">The path to check.</param>
46153             <returns>The specified path with a trailing slash.</returns>
46154         </member>
46155         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.NormalizeDirectory(System.String[])">
46156             <summary>
46157             Gets the canonicalized full path of the provided directory and ensures it contains the correct directory separator characters for the current operating system
46158             while ensuring it has a trailing slash.
46159             </summary>
46160             <param name="path">One or more directory paths to combine and normalize.</param>
46161             <returns>A canonicalized full directory path with the correct directory separators and a trailing slash.</returns>
46162         </member>
46163         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.NormalizePath(System.String[])">
46164             <summary>
46165             Gets the canonicalized full path of the provided path and ensures it contains the correct directory separator characters for the current operating system.
46166             </summary>
46167             <param name="path">One or more paths to combine and normalize.</param>
46168             <returns>A canonicalized full path with the correct directory separators.</returns>
46169         </member>
46170         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.IsOSPlatform(System.String)">
46171             <summary>
46172             Specify whether the current OS platform is <paramref name="platformString"/>
46173             </summary>
46174             <param name="platformString">The platform string. Must be a member of <see cref="T:System.Runtime.InteropServices.OSPlatform"/>. Case Insensitive</param>
46175             <returns></returns>
46176         </member>
46177         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.IsOsUnixLike">
46178             <summary>
46179             True if current OS is a Unix system.
46180             </summary>
46181             <returns></returns>
46182         </member>
46183         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.__GetListTest">
46184             <summary>
46185             returns if the string contains escaped wildcards
46186             </summary>
46187         </member>
46188         <member name="M:Microsoft.Build.Evaluation.IntrinsicFunctions.GetBaseKeyFromKeyName(System.String,Microsoft.Win32.RegistryView,System.String@)">
46189             <summary>
46190             Following function will parse a keyName and returns the basekey for it.
46191             It will also store the subkey name in the out parameter.
46192             If the keyName is not valid, we will throw ArgumentException.
46193             The return value shouldn't be null.
46194             Taken from: \ndp\clr\src\BCL\Microsoft\Win32\Registry.cs
46195             </summary>
46196         </member>
46197         <member name="T:Microsoft.Build.Evaluation.IMetadatum">
46198             <summary>
46199             This interface represents a metadata object.
46200             </summary>
46201         </member>
46202         <member name="T:Microsoft.Build.Evaluation.IProjectMetadataParent">
46203             <summary>
46204             Represents the parent of a ProjectMetadata object -
46205             either a ProjectItem or a ProjectItemDefinition.
46206             </summary>
46207         </member>
46208         <member name="P:Microsoft.Build.Evaluation.IProjectMetadataParent.Project">
46209             <summary>
46210             The owning project
46211             </summary>
46212         </member>
46213         <member name="P:Microsoft.Build.Evaluation.IProjectMetadataParent.ItemType">
46214             <summary>
46215             The item type of the parent item definition or item.
46216             </summary>
46217         </member>
46218         <member name="T:Microsoft.Build.Evaluation.IProperty">
46219             <summary>
46220             An interface representing an object which can act as a property.
46221             </summary>
46222         </member>
46223         <member name="P:Microsoft.Build.Evaluation.IProperty.Name">
46224             <summary>
46225             Name of the property
46226             </summary>
46227         </member>
46228         <member name="P:Microsoft.Build.Evaluation.IProperty.EvaluatedValue">
46229             <summary>
46230             Returns the evaluated, unescaped value for the property.
46231             </summary>
46232         </member>
46233         <member name="P:Microsoft.Build.Evaluation.IProperty.EvaluatedValueEscaped">
46234             <summary>
46235             Returns the evaluated, escaped value for the property
46236             </summary>
46237         </member>
46238         <member name="T:Microsoft.Build.Evaluation.IPropertyProvider`1">
46239             <summary>
46240             An interface representing an object which can provide properties to the Expander.
46241             </summary>
46242             <typeparam name="T">The type of properties provided.</typeparam>
46243         </member>
46244         <member name="M:Microsoft.Build.Evaluation.IPropertyProvider`1.GetProperty(System.String)">
46245             <summary>
46246             Returns a property with the specified name, or null if it was not found.
46247             </summary>
46248             <param name="name">The property name.</param>
46249             <returns>The property.</returns>
46250         </member>
46251         <member name="M:Microsoft.Build.Evaluation.IPropertyProvider`1.GetProperty(System.String,System.Int32,System.Int32)">
46252             <summary>
46253             Returns a property with the specified name, or null if it was not found.
46254             Name is the segment of the provided string with the provided start and end indexes.
46255             </summary>
46256         </member>
46257         <member name="T:Microsoft.Build.Evaluation.Preprocessor">
46258             <summary>
46259             Creates a view of an evaluated project's XML as if it had all been loaded from 
46260             a single file, instead of being assembled by pulling in imported files as it actually was.
46261             </summary>
46262             <remarks>
46263             Ideally the result would be buildable on its own, and *usually* this should be the case.
46264             Known cases where it wouldn't be buildable:
46265             -- $(MSBuildThisFile) and similar properties aren't corrected
46266             -- relative path in exists(..) conditions is relative to the imported file
46267             -- same for AssemblyFile on UsingTask
46268             Paths in item includes are relative to the importing project, though.
46269             </remarks>
46270         </member>
46271         <member name="F:Microsoft.Build.Evaluation.Preprocessor._project">
46272             <summary>
46273             Project to preprocess
46274             </summary>
46275         </member>
46276         <member name="F:Microsoft.Build.Evaluation.Preprocessor._importTable">
46277             <summary>
46278             Table to resolve import tags
46279             </summary>
46280         </member>
46281         <member name="F:Microsoft.Build.Evaluation.Preprocessor._filePaths">
46282             <summary>
46283             Stack of file paths pushed as we follow imports
46284             </summary>
46285         </member>
46286         <member name="M:Microsoft.Build.Evaluation.Preprocessor.#ctor(Microsoft.Build.Evaluation.Project)">
46287             <summary>
46288             Constructor
46289             </summary>
46290         </member>
46291         <member name="M:Microsoft.Build.Evaluation.Preprocessor.GetPreprocessedDocument(Microsoft.Build.Evaluation.Project)">
46292             <summary>
46293             Returns an XmlDocument representing the evaluated project's XML as if it all had 
46294             been loaded from a single file, instead of being assembled by pulling in imported files.
46295             </summary>
46296         </member>
46297         <member name="M:Microsoft.Build.Evaluation.Preprocessor.Preprocess">
46298             <summary>
46299             Root of the preprocessing.
46300             </summary>
46301         </member>
46302         <member name="M:Microsoft.Build.Evaluation.Preprocessor.CloneChildrenResolvingImports(System.Xml.XmlNode,System.Xml.XmlNode)">
46303             <summary>
46304             Recursively called method that clones source nodes into nodes in the destination
46305             document.
46306             </summary>
46307         </member>
46308         <member name="T:Microsoft.Build.Evaluation.ProjectRootElementCache">
46309             <summary>
46310             Maintains a cache of all loaded ProjectRootElement's for design time purposes.
46311             Weak references are held to add added ProjectRootElement's.
46312             Strong references are held to a limited number of added ProjectRootElement's.
46313             
46314             1. Loads of a ProjectRootElement will share any existing loaded ProjectRootElement, rather
46315             than loading and parsing a new one. This is the case whether the ProjectRootElement
46316             is loaded directly or imported.
46317             
46318             2. For design time, only a weak reference needs to be held, because all users have a strong reference.
46319             
46320             3. Because all loads of a ProjectRootElement consult this cache, they can be assured that any
46321             entries in this cache are up to date. For example, if a ProjectRootElement is modified and saved,
46322             the cached ProjectRootElement will be the loaded one that was saved, so it will be up to date.
46323             
46324             4. If, after a project has been loaded, an external app changes the project file content on disk, it is
46325             important that a subsequent load of that project does not return stale ProjectRootElement. To avoid this, the
46326             timestamp of the file on disk is compared to the timestamp of the file at the time that the ProjectRootElement loaded it.
46327             
46328             5. For build time, some strong references need to be held, as otherwise the ProjectRootElement's for reuseable
46329             imports will be collected, and time will be wasted reparsing them. However we do not want to hold strong references
46330             to all ProjectRootElement's, consuming memory without end. So a simple priority queue is used. All Adds and Gets boost their
46331             entry to the top. As the queue gets too big, low priority entries are dropped.
46332             
46333             No guesses are made at which files are more interesting to cache, beyond the most-recently-used list. For example, ".targets" files
46334             or imported files are not treated specially, as this is a potentially unreliable heuristic. Besides, caching a project file itself could
46335             be useful, if for example you want to build it twice with different sets of properties.
46336             
46337             Because of the strongly typed list, some ProjectRootElement's will be held onto indefinitely. This is an acceptable price to pay for
46338             being able to provide a commonly used ProjectRootElement immediately it's needed. It is mitigated by the list being finite and small, and
46339             because we allow ProjectCollection.UnloadAllProjects to hint to us to clear the list.
46340             
46341             Implicit references are those which were loaded as a result of a build, and not explicitly loaded through, for instance, the project
46342             collection.
46343             
46344             </summary>
46345         </member>
46346         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache.s_maximumStrongCacheSize">
46347             <summary>
46348             The maximum number of entries to keep strong references to.
46349             This has to be strong enough to make sure that key .targets files aren't pushed
46350             off by transient loads of non-reusable files like .user files.
46351             
46352             Made this as large as 50 because VC has a large number of
46353             regularly used property sheets and other imports.
46354             If you change this, update the unit tests.
46355             </summary>
46356             <remarks>
46357             If this number is increased much higher, the datastructure may
46358             need to be changed from a linked list, since it's currently O(n).
46359             </remarks>
46360         </member>
46361         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache.s_debugLogCacheActivity">
46362             <summary>
46363             Whether the cache should log activity to the Debug.Out stream
46364             </summary>
46365         </member>
46366         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache._weakCache">
46367             <summary>
46368             The map of weakly-held ProjectRootElement's
46369             </summary>
46370             <remarks>
46371             Be sure that the string keys are strongly held, or unpredictable bad
46372             behavior will ensue.
46373             </remarks>
46374         </member>
46375         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache._strongCache">
46376             <summary>
46377             The list of strongly-held ProjectRootElement's
46378             </summary>
46379         </member>
46380         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache._autoReloadFromDisk">
46381             <summary>
46382             Whether the cache should check the timestamp of the file on disk
46383             whenever it is requested, and update with the latest content of that
46384             file if it has changed.
46385             </summary>
46386         </member>
46387         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache._locker">
46388             <summary>
46389             Locking object for this shared cache
46390             </summary>
46391         </member>
46392         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.#cctor">
46393             <summary>
46394             Static constructor to choose cache size.
46395             </summary>
46396         </member>
46397         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.#ctor(System.Boolean)">
46398             <summary>
46399             Creates an empty cache.
46400             </summary>
46401         </member>
46402         <member name="T:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryHandler">
46403             <summary>
46404             Handler for which project root element just got added to the cache
46405             </summary>
46406         </member>
46407         <member name="T:Microsoft.Build.Evaluation.ProjectRootElementCache.StrongCacheEntryRemovedDelegate">
46408             <summary>
46409             Delegate for StrongCacheEntryRemoved event
46410             </summary>
46411         </member>
46412         <member name="T:Microsoft.Build.Evaluation.ProjectRootElementCache.OpenProjectRootElement">
46413             <summary>
46414             Callback to create a ProjectRootElement if need be
46415             </summary>
46416         </member>
46417         <member name="E:Microsoft.Build.Evaluation.ProjectRootElementCache.StrongCacheEntryRemoved">
46418             <summary>
46419             Event that is fired when an entry in the Strong Cache is removed.
46420             </summary>
46421         </member>
46422         <member name="E:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementAddedHandler">
46423             <summary>
46424             Event which is fired when a project root element is added to this cache.
46425             </summary>
46426         </member>
46427         <member name="E:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementDirtied">
46428             <summary>
46429             Event which is fired when a project root element in this cache is dirtied.
46430             </summary>
46431         </member>
46432         <member name="E:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectDirtied">
46433             <summary>
46434             Event which is fired when a project is marked dirty.
46435             </summary>
46436         </member>
46437         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.Get(System.String,Microsoft.Build.Evaluation.ProjectRootElementCache.OpenProjectRootElement,System.Boolean,System.Nullable{System.Boolean})">
46438             <summary>
46439             Returns an existing ProjectRootElement for the specified file path, if any.
46440             If none exists, calls the provided delegate to load one, and adds that to the cache.
46441             The reason that it calls back to do this is so that the cache is locked between determining
46442             that the entry does not exist and adding the entry.
46443             
46444             If <see cref="F:Microsoft.Build.Evaluation.ProjectRootElementCache._autoReloadFromDisk"/> was set to true, and the file on disk has changed since it was cached,
46445             it will be reloaded before being returned.
46446             
46447             Thread safe.
46448             </summary>
46449             <remarks>
46450             Never needs to consult the strong cache as well, since if the item is in there, it will
46451             not have left the weak cache.
46452             If item is found, boosts it to the top of the strong cache.
46453             </remarks>
46454             <param name="projectFile">The project file which contains the ProjectRootElement.  Must be a full path.</param>
46455             <param name="openProjectRootElement">The delegate to use to load if necessary. May be null.</param>
46456             <param name="isExplicitlyLoaded"><code>true</code> if the project is explicitly loaded, otherwise <code>false</code>.</param>
46457             <param name="preserveFormatting"><code>true</code> to the project was loaded with the formated preserved, otherwise <code>false</code>.</param>
46458             <returns>The ProjectRootElement instance if one exists.  Null otherwise.</returns>
46459         </member>
46460         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.AddEntry(Microsoft.Build.Construction.ProjectRootElement)">
46461             <summary>
46462             Add an entry to the cache.
46463             </summary>
46464         </member>
46465         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.OnProjectRootElementDirtied(Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Evaluation.ProjectXmlChangedEventArgs)">
46466             <summary>
46467             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementDirtied"/> event.
46468             </summary>
46469             <param name="sender">The dirtied project root element.</param>
46470             <param name="e">Details on the PRE and the nature of the change.</param>
46471         </member>
46472         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.OnProjectDirtied(Microsoft.Build.Evaluation.Project,Microsoft.Build.Evaluation.ProjectChangedEventArgs)">
46473             <summary>
46474             Raises the <see cref="E:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectDirtied"/> event.
46475             </summary>
46476             <param name="sender">The dirtied project.</param>
46477             <param name="e">Details on the Project and the change.</param>
46478         </member>
46479         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.RenameEntry(System.String,Microsoft.Build.Construction.ProjectRootElement)">
46480             <summary>
46481             Rename an entry in the cache.
46482             Entry must already be in the cache.
46483             </summary>
46484         </member>
46485         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.TryGet(System.String)">
46486             <summary>
46487             Returns any a ProjectRootElement in the cache with the provided full path,
46488             otherwise null.
46489             </summary>
46490         </member>
46491         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.TryGet(System.String,System.Nullable{System.Boolean})">
46492             <summary>
46493             Returns any a ProjectRootElement in the cache with the provided full path,
46494             otherwise null.
46495             </summary>
46496         </member>
46497         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DiscardStrongReferences">
46498             <summary>
46499             Discards strong references held by the cache.
46500             </summary>
46501             <remarks>
46502             The weak cache is never cleared, as we need it to guarantee that the appdomain never
46503             has two ProjectRootElement's for a particular file. Attempts to clear out the weak cache
46504             resulted in this guarantee being broken and subtle bugs popping up everywhere.
46505             </remarks>
46506         </member>
46507         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.Clear">
46508             <summary>
46509             Clears out the cache.
46510             Called when all projects are unloaded and possibly when a build is done.
46511             </summary>
46512         </member>
46513         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DiscardImplicitReferences">
46514             <summary>
46515             Discard any entries (weak and strong) which do not have the explicitlyLoaded flag set.
46516             </summary>
46517         </member>
46518         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DiscardAnyWeakReference(Microsoft.Build.Construction.ProjectRootElement)">
46519             <summary>
46520             Forces a removal of a project root element from the weak cache if it is present.
46521             </summary>
46522             <param name="projectRootElement">The project root element to remove.</param>
46523             <remarks>
46524             No exception is thrown if this project root element is in use by currently loaded projects
46525             by this method.  The calling method must know that this is a safe operation.
46526             There may of course be strong references to the project root element from customer code.
46527             The assumption is that when they instruct the project collection to unload it, which
46528             leads to this being called, they are releasing their strong references too (or it doesn't matter)
46529             </remarks>
46530         </member>
46531         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.RaiseProjectRootElementAddedToCacheEvent(Microsoft.Build.Construction.ProjectRootElement)">
46532             <summary>
46533             Raises an event which is raised when a project root element is added to the cache.
46534             </summary>
46535         </member>
46536         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.RaiseProjectRootElementRemovedFromStrongCache(Microsoft.Build.Construction.ProjectRootElement)">
46537             <summary>
46538             Raises an event which is raised when a project root element is removed from the strong cache.
46539             </summary>
46540         </member>
46541         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.RenameEntryInternal(System.String,Microsoft.Build.Construction.ProjectRootElement)">
46542             <summary>
46543             Add or rename an entry in the cache.
46544             Old full path may be null iff it was not already in the cache.
46545             </summary>
46546             <remarks>
46547             Must be called within the cache lock.
46548             </remarks>
46549         </member>
46550         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.BoostEntryInStrongCache(Microsoft.Build.Construction.ProjectRootElement)">
46551             <summary>
46552             Update the strong cache.
46553             If the item is already a member of the list, move it to the top.
46554             Otherwise, just add it to the top.
46555             If the list is too large, remove an entry from the bottom.
46556             </summary>
46557             <remarks>
46558             Must be called within the cache lock.
46559             If the size of strong cache gets large, this needs a faster data structure
46560             than a linked list. It's currently O(n).
46561             </remarks>
46562         </member>
46563         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.ForgetEntry(Microsoft.Build.Construction.ProjectRootElement)">
46564             <summary>
46565             Completely remove an entry from this cache
46566             </summary>
46567             <remarks>
46568             Must be called within the cache lock.
46569             </remarks>
46570         </member>
46571         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DebugTraceCache(System.String,System.Boolean)">
46572             <summary>
46573             Write debugging messages to the Debug.Out stream.
46574             </summary>
46575         </member>
46576         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DebugTraceCache(System.String,System.Int32)">
46577             <summary>
46578             Write debugging messages to the Debug.Out stream.
46579             </summary>
46580         </member>
46581         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.DebugTraceCache(System.String,System.String)">
46582             <summary>
46583             Write debugging messages to the Debug.Out stream.
46584             </summary>
46585         </member>
46586         <member name="T:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryEventArgs">
46587             <summary>
46588             This class is an event that holds which ProjectRootElement was added to the root element cache.
46589             </summary>
46590         </member>
46591         <member name="F:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryEventArgs._rootElement">
46592             <summary>
46593             Root element which was just added to the cache.
46594             </summary>
46595         </member>
46596         <member name="M:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryEventArgs.#ctor(Microsoft.Build.Construction.ProjectRootElement)">
46597             <summary>
46598             Takes the root element which was added to the results cache.
46599             </summary>
46600         </member>
46601         <member name="P:Microsoft.Build.Evaluation.ProjectRootElementCache.ProjectRootElementCacheAddEntryEventArgs.RootElement">
46602             <summary>
46603             Root element which was just added to the cache.
46604             </summary>
46605         </member>
46606         <member name="T:Microsoft.Build.Evaluation.StringMetadataTable">
46607             <summary>
46608             Wraps a table of metadata values in which keys
46609             may be qualified ("itemtype.name") or unqualified ("name").
46610             </summary>
46611         </member>
46612         <member name="F:Microsoft.Build.Evaluation.StringMetadataTable._metadata">
46613             <summary>
46614             Table of metadata values. 
46615             Each key may be qualified ("itemtype.name") or unqualified ("name").
46616             Unqualified are considered to apply to all item types.
46617             May be null, if empty.
46618             </summary>
46619         </member>
46620         <member name="M:Microsoft.Build.Evaluation.StringMetadataTable.#ctor(System.Collections.Generic.Dictionary{System.String,System.String})">
46621             <summary>
46622             Constructor taking a table of metadata in which keys
46623             may be a mixture of qualified ("itemtype.name") and unqualified ("name").
46624             Unqualified keys are considered to apply to all item types.
46625             Metadata may be null, indicating it is empty.
46626             </summary>
46627         </member>
46628         <member name="M:Microsoft.Build.Evaluation.StringMetadataTable.GetEscapedValue(System.String)">
46629             <summary>
46630             Retrieves any value we have in our metadata table for the metadata name specified.
46631             If no value is available, returns empty string.
46632             </summary>
46633         </member>
46634         <member name="M:Microsoft.Build.Evaluation.StringMetadataTable.GetEscapedValue(System.String,System.String)">
46635             <summary>
46636             Retrieves any value we have in our metadata table for the metadata name and item type specified.
46637             If no value is available, returns empty string.
46638             </summary>
46639         </member>
46640         <member name="M:Microsoft.Build.Evaluation.StringMetadataTable.GetEscapedValueIfPresent(System.String,System.String)">
46641             <summary>
46642             Retrieves any value we have in our metadata table for the metadata name and item type specified.
46643             If no value is available, returns null.
46644             </summary>
46645         </member>
46646         <member name="T:Microsoft.Build.Evaluation.ShredderOptions">
46647             <summary>
46648             What the shredder should be looking for.
46649             </summary>
46650         </member>
46651         <member name="F:Microsoft.Build.Evaluation.ShredderOptions.Invalid">
46652             <summary>
46653             Don't use
46654             </summary>
46655         </member>
46656         <member name="F:Microsoft.Build.Evaluation.ShredderOptions.ItemTypes">
46657             <summary>
46658             Shred item types
46659             </summary>
46660         </member>
46661         <member name="F:Microsoft.Build.Evaluation.ShredderOptions.MetadataOutsideTransforms">
46662             <summary>
46663             Shred metadata not contained inside of a transform.
46664             </summary>
46665         </member>
46666         <member name="F:Microsoft.Build.Evaluation.ShredderOptions.All">
46667             <summary>
46668             Shred both items and metadata not contained in a transform.
46669             </summary>
46670         </member>
46671         <member name="T:Microsoft.Build.Evaluation.ExpressionShredder">
46672             <summary>
46673             A class which interprets and splits MSBuild expressions
46674             </summary>
46675         </member>
46676         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SplitSemiColonSeparatedList(System.String)">
46677             <summary>
46678             Splits an expression into fragments at semi-colons, except where the
46679             semi-colons are in a macro or separator expression.
46680             Fragments are trimmed and empty fragments discarded.
46681             </summary>
46682             <remarks>
46683             These complex cases prevent us from doing a simple split on ';':
46684              (1) Macro expression: @(foo->'xxx;xxx')
46685              (2) Separator expression: @(foo, 'xxx;xxx')
46686              (3) Combination: @(foo->'xxx;xxx', 'xxx;xxx')
46687              We must not split on semicolons in macro or separator expressions like these.
46688             </remarks>
46689             <param name="expression">List expression to split</param>
46690             <returns>Array of non-empty strings from split list.</returns>
46691         </member>
46692         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.GetReferencedItemNamesAndMetadata(System.Collections.Generic.List{System.String})">
46693             <summary>
46694             Given a list of expressions that may contain item list expressions,
46695             returns a pair of tables of all item names found, as K=Name, V=String.Empty;
46696             and all metadata not in transforms, as K=Metadata key, V=MetadataReference,
46697             where metadata key is like "itemname.metadataname" or "metadataname".
46698             PERF: Tables are null if there are no entries, because this is quite a common case.
46699             </summary>
46700         </member>
46701         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.ContainsMetadataExpressionOutsideTransform(System.String)">
46702             <summary>
46703             Returns true if there is a metadata expression (outside of a transform) in the expression.
46704             </summary>
46705         </member>
46706         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.GetReferencedItemExpressions(System.String)">
46707             <summary>
46708             Given a subexpression, finds referenced sub transform expressions
46709             itemName and separator will be null if they are not found
46710             return value will be null if no transform expressions are found
46711             </summary>
46712         </member>
46713         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.GetReferencedItemExpressions(System.String,System.Int32,System.Int32)">
46714             <summary>
46715             Given a subexpression, finds referenced sub transform expressions
46716             itemName and separator will be null if they are not found
46717             return value will be null if no transform expressions are found
46718             </summary>
46719         </member>
46720         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.GetReferencedItemNamesAndMetadata(System.String,System.Int32,System.Int32,Microsoft.Build.Evaluation.ItemsAndMetadataPair@,Microsoft.Build.Evaluation.ShredderOptions)">
46721             <summary>
46722             Given a subexpression, finds referenced item names and inserts them into the table
46723             as K=Name, V=String.Empty.
46724             </summary>
46725             <remarks>
46726             We can ignore any semicolons in the expression, since we're not itemizing it.
46727             </remarks>
46728         </member>
46729         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkSingleQuotedExpression(System.String,System.Int32@,System.Int32)">
46730             <summary>
46731             Returns true if a single quoted subexpression begins at the specified index
46732             and ends before the specified end index.
46733             Leaves index one past the end of the second quote.
46734             </summary>
46735         </member>
46736         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkArgumentsInParentheses(System.String,System.Int32@,System.Int32)">
46737             <summary>
46738             Scan for the closing bracket that matches the one we've already skipped;
46739             essentially, pushes and pops on a stack of parentheses to do this.
46740             Takes the expression and the index to start at.
46741             Returns the index of the matching parenthesis, or -1 if it was not found.
46742             </summary>
46743         </member>
46744         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkUntilClosingQuote(System.Char,System.String,System.Int32@,System.Int32)">
46745             <summary>
46746             Skip all characters until we find the matching quote character
46747             </summary>
46748         </member>
46749         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkItemFunctionExpression(System.String,System.Int32,System.Int32@,System.Int32)">
46750             <summary>
46751             Returns true if a item function subexpression begins at the specified index
46752             and ends before the specified end index.
46753             Leaves index one past the end of the closing paren.
46754             </summary>
46755         </member>
46756         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkValidName(System.String,System.Int32@,System.Int32)">
46757             <summary>
46758             Returns true if a valid name begins at the specified index.
46759             Leaves index one past the end of the name.
46760             </summary>
46761         </member>
46762         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.Sink(System.String,System.Int32@,System.Char)">
46763             <summary>
46764             Returns true if the character at the specified index 
46765             is the specified char. 
46766             Leaves index one past the character.
46767             </summary>
46768         </member>
46769         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.Sink(System.String,System.Int32@,System.Int32,System.Char,System.Char)">
46770             <summary>
46771             Returns true if the next two characters at the specified index
46772             are the specified sequence.
46773             Leaves index one past the second character.
46774             </summary>
46775         </member>
46776         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.SinkWhitespace(System.String,System.Int32@)">
46777             <summary>
46778             Moves past all whitespace starting at the specified index.
46779             Returns the next index, possibly the string length.
46780             </summary>
46781             <remarks>
46782             Char.IsWhitespace() is not identical in behavior to regex's \s character class,
46783             but it's extremely close, and it's what we use in conditional expressions.
46784             </remarks>
46785             <param name="expression">The expression to process.</param>
46786             <param name="i">The start location for skipping whitespace, contains the next non-whitespace character on exit.</param>
46787         </member>
46788         <member name="T:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture">
46789             <summary>
46790             Represents one substring for a single successful capture.
46791             </summary>
46792         </member>
46793         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._captures">
46794             <summary>
46795             Captures within this capture
46796             </summary>
46797         </member>
46798         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._index">
46799             <summary>
46800             The position in the original string where the first character of the captured
46801             substring was found.
46802             </summary>
46803         </member>
46804         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._length">
46805             <summary>
46806             The length of the captured substring.
46807             </summary>
46808         </member>
46809         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._value">
46810             <summary>
46811             The captured substring from the input string.
46812             </summary>
46813         </member>
46814         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._itemType">
46815             <summary>
46816             The type of the item within this expression
46817             </summary>
46818         </member>
46819         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._separator">
46820             <summary>
46821             The separator, if any, within this expression
46822             </summary>
46823         </member>
46824         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._separatorStart">
46825             <summary>
46826             The starting character of the separator within the expression
46827             </summary>
46828         </member>
46829         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._separatorLength">
46830             <summary>
46831             The length of the separator
46832             </summary>
46833         </member>
46834         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._functionName">
46835             <summary>
46836             The function name, if any, within this expression
46837             </summary>
46838         </member>
46839         <member name="F:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture._functionArguments">
46840             <summary>
46841             The function arguments, if any, within this expression
46842             </summary>
46843         </member>
46844         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.#ctor(System.Int32,System.Int32,System.String)">
46845             <summary>
46846             Create an Expression Capture instance
46847             Represents a sub expression, shredded from a larger expression
46848             </summary>
46849         </member>
46850         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.#ctor(System.Int32,System.Int32,System.String,System.String,System.String,System.Int32,System.Int32,System.Collections.Generic.List{Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture})">
46851             <summary>
46852             Create an Expression Capture instance
46853             Represents a sub expression, shredded from a larger expression
46854             </summary>
46855         </member>
46856         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.Captures">
46857             <summary>
46858             Captures within this capture
46859             </summary>
46860         </member>
46861         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.Index">
46862             <summary>
46863             The position in the original string where the first character of the captured
46864             substring was found.
46865             </summary>
46866         </member>
46867         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.Length">
46868             <summary>
46869             The length of the captured substring.
46870             </summary>
46871         </member>
46872         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.Value">
46873             <summary>
46874             Gets the captured substring from the input string.
46875             </summary>
46876         </member>
46877         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.ItemType">
46878             <summary>
46879             Gets the captured itemtype.
46880             </summary>
46881         </member>
46882         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.Separator">
46883             <summary>
46884             Gets the captured itemtype.
46885             </summary>
46886         </member>
46887         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.SeparatorStart">
46888             <summary>
46889             The starting character of the separator.
46890             </summary>
46891         </member>
46892         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.SeparatorLength">
46893             <summary>
46894             The length of the separator.
46895             </summary>
46896         </member>
46897         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.FunctionName">
46898             <summary>
46899             The function name, if any, within this expression
46900             </summary>
46901         </member>
46902         <member name="P:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.FunctionArguments">
46903             <summary>
46904             The function arguments, if any, within this expression
46905             </summary>
46906         </member>
46907         <member name="M:Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture.ToString">
46908             <summary>
46909             Gets the captured substring from the input string.
46910             </summary>
46911         </member>
46912         <member name="T:Microsoft.Build.Evaluation.Evaluator`4">
46913             <summary>
46914             Evaluates a ProjectRootElement, updating the fresh Project.Data passed in.
46915             Handles evaluating conditions, expanding expressions, and building up the 
46916             lists of applicable properties, items, and itemdefinitions, as well as gathering targets and tasks
46917             and creating a TaskRegistry from the using tasks.
46918             </summary>
46919             <typeparam name="P">The type of properties to produce.</typeparam>
46920             <typeparam name="I">The type of items to produce.</typeparam>
46921             <typeparam name="M">The type of metadata on those items.</typeparam>
46922             <typeparam name="D">The type of item definitions to be produced.</typeparam>
46923             <remarks>
46924             This class could be improved to do partial (minimal) reevaluation: at present we wipe all state and start over.
46925             </remarks>
46926         </member>
46927         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_splitter">
46928             <summary>
46929             Character used to split InitialTargets and DefaultTargets lists
46930             </summary>
46931         </member>
46932         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_localsTypesNames">
46933             <summary>
46934             Locals types names. We only have these because 'Built In' has a space,
46935             else we would use LocalsTypes enum names.
46936             Note: This should match LocalsTypes enum.
46937             </summary>
46938         </member>
46939         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_evaluationId">
46940             <summary>
46941             Each evaluation has a unique ID.
46942             </summary>
46943         </member>
46944         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._expander">
46945             <summary>
46946             Expander for evaluating conditions
46947             </summary>
46948         </member>
46949         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._data">
46950             <summary>
46951             Data containing the ProjectRootElement to evaluate and the slots for
46952             items, properties, etc originating from the evaluation.
46953             </summary>
46954         </member>
46955         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._itemGroupElements">
46956             <summary>
46957             List of ProjectItemElement's traversing into imports.
46958             Gathered during the first pass to avoid traversing again.
46959             </summary>
46960         </member>
46961         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._itemDefinitionGroupElements">
46962             <summary>
46963             List of ProjectItemDefinitionElement's traversing into imports.
46964             Gathered during the first pass to avoid traversing again.
46965             </summary>
46966         </member>
46967         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._usingTaskElements">
46968             <summary>
46969             List of ProjectUsingTaskElement's traversing into imports.
46970             Gathered during the first pass to avoid traversing again.
46971             Key is the directory of the file importing the usingTask, which is needed
46972             to handle any relative paths in the usingTask.
46973             </summary>
46974         </member>
46975         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._targetElements">
46976             <summary>
46977             List of ProjectTargetElement's traversing into imports. 
46978             Gathered during the first pass to avoid traversing again.
46979             </summary>
46980         </member>
46981         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._importsSeen">
46982             <summary>
46983             Paths to imports already seen and where they were imported from; used to flag duplicate imports
46984             </summary>
46985         </member>
46986         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._initialTargetsList">
46987             <summary>
46988             Depth first collection of InitialTargets strings declared in the main 
46989             Project and all its imported files, split on semicolons.
46990             </summary>
46991         </member>
46992         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._projectSupportsReturnsAttribute">
46993             <summary>
46994             Dictionary of project full paths and a boolean that indicates whether at least one 
46995             of their targets has the "Returns" attribute set.  
46996             </summary>
46997         </member>
46998         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._projectRootElement">
46999             <summary>
47000             The Project Xml to be evaluated.
47001             </summary>
47002         </member>
47003         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._itemFactory">
47004             <summary>
47005             The item factory used to create items from Xml.
47006             </summary>
47007         </member>
47008         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._loadSettings">
47009             <summary>
47010             Load settings, such as whether to ignore missing imports.
47011             </summary>
47012         </member>
47013         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._maxNodeCount">
47014             <summary>
47015             The maximum number of nodes to report for evaluation.
47016             </summary>
47017         </member>
47018         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._projectInstanceIfAnyForDebuggerOnly">
47019             <summary>
47020             This optional ProjectInstance is only exposed when doing debugging. It is not used by the evaluator.
47021             </summary>
47022         </member>
47023         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._environmentProperties">
47024             <summary>
47025             The environment properties with which evaluation should take place.
47026             </summary>
47027         </member>
47028         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._projectRootElementCache">
47029             <summary>
47030             The cache to consult for any imports that need loading.
47031             </summary>
47032         </member>
47033         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._evaluationLoggingContext">
47034             <summary>
47035             The logging context to be used and piped down throughout evaluation
47036             </summary>
47037         </member>
47038         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_initialLocalsTypes">
47039             <summary>
47040             Types of locals pulled in at the start - environment, global, toolset, and built-in properties
47041             </summary>
47042         </member>
47043         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_propertyPassLocalsTypes">
47044             <summary>
47045             Types of locals relevant to the property pass
47046             </summary>
47047         </member>
47048         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_itemDefinitionPassLocalsTypes">
47049             <summary>
47050             Types of locals relevant to the item definition pass
47051             </summary>
47052         </member>
47053         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.s_itemPassLocalsTypes">
47054             <summary>
47055             Types of locals relevant to the item pass
47056             </summary>
47057         </member>
47058         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._initialLocals">
47059             <summary>
47060             List of values and names available initially
47061             </summary>
47062         </member>
47063         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._propertyPassLocals">
47064             <summary>
47065             List of values and names available in the property pass of evaluation
47066             </summary>
47067         </member>
47068         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._itemDefinitionPassLocals">
47069             <summary>
47070             List of values and names available in the item definition pass of evaluation
47071             </summary>
47072         </member>
47073         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._itemPassLocals">
47074             <summary>
47075             List of values and names available in the item pass of evaluation
47076             </summary>
47077         </member>
47078         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._importRelationships">
47079             <summary>
47080             Dictionary of {child, parent} import relationships.
47081             </summary>
47082         </member>
47083         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._projectLevelLocalsForBuild">
47084             <summary>
47085             This is passed back so it can go to the build for debugger display while executing targets
47086             </summary>
47087         </member>
47088         <member name="F:Microsoft.Build.Evaluation.Evaluator`4._fallbackSearchPathsCache">
47089             <summary>
47090             The search paths are machine specific and should not change during builds
47091             </summary>
47092         </member>
47093         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.#ctor(Microsoft.Build.Evaluation.IEvaluatorData{`0,`1,`2,`3},Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Evaluation.ProjectLoadSettings,System.Int32,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.IItemFactory{`1,`1},Microsoft.Build.Evaluation.IToolsetProvider,Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.BackEnd.SdkResolution)">
47094             <summary>
47095             Private constructor called by the static Evaluate method.
47096             </summary>
47097         </member>
47098         <member name="T:Microsoft.Build.Evaluation.Evaluator`4.ExpandExpression">
47099             <summary>
47100             Delegate passed to methods to provide basic expression evaluation
47101             ability, without having a language service.
47102             </summary>
47103         </member>
47104         <member name="T:Microsoft.Build.Evaluation.Evaluator`4.EvaluateConditionalExpression">
47105             <summary>
47106             Delegate passed to methods to provide basic expression evaluation
47107             ability, without having a language service.
47108             </summary>
47109         </member>
47110         <member name="T:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes">
47111             <summary>
47112             Enumeration for locals types
47113             Note: This should match LocalsTypesNames
47114             </summary>
47115         </member>
47116         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Project">
47117             <summary>
47118             Project,
47119             </summary>
47120         </member>
47121         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.BuiltIn">
47122             <summary>
47123             BuiltIn,
47124             </summary>
47125         </member>
47126         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Environment">
47127             <summary>
47128             Environment,
47129             </summary>
47130         </member>
47131         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Toolset">
47132             <summary>
47133             Toolset,
47134             </summary>
47135         </member>
47136         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.SubToolset">
47137             <summary>
47138             SubToolset,
47139             </summary>
47140         </member>
47141         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Global">
47142             <summary>
47143             Global,
47144             </summary>
47145         </member>
47146         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.EvaluateExpression">
47147             <summary>
47148             EvaluateExpression,
47149             </summary>
47150         </member>
47151         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.EvaluateCondition">
47152             <summary>
47153             EvaluateCondition,
47154             </summary>
47155         </member>
47156         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.ToolsVersion">
47157             <summary>
47158             ToolsVersion,
47159             </summary>
47160         </member>
47161         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Properties">
47162             <summary>
47163             Properties,
47164             </summary>
47165         </member>
47166         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.ItemDefinitions">
47167             <summary>
47168             ItemDefinitions,
47169             </summary>
47170         </member>
47171         <member name="F:Microsoft.Build.Evaluation.Evaluator`4.LocalsTypes.Items">
47172             <summary>
47173             Items
47174             </summary>
47175         </member>
47176         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.Evaluate(Microsoft.Build.Evaluation.IEvaluatorData{`0,`1,`2,`3},Microsoft.Build.Construction.ProjectRootElement,Microsoft.Build.Evaluation.ProjectLoadSettings,System.Int32,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Evaluation.IItemFactory{`1,`1},Microsoft.Build.Evaluation.IToolsetProvider,Microsoft.Build.Evaluation.ProjectRootElementCache,Microsoft.Build.Framework.BuildEventContext,Microsoft.Build.Execution.ProjectInstance,Microsoft.Build.BackEnd.SdkResolution)">
47177             <summary>
47178             Evaluates the project data passed in.
47179             If debugging is enabled, returns a dictionary of name/value pairs such as properties, for debugger display.
47180             </summary>
47181             <remarks>
47182             This is the only non-private member of this class.
47183             This is a helper static method so that the caller can just do "Evaluator.Evaluate(..)" without
47184             newing one up, yet the whole class need not be static.
47185             The optional ProjectInstance is only exposed when doing debugging. It is not used by the evaluator.
47186             </remarks>
47187         </member>
47188         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.CreateItemsFromInclude(System.String,Microsoft.Build.Construction.ProjectItemElement,Microsoft.Build.Evaluation.IItemFactory{`1,`1},System.String,Microsoft.Build.Evaluation.Expander{`0,`1})">
47189             <summary>
47190             Helper that creates a list of ProjectItem's given an unevaluated Include and a ProjectRootElement.
47191             Used by both Evaluator.EvaluateItemElement and by Project.AddItem.
47192             </summary>
47193         </member>
47194         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.InitializeForDebugging">
47195             <summary>
47196             Initializes DebuggerManager.
47197             Initialize definitions of locals types.
47198             This must not be called by a static constructor, as the 
47199             time at which it is called will then be undefined, and
47200             the debugging environment variable might not have had a 
47201             chance to be set.
47202             </summary>
47203         </member>
47204         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadTaskElement(Microsoft.Build.Construction.ProjectTaskElement)">
47205             <summary>
47206             Read the task into an instance.
47207             Do not evaluate anything: this occurs during build.
47208             </summary>
47209         </member>
47210         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadPropertyGroupUnderTargetElement(Microsoft.Build.Construction.ProjectPropertyGroupElement)">
47211             <summary>
47212             Read the property-group-under-target into an instance.
47213             Do not evaluate anything: this occurs during build.
47214             </summary>
47215         </member>
47216         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadOnErrorElement(Microsoft.Build.Construction.ProjectOnErrorElement)">
47217             <summary>
47218             Read an onError tag.
47219             Do not evaluate anything: this occurs during build.
47220             </summary>
47221         </member>
47222         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadItemGroupUnderTargetElement(Microsoft.Build.Construction.ProjectItemGroupElement)">
47223             <summary>
47224             Read the item-group-under-target into an instance.
47225             Do not evaluate anything: this occurs during build.
47226             </summary>
47227         </member>
47228         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadNewTargetElement(Microsoft.Build.Construction.ProjectTargetElement,System.Boolean)">
47229             <summary>
47230             Read the provided target into a target instance.
47231             Do not evaluate anything: this occurs during build.
47232             </summary>
47233         </member>
47234         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.Evaluate(Microsoft.Build.BackEnd.Logging.ILoggingService,Microsoft.Build.Framework.BuildEventContext)">
47235             <summary>
47236             Do the evaluation.
47237             Called by the static helper method.
47238             If debugging is enabled, returns a dictionary of name/value pairs such as properties, for debugger display.
47239             </summary>
47240         </member>
47241         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(Microsoft.Build.Construction.ProjectRootElement)">
47242             <summary>
47243             Evaluate the properties in the passed in XML, into the project.
47244             Does a depth first traversal into Imports.
47245             In the process, populates the item, itemdefinition, target, and usingtask lists as well.
47246             </summary>
47247         </member>
47248         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.UpdateDefaultTargets(Microsoft.Build.Construction.ProjectRootElement)">
47249             <summary>
47250             Update the default targets value.
47251             We only take the first DefaultTargets value we encounter in a project or import.
47252             </summary>
47253         </member>
47254         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluatePropertyGroupElement(Microsoft.Build.Construction.ProjectPropertyGroupElement)">
47255             <summary>
47256             Evaluate the properties in the propertygroup and set the applicable ones on the data passed in
47257             </summary>
47258         </member>
47259         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateItemDefinitionGroupElement(Microsoft.Build.Construction.ProjectItemDefinitionGroupElement)">
47260             <summary>
47261             Evaluate the itemdefinitiongroup and update the definitions library
47262             </summary>
47263         </member>
47264         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateItemGroupElement(Microsoft.Build.Construction.ProjectItemGroupElement,Microsoft.Build.Evaluation.LazyItemEvaluator{`0,`1,`2,`3})">
47265             <summary>
47266             Evaluate the items in the itemgroup and add the applicable ones to the data passed in
47267             </summary>
47268         </member>
47269         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateUsingTaskElement(System.String,Microsoft.Build.Construction.ProjectUsingTaskElement)">
47270             <summary>
47271             Evaluate the usingtask and add the result into the data passed in
47272             </summary>
47273         </member>
47274         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ReadTargetElement(Microsoft.Build.Construction.ProjectTargetElement,System.Collections.Generic.LinkedList{Microsoft.Build.Construction.ProjectTargetElement},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.LinkedListNode{Microsoft.Build.Construction.ProjectTargetElement}})">
47275             <summary>
47276             Retrieve the matching ProjectTargetInstance from the cache and add it to the provided collection.
47277             If it is not cached already, read it and cache it.
47278             Do not evaluate anything: this occurs during build.
47279             </summary>
47280         </member>
47281         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddBeforeAndAfterTargetMappings(Microsoft.Build.Construction.ProjectTargetElement,System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.LinkedListNode{Microsoft.Build.Construction.ProjectTargetElement}},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.List{Microsoft.Build.BackEnd.TargetSpecification}},System.Collections.Generic.Dictionary{System.String,System.Collections.Generic.List{Microsoft.Build.BackEnd.TargetSpecification}})">
47282             <summary>
47283             Updates the evaluation maps for BeforeTargets and AfterTargets
47284             </summary>
47285         </member>
47286         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddBuiltInProperties">
47287             <summary>
47288             Set the built-in properties, most of which are read-only 
47289             </summary>
47290         </member>
47291         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddEnvironmentProperties">
47292             <summary>
47293             Pull in all the environment into our property bag
47294             </summary>
47295         </member>
47296         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddToolsetProperties">
47297             <summary>
47298             Put all the toolset's properties into our property bag
47299             </summary>
47300         </member>
47301         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddSubToolsetProperties">
47302             <summary>
47303             Put all the sub-toolset's properties into our property bag.  Run after 
47304             AddToolsetProperties to ensure that, if there are any overlaps, the sub-toolset wins.
47305             </summary>
47306         </member>
47307         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.AddGlobalProperties">
47308             <summary>
47309             Put all the global properties into our property bag
47310             </summary>
47311         </member>
47312         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.SetBuiltInProperty(System.String,System.String)">
47313             <summary>
47314             Set a built-in property in the supplied bag.
47315             NOT to be used for properties originating in XML.
47316             NOT to be used for global properties.
47317             NOT to be used for environment properties.
47318             </summary>
47319         </member>
47320         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluatePropertyElement(Microsoft.Build.Construction.ProjectPropertyElement)">
47321             <summary>
47322             Evaluate a single ProjectPropertyElement and update the data as appropriate
47323             </summary>
47324         </member>
47325         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateItemElementInclude(System.Boolean,System.Boolean,Microsoft.Build.Construction.ProjectItemElement)">
47326             <summary>
47327             Evaluate a single ProjectItemElement into zero or more items.
47328             If specified, or if the condition on the item itself is false, only gathers the result into the list of items-ignoring-condition,
47329             and not into the real list of items.
47330             </summary>
47331         </member>
47332         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateItemDefinitionElement(Microsoft.Build.Construction.ProjectItemDefinitionElement)">
47333             <summary>
47334             Evaluates an itemdefinition element, updating the definitions library.
47335             </summary>
47336         </member>
47337         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(System.String,Microsoft.Build.Construction.ProjectImportElement)">
47338             <summary>
47339             Evaluates an import element.
47340             If the condition is true, loads the import and continues the pass.
47341             </summary>
47342             <remarks>
47343             UNDONE: Protect against overflowing the stack by having too many nested imports.
47344             </remarks>
47345         </member>
47346         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportGroupElement(System.String,Microsoft.Build.Construction.ProjectImportGroupElement)">
47347             <summary>
47348             Evaluates an ImportGroup element.
47349             If the condition is true, evaluates the contained imports and continues the pass.
47350             </summary>
47351             <remarks>
47352             UNDONE: Protect against overflowing the stack by having too many nested imports.
47353             </remarks>
47354         </member>
47355         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateChooseElement(Microsoft.Build.Construction.ProjectChooseElement)">
47356             <summary>
47357             Choose does not accept a condition.
47358             </summary>
47359             <remarks>
47360             We enter here in both the property and item passes, since Chooses can contain both.
47361             However, we only evaluate the When conditions on the first pass, so we only pulse 
47362             those states on that pass. On the other pass, it's as if they're not there.
47363             </remarks>
47364         </member>
47365         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateWhenOrOtherwiseChildren(System.Collections.Generic.IEnumerable{Microsoft.Build.Construction.ProjectElement})">
47366             <summary>
47367             Evaluates the children of a When or Choose.
47368             Returns true if the condition was true, so subsequent
47369             WhenElements and Otherwise can be skipped.
47370             </summary>
47371         </member>
47372         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(System.String,Microsoft.Build.Construction.ProjectImportElement)">
47373             <summary>
47374             Expands and loads project imports.
47375             <remarks>
47376             Imports may contain references to "projectImportSearchPaths" defined in the app.config 
47377             toolset section. If this is the case, this method will search for the imported project
47378             in those additional paths if the default fails.
47379             </remarks>
47380             </summary>
47381         </member>
47382         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(System.String,Microsoft.Build.Construction.ProjectImportElement,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectRootElement}@,System.Boolean)">
47383             <summary>
47384             Load and parse the specified project import, which may have wildcards,
47385             into one or more ProjectRootElements, if it's Condition evaluates to true
47386             Caches the parsed import into the provided collection, so future
47387             requests can be satisfied without re-parsing it.
47388             </summary>
47389         </member>
47390         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpression(System.String,Microsoft.Build.Construction.ProjectImportElement,System.String,System.Boolean,System.Collections.Generic.List{Microsoft.Build.Construction.ProjectRootElement}@)">
47391             <summary>
47392             Load and parse the specified project import, which may have wildcards,
47393             into one or more ProjectRootElements.
47394             Caches the parsed import into the provided collection, so future 
47395             requests can be satisfied without re-parsing it.
47396             </summary>
47397         </member>
47398         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.IntroducesCircularity(System.String,Microsoft.Build.Construction.ProjectImportElement)">
47399             <summary>
47400             Checks if an import matches with another import in its ancestor line of imports.
47401             </summary>
47402             <param name="importFileUnescaped"> The import that is being added. </param>
47403             <param name="importElement"> The importing element for this import. </param>
47404             <returns> True, if and only if this import introduces a circularity. </returns>
47405         </member>
47406         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateCondition(Microsoft.Build.Construction.ProjectElement,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Evaluation.ParserOptions)">
47407             <summary>
47408             Evaluate a given condition
47409             </summary>
47410         </member>
47411         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.EvaluateConditionCollectingConditionedProperties(Microsoft.Build.Construction.ProjectElement,System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Evaluation.ParserOptions,Microsoft.Build.Evaluation.ProjectRootElementCache)">
47412             <summary>
47413             Evaluate a given condition, collecting conditioned properties.
47414             </summary>
47415         </member>
47416         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.GetCurrentDirectoryForConditionEvaluation(Microsoft.Build.Construction.ProjectElement)">
47417             <summary>
47418             COMPAT: Whidbey used the "current project file/targets" directory for evaluating Import and PropertyGroup conditions
47419             Orcas broke this by using the current root project file for all conditions
47420             For Dev10+, we'll fix this, and use the current project file/targets directory for Import, ImportGroup and PropertyGroup
47421             but the root project file for the rest. Inside of targets will use the root project file as always.
47422             </summary>
47423         </member>
47424         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.ThrowForImportedProjectWithSearchPathsNotFound(Microsoft.Build.Evaluation.ProjectImportPathMatch,Microsoft.Build.Construction.ProjectImportElement)">
47425             <summary>
47426             Throws InvalidProjectException because we failed to import a project which contained a ProjectImportSearchPath fall-back.
47427             <param name="searchPathMatch">MSBuildExtensionsPath reference kind found in the Project attribute of the Import element</param>
47428             <param name="importElement">The importing element for this import</param>
47429             </summary>
47430         </member>
47431         <member name="M:Microsoft.Build.Evaluation.Evaluator`4.StringifyList(System.Collections.Generic.IList{System.String})">
47432             <summary>
47433             Stringify a list of strings, like {"abc, "def", "foo"} to "abc, def and foo"
47434             or {"abc"} to "abc"
47435             <param name="strings">List of strings to stringify</param>
47436             <returns>Stringified list</returns>
47437             </summary>
47438         </member>
47439         <member name="T:Microsoft.Build.Evaluation.LoadImportsResult">
47440             <summary>
47441             Represents result of attempting to load imports (ExpandAndLoadImportsFromUnescapedImportExpression*)
47442             </summary>
47443         </member>
47444         <member name="T:Microsoft.Build.Evaluation.ExpanderOptions">
47445             <summary>
47446             Indicates to the expander what exactly it should expand.
47447             </summary>
47448         </member>
47449         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.Invalid">
47450             <summary>
47451             Invalid
47452             </summary>
47453         </member>
47454         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandCustomMetadata">
47455             <summary>
47456             Expand bare custom metadata, like %(foo), but not built-in
47457             metadata, such as %(filename) or %(identity)
47458             </summary>
47459         </member>
47460         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandBuiltInMetadata">
47461             <summary>
47462             Expand bare built-in metadata, such as %(filename) or %(identity)
47463             </summary>
47464         </member>
47465         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandMetadata">
47466             <summary>
47467             Expand all bare metadata
47468             </summary>
47469         </member>
47470         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandProperties">
47471             <summary>
47472             Expand only properties
47473             </summary>
47474         </member>
47475         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandItems">
47476             <summary>
47477             Expand only item list expressions
47478             </summary>
47479         </member>
47480         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.BreakOnNotEmpty">
47481             <summary>
47482             If the expression is going to not be an empty string, break
47483             out early
47484             </summary>
47485         </member>
47486         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandPropertiesAndItems">
47487             <summary>
47488             Expand only properties and then item lists
47489             </summary>
47490         </member>
47491         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandPropertiesAndMetadata">
47492             <summary>
47493             Expand only bare metadata and then properties
47494             </summary>
47495         </member>
47496         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandPropertiesAndCustomMetadata">
47497             <summary>
47498             Expand only bare custom metadata and then properties
47499             </summary>
47500         </member>
47501         <member name="F:Microsoft.Build.Evaluation.ExpanderOptions.ExpandAll">
47502             <summary>
47503             Expand bare metadata, then properties, then item expressions
47504             </summary>
47505         </member>
47506         <member name="T:Microsoft.Build.Evaluation.Expander`2">
47507             <summary>
47508             Expands item/property/metadata in expressions.
47509             Encapsulates the data necessary for expansion.
47510             </summary>
47511             <remarks>
47512             Requires the caller to explicitly state what they wish to expand at the point of expansion (explicitly does not have a field for ExpanderOptions). 
47513             Callers typically use a single expander in many locations, and this forces the caller to make explicit what they wish to expand at the point of expansion.
47514             
47515             Requires the caller to have previously provided the necessary material for the expansion requested.
47516             For example, if the caller requests ExpanderOptions.ExpandItems, the Expander will throw if it was not given items.
47517             </remarks>
47518             <typeparam name="P">Type of the properties used</typeparam>
47519             <typeparam name="I">Type of the items used.</typeparam>
47520         </member>
47521         <member name="F:Microsoft.Build.Evaluation.Expander`2.s_expandableChars">
47522             <summary>
47523             Those characters which indicate that an expression may contain expandable
47524             expressions
47525             </summary>
47526         </member>
47527         <member name="F:Microsoft.Build.Evaluation.Expander`2.s_invariantCompareInfo">
47528             <summary>
47529             The CultureInfo from the invariant culture. Used to avoid allocations for
47530             perfoming IndexOf etc.
47531             </summary>
47532         </member>
47533         <member name="F:Microsoft.Build.Evaluation.Expander`2._properties">
47534             <summary>
47535             Properties to draw on for expansion
47536             </summary>
47537         </member>
47538         <member name="F:Microsoft.Build.Evaluation.Expander`2._items">
47539             <summary>
47540             Items to draw on for expansion
47541             </summary>
47542         </member>
47543         <member name="F:Microsoft.Build.Evaluation.Expander`2._metadata">
47544             <summary>
47545             Metadata to draw on for expansion
47546             </summary>
47547         </member>
47548         <member name="F:Microsoft.Build.Evaluation.Expander`2._usedUninitializedProperties">
47549             <summary>
47550             Set of properties which are null during expansion
47551             </summary>
47552         </member>
47553         <member name="M:Microsoft.Build.Evaluation.Expander`2.#ctor(Microsoft.Build.Evaluation.IPropertyProvider{`0})">
47554             <summary>
47555             Creates an expander passing it some properties to use.
47556             Properties may be null.
47557             </summary>
47558         </member>
47559         <member name="M:Microsoft.Build.Evaluation.Expander`2.#ctor(Microsoft.Build.Evaluation.IPropertyProvider{`0},Microsoft.Build.Evaluation.IItemProvider{`1})">
47560             <summary>
47561             Creates an expander passing it some properties and items to use.
47562             Either or both may be null.
47563             </summary>
47564         </member>
47565         <member name="M:Microsoft.Build.Evaluation.Expander`2.#ctor(Microsoft.Build.Evaluation.IPropertyProvider{`0},Microsoft.Build.Evaluation.IItemProvider{`1},Microsoft.Build.Evaluation.IMetadataTable)">
47566             <summary>
47567             Creates an expander passing it some properties, items, and/or metadata to use.
47568             Any or all may be null.
47569             </summary>
47570         </member>
47571         <member name="P:Microsoft.Build.Evaluation.Expander`2.WarnForUninitializedProperties">
47572             <summary>
47573             Whether to warn when we set a property for the first time, after it was previously used.
47574             Default is false, unless MSBUILDWARNONUNINITIALIZEDPROPERTY is set.
47575             </summary>
47576         </member>
47577         <member name="P:Microsoft.Build.Evaluation.Expander`2.Metadata">
47578             <summary>
47579             Accessor for the metadata.
47580             Set temporarily during item metadata evaluation.
47581             </summary>
47582         </member>
47583         <member name="P:Microsoft.Build.Evaluation.Expander`2.UsedUninitializedProperties">
47584             <summary>
47585             If a property is expanded but evaluates to null then it is considered to be un-initialized.
47586             We want to keep track of these properties so that we can warn if the property gets set later on.
47587             </summary>
47588         </member>
47589         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpressionMayContainExpandableExpressions(System.String)">
47590             <summary>
47591             Tests to see if the expression may contain expandable expressions, i.e.
47592             contains $, % or @
47593             </summary>
47594         </member>
47595         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpressionContainsItemVector(System.String)">
47596             <summary>
47597             Returns true if the expression contains an item vector pattern, else returns false.
47598             Used to flag use of item expressions where they are illegal.
47599             </summary>
47600         </member>
47601         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandIntoStringAndUnescape(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47602             <summary>
47603             Expands embedded item metadata, properties, and embedded item lists (in that order) as specified in the provided options.
47604             This is the standard form. Before using the expanded value, it must be unescaped, and this does that for you.
47605             
47606             If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.        
47607             </summary>
47608         </member>
47609         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandIntoStringLeaveEscaped(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47610             <summary>
47611             Expands embedded item metadata, properties, and embedded item lists (in that order) as specified in the provided options.
47612             Use this form when the result is going to be processed further, for example by matching against the file system,
47613             so literals must be distinguished, and you promise to unescape after that.
47614             
47615             If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47616             </summary>
47617         </member>
47618         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandPropertiesLeaveTypedAndEscaped(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47619             <summary>
47620             Used only for unit tests. Expands the property expression (including any metadata expressions) and returns
47621             the result typed (i.e. not converted into a string if the result is a function return)
47622             </summary>
47623         </member>
47624         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandIntoStringListLeaveEscaped(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47625             <summary>
47626             Expands embedded item metadata, properties, and embedded item lists (in that order) as specified in the provided options,
47627             then splits on semi-colons into a list of strings.
47628             Use this form when the result is going to be processed further, for example by matching against the file system,
47629             so literals must be distinguished, and you promise to unescape after that.
47630             </summary>
47631         </member>
47632         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandIntoTaskItemsLeaveEscaped(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47633             <summary>
47634             Expands embedded item metadata, properties, and embedded item lists (in that order) as specified in the provided options
47635             and produces a list of TaskItems.
47636             If the expression is empty, returns an empty list.
47637             If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47638             </summary>
47639         </member>
47640         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandIntoItemsLeaveEscaped``1(System.String,Microsoft.Build.Evaluation.IItemFactory{`1,``0},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47641             <summary>
47642             Expands embedded item metadata, properties, and embedded item lists (in that order) as specified in the provided options
47643             and produces a list of items of the type for which it was specialized.
47644             If the expression is empty, returns an empty list.
47645             If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47646             
47647             Use this form when the result is going to be processed further, for example by matching against the file system,
47648             so literals must be distinguished, and you promise to unescape after that.
47649             </summary>
47650             <typeparam name="T">Type of items to return</typeparam>
47651         </member>
47652         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExpandSingleItemVectorExpressionIntoItems``1(System.String,Microsoft.Build.Evaluation.IItemFactory{`1,``0},Microsoft.Build.Evaluation.ExpanderOptions,System.Boolean,System.Boolean@,Microsoft.Build.Shared.IElementLocation)">
47653              <summary>
47654              This is a specialized method for the use of TargetUpToDateChecker and Evaluator.EvaluateItemXml only.
47655              
47656              Extracts the items in the given SINGLE item vector.
47657              For example, expands @(Compile->'%(foo)') to a set of items derived from the items in the "Compile" list.
47658             
47659              If there is in fact more than one vector in the expression, throws InvalidProjectFileException.
47660              
47661              If there are no item expressions in the expression (for example a literal "foo.cpp"), returns null.
47662              If expression expands to no items, returns an empty list.
47663              If item expansion is not allowed by the provided options, returns null.
47664              If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47665              
47666              If the expression is a transform, any transformations to an expression that evaluates to nothing (i.e., because
47667              an item has no value for a piece of metadata) are optionally indicated with a null entry in the list. This means 
47668              that the length of the returned list is always the same as the length of the referenced item list in the input string.
47669              That's important for any correlation the caller wants to do.
47670              
47671              If expression was a transform, 'isTransformExpression' is true, otherwise false.
47672             
47673              Item type of the items returned is determined by the IItemFactory passed in; if the IItemFactory does not 
47674              have an item type set on it, it will be given the item type of the item vector to use.
47675              </summary>
47676              <typeparam name="T">Type of the items that should be returned</typeparam>
47677         </member>
47678         <member name="M:Microsoft.Build.Evaluation.Expander`2.IsValidPropertyName(System.String)">
47679             <summary>
47680             Returns true if the supplied string contains a valid property name
47681             </summary>
47682         </member>
47683         <member name="M:Microsoft.Build.Evaluation.Expander`2.ScanForClosingParenthesis(System.String,System.Int32)">
47684             <summary>
47685             Scan for the closing bracket that matches the one we've already skipped;
47686             essentially, pushes and pops on a stack of parentheses to do this.
47687             Takes the expression and the index to start at.
47688             Returns the index of the matching parenthesis, or -1 if it was not found.
47689             </summary>
47690         </member>
47691         <member name="M:Microsoft.Build.Evaluation.Expander`2.ScanForClosingParenthesis(System.String,System.Int32,System.Boolean@,System.Boolean@)">
47692             <summary>
47693             Scan for the closing bracket that matches the one we've already skipped;
47694             essentially, pushes and pops on a stack of parentheses to do this.
47695             Takes the expression and the index to start at.
47696             Returns the index of the matching parenthesis, or -1 if it was not found.
47697             Also returns flags to indicate if a propertyfunction or registry property is likely
47698             to be found in the expression
47699             </summary>
47700         </member>
47701         <member name="M:Microsoft.Build.Evaluation.Expander`2.ScanForClosingQuote(System.Char,System.String,System.Int32)">
47702             <summary>
47703             Skip all characters until we find the matching quote character
47704             </summary>
47705         </member>
47706         <member name="M:Microsoft.Build.Evaluation.Expander`2.AddArgument(System.Collections.Generic.List{System.String},Microsoft.Build.Shared.ReuseableStringBuilder)">
47707             <summary>
47708             Add the argument in the StringBuilder to the arguments list, handling nulls
47709             appropriately
47710             </summary>
47711         </member>
47712         <member name="M:Microsoft.Build.Evaluation.Expander`2.ExtractFunctionArguments(Microsoft.Build.Shared.IElementLocation,System.String,System.String)">
47713             <summary>
47714             Extract the first level of arguments from the content.
47715             Splits the content passed in at commas.
47716             Returns an array of unexpanded arguments.
47717             If there are no arguments, returns an empty array.
47718             </summary>
47719         </member>
47720         <member name="T:Microsoft.Build.Evaluation.Expander`2.MetadataExpander">
47721             <summary>
47722             Expands bare metadata expressions, like %(Compile.WarningLevel), or unqualified, like %(Compile).
47723             </summary>
47724             <remarks>
47725             This is a private nested class, exposed only through the Expander class.
47726             That allows it to hide its private methods even from Expander.
47727             </remarks>
47728         </member>
47729         <member name="M:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.ExpandMetadataLeaveEscaped(System.String,Microsoft.Build.Evaluation.IMetadataTable,Microsoft.Build.Evaluation.ExpanderOptions)">
47730             <summary>
47731             Expands all embedded item metadata in the given string, using the bucketed items.
47732             Metadata may be qualified, like %(Compile.WarningLevel), or unqualified, like %(Compile)
47733             </summary>
47734             <param name="expression">The expression containing item metadata references</param>
47735             <param name="metadata"></param>
47736             <param name="options"></param>
47737             <returns>The string with item metadata expanded in-place, escaped.</returns>
47738         </member>
47739         <member name="T:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.MetadataMatchEvaluator">
47740             <summary>
47741             A functor that returns the value of the metadata in the match
47742             that is contained in the metadata dictionary it was created with.
47743             </summary>
47744         </member>
47745         <member name="F:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.MetadataMatchEvaluator._metadata">
47746             <summary>
47747             Source of the metadata
47748             </summary>
47749         </member>
47750         <member name="F:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.MetadataMatchEvaluator._options">
47751             <summary>
47752             Whether to expand built-in metadata, custom metadata, or both kinds.
47753             </summary>
47754         </member>
47755         <member name="M:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.MetadataMatchEvaluator.#ctor(Microsoft.Build.Evaluation.IMetadataTable,Microsoft.Build.Evaluation.ExpanderOptions)">
47756             <summary>
47757             Constructor taking a source of metadata
47758             </summary>
47759         </member>
47760         <member name="M:Microsoft.Build.Evaluation.Expander`2.MetadataExpander.MetadataMatchEvaluator.ExpandSingleMetadata(System.Text.RegularExpressions.Match)">
47761             <summary>
47762             Expands a single item metadata, which may be qualified with an item type.
47763             </summary>
47764         </member>
47765         <member name="T:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1">
47766             <summary>
47767             Expands property expressions, like $(Configuration) and $(Registry:HKEY_LOCAL_MACHINE\Software\Vendor\Tools@TaskLocation)
47768             </summary>
47769             <remarks>
47770             This is a private nested class, exposed only through the Expander class.
47771             That allows it to hide its private methods even from Expander.
47772             </remarks>
47773             <typeparam name="T">Type of the properties used to expand the expression</typeparam>
47774         </member>
47775         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ExpandPropertiesLeaveEscaped(System.String,Microsoft.Build.Evaluation.IPropertyProvider{`2},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
47776              <summary>
47777              This method takes a string which may contain any number of
47778              "$(propertyname)" tags in it.  It replaces all those tags with
47779              the actual property values, and returns a new string.  For example,
47780             
47781                  string processedString =
47782                      propertyBag.ExpandProperties("Value of NoLogo is $(NoLogo).");
47783             
47784              This code might produce:
47785             
47786                  processedString = "Value of NoLogo is true."
47787             
47788              If the sourceString contains an embedded property which doesn't
47789              have a value, then we replace that tag with an empty string.
47790             
47791              This method leaves the result escaped.  Callers may need to unescape on their own as appropriate.
47792              </summary>
47793         </member>
47794         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ExpandPropertiesLeaveTypedAndEscaped(System.String,Microsoft.Build.Evaluation.IPropertyProvider{`2},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
47795              <summary>
47796              This method takes a string which may contain any number of
47797              "$(propertyname)" tags in it.  It replaces all those tags with
47798              the actual property values, and returns a new string.  For example,
47799             
47800                  string processedString =
47801                      propertyBag.ExpandProperties("Value of NoLogo is $(NoLogo).");
47802             
47803              This code might produce:
47804             
47805                  processedString = "Value of NoLogo is true."
47806             
47807              If the sourceString contains an embedded property which doesn't
47808              have a value, then we replace that tag with an empty string.
47809             
47810              This method leaves the result typed and escaped.  Callers may need to convert to string, and unescape on their own as appropriate.
47811              </summary>
47812         </member>
47813         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ExpandPropertyBody(System.String,System.Object,Microsoft.Build.Evaluation.IPropertyProvider{`2},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
47814             <summary>
47815             Expand the body of the property, including any functions that it may contain
47816             </summary>
47817         </member>
47818         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ConvertToString(System.Object)">
47819             <summary>
47820             Convert the object into an MSBuild friendly string
47821             Arrays are supported.
47822             Will not return NULL
47823             </summary>
47824         </member>
47825         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.LookupProperty(Microsoft.Build.Evaluation.IPropertyProvider{`2},System.String,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
47826             <summary>
47827             Look up a simple property reference by the name of the property, e.g. "Foo" when expanding $(Foo)
47828             </summary>
47829         </member>
47830         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.LookupProperty(Microsoft.Build.Evaluation.IPropertyProvider{`2},System.String,System.Int32,System.Int32,Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
47831             <summary>
47832             Look up a simple property reference by the name of the property, e.g. "Foo" when expanding $(Foo)
47833             </summary>
47834         </member>
47835         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ExpandMSBuildThisFileProperty(System.String,Microsoft.Build.Shared.IElementLocation)">
47836             <summary>
47837             If the property name provided is one of the special
47838             per file properties named "MSBuildThisFileXXXX" then returns the value of that property.
47839             If the location provided does not have a path (eg., if it comes from a file that has
47840             never been saved) then returns empty string.
47841             If the property name is not one of those properties, returns empty string.
47842             </summary>
47843         </member>
47844         <member name="M:Microsoft.Build.Evaluation.Expander`2.PropertyExpander`1.ExpandRegistryValue(System.String,Microsoft.Build.Shared.IElementLocation)">
47845             <summary>
47846             Given a string like "Registry:HKEY_LOCAL_MACHINE\Software\Vendor\Tools@TaskLocation", return the value at that location
47847             in the registry. If the value isn't found, returns String.Empty.
47848             Properties may refer to a registry location by using the syntax for example
47849             "$(Registry:HKEY_LOCAL_MACHINE\Software\Vendor\Tools@TaskLocation)", where "HKEY_LOCAL_MACHINE\Software\Vendor\Tools" is the key and
47850             "TaskLocation" is the name of the value.  The name of the value and the preceding "@" may be omitted if
47851             the default value is desired.
47852             </summary>
47853         </member>
47854         <member name="T:Microsoft.Build.Evaluation.Expander`2.ItemExpander">
47855              <summary>
47856              Expands item expressions, like @(Compile), possibly with transforms and/or separators.
47857             
47858              Item vectors are composed of a name, an optional transform, and an optional separator i.e.
47859              
47860                  @(&lt;name&gt;->'&lt;transform&gt;','&lt;separator&gt;')
47861                  
47862              If a separator is not specified it defaults to a semi-colon. The transform expression is also optional, but if
47863              specified, it allows each item in the vector to have its item-spec converted to a different form. The transform
47864              expression can reference any custom metadata defined on the item, as well as the pre-defined item-spec modifiers.
47865              
47866              NOTE:
47867              1) white space between &lt;name&gt;, &lt;transform&gt; and &lt;separator&gt; is ignored
47868                 i.e. @(&lt;name&gt;, '&lt;separator&gt;') is valid
47869              2) the separator is not restricted to be a single character, it can be a string
47870              3) the separator can be an empty string i.e. @(&lt;name&gt;,'')
47871              4) specifying an empty transform is NOT the same as specifying no transform -- the former will reduce all item-specs
47872                 to empty strings
47873             
47874              if @(files) is a vector for the files a.txt and b.txt, then:
47875              
47876                  "my list: @(files)"                                 expands to string     "my list: a.txt;b.txt"
47877              
47878                  "my list: @(files,' ')"                             expands to string      "my list: a.txt b.txt"
47879              
47880                  "my list: @(files, '')"                             expands to string      "my list: a.txtb.txt"
47881              
47882                  "my list: @(files, '; ')"                           expands to string      "my list: a.txt; b.txt"
47883              
47884                  "my list: @(files->'%(Filename)')"                  expands to string      "my list: a;b"
47885              
47886                  "my list: @(files -> 'temp\%(Filename).xml', ' ')   expands to string      "my list: temp\a.xml temp\b.xml"
47887              
47888                  "my list: @(files->'')                              expands to string      "my list: ;"
47889              </summary>
47890              <remarks>
47891              This is a private nested class, exposed only through the Expander class.
47892              That allows it to hide its private methods even from Expander.
47893              </remarks>
47894         </member>
47895         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.Transform``1(Microsoft.Build.Evaluation.Expander{`0,`1},System.Boolean,System.Collections.Generic.Stack{Microsoft.Build.Evaluation.Expander{`0,`1}.ItemExpander.TransformFunction{``0}},System.Collections.Generic.IEnumerable{System.Tuple{System.String,``0}})">
47896             <summary>
47897             Execute the list of transform functions
47898             </summary>
47899             <typeparam name="S">class, IItem</typeparam>
47900         </member>
47901         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.ExpandSingleItemVectorExpressionIntoItems``2(Microsoft.Build.Evaluation.Expander{`0,`1},System.String,Microsoft.Build.Evaluation.IItemProvider{``0},Microsoft.Build.Evaluation.IItemFactory{``0,``1},Microsoft.Build.Evaluation.ExpanderOptions,System.Boolean,System.Boolean@,Microsoft.Build.Shared.IElementLocation)">
47902              <summary>
47903              Expands any item vector in the expression into items.
47904              
47905              For example, expands @(Compile->'%(foo)') to a set of items derived from the items in the "Compile" list.
47906              
47907              If there is no item vector in the expression (for example a literal "foo.cpp"), returns null.
47908              If the item vector expression expands to no items, returns an empty list.
47909              If item expansion is not allowed by the provided options, returns null.
47910              If there is an item vector but concatenated with something else, throws InvalidProjectFileException.
47911              If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47912              
47913              If the expression is a transform, any transformations to an expression that evaluates to nothing (i.e., because
47914              an item has no value for a piece of metadata) are optionally indicated with a null entry in the list. This means 
47915              that the length of the returned list is always the same as the length of the referenced item list in the input string.
47916              That's important for any correlation the caller wants to do.
47917              
47918              If expression was a transform, 'isTransformExpression' is true, otherwise false.
47919             
47920              Item type of the items returned is determined by the IItemFactory passed in; if the IItemFactory does not 
47921              have an item type set on it, it will be given the item type of the item vector to use.
47922              </summary>
47923              <typeparam name="S">Type of the items provided by the item source used for expansion</typeparam>
47924              <typeparam name="T">Type of the items that should be returned</typeparam>
47925         </member>
47926         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.ExpandExpressionCapture``1(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture,Microsoft.Build.Evaluation.IItemProvider{``0},Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.ExpanderOptions,System.Boolean,System.Boolean@,System.Collections.Generic.IList{System.Tuple{System.String,``0}}@)">
47927             <summary>
47928             Expands an expression capture into a list of items
47929             If the capture uses a separator, then all the items are concatenated into one string using that separator.
47930             
47931             Returns true if ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and so it broke out early.
47932             </summary>
47933             <param name="isTransformExpression"></param>
47934             <param name="itemsFromCapture">
47935             List of items.
47936             
47937             Item1 represents the item string, escaped
47938             Item2 represents the original item.
47939             
47940             Item1 differs from Item2's string when it is coming from a transform
47941             
47942             </param>
47943             <param name="expander">The expander whose state will be used to expand any transforms</param>
47944             <param name="expressionCapture">The <see cref="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.ExpandSingleItemVectorExpressionIntoExpressionCapture(System.String,Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)"/> representing the structure of an item expression</param>
47945             <param name="evaluatedItems"><see cref="T:Microsoft.Build.Evaluation.IItemProvider`1"/> to provide the inital items (which may get subsequently transformed, if <paramref name="expressionCapture"/> is a transform expression)></param>
47946             <param name="elementLocation">Location of the xml element containing the <paramref name="expressionCapture"/></param>
47947             <param name="options">expander options</param>
47948             <param name="includeNullEntries">Wether to include items that evaluated to empty / null</param>
47949         </member>
47950         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.ExpandItemVectorsIntoString``1(Microsoft.Build.Evaluation.Expander{`0,`1},System.String,Microsoft.Build.Evaluation.IItemProvider{``0},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
47951             <summary>
47952             Expands all item vectors embedded in the given expression into a single string.
47953             If the expression is empty, returns empty string.
47954             If ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and it broke out early, returns null. Otherwise the result can be trusted.
47955             </summary>
47956             <typeparam name="T">Type of the items provided</typeparam>
47957         </member>
47958         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.PrepareTransformStackFromMatch``1(Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture)">
47959             <summary>
47960             Prepare the stack of transforms that will be executed on a given set of items
47961             </summary>
47962             <typeparam name="S">class, IItem</typeparam>
47963         </member>
47964         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.ExpandExpressionCaptureIntoStringBuilder``1(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Evaluation.ExpressionShredder.ItemExpressionCapture,Microsoft.Build.Evaluation.IItemProvider{``0},Microsoft.Build.Shared.IElementLocation,Microsoft.Build.Shared.ReuseableStringBuilder,Microsoft.Build.Evaluation.ExpanderOptions)">
47965             <summary>
47966             Expand the match provided into a string, and append that to the provided string builder.
47967             Returns true if ExpanderOptions.BreakOnNotEmpty was passed, expression was going to be non-empty, and so it broke out early.
47968             </summary>
47969             <typeparam name="S">Type of source items</typeparam>
47970         </member>
47971         <member name="T:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1">
47972             <summary>
47973             The set of functions that called during an item transformation, e.g. @(CLCompile->ContainsMetadata('MetaName', 'metaValue'))
47974             </summary>
47975             <typeparam name="S">class, IItem</typeparam>
47976         </member>
47977         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.s_transformFunctionDelegateCache">
47978             <summary>
47979             A cache of previously created item function delegates
47980             </summary>
47981         </member>
47982         <member name="T:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.ItemTransformFunction">
47983             <summary>
47984             Delegate that represents the signature of all item transformation functions
47985             This is used to support calling the functions by name
47986             </summary>
47987         </member>
47988         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.GetItemTransformFunction(Microsoft.Build.Shared.IElementLocation,System.String,System.Type)">
47989             <summary>
47990             Get a delegate to the given item transformation function by supplying the name and the
47991             Item type that should be used
47992             </summary>
47993         </member>
47994         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.GetItemTupleEnumerator(System.Collections.Generic.IEnumerable{`2})">
47995             <summary>
47996             Create an enumerator from a base IEnumerable of items into an enumerable
47997             of transformation result which includes the new itemspec and the base item
47998             </summary>
47999         </member>
48000         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.Count(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48001             <summary>
48002             Intrinsic function that returns the number of items in the list
48003             </summary>
48004         </member>
48005         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.ItemSpecModifierFunction(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48006             <summary>
48007             Intrinsic function that returns the specified built-in modifer value of the items in itemsOfType
48008             Tuple is {current item include, item under transformation}
48009             </summary>
48010         </member>
48011         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.DirectoryName(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48012             <summary>
48013             Intrinsic function that returns the DirectoryName of the items in itemsOfType
48014             UNDONE: This can be removed in favor of a built-in %(DirectoryName) metadata in future.
48015             </summary>
48016         </member>
48017         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.Metadata(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48018             <summary>
48019             Intrinsic function that returns the contents of the metadata in specified in argument[0]
48020             </summary>
48021         </member>
48022         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.DistinctWithCase(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48023             <summary>
48024             Intrinsic function that returns only the items from itemsOfType that have distinct Item1 in the Tuple
48025             Using a case sensitive comparison
48026             </summary>
48027         </member>
48028         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.Distinct(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48029             <summary>
48030             Intrinsic function that returns only the items from itemsOfType that have distinct Item1 in the Tuple
48031             Using a case insensitive comparison
48032             </summary>
48033         </member>
48034         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.DistinctWithComparer(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[],System.StringComparer)">
48035             <summary>
48036             Intrinsic function that returns only the items from itemsOfType that have distinct Item1 in the Tuple
48037             Using a case insensitive comparison
48038             </summary>
48039         </member>
48040         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.Reverse(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48041             <summary>
48042             Intrinsic function reverses the item list.
48043             </summary>
48044         </member>
48045         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.ExpandQuotedExpressionFunction(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48046             <summary>
48047             Intrinsic function that transforms expressions like the %(foo) in @(Compile->'%(foo)')
48048             </summary>
48049         </member>
48050         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.ExecuteStringFunction(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48051             <summary>
48052             Intrinsic function that transforms expressions by invoking methods of System.String on the itemspec
48053             of the item in the pipeline
48054             </summary>
48055         </member>
48056         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.ClearMetadata(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48057             <summary>
48058             Intrinsic function that returns the items from itemsOfType with their metadata cleared, i.e. only the itemspec is retained
48059             </summary>
48060         </member>
48061         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.HasMetadata(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48062             <summary>
48063             Intrinsic function that returns only those items that have a not-blank value for the metadata specified
48064             Using a case insensitive comparison
48065             </summary>
48066         </member>
48067         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.WithMetadataValue(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48068             <summary>
48069             Intrinsic function that returns only those items have the given metadata value
48070             Using a case insensitive comparison
48071             </summary>
48072         </member>
48073         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.IntrinsicItemFunctions`1.AnyHaveMetadataValue(Microsoft.Build.Evaluation.Expander{`0,`1},Microsoft.Build.Shared.IElementLocation,System.Boolean,System.String,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}},System.String[])">
48074             <summary>
48075             Intrinsic function that returns a boolean to indicate if any of the items have the given metadata value
48076             Using a case insensitive comparison
48077             </summary>
48078         </member>
48079         <member name="T:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1">
48080             <summary>
48081             Represents all the components of a transform function, including the ability to execute it 
48082             </summary>
48083             <typeparam name="S">class, IItem</typeparam>
48084         </member>
48085         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1._transform">
48086             <summary>
48087             The delegate that points to the transform function
48088             </summary>
48089         </member>
48090         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1._arguments">
48091             <summary>
48092             Arguments to pass to the transform function as parsed out of the project file
48093             </summary>
48094         </member>
48095         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1._elementLocation">
48096             <summary>
48097             The element location of the transform expression
48098             </summary>
48099         </member>
48100         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1._functionName">
48101             <summary>
48102             The name of the function that this class will call
48103             </summary>
48104         </member>
48105         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1.#ctor(Microsoft.Build.Shared.IElementLocation,System.String,Microsoft.Build.Evaluation.Expander{`0,`1}.ItemExpander.IntrinsicItemFunctions{`2}.ItemTransformFunction,System.String[])">
48106             <summary>
48107             TransformFunction constructor
48108             </summary>
48109         </member>
48110         <member name="P:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1.Arguments">
48111             <summary>
48112             Arguments to pass to the transform function as parsed out of the project file
48113             </summary>
48114         </member>
48115         <member name="P:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1.ElementLocation">
48116             <summary>
48117             The element location of the transform expression
48118             </summary>
48119         </member>
48120         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.TransformFunction`1.Execute(Microsoft.Build.Evaluation.Expander{`0,`1},System.Boolean,System.Collections.Generic.IEnumerable{System.Tuple{System.String,`2}})">
48121             <summary>
48122             Execute this transform function with the arguments contained within this TransformFunction instance
48123             </summary>
48124         </member>
48125         <member name="T:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator">
48126             <summary>
48127             A functor that returns the value of the metadata in the match
48128             that is on the item it was created with.
48129             </summary>
48130         </member>
48131         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator._itemSpec">
48132             <summary>
48133             The current ItemSpec of the item being matched
48134             </summary>
48135         </member>
48136         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator._sourceOfMetadata">
48137             <summary>
48138             Item used as the source of metadata
48139             </summary>
48140         </member>
48141         <member name="F:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator._elementLocation">
48142             <summary>
48143             Location of the match
48144             </summary>
48145         </member>
48146         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator.#ctor(System.String,Microsoft.Build.Evaluation.IItem,Microsoft.Build.Shared.IElementLocation)">
48147             <summary>
48148             Constructor
48149             </summary>
48150         </member>
48151         <member name="M:Microsoft.Build.Evaluation.Expander`2.ItemExpander.MetadataMatchEvaluator.GetMetadataValueFromMatch(System.Text.RegularExpressions.Match)">
48152             <summary>
48153             Expands the metadata in the match provided into a string result.
48154             The match is expected to be the content of a transform.
48155             For example, representing "%(Filename.obj)" in the original expression "@(Compile->'%(Filename.obj)')"
48156             </summary>
48157         </member>
48158         <member name="T:Microsoft.Build.Evaluation.Expander`2.RegularExpressions">
48159             <summary>
48160             Regular expressions used by the expander.
48161             The expander currently uses regular expressions rather than a parser to do its work.
48162             </summary>
48163         </member>
48164         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemMetadataPattern">
48165             <summary>
48166             Regular expression used to match item metadata references embedded in strings.
48167             For example, %(Compile.DependsOn) or %(DependsOn).
48168             </summary> 
48169         </member>
48170         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.NameGroup">
48171             <summary>
48172             Name of the group matching the "name" of a metadatum.
48173             </summary>
48174         </member>
48175         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemSpecificationGroup">
48176             <summary>
48177             Name of the group matching the prefix on a metadata expression, for example "Compile." in "%(Compile.Object)"
48178             </summary>
48179         </member>
48180         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemTypeGroup">
48181             <summary>
48182             Name of the group matching the item type in an item expression or metadata expression.
48183             </summary>
48184         </member>
48185         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.NonTransformItemMetadataPattern">
48186             <summary>
48187             regular expression used to match item metadata references outside of item vector transforms
48188             </summary>
48189             <remarks>PERF WARNING: this Regex is complex and tends to run slowly</remarks>
48190         </member>
48191         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemMetadataSpecification">
48192             <summary>
48193             Complete description of an item metadata reference, including the optional qualifying item type.
48194             For example, %(Compile.DependsOn) or %(DependsOn).
48195             </summary> 
48196         </member>
48197         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemVectorWithTransformLHS">
48198             <summary>
48199             description of an item vector with a transform, left hand side 
48200             </summary> 
48201         </member>
48202         <member name="F:Microsoft.Build.Evaluation.Expander`2.RegularExpressions.ItemVectorWithTransformRHS">
48203             <summary>
48204             description of an item vector with a transform, right hand side 
48205             </summary> 
48206         </member>
48207         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.ReceiverType">
48208             <summary>
48209             The type of this function's receiver
48210             </summary>
48211         </member>
48212         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.Name">
48213             <summary>
48214             The name of the function
48215             </summary>
48216         </member>
48217         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.Arguments">
48218             <summary>
48219             The arguments for the function
48220             </summary>
48221         </member>
48222         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.Expression">
48223             <summary>
48224             The expression that this function is part of
48225             </summary>
48226         </member>
48227         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.Receiver">
48228             <summary>
48229             The property name that this function is applied on
48230             </summary>
48231         </member>
48232         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.BindingFlags">
48233             <summary>
48234             The binding flags that will be used during invocation of this function
48235             </summary>
48236         </member>
48237         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.Remainder">
48238             <summary>
48239             The remainder of the body once the function and arguments have been extracted
48240             </summary>
48241         </member>
48242         <member name="P:Microsoft.Build.Evaluation.Expander`2.FunctionBuilder`1.UsedUninitializedProperties">
48243             <summary>
48244             List of properties which have been used but have not been initialized yet.
48245             </summary>
48246         </member>
48247         <member name="T:Microsoft.Build.Evaluation.Expander`2.Function`1">
48248             <summary>
48249             This class represents the function as extracted from an expression
48250             It is also responsible for executing the function
48251             </summary>
48252             <typeparam name="T">Type of the properties used to expand the expression</typeparam>
48253         </member>
48254         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._receiverType">
48255             <summary>
48256             The type of this function's receiver
48257             </summary>
48258         </member>
48259         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._methodMethodName">
48260             <summary>
48261             The name of the function
48262             </summary>
48263         </member>
48264         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._arguments">
48265             <summary>
48266             The arguments for the function
48267             </summary>
48268         </member>
48269         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._expression">
48270             <summary>
48271             The expression that this function is part of
48272             </summary>
48273         </member>
48274         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._receiver">
48275             <summary>
48276             The property name that this function is applied on
48277             </summary>
48278         </member>
48279         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._bindingFlags">
48280             <summary>
48281             The binding flags that will be used during invocation of this function
48282             </summary>
48283         </member>
48284         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._remainder">
48285             <summary>
48286             The remainder of the body once the function and arguments have been extracted
48287             </summary>
48288         </member>
48289         <member name="F:Microsoft.Build.Evaluation.Expander`2.Function`1._usedUninitializedProperties">
48290             <summary>
48291             List of properties which have been used but have not been initialized yet.
48292             </summary>
48293         </member>
48294         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.#ctor(System.Type,System.String,System.String,System.String,System.String[],System.Reflection.BindingFlags,System.String,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
48295             <summary>
48296             Construct a function that will be executed during property evaluation
48297             </summary>
48298         </member>
48299         <member name="P:Microsoft.Build.Evaluation.Expander`2.Function`1.Receiver">
48300             <summary>
48301             Part of the extraction may result in the name of the property
48302             This accessor is used by the Expander
48303             Examples of expression root:
48304                 [System.Diagnostics.Process]::Start
48305                 SomeMSBuildProperty
48306             </summary>
48307         </member>
48308         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.ExtractPropertyFunction(System.String,Microsoft.Build.Shared.IElementLocation,System.Object,Microsoft.Build.Evaluation.UsedUninitializedProperties)">
48309             <summary>
48310             Extract the function details from the given property function expression
48311             </summary>
48312         </member>
48313         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.Execute(System.Object,Microsoft.Build.Evaluation.IPropertyProvider{`2},Microsoft.Build.Evaluation.ExpanderOptions,Microsoft.Build.Shared.IElementLocation)">
48314             <summary>
48315             Execute the function on the given instance
48316             </summary>
48317         </member>
48318         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.GetTypeForStaticMethod(System.String,System.String)">
48319             <summary>
48320             Given a type name and method name, try to resolve the type.
48321             </summary>
48322             <param name="typeName">May be full name or assembly qualified name</param>
48323             <param name="simpleMethodName">simple name of the method</param>
48324             <returns></returns>
48325         </member>
48326         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.GetTypeFromAssemblyUsingNamespace(System.String)">
48327             <summary>
48328             Gets the specified type using the namespace to guess the assembly that its in
48329             </summary>
48330         </member>
48331         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.GetTypeFromAssembly(System.String,System.String)">
48332             <summary>
48333             Get the specified type from the assembly partial name supplied
48334             </summary>
48335         </member>
48336         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.ConstructIndexerFunction(System.String,Microsoft.Build.Shared.IElementLocation,System.Object,System.Int32,System.Int32,Microsoft.Build.Evaluation.Expander{`0,`1}.FunctionBuilder{`2}@)">
48337             <summary>
48338             Extracts the name, arguments, binding flags, and invocation type for an indexer
48339             Also extracts the remainder of the expression that is not part of this indexer
48340             </summary>
48341         </member>
48342         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.ConstructFunction(Microsoft.Build.Shared.IElementLocation,System.String,System.Int32,System.Int32,Microsoft.Build.Evaluation.Expander{`0,`1}.FunctionBuilder{`2}@)">
48343             <summary>
48344             Extracts the name, arguments, binding flags, and invocation type for a static or instance function.
48345             Also extracts the remainder of the expression that is not part of this function
48346             </summary>
48347         </member>
48348         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.CoerceArguments(System.Object[],System.Reflection.ParameterInfo[])">
48349             <summary>
48350             Coerce the arguments according to the parameter types
48351             Will only return null if the coercion didn't work due to an InvalidCastException
48352             </summary>
48353         </member>
48354         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.GenerateStringOfMethodExecuted(System.String,System.Object,System.String,System.Object[])">
48355             <summary>
48356             Make an attempt to create a string showing what we were trying to execute when we failed.
48357             This will show any intermediate evaluation which may help the user figure out what happened.
48358             </summary>
48359         </member>
48360         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.IsStaticMethodAvailable(System.Type,System.String)">
48361             <summary>
48362             Check the property function whitelist whether this method is available.
48363             </summary>
48364         </member>
48365         <member name="M:Microsoft.Build.Evaluation.Expander`2.Function`1.LateBindExecute(System.Exception,System.Reflection.BindingFlags,System.Object,System.Object[],System.Boolean)">
48366             <summary>
48367             Construct and instance of objectType based on the constructor or method arguments provided.
48368             Arguments must never be null.
48369             </summary>
48370         </member>
48371         <member name="T:Microsoft.Build.Evaluation.UsedUninitializedProperties">
48372             <summary>
48373             This class wraps information about properties which have been used before they are initialized 
48374             </summary>
48375         </member>
48376         <member name="M:Microsoft.Build.Evaluation.UsedUninitializedProperties.#ctor">
48377             <summary>
48378             This class wraps information about properties which have been used before they are initialized
48379             </summary>
48380         </member>
48381         <member name="P:Microsoft.Build.Evaluation.UsedUninitializedProperties.Properties">
48382             <summary>
48383             Hash set of properties which have been used before being initialized
48384             </summary>
48385         </member>
48386         <member name="P:Microsoft.Build.Evaluation.UsedUninitializedProperties.Warn">
48387             <summary>
48388              Are we currently supposed to warn if we used an uninitialized property.
48389             </summary>
48390         </member>
48391         <member name="P:Microsoft.Build.Evaluation.UsedUninitializedProperties.CurrentlyEvaluatingPropertyElementName">
48392             <summary>
48393              What is the currently evaluating property element, this is so that we do not add a un initialized property if we are evaluating that property
48394             </summary>
48395         </member>
48396         <member name="T:Microsoft.Build.Evaluation.ToolsetProvider">
48397             <summary>
48398             Class which provides access to toolsets.
48399             </summary>
48400         </member>
48401         <member name="F:Microsoft.Build.Evaluation.ToolsetProvider._toolsets">
48402             <summary>
48403             A mapping of tools versions to Toolsets, which contain the public Toolsets.
48404             This is the collection we use internally.
48405             </summary>
48406         </member>
48407         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.#ctor(System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
48408             <summary>
48409             Constructor which will load toolsets from the specified locations.
48410             </summary>
48411         </member>
48412         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Build.Evaluation.Toolset})">
48413             <summary>
48414             Constructor from an existing collection of toolsets.
48415             </summary>
48416         </member>
48417         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.#ctor(Microsoft.Build.BackEnd.INodePacketTranslator)">
48418             <summary>
48419             Private constructor for deserialization
48420             </summary>
48421         </member>
48422         <member name="P:Microsoft.Build.Evaluation.ToolsetProvider.Toolsets">
48423             <summary>
48424             Retrieves the toolsets.
48425             </summary>
48426             <comments>
48427             ValueCollection is already read-only. 
48428             </comments>
48429         </member>
48430         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.GetToolset(System.String)">
48431             <summary>
48432             Gets the specified toolset.
48433             </summary>
48434         </member>
48435         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.Microsoft#Build#BackEnd#INodePacketTranslatable#Translate(Microsoft.Build.BackEnd.INodePacketTranslator)">
48436             <summary>
48437             Translates to and from binary form.
48438             </summary>
48439         </member>
48440         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.FactoryForDeserialization(Microsoft.Build.BackEnd.INodePacketTranslator)">
48441             <summary>
48442             Factory for deserialization.
48443             </summary>
48444         </member>
48445         <member name="M:Microsoft.Build.Evaluation.ToolsetProvider.InitializeToolsetCollection(System.String,Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Collections.PropertyDictionary{Microsoft.Build.Execution.ProjectPropertyInstance},Microsoft.Build.Evaluation.ToolsetDefinitionLocations)">
48446             <summary>
48447             Populate Toolsets with a dictionary of (toolset version, Toolset) 
48448             using information from the registry and config file, if any.  
48449             </summary>
48450         </member>
48451         <member name="T:Microsoft.Build.Exceptions.BuildAbortedException">
48452             <summary>
48453             An exception representing the case where the build was aborted by request, as opposed to being
48454             unceremoniously shut down due to another kind of error exception.
48455             </summary>
48456             <remarks>
48457             This is public because it may be returned in the Exceptions collection of a BuildResult.
48458             If you add fields to this class, add a custom serialization constructor and override GetObjectData().
48459             </remarks>
48460         </member>
48461         <member name="M:Microsoft.Build.Exceptions.BuildAbortedException.#ctor">
48462             <summary>
48463             Constructs a standard BuildAbortedException.
48464             </summary>
48465         </member>
48466         <member name="M:Microsoft.Build.Exceptions.BuildAbortedException.#ctor(System.String)">
48467             <summary>
48468             Constructs a BuildAbortedException with an additional message attached.
48469             </summary>
48470         </member>
48471         <member name="M:Microsoft.Build.Exceptions.BuildAbortedException.#ctor(System.String,System.Exception)">
48472             <summary>
48473             Constructs a BuildAbortedException with an additional message attached and an inner exception.
48474             </summary>
48475         </member>
48476         <member name="M:Microsoft.Build.Exceptions.BuildAbortedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48477             <summary>
48478             Protected constructor used for (de)serialization. 
48479             If we ever add new members to this class, we'll need to update this.
48480             </summary>
48481         </member>
48482         <member name="P:Microsoft.Build.Exceptions.BuildAbortedException.ErrorCode">
48483             <summary>
48484             Gets the error code (if any) associated with the exception message.
48485             </summary>
48486             <value>Error code string, or null.</value>
48487         </member>
48488         <member name="M:Microsoft.Build.Exceptions.BuildAbortedException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48489             <summary>
48490             ISerializable method which we must override since Exception implements this interface
48491             If we ever add new members to this class, we'll need to update this.
48492             </summary>
48493         </member>
48494         <member name="T:Microsoft.Build.Exceptions.InternalLoggerException">
48495             <summary>
48496             This exception is used to wrap an unhandled exception from a logger. This exception aborts the build, and it can only be
48497             thrown by the MSBuild engine.
48498             </summary>
48499             <remarks>
48500             WARNING: marking a type [Serializable] without implementing ISerializable imposes a serialization contract -- it is a
48501             promise to never change the type's fields i.e. the type is immutable; adding new fields in the next version of the type
48502             without following certain special FX guidelines, can break both forward and backward compatibility
48503             </remarks>
48504         </member>
48505         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.#ctor">
48506             <summary>
48507             Default constructor.
48508             </summary>
48509             <remarks>
48510             This constructor only exists to satisfy .NET coding guidelines. Use the rich constructor instead.
48511             </remarks>
48512             <exception cref="T:System.InvalidOperationException"></exception>
48513         </member>
48514         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.#ctor(System.String)">
48515             <summary>
48516             Creates an instance of this exception using the specified error message.
48517             </summary>
48518             <remarks>
48519             This constructor only exists to satisfy .NET coding guidelines. Use the rich constructor instead.
48520             </remarks>
48521             <param name="message"></param>
48522             <exception cref="T:System.InvalidOperationException"></exception>
48523         </member>
48524         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.#ctor(System.String,System.Exception)">
48525             <summary>
48526             Creates an instance of this exception using the specified error message and inner exception.
48527             </summary>
48528             <remarks>
48529             This constructor only exists to satisfy .NET coding guidelines. Use the rich constructor instead.
48530             </remarks>
48531             <param name="message"></param>
48532             <param name="innerException"></param>
48533             <exception cref="T:System.InvalidOperationException"></exception>
48534         </member>
48535         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.#ctor(System.String,System.Exception,Microsoft.Build.Framework.BuildEventArgs,System.String,System.String,System.Boolean)">
48536             <summary>
48537             Creates an instance of this exception using rich error information.
48538             Internal for unit testing
48539             </summary>
48540             <remarks>This is the only usable constructor.</remarks>
48541             <param name="message"></param>
48542             <param name="innerException"></param>
48543             <param name="e">Can be null.</param>
48544             <param name="errorCode"></param>
48545             <param name="helpKeyword"></param>
48546             <param name="initializationException"></param>
48547         </member>
48548         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48549             <summary>
48550             Protected constructor used for (de)serialization. 
48551             If we ever add new members to this class, we'll need to update this.
48552             </summary>
48553             <param name="info"></param>
48554             <param name="context"></param>
48555         </member>
48556         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48557             <summary>
48558             ISerializable method which we must override since Exception implements this interface
48559             If we ever add new members to this class, we'll need to update this.
48560             </summary>
48561             <param name="info"></param>
48562             <param name="context"></param>
48563         </member>
48564         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.SetDefaultsBeforeSerialization(System.Runtime.Serialization.StreamingContext)">
48565             <summary>
48566             Provide default values for optional members
48567             </summary>
48568         </member>
48569         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.SetValueAfterDeserialization(System.Runtime.Serialization.StreamingContext)">
48570             <summary>
48571             Don't actually have anything to do in the method, but the method is required when implementing an optional field
48572             </summary>
48573         </member>
48574         <member name="P:Microsoft.Build.Exceptions.InternalLoggerException.BuildEventArgs">
48575             <summary>
48576             Gets the details of the build event (if any) that was being logged.
48577             </summary>
48578             <value>The build event args, or null.</value>
48579         </member>
48580         <member name="P:Microsoft.Build.Exceptions.InternalLoggerException.ErrorCode">
48581             <summary>
48582             Gets the error code associated with this exception's message (not the inner exception).
48583             </summary>
48584             <value>The error code string.</value>
48585         </member>
48586         <member name="P:Microsoft.Build.Exceptions.InternalLoggerException.HelpKeyword">
48587             <summary>
48588             Gets the F1-help keyword associated with this error, for the host IDE.
48589             </summary>
48590             <value>The keyword string.</value>
48591         </member>
48592         <member name="P:Microsoft.Build.Exceptions.InternalLoggerException.InitializationException">
48593             <summary>
48594             True if the exception occurred during logger initialization
48595             </summary>
48596         </member>
48597         <member name="M:Microsoft.Build.Exceptions.InternalLoggerException.Throw(System.Exception,Microsoft.Build.Framework.BuildEventArgs,System.String,System.Boolean,System.String[])">
48598             <summary>
48599             Throws an instance of this exception using rich error information.
48600             </summary>
48601             <param name="innerException"></param>
48602             <param name="e">Can be null.</param>
48603             <param name="messageResourceName"></param>
48604             <param name="initializationException"></param>
48605             <param name="messageArgs"></param>
48606         </member>
48607         <member name="T:Microsoft.Build.Exceptions.InvalidProjectFileException">
48608             <summary>
48609             This exception is thrown whenever there is a problem with the user's XML project file. The problem might be semantic or
48610             syntactical. The latter would be of a type typically caught by XSD validation (if it was performed by the project writer).
48611             </summary>
48612             <remarks>
48613             WARNING: marking a type [Serializable] without implementing ISerializable imposes a serialization contract -- it is a
48614             promise to never change the type's fields i.e. the type is immutable; adding new fields in the next version of the type
48615             without following certain special FX guidelines, can break both forward and backward compatibility
48616             </remarks>
48617         </member>
48618         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor">
48619             <summary>
48620             Default constructor.
48621             </summary>
48622             <remarks>
48623             This constructor only exists to satisfy .NET coding guidelines. Use a rich constructor whenever possible.
48624             </remarks>
48625         </member>
48626         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.String)">
48627             <summary>
48628             Creates an instance of this exception using the specified error message.
48629             </summary>
48630             <remarks>
48631             This constructor only exists to satisfy .NET coding guidelines. Use a rich constructor whenever possible.
48632             </remarks>
48633             <param name="message"></param>
48634         </member>
48635         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.String,System.Exception)">
48636             <summary>
48637             Creates an instance of this exception using the specified error message and inner exception.
48638             </summary>
48639             <remarks>
48640             This constructor only exists to satisfy .NET coding guidelines. Use a rich constructor whenever possible.
48641             </remarks>
48642             <param name="message"></param>
48643             <param name="innerException"></param>
48644         </member>
48645         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.String,Microsoft.Build.Exceptions.InvalidProjectFileException)">
48646             <summary>
48647             Creates an instance of this exception using the specified error message and inner invalid project file exception.
48648             This is used in order to wrap and exception rather than rethrow it verbatim, which would reset the callstack.
48649             The assumption is that all the metadata for the outer exception comes from the inner exception, eg., they have the same error code.
48650             </summary>
48651         </member>
48652         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48653             <summary>
48654             Protected constructor used for (de)serialization. 
48655             If we ever add new members to this class, we'll need to update this.
48656             </summary>
48657             <param name="info"></param>
48658             <param name="context"></param>
48659         </member>
48660         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48661             <summary>
48662             ISerializable method which we must override since Exception implements this interface
48663             If we ever add new members to this class, we'll need to update this.
48664             </summary>
48665             <param name="info"></param>
48666             <param name="context"></param>
48667         </member>
48668         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.String,System.String,System.String)">
48669             <summary>
48670             Creates an instance of this exception using rich error information.
48671             </summary>
48672             <remarks>This constructor is preferred over the basic constructors.</remarks>
48673             <param name="projectFile">The invalid project file (can be empty string).</param>
48674             <param name="lineNumber">The invalid line number in the project (set to zero if not available).</param>
48675             <param name="columnNumber">The invalid column number in the project (set to zero if not available).</param>
48676             <param name="endLineNumber">The end of a range of invalid lines in the project (set to zero if not available).</param>
48677             <param name="endColumnNumber">The end of a range of invalid columns in the project (set to zero if not available).</param>
48678             <param name="message">Error message for exception.</param>
48679             <param name="errorSubcategory">Error sub-category that describes the error (can be null).</param>
48680             <param name="errorCode">The error code (can be null).</param>
48681             <param name="helpKeyword">The F1-help keyword for the host IDE (can be null).</param>
48682         </member>
48683         <member name="M:Microsoft.Build.Exceptions.InvalidProjectFileException.#ctor(System.String,System.Int32,System.Int32,System.Int32,System.Int32,System.String,System.String,System.String,System.String,System.Exception)">
48684             <summary>
48685             Creates an instance of this exception using rich error information.
48686             </summary>
48687             <remarks>This constructor is preferred over the basic constructors.</remarks>
48688             <param name="projectFile">The invalid project file (can be empty string).</param>
48689             <param name="lineNumber">The invalid line number in the project (set to zero if not available).</param>
48690             <param name="columnNumber">The invalid column number in the project (set to zero if not available).</param>
48691             <param name="endLineNumber">The end of a range of invalid lines in the project (set to zero if not available).</param>
48692             <param name="endColumnNumber">The end of a range of invalid columns in the project (set to zero if not available).</param>
48693             <param name="message">Error message for exception.</param>
48694             <param name="errorSubcategory">Error sub-category that describes the error (can be null).</param>
48695             <param name="errorCode">The error code (can be null).</param>
48696             <param name="helpKeyword">The F1-help keyword for the host IDE (can be null).</param>
48697             <param name="innerException">Any inner exception. May be null.</param>
48698         </member>
48699         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.Message">
48700             <summary>
48701             Gets the exception message including the affected project file (if any).
48702             </summary>
48703             <value>The complete message string.</value>
48704         </member>
48705         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.BaseMessage">
48706             <summary>
48707             Gets the exception message not including the project file.
48708             </summary>
48709             <value>The error message string only.</value>
48710         </member>
48711         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.ProjectFile">
48712             <summary>
48713             Gets the file (if any) associated with this exception.
48714             This may be an imported file.
48715             </summary>
48716             <remarks>
48717             The name is poorly chosen as this may be a targets file,
48718             but the name has shipped now.
48719             </remarks>
48720             <value>Project filename/path string, or null.</value>
48721         </member>
48722         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.LineNumber">
48723             <summary>
48724             Gets the invalid line number (if any) in the project.
48725             </summary>
48726             <value>The invalid line number, or zero.</value>
48727         </member>
48728         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.ColumnNumber">
48729             <summary>
48730             Gets the invalid column number (if any) in the project.
48731             </summary>
48732             <value>The invalid column number, or zero.</value>
48733         </member>
48734         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.EndLineNumber">
48735             <summary>
48736             Gets the last line number (if any) of a range of invalid lines in the project.
48737             </summary>
48738             <value>The last invalid line number, or zero.</value>
48739         </member>
48740         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.EndColumnNumber">
48741             <summary>
48742             Gets the last column number (if any) of a range of invalid columns in the project.
48743             </summary>
48744             <value>The last invalid column number, or zero.</value>
48745         </member>
48746         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.ErrorSubcategory">
48747             <summary>
48748             Gets the error sub-category (if any) that describes the type of this error.
48749             </summary>
48750             <value>The sub-category string, or null.</value>
48751         </member>
48752         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.ErrorCode">
48753             <summary>
48754             Gets the error code (if any) associated with the exception message.
48755             </summary>
48756             <value>Error code string, or null.</value>
48757         </member>
48758         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.HelpKeyword">
48759             <summary>
48760             Gets the F1-help keyword (if any) associated with this error, for the host IDE.
48761             </summary>
48762             <value>The keyword string, or null.</value>
48763         </member>
48764         <member name="P:Microsoft.Build.Exceptions.InvalidProjectFileException.HasBeenLogged">
48765             <summary>
48766             Whether the exception has already been logged. Allows the exception to be logged at the 
48767             most appropriate location, but continue to be propagated.
48768             </summary>
48769         </member>
48770         <member name="T:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException">
48771             <summary>
48772             Exception subclass that ToolsetReaders should throw.
48773             </summary>
48774         </member>
48775         <member name="F:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.errorCode">
48776             <summary>
48777             The MSBuild error code corresponding with this exception.
48778             </summary>
48779         </member>
48780         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor">
48781             <summary>
48782             Basic constructor.
48783             </summary>
48784         </member>
48785         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor(System.String)">
48786             <summary>
48787             Basic constructor.
48788             </summary>
48789             <param name="message"></param>
48790         </member>
48791         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor(System.String,System.Exception)">
48792             <summary>
48793             Basic constructor.
48794             </summary>
48795             <param name="message"></param>
48796             <param name="innerException"></param>
48797         </member>
48798         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48799             <summary>
48800             Basic constructor.
48801             </summary>
48802         </member>
48803         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor(System.String,System.String)">
48804             <summary>
48805             Constructor that takes an MSBuild error code
48806             </summary>
48807             <param name="message"></param>
48808             <param name="errorCode"></param>
48809         </member>
48810         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.#ctor(System.String,System.String,System.Exception)">
48811             <summary>
48812             Constructor that takes an MSBuild error code
48813             </summary>
48814             <param name="message"></param>
48815             <param name="errorCode"></param>
48816             <param name="innerException"></param>
48817         </member>
48818         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48819             <summary>
48820             ISerializable method which we must override since Exception implements this interface
48821             If we ever add new members to this class, we'll need to update this.
48822             </summary>
48823             <param name="info"></param>
48824             <param name="context"></param>
48825         </member>
48826         <member name="P:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.ErrorCode">
48827             <summary>
48828             The MSBuild error code corresponding with this exception, or
48829             null if none was specified.
48830             </summary>
48831         </member>
48832         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.Throw(System.String,System.String[])">
48833             <summary>
48834             Throws an InvalidToolsetDefinitionException.
48835             
48836             PERF WARNING: calling a method that takes a variable number of arguments
48837             is expensive, because memory is allocated for the array of arguments -- do
48838             not call this method repeatedly in performance-critical scenarios
48839             </summary>
48840             <param name="resourceName"></param>
48841             <param name="args"></param>
48842         </member>
48843         <member name="M:Microsoft.Build.Exceptions.InvalidToolsetDefinitionException.Throw(System.Exception,System.String,System.String[])">
48844             <summary>
48845             Throws an InvalidToolsetDefinitionException including a specified inner exception,
48846             which may be interesting to hosts.
48847             
48848             PERF WARNING: calling a method that takes a variable number of arguments
48849             is expensive, because memory is allocated for the array of arguments -- do
48850             not call this method repeatedly in performance-critical scenarios
48851             </summary>
48852         </member>
48853         <member name="T:Microsoft.Build.Exceptions.RegistryException">
48854             <summary>
48855             Generic exception used to wrap exceptions thrown during Registry access.
48856             </summary>
48857         </member>
48858         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor">
48859             <summary>
48860             Basic constructor.
48861             </summary>
48862         </member>
48863         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor(System.String)">
48864             <summary>
48865             Basic constructor.
48866             </summary>
48867             <param name="message"></param>
48868         </member>
48869         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor(System.String,System.Exception)">
48870             <summary>
48871             Basic constructor.
48872             </summary>
48873             <param name="message"></param>
48874             <param name="innerException"></param>
48875         </member>
48876         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor(System.String,System.String)">
48877             <summary>
48878             Constructor that takes a string description of the registry
48879             key or value causing the error.
48880             </summary>
48881             <param name="message"></param>
48882             <param name="source"></param>
48883         </member>
48884         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
48885             <summary>
48886             Since this class implements Iserializable this constructor is required to be implemented.
48887             </summary>
48888         </member>
48889         <member name="M:Microsoft.Build.Exceptions.RegistryException.#ctor(System.String,System.String,System.Exception)">
48890             <summary>
48891             Constructor that takes a string description of the registry
48892             key or value causing the error.
48893             </summary>
48894             <param name="message"></param>
48895             <param name="source"></param>
48896             <param name="innerException"></param>
48897         </member>
48898         <member name="T:Microsoft.Build.OpportunisticIntern">
48899              <summary>
48900              This class is used to selectively intern strings. It should be used at the point of new string creation.
48901              For example,
48902             
48903                  string interned = OpportunisticIntern.Intern(String.Join(",",someStrings));
48904             
48905              This class uses heuristics to decide whether it will be efficient to intern a string or not. There is no
48906              guarantee that a string will intern.
48907             
48908              The thresholds and sizes were determined by experimentation to give the best number of bytes saved
48909              at reasonable elapsed time cost.
48910              </summary>
48911         </member>
48912         <member name="F:Microsoft.Build.OpportunisticIntern.s_smallMruSize">
48913             <summary>
48914             The size of the small mru list.
48915             </summary>
48916         </member>
48917         <member name="F:Microsoft.Build.OpportunisticIntern.s_largeMruSize">
48918             <summary>
48919             The size of the large mru list.
48920             </summary>
48921         </member>
48922         <member name="F:Microsoft.Build.OpportunisticIntern.s_hugeMruSize">
48923             <summary>
48924             The size of the huge mru list.
48925             </summary>
48926         </member>
48927         <member name="F:Microsoft.Build.OpportunisticIntern.s_smallMruThreshhold">
48928             <summary>
48929             The smallest size a string can be to be considered small.
48930             </summary>
48931         </member>
48932         <member name="F:Microsoft.Build.OpportunisticIntern.s_largeMruThreshhold">
48933             <summary>
48934             The smallest size a string can be to be considered large.
48935             </summary>
48936         </member>
48937         <member name="F:Microsoft.Build.OpportunisticIntern.s_hugeMruThreshhold">
48938             <summary>
48939             The smallest size a string can be to be considered huge.
48940             </summary>
48941         </member>
48942         <member name="F:Microsoft.Build.OpportunisticIntern.s_ginormousThreshhold">
48943             <summary>
48944             The smallest size a string can be to be ginormous.
48945             8K for large object heap.
48946             </summary>
48947         </member>
48948         <member name="F:Microsoft.Build.OpportunisticIntern.s_si">
48949             <summary>
48950             Manages the separate MRU lists.
48951             </summary>
48952         </member>
48953         <member name="F:Microsoft.Build.OpportunisticIntern.s_whatIfInfinite">
48954             <summary>
48955             What if Mru lists were infinitely long?
48956             </summary>
48957         </member>
48958         <member name="F:Microsoft.Build.OpportunisticIntern.s_whatIfDoubled">
48959             <summary>
48960             What if we doubled the size of the Mru lists?
48961             </summary>
48962         </member>
48963         <member name="F:Microsoft.Build.OpportunisticIntern.s_whatIfHalved">
48964             <summary>
48965             What if we halved the size of the Mru lists?
48966             </summary>
48967         </member>
48968         <member name="F:Microsoft.Build.OpportunisticIntern.s_whatIfZero">
48969             <summary>
48970             What if the size of Mru lists was zero? (We still intern tiny strings in this case)
48971             </summary>
48972         </member>
48973         <member name="T:Microsoft.Build.OpportunisticIntern.IInternable">
48974             <summary>
48975             Define the methods needed to intern something.
48976             </summary>
48977         </member>
48978         <member name="P:Microsoft.Build.OpportunisticIntern.IInternable.Length">
48979             <summary>
48980             The length of the target.
48981             </summary>
48982         </member>
48983         <member name="P:Microsoft.Build.OpportunisticIntern.IInternable.Item(System.Int32)">
48984             <summary>
48985             Indexer into the target. Presumed to be fast.
48986             </summary>
48987         </member>
48988         <member name="M:Microsoft.Build.OpportunisticIntern.IInternable.ExpensiveConvertToString">
48989             <summary>
48990             Convert target to string. Presumed to be slow (and will be called just once).
48991             </summary>
48992         </member>
48993         <member name="M:Microsoft.Build.OpportunisticIntern.IInternable.IsOrdinalEqualToStringOfSameLength(System.String)">
48994             <summary>
48995             Compare target to string. Assumes lengths are equal.
48996             </summary>
48997         </member>
48998         <member name="M:Microsoft.Build.OpportunisticIntern.IInternable.ReferenceEquals(System.String)">
48999             <summary>
49000             Reference compare target to string. If target is non-string this should return false.
49001             </summary>
49002         </member>
49003         <member name="M:Microsoft.Build.OpportunisticIntern.AssignViaEnvironment(System.String,System.Int32)">
49004             <summary>
49005             Assign an int from an environment variable. If its not present, use the default.
49006             </summary>
49007         </member>
49008         <member name="M:Microsoft.Build.OpportunisticIntern.EnableStatisticsGathering">
49009             <summary>
49010             Turn on statistics gathering.
49011             </summary>
49012         </member>
49013         <member name="M:Microsoft.Build.OpportunisticIntern.InternableToString(Microsoft.Build.OpportunisticIntern.IInternable)">
49014             <summary>
49015             Intern the given internable.
49016             </summary>
49017         </member>
49018         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderToString(System.Text.StringBuilder)">
49019             <summary>
49020             Potentially Intern the given string builder.
49021             </summary>
49022         </member>
49023         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayToString(System.Char[],System.Int32)">
49024             <summary>
49025             Potentially Intern the given char array.
49026             </summary>
49027         </member>
49028         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayToString(System.Char[],System.Int32,System.Int32)">
49029             <summary>
49030             Potentially Intern the given char array.
49031             </summary>
49032         </member>
49033         <member name="M:Microsoft.Build.OpportunisticIntern.InternStringIfPossible(System.String)">
49034             <summary>
49035             Potentially Intern the given string.
49036             </summary>
49037             <param name="candidate">The string to intern.</param>
49038             <returns>The interned string, or the same string if it could not be interned.</returns>
49039         </member>
49040         <member name="M:Microsoft.Build.OpportunisticIntern.ReportStatistics">
49041             <summary>
49042             Report statistics about interning. Don't call unless GatherStatistics has been called beforehand.
49043             </summary>
49044         </member>
49045         <member name="T:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget">
49046             <summary>
49047             A wrapper over StringBuilder.
49048             </summary>
49049         </member>
49050         <member name="F:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget._target">
49051             <summary>
49052             The held StringBuilder
49053             </summary>
49054         </member>
49055         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.#ctor(System.Text.StringBuilder)">
49056             <summary>
49057             Pointless comment about constructor.
49058             </summary>
49059         </member>
49060         <member name="P:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.Length">
49061             <summary>
49062             The length of the target.
49063             </summary>
49064         </member>
49065         <member name="P:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.Item(System.Int32)">
49066             <summary>
49067             Indexer into the target. Presumed to be fast.
49068             </summary>
49069         </member>
49070         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.ReferenceEquals(System.String)">
49071             <summary>
49072             Never reference equals to string.
49073             </summary>
49074         </member>
49075         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.ExpensiveConvertToString">
49076             <summary>
49077             Convert target to string. Presumed to be slow (and will be called just once).
49078             </summary>
49079         </member>
49080         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.IsOrdinalEqualToStringOfSameLength(System.String)">
49081             <summary>
49082             Compare target to string. Assumes lengths are equal.
49083             </summary>
49084         </member>
49085         <member name="M:Microsoft.Build.OpportunisticIntern.StringBuilderInternTarget.ToString">
49086             <summary>
49087             Don't use this function. Use ExpensiveConvertToString
49088             </summary>
49089         </member>
49090         <member name="T:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget">
49091             <summary>
49092             A wrapper over char[].
49093             </summary>
49094         </member>
49095         <member name="F:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget._startIndex">
49096             <summary>
49097             Start index for the string
49098             </summary>
49099         </member>
49100         <member name="F:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget._count">
49101             <summary>
49102             Number of characters.
49103             </summary>
49104         </member>
49105         <member name="F:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget._target">
49106             <summary>
49107             The held array
49108             </summary>
49109         </member>
49110         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.#ctor(System.Char[],System.Int32)">
49111             <summary>
49112             Pointless comment about constructor.
49113             </summary>
49114         </member>
49115         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.#ctor(System.Char[],System.Int32,System.Int32)">
49116             <summary>
49117             Pointless comment about constructor.
49118             </summary>
49119         </member>
49120         <member name="P:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.Length">
49121             <summary>
49122             The length of the target.
49123             </summary>
49124         </member>
49125         <member name="P:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.Item(System.Int32)">
49126             <summary>
49127             Indexer into the target. Presumed to be fast.
49128             </summary>
49129         </member>
49130         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.ReferenceEquals(System.String)">
49131             <summary>
49132             Convert target to string. Presumed to be slow (and will be called just once).
49133             </summary>
49134         </member>
49135         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.ExpensiveConvertToString">
49136             <summary>
49137             Convert target to string. Presumed to be slow (and will be called just once).
49138             </summary>
49139         </member>
49140         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.IsOrdinalEqualToStringOfSameLength(System.String)">
49141             <summary>
49142             Compare target to string. Assumes lengths are equal.
49143             </summary>
49144         </member>
49145         <member name="M:Microsoft.Build.OpportunisticIntern.CharArrayInternTarget.ToString">
49146             <summary>
49147             Don't use this function. Use ExpensiveConvertToString
49148             </summary>
49149         </member>
49150         <member name="T:Microsoft.Build.OpportunisticIntern.StringInternTarget">
49151             <summary>
49152             Wrapper over a string.
49153             </summary>
49154         </member>
49155         <member name="F:Microsoft.Build.OpportunisticIntern.StringInternTarget._target">
49156             <summary>
49157             Stores the wrapped string.
49158             </summary>
49159         </member>
49160         <member name="M:Microsoft.Build.OpportunisticIntern.StringInternTarget.#ctor(System.String)">
49161             <summary>
49162             Constructor of the class
49163             </summary>
49164             <param name="target">The string to wrap</param>
49165         </member>
49166         <member name="P:Microsoft.Build.OpportunisticIntern.StringInternTarget.Length">
49167             <summary>
49168             Gets the length of the target string.
49169             </summary>
49170         </member>
49171         <member name="P:Microsoft.Build.OpportunisticIntern.StringInternTarget.Item(System.Int32)">
49172             <summary>
49173             Gets the n character in the target string.
49174             </summary>
49175             <param name="index">Index of the character to gather.</param>
49176             <returns>The character in the position marked by index.</returns>
49177         </member>
49178         <member name="M:Microsoft.Build.OpportunisticIntern.StringInternTarget.ExpensiveConvertToString">
49179             <summary>
49180             Returns the target which is already a string.
49181             </summary>
49182             <returns>The target string.</returns>
49183         </member>
49184         <member name="M:Microsoft.Build.OpportunisticIntern.StringInternTarget.IsOrdinalEqualToStringOfSameLength(System.String)">
49185             <summary>
49186             Compare if the target string is equal to the given string.
49187             </summary>
49188             <param name="other">The string to compare with the target.</param>
49189             <returns>True if the strings are equal, false otherwise.</returns>
49190         </member>
49191         <member name="M:Microsoft.Build.OpportunisticIntern.StringInternTarget.ReferenceEquals(System.String)">
49192             <summary>
49193             Verifies if the reference of the target string is the same of the given string.
49194             </summary>
49195             <param name="other">The string reference to compare to.</param>
49196             <returns>True if both references are equal, false otherwise.</returns>
49197         </member>
49198         <member name="T:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList">
49199             <summary>
49200             Manages a set of mru lists that hold strings in varying size ranges.
49201             </summary>
49202         </member>
49203         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._smallMru">
49204             <summary>
49205             The small string Mru list.
49206             </summary>
49207         </member>
49208         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._largeMru">
49209             <summary>
49210             The large string Mru list.
49211             </summary>
49212         </member>
49213         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._hugeMru">
49214             <summary>
49215             The huge string Mru list.
49216             </summary>
49217         </member>
49218         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormous">
49219             <summary>
49220             Three most recently used strings over 8K.
49221             </summary>
49222         </member>
49223         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._smallMruThreshhold">
49224             <summary>
49225             The smallest size a string can be to be considered small.
49226             </summary>
49227         </member>
49228         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._largeMruThreshhold">
49229             <summary>
49230             The smallest size a string can be to be considered large.
49231             </summary>
49232         </member>
49233         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._hugeMruThreshhold">
49234             <summary>
49235             The smallest size a string can be to be considered huge.
49236             </summary>
49237         </member>
49238         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormousThreshhold">
49239             <summary>
49240             The smallest size a string can be to be ginormous.
49241             </summary>
49242         </member>
49243         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._gatherStatistics">
49244             <summary>
49245             Whether or not to gather statistics
49246             </summary>
49247         </member>
49248         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._internHits">
49249             <summary>
49250             Number of times interning worked.
49251             </summary>
49252         </member>
49253         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._internMisses">
49254             <summary>
49255             Number of times interning didn't work.
49256             </summary>
49257         </member>
49258         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._internRejects">
49259             <summary>
49260             Number of times interning wasn't attempted.
49261             </summary>
49262         </member>
49263         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._internEliminatedStrings">
49264             <summary>
49265             Total number of strings eliminated by interning.
49266             </summary>
49267         </member>
49268         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._internEliminatedChars">
49269             <summary>
49270             Total number of chars eliminated across all strings.
49271             </summary>
49272         </member>
49273         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormousHits">
49274             <summary>
49275             Number of times the ginourmous string hit.
49276             </summary>
49277         </member>
49278         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormousMisses">
49279             <summary>
49280             Number of times the ginourmous string missed.
49281             </summary>
49282         </member>
49283         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormousCharsSaved">
49284             <summary>
49285             Chars interned for ginormous range.
49286             </summary>
49287         </member>
49288         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._dontTrack">
49289             <summary>
49290             Whether or not to track ginormous strings.
49291             </summary>
49292         </member>
49293         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._stopwatch">
49294             <summary>
49295             The time spent interning.
49296             </summary>
49297         </member>
49298         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._missedStrings">
49299             <summary>
49300             Strings which did not intern
49301             </summary>
49302         </member>
49303         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._rejectedStrings">
49304             <summary>
49305             Strings which we didn't attempt to intern
49306             </summary>
49307         </member>
49308         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList._ginormousSize">
49309             <summary>
49310             Number of ginormous strings to keep
49311             By observation of Auto7, there are about three variations of the huge solution config blob
49312             There aren't really any other strings of this size, but make it 10 to be sure. (There will barely be any misses)
49313             </summary>
49314         </member>
49315         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.#ctor(System.Boolean,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
49316             <summary>
49317             Construct.
49318             </summary>
49319         </member>
49320         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.InterningToString(Microsoft.Build.OpportunisticIntern.IInternable)">
49321             <summary>
49322             Intern the given internable.
49323             </summary>
49324         </member>
49325         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.ReportStatistics(System.String)">
49326             <summary>
49327             Report statistics to the console.
49328             </summary>
49329         </member>
49330         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.TryIntern(Microsoft.Build.OpportunisticIntern.IInternable,System.String@)">
49331             <summary>
49332             Try to intern the string.
49333             Return true if an interned value could be returned.
49334             Return false if it was added to the intern list, but wasn't there already.
49335             Return null if it didn't meet the length criteria for any of the buckets. Interning was rejected
49336             </summary>
49337         </member>
49338         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.InternWithStatistics(Microsoft.Build.OpportunisticIntern.IInternable)">
49339             <summary>
49340             Version of Intern that gathers statistics
49341             </summary>
49342         </member>
49343         <member name="T:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList">
49344             <summary>
49345             A singly linked list of strings where the most recently accessed string is at the top.
49346             Size expands up to a fixed number of strings.
49347             </summary>
49348         </member>
49349         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList._size">
49350             <summary>
49351             Maximum size of the mru list.
49352             </summary>
49353         </member>
49354         <member name="F:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList._mru">
49355             <summary>
49356             Head of the mru list.
49357             </summary>
49358         </member>
49359         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.#ctor(System.Int32)">
49360             <summary>
49361             Construct an Mru list with a fixed maximum size.
49362             </summary>
49363         </member>
49364         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.TryGet(Microsoft.Build.OpportunisticIntern.IInternable,System.String@)">
49365             <summary>
49366             Try to get one element from the list. Upon leaving the function 'candidate' will be at the head of the Mru list.
49367             This function is not thread-safe.
49368             </summary>
49369         </member>
49370         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.Statistics">
49371             <summary>
49372             Returns the number of strings held and the total number of chars held.
49373             </summary>
49374         </member>
49375         <member name="T:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.Node">
49376             <summary>
49377             Singly linked list node.
49378             </summary>
49379         </member>
49380         <member name="M:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.Node.#ctor(System.String)">
49381             <summary>
49382             Construct a Node
49383             </summary>
49384         </member>
49385         <member name="P:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.Node.Next">
49386             <summary>
49387             The next node in the list.
49388             </summary>
49389         </member>
49390         <member name="P:Microsoft.Build.OpportunisticIntern.BucketedPrioritizedStringList.PrioritizedStringList.Node.Value">
49391             <summary>
49392             The held string.
49393             </summary>
49394         </member>
49395         <member name="T:Microsoft.Build.Debugging.DebuggerLocalType">
49396             <summary>
49397             Immutable class to describe the name and type for an early bound local
49398             </summary>
49399         </member>
49400         <member name="F:Microsoft.Build.Debugging.DebuggerLocalType._name">
49401             <summary>
49402             Name of the local variable.
49403             </summary>
49404         </member>
49405         <member name="F:Microsoft.Build.Debugging.DebuggerLocalType._type">
49406             <summary>
49407             Type of the local variable.
49408             </summary>
49409         </member>
49410         <member name="M:Microsoft.Build.Debugging.DebuggerLocalType.#ctor(System.String,System.Type)">
49411             <summary>
49412             Constructor 
49413             </summary>
49414         </member>
49415         <member name="P:Microsoft.Build.Debugging.DebuggerLocalType.Name">
49416             <summary>
49417             Name of the local variable.
49418             </summary>
49419         </member>
49420         <member name="P:Microsoft.Build.Debugging.DebuggerLocalType.Type">
49421             <summary>
49422             Type of the local variable.
49423             </summary>
49424         </member>
49425         <member name="T:Microsoft.Build.Debugging.DebuggerManager">
49426              <summary>
49427              Manager for supporting debugging a state machine.   
49428              This is for internal use by MSBuild, only.
49429              </summary>    
49430              <comment>
49431              This is using the theory described at: 
49432               http://blogs.msdn.com/jmstall/archive/2005/07/27/state-machine-theory.aspx. 
49433              The summary is that it emits IL snippets ("Islands") for each state in the machine.
49434              The island serves as a spot to set a breakpoint. 
49435             
49436              You should be able to set breakpoints on states and hit them.
49437              To do stepping between states:
49438                - ensure the interpreter is non-user code (perhaps by placing the [DebuggerNonUserCode] attribute
49439                   on all the classes, or not providing the symbols to the debugger)
49440                - ensure Just-My-Code is turned on. In VS2005, 
49441                    this is at: Tools > Options  > Debugging > General, "Enable Just My Code".
49442               - Use step-in (F11) between states.
49443              
49444              
49445              The general usage is to call:
49446               - DefineState() for each state
49447               - Bake() once you've defined all the states you need to enter.
49448               - EnterState() / LeaveState() for each state. 
49449              You can Define new states and bake them, such as if the script loads a new file.
49450              Baking is expensive, so it's best to define as many states in each batch.
49451             
49452              UNDONE: Show proper state of items and properties set and modified within targets.
49453              UNDONE: Characterization and fixing of debugging multiproc MSBuild, and MSBuild hosted by VS.
49454              </comment>
49455         </member>
49456         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_breakOnStartup">
49457             <summary>
49458             Whether debugging should break on startup.
49459             This is normally true, but setting it to false 
49460             might be useful in some situations, such as multiproc build.
49461             </summary>
49462         </member>
49463         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_debuggingEnabled">
49464             <summary>
49465             Whether debugging is enabled. This is not normally
49466             enabled as it makes everything slow.
49467             </summary>
49468         </member>
49469         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_allBakedStates">
49470             <summary>
49471             The states that the debugger may be in, indexed
49472             by their location. All baked states are in here.
49473             </summary>
49474         </member>
49475         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_islandCallback">
49476             <summary>
49477             Method that islands call back to.
49478             </summary>
49479         </member>
49480         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_sources">
49481             <summary>
49482             Cached mapping of file path to symbol store documents
49483             </summary>
49484         </member>
49485         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_dynamicModule">
49486             <summary>
49487             The single dynamic module used.
49488             </summary>
49489         </member>
49490         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_islandThread">
49491             <summary>
49492             Islands are executed on an auxiliary thread instead of the main thread.
49493             This gives a better default stepping experience (allows Step-in, step-over, step-out),
49494             and also allows unloading the islands (since the thread can be in a separate appdomain).
49495             </summary>
49496         </member>
49497         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_unbakedStates">
49498             <summary>
49499             List of all state that have been created with DefineState
49500             and are yet to be Baked into types.
49501             We use a hashtable instead of a list so that we can find duplicate
49502             state names immediately.
49503             </summary>
49504         </member>
49505         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_skippedEnters">
49506             <summary>
49507             In special cases, we ignore an EnterState, and increment this counter
49508             so that we can ignore the matching LeaveState.
49509             </summary>
49510         </member>
49511         <member name="F:Microsoft.Build.Debugging.DebuggerManager.s_initialized">
49512             <summary>
49513             Whether the debugger manager has been initialized yet.
49514             </summary>
49515         </member>
49516         <member name="T:Microsoft.Build.Debugging.DebuggerManager.InvokeIslandDelegate">
49517             <summary>
49518             Type of delegate used by the debugger worker thread to call back to invoke an island
49519             </summary>
49520         </member>
49521         <member name="P:Microsoft.Build.Debugging.DebuggerManager.DebuggingEnabled">
49522             <summary>
49523             Whether debugging of project files is enabled.
49524             By default it is not.
49525             </summary>
49526         </member>
49527         <member name="M:Microsoft.Build.Debugging.DebuggerManager.Terminate">
49528             <summary>
49529             Stop debugging thread.
49530             This may not necessarily unload islands or dynamic modules that were created until the calling appdomain has exited.
49531             UNDONE: Call this. Otherwise we still exit cleanly, just only when the process exits.
49532             </summary>
49533         </member>
49534         <member name="M:Microsoft.Build.Debugging.DebuggerManager.DefineState(Microsoft.Build.Construction.ElementLocation,System.String,System.Collections.Generic.ICollection{Microsoft.Build.Debugging.DebuggerLocalType})">
49535             <summary>
49536             Declare a new state associated with the given source location.
49537             States should (probably) have disjoint source locations.
49538             Define as many states as possible using this method before calling Bake().
49539             Location must map to a unique state within the type in which it is baked.
49540             Name of the state will showup in the callstack as if it was a method name. Must be unique within the type in which it is baked.
49541             Early-bound locals are arbitrary types whose values will be supplied on EnterState. May be null.
49542             </summary>
49543         </member>
49544         <member name="M:Microsoft.Build.Debugging.DebuggerManager.BakeStates(System.String)">
49545             <summary>
49546             Bake all unbaked states. States must be baked before calling EnterState().
49547             Islands are created in a type with the specified name.
49548             File name is to show up on the callstack as the type name: "ASSEMBLYNAME!FILENAME.STATENAME(...LOCALS...)"
49549             If the type name is not unique, it will be appended with a unique identifier.
49550             </summary>
49551         </member>
49552         <member name="M:Microsoft.Build.Debugging.DebuggerManager.EnterState(Microsoft.Build.Construction.ElementLocation,System.Collections.Generic.IDictionary{System.String,System.Object})">
49553             <summary>
49554             Enter a state and push it onto the 'virtual callstack'.
49555             If the user set a a breakpoint at the source location associated with 
49556             this state, this call will hit that breakpoint.
49557             Call LeaveState when the interpreter is finished with this state.
49558             State must have already been defined.
49559             </summary>
49560             <param name="location">
49561             Location of state to enter, used to look up the state.
49562             </param>
49563             <param name="locals">
49564             Local variables associated with this state, matching by index with the types
49565             passed into DefineState. The debugger will show the names, types, and values.
49566             </param>
49567             <remarks>
49568             EnterState can be called reentrantly. If code calls Enter(A); Enter(B); Enter(C); 
49569             Then on the call to Enter(C), the virtual callstack will be A-->B-->C. 
49570             Each call to Enter() will rebuild the virtual callstack. 
49571             </remarks>
49572         </member>
49573         <member name="M:Microsoft.Build.Debugging.DebuggerManager.PulseState(Microsoft.Build.Construction.ElementLocation,System.Collections.Generic.IDictionary{System.String,System.Object})">
49574             <summary>
49575             Enter and immediately leave a state, so that any breakpoint can be hit.
49576             </summary>
49577         </member>
49578         <member name="M:Microsoft.Build.Debugging.DebuggerManager.Break">
49579             <summary>
49580             Break in the current state last set by EnterState(). 
49581             An interpreter could call this to
49582             implement a "data breakpoint".
49583             </summary>
49584         </member>
49585         <member name="M:Microsoft.Build.Debugging.DebuggerManager.LeaveState(Microsoft.Build.Construction.ElementLocation)">
49586             <summary>
49587             Pop the state most recently pushed by EnterState. 
49588             The identifier (location) of a Leave must match the Enter at the top of the stack,
49589             to catch mismatched Leaves.
49590             </summary>
49591         </member>
49592         <member name="M:Microsoft.Build.Debugging.DebuggerManager.Initialize">
49593             <summary>
49594             Starts debugger worker thread immediately, if debugging is enabled.
49595             This must not be called by a static constructor, as the 
49596             time at which it is called will then be undefined, and
49597             the debugging environment variable might not have had a 
49598             chance to be set.
49599             </summary>
49600         </member>
49601         <member name="M:Microsoft.Build.Debugging.DebuggerManager.CreateDynamicModule">
49602             <summary>
49603             Create the single dynamic module that will
49604             contain all our types and states.
49605             </summary>
49606             <remarks>
49607             Emits the module into the current appdomain.
49608             This could be improved to use another appdomain so that all
49609             the types could be unloaded. All locals would have to be 
49610             marshalable in this case.
49611             </remarks>
49612         </member>
49613         <member name="M:Microsoft.Build.Debugging.DebuggerManager.CreateIsland(System.Reflection.Emit.TypeBuilder,Microsoft.Build.Debugging.DebuggerManager.DebuggerState)">
49614             <summary>
49615             Create the representation of a single state, known as an "island".
49616             It is implemented as a small method in the type being baked into the dynamic module.
49617             Returns the name of the method.
49618             </summary>
49619         </member>
49620         <member name="M:Microsoft.Build.Debugging.DebuggerManager.InvokeIsland(System.Object,Microsoft.Build.Debugging.DebuggerManager.VirtualStackFrame)">
49621             <summary>
49622             Invoke an "island", marshaling the arguments.
49623             Called on debugger worker thread.
49624             </summary>
49625         </member>
49626         <member name="T:Microsoft.Build.Debugging.DebuggerManager.IslandThread">
49627             <summary>
49628             This is for internal use by MSBuild, only.
49629             </summary>
49630             <comment>
49631             Executes the islands on a dedicated worker thread. The worker thread's
49632             physical callstack then maps to the interpreter's virtual callstack.
49633             </comment>
49634         </member>
49635         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._invokeIsland">
49636             <summary>
49637             Callback used to enter an island
49638             </summary>
49639         </member>
49640         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._breakOnStartup">
49641             <summary>
49642             Set to true to notify to Break on first instruction. This helps the F11 on startup experience.
49643             Since the islands are on a new thread, there may be no user code on the main thread and so 
49644             F11 doesn't work. Thus the new worker thread needs to fire some break event.
49645             This gets reset after the 'startup breakpoint'.
49646             The initial Properties can override this.
49647             </summary>
49648         </member>
49649         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._workerThread">
49650             <summary>
49651             Wrapped worker thread
49652             </summary>
49653         </member>
49654         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._workToDoEvent">
49655             <summary>
49656             Signalled when the main thread wants to send an event to the debugger worker thread.
49657             The main thread fills out the data first. 
49658             </summary>
49659         </member>
49660         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._workDoneEvent">
49661             <summary>
49662             Signalled by the worker thread when it's finished handling the event and 
49663             the main thread can resume.
49664             </summary>
49665         </member>
49666         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._debugAction">
49667             <summary>
49668             Slot for passing operation to the worker thread
49669             </summary>
49670         </member>
49671         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread._virtualStack">
49672             <summary>
49673             Parameter for EnterState.
49674             Stored on a stack only for verification that enters and leaves are matched.
49675             </summary>
49676         </member>
49677         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.#ctor(Microsoft.Build.Debugging.DebuggerManager.InvokeIslandDelegate,System.Boolean)">
49678             <summary>
49679             Constructor
49680             </summary>
49681         </member>
49682         <member name="T:Microsoft.Build.Debugging.DebuggerManager.IslandThread.DebugAction">
49683             <summary>
49684             Action for the thread to take
49685             </summary>
49686         </member>
49687         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread.DebugAction.Invalid">
49688             <summary>
49689             Uninitialized
49690             </summary>
49691         </member>
49692         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread.DebugAction.Enter">
49693             <summary>
49694             Enter a state 
49695             </summary>
49696         </member>
49697         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread.DebugAction.Leave">
49698             <summary>
49699             Leave the current state
49700             </summary>
49701         </member>
49702         <member name="F:Microsoft.Build.Debugging.DebuggerManager.IslandThread.DebugAction.Break">
49703             <summary>
49704             Stop execution
49705             </summary>
49706         </member>
49707         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.IslandWorker(Microsoft.Build.Debugging.DebuggerManager.IslandThread)">
49708             <summary>
49709             This is for internal use by MSBuild, only.
49710             </summary>
49711             <comment>
49712             Private Entry point called from islands. Must be public so that the islands can invoke it.
49713             UNDONE: Make this internal somehow.
49714             Called on debugger worker thread.
49715             </comment>
49716         </member>
49717         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.System#IDisposable#Dispose">
49718             <summary>
49719             IDisposable implementation.
49720             </summary>
49721         </member>
49722         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.Worker(System.Boolean)">
49723             <summary>
49724             Worker thread loop.
49725             Called on debugger worker thread.
49726             </summary>
49727         </member>
49728         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.EnterState(Microsoft.Build.Debugging.DebuggerManager.DebuggerState,System.Collections.Generic.IDictionary{System.String,System.Object})">
49729             <summary>
49730             Posts an Enter instruction to the island thread.
49731             Called by debugger manager thread
49732             </summary>
49733         </member>
49734         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.LeaveState(Microsoft.Build.Construction.ElementLocation)">
49735             <summary>
49736             Posts a Leave instruction to the island thread.
49737             Called by debugger manager thread
49738             If location is provided, verifies that the state being left is the state that was entered.
49739             Stack may already be empty, in which case it is not modified.
49740             </summary>
49741         </member>
49742         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.Break">
49743             <summary>
49744             Posts a Break instruction to the island thread.
49745             Called by debugger manager thread.
49746             </summary>
49747         </member>
49748         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.Exit">
49749             <summary>
49750             Exit debugging.
49751             Called by debugger manager thread.
49752             </summary>
49753         </member>
49754         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.Dispose(System.Boolean)">
49755             <summary>
49756             The real disposer.
49757             </summary>
49758         </member>
49759         <member name="M:Microsoft.Build.Debugging.DebuggerManager.IslandThread.WorkerThreadProc">
49760             <summary>
49761             Threadproc.
49762             Called on debugger worker thread.
49763             </summary>
49764         </member>
49765         <member name="T:Microsoft.Build.Debugging.DebuggerManager.DebuggerState">
49766             <summary>
49767             Describes a state in the interpreter. A state is any source location that 
49768             a breakpoint could be set on or that could be stepped to, such
49769             as a line of code or a statement.
49770             </summary>
49771         </member>
49772         <member name="F:Microsoft.Build.Debugging.DebuggerManager.DebuggerState._type">
49773             <summary>
49774             Type to later call GetMethod on
49775             </summary>
49776         </member>
49777         <member name="F:Microsoft.Build.Debugging.DebuggerManager.DebuggerState._methodName">
49778             <summary>
49779             Name to later call GetMethod with
49780             </summary>
49781         </member>
49782         <member name="F:Microsoft.Build.Debugging.DebuggerManager.DebuggerState._methodInfo">
49783             <summary>
49784             Cached MethodInfo for the method for this state
49785             </summary>
49786         </member>
49787         <member name="M:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.#ctor(Microsoft.Build.Construction.ElementLocation,System.String,System.Collections.Generic.ICollection{Microsoft.Build.Debugging.DebuggerLocalType})">
49788             <summary>
49789             Constructor.
49790             State is given arbitrary provided name, which will appear in the debugger callstack: "ASSEMBLYNAME!FILENAME.STATENAME(...LOCALS...)"
49791             Early locals are any locals whose names and types available at the time the state was created. May be null.
49792             "Calling Type.GetMethod() is slow (10,000 calls can take ~1 minute). So defer that to later."
49793             CALLED ONLY FROM THE DEBUGGER MANAGER.
49794             </summary>
49795         </member>
49796         <member name="P:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.Location">
49797             <summary>
49798             Location in source file associated with this state.
49799             SourceLocations for all the states should be disjoint.
49800             </summary>
49801         </member>
49802         <member name="P:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.Name">
49803             <summary>
49804             Friendly name of the state, such as method name.
49805             Never null.
49806             </summary>
49807         </member>
49808         <member name="P:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.EarlyLocalsTypes">
49809             <summary>
49810             Type definitions for early bound locals. This list is ordered.
49811             Names should be unique. 
49812             </summary>
49813         </member>
49814         <member name="P:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.Method">
49815             <summary>
49816             Method to call into this state.
49817             Must be gotten on the debugger thread, otherwise 
49818             "NotSupportedException: The invoked member is not supported in a dynamic module."
49819             </summary>
49820         </member>
49821         <member name="M:Microsoft.Build.Debugging.DebuggerManager.DebuggerState.RecordMethodInfo(System.Type,System.String)">
49822             <summary>
49823             Record information necessary to find the method info from
49824             the debugger thread.
49825             CALLED ONLY FROM THE DEBUGGER MANAGER.
49826             </summary>
49827         </member>
49828         <member name="T:Microsoft.Build.Debugging.DebuggerManager.VirtualStackFrame">
49829             <summary>
49830             A virtual callstack frame for the interpreter. 
49831             This is created by calls to EnterState and LeaveState.
49832             </summary>
49833         </member>
49834         <member name="M:Microsoft.Build.Debugging.DebuggerManager.VirtualStackFrame.#ctor(Microsoft.Build.Debugging.DebuggerManager.DebuggerState,System.Collections.Generic.IDictionary{System.String,System.Object})">
49835             <summary>
49836             Construct a stack frame for the given state with the given locals (both early and late bound).
49837             </summary>
49838             <param name="state">state for this stackframe</param>
49839             <param name="locals">collection of all locals (both early and late) for this frame. May be null.</param>
49840         </member>
49841         <member name="P:Microsoft.Build.Debugging.DebuggerManager.VirtualStackFrame.State">
49842             <summary>
49843             State for this frame.
49844             </summary>
49845         </member>
49846         <member name="P:Microsoft.Build.Debugging.DebuggerManager.VirtualStackFrame.Locals">
49847             <summary>
49848             All locals (both early-bound and late-bound) for this frame.
49849             </summary>
49850         </member>
49851         <member name="T:Microsoft.Build.Globbing.CompositeGlob">
49852             <summary>
49853                 A Composite glob
49854             </summary>
49855         </member>
49856         <member name="P:Microsoft.Build.Globbing.CompositeGlob.Globs">
49857             <summary>
49858             The direct children of this composite
49859             </summary>
49860         </member>
49861         <member name="M:Microsoft.Build.Globbing.CompositeGlob.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Build.Globbing.IMSBuildGlob})">
49862             <summary>
49863                 Constructor
49864             </summary>
49865             <param name="globs">Children globs. Input gets shallow cloned</param>
49866         </member>
49867         <member name="M:Microsoft.Build.Globbing.CompositeGlob.#ctor(Microsoft.Build.Globbing.IMSBuildGlob[])">
49868             <summary>
49869                 Constructor
49870             </summary>
49871             <param name="globs">Children globs. Input gets shallow cloned</param>
49872         </member>
49873         <member name="M:Microsoft.Build.Globbing.CompositeGlob.IsMatch(System.String)">
49874             <inheritdoc />
49875         </member>
49876         <member name="T:Microsoft.Build.Globbing.Extensions.MSBuildGlobExtensions">
49877             <summary>
49878             Extensions for <see cref="T:Microsoft.Build.Globbing.IMSBuildGlob"/>
49879             </summary>
49880         </member>
49881         <member name="M:Microsoft.Build.Globbing.Extensions.MSBuildGlobExtensions.GetParsedGlobs(Microsoft.Build.Globbing.IMSBuildGlob)">
49882             <summary>
49883             Retrieve all the <see cref="T:Microsoft.Build.Globbing.MSBuildGlob"/> objects from the given <paramref name="glob"/> composite.
49884             </summary>
49885             <param name="glob">A glob composite</param>
49886             <returns></returns>
49887         </member>
49888         <member name="T:Microsoft.Build.Globbing.MSBuildGlobWithGaps">
49889             <summary>
49890                 A glob with gaps. The gaps are represented as other globs.
49891                 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:
49892                 <code>
49893             new MSBuildGlobWithGaps(
49894                MSBuildGlob.Parse("**/*.cs"),            // matches all .cs files
49895                new CompositeGlob(                       // a composite glob to combine all the gaps
49896                   MSBuildGlob.Parse("**/*foo*.cs"),     // matches .cs files containing "foo"
49897                   MSBuildGlob.Parse("**/bin/**/*.cs")   // matches .cs files under bin directories
49898                )
49899             )
49900                 </code>
49901             </summary>
49902         </member>
49903         <member name="P:Microsoft.Build.Globbing.MSBuildGlobWithGaps.MainGlob">
49904             <summary>
49905                 The main glob used for globbing operations.
49906             </summary>
49907         </member>
49908         <member name="P:Microsoft.Build.Globbing.MSBuildGlobWithGaps.Gaps">
49909             <summary>
49910                 Glob which will be subtracted from the <see cref="P:Microsoft.Build.Globbing.MSBuildGlobWithGaps.MainGlob" />.
49911             </summary>
49912         </member>
49913         <member name="M:Microsoft.Build.Globbing.MSBuildGlobWithGaps.#ctor(Microsoft.Build.Globbing.IMSBuildGlob,System.Collections.Generic.IEnumerable{Microsoft.Build.Globbing.IMSBuildGlob})">
49914             <summary>
49915                 Constructor
49916             </summary>
49917             <param name="mainGlob">The main glob</param>
49918             <param name="gaps">The gap glob</param>
49919         </member>
49920         <member name="M:Microsoft.Build.Globbing.MSBuildGlobWithGaps.#ctor(Microsoft.Build.Globbing.IMSBuildGlob,Microsoft.Build.Globbing.IMSBuildGlob[])">
49921             <summary>
49922                 Constructor
49923             </summary>
49924             <param name="mainGlob">The main glob</param>
49925             <param name="gaps">The gap glob</param>
49926         </member>
49927         <member name="M:Microsoft.Build.Globbing.MSBuildGlobWithGaps.IsMatch(System.String)">
49928             <inheritdoc />
49929         </member>
49930         <member name="T:Microsoft.Build.Globbing.MSBuildGlob">
49931             <summary>
49932                 Represents a parsed MSBuild glob.
49933                 An MSBuild glob is composed of three parts:
49934                 - fixed directory part: "a/b/" in "a/b/**/*test*/**/*.cs"
49935                 - wildcard directory part: "**/*test*/**/" in "a/b/**/*test*/**/*.cs"
49936                 - file name part: "*.cs" in "a/b/**/*test*/**/*.cs"
49937             </summary>
49938         </member>
49939         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.FixedDirectoryPart">
49940             <summary>
49941                 The fixed directory part.
49942             </summary>
49943         </member>
49944         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.WildcardDirectoryPart">
49945             <summary>
49946                 The wildcard directory part
49947             </summary>
49948         </member>
49949         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.FilenamePart">
49950             <summary>
49951                 The file name part
49952             </summary>
49953         </member>
49954         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.IsLegal">
49955             <summary>
49956                 Whether the glob was parsed sucsesfully from a string.
49957                 Illegal glob strings contain:
49958                 - invalid path characters (other than the wildcard characters themselves)
49959                 - "..."
49960                 - ":"
49961                 In addition, the wildcard directory part:
49962                 - cannot contain ".."
49963                 - if ** is present it must appear alone between slashes
49964             </summary>
49965         </member>
49966         <member name="M:Microsoft.Build.Globbing.MSBuildGlob.IsMatch(System.String)">
49967             <inheritdoc />
49968         </member>
49969         <member name="M:Microsoft.Build.Globbing.MSBuildGlob.MatchInfo(System.String)">
49970             <summary>
49971                 Similar to <see cref="M:Microsoft.Build.Globbing.MSBuildGlob.IsMatch(System.String)" /> but also provides the match groups for the glob parts
49972             </summary>
49973             <param name="stringToMatch"></param>
49974             <returns></returns>
49975         </member>
49976         <member name="M:Microsoft.Build.Globbing.MSBuildGlob.Parse(System.String,System.String)">
49977             <summary>
49978                 Parse the given <paramref name="fileSpec" /> into a <see cref="T:Microsoft.Build.Globbing.MSBuildGlob" /> using a given
49979                 <paramref name="globRoot" />.
49980             </summary>
49981             <param name="globRoot">
49982                 The root of the glob.
49983                 The fixed directory part of the glob and the match arguments (<see cref="M:Microsoft.Build.Globbing.MSBuildGlob.IsMatch(System.String)" /> and <see cref="M:Microsoft.Build.Globbing.MSBuildGlob.MatchInfo(System.String)" />)
49984                 will get normalized against this root.
49985                 If empty, the current working directory is used.
49986                 Cannot be null, and cannot contain invalid path arguments.
49987             </param>
49988             <param name="fileSpec">The string to parse</param>
49989             <returns></returns>
49990         </member>
49991         <member name="M:Microsoft.Build.Globbing.MSBuildGlob.Parse(System.String)">
49992             <summary>
49993                 See <see cref="M:Microsoft.Build.Globbing.MSBuildGlob.Parse(System.String,System.String)" />.
49994                 The glob root will be the current working directory.
49995             </summary>
49996             <param name="fileSpec"></param>
49997             <returns></returns>
49998         </member>
49999         <member name="T:Microsoft.Build.Globbing.MSBuildGlob.MatchInfoResult">
50000             <summary>
50001                 Return type of <see cref="M:Microsoft.Build.Globbing.MSBuildGlob.MatchInfo(System.String)" />
50002             </summary>
50003         </member>
50004         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.MatchInfoResult.IsMatch">
50005             <summary>
50006                 Whether the <see cref="M:Microsoft.Build.Globbing.MSBuildGlob.MatchInfo(System.String)" /> argument was matched against the glob
50007             </summary>
50008         </member>
50009         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.MatchInfoResult.FixedDirectoryPartMatchGroup">
50010             <summary>
50011                 The fixed directory part match
50012             </summary>
50013         </member>
50014         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.MatchInfoResult.WildcardDirectoryPartMatchGroup">
50015             <summary>
50016                 The wildcard directory part match
50017             </summary>
50018         </member>
50019         <member name="P:Microsoft.Build.Globbing.MSBuildGlob.MatchInfoResult.FilenamePartMatchGroup">
50020             <summary>
50021                 The file name part match
50022             </summary>
50023         </member>
50024         <member name="T:Microsoft.Build.Globbing.IMSBuildGlob">
50025             <summary>
50026                 Exposes the globbing semantics of the MSBuild engine.
50027             </summary>
50028         </member>
50029         <member name="M:Microsoft.Build.Globbing.IMSBuildGlob.IsMatch(System.String)">
50030             <summary>
50031                 Matches the given <paramref name="stringToMatch" /> against the glob.
50032                 Matching is path aware:
50033                 - slashes are normalized
50034                 - arguments representing relative paths are normalized against the glob's root.
50035                 For example, the glob **/*.cs does not match ../a.cs, since ../a.cs points outside of the glob root.
50036             
50037                 Returns false if <paramref name="stringToMatch" /> contains invalid path or file characters>
50038             </summary>
50039             <param name="stringToMatch">The string to match. If the string represents a relative path, it will get normalized against the glob's root. Cannot be null.</param>
50040             <returns></returns>
50041         </member>
50042     </members>
50043 </doc>