<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Sarif.Driver</name>
    </assembly>
    <members>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.ArgumentSplitter">
            <summary>This class contains argument splitting functionality.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.ArgumentSplitter.CommandLineToArgvW(System.String)">
            <summary>
            Mimics CommandLineToArgvW's argument splitting behavior, plus bug fixes.
            </summary>
            <param name="input">The command line to split into arguments.</param>
            <returns>The values of the arguments supplied in the input.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.BrandedVersionAttribute">
            <summary>Attribute for branded version information.</summary>
            <seealso cref="T:System.Attribute"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.BrandedVersionAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.BrandedVersionAttribute"/> class.
            </summary>
            <param name="brandedVersion">The branded version.</param>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.BrandedVersionAttribute.BrandedVersion">
            <summary>
            Gets the branded version for the assembly. For example, externally shipping assemblies are
            typically branded with a year instead of the SDL version.
            </summary>
            <value>The branded version.</value>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerable`1">
            <summary>A wrapper for enumerables of disposable objects that ensures that they are
            destroyed as they are produced.</summary>
            <remarks><para>This wrapper breaks several of the built in <see cref="N:System.Linq"/>
            extension methods that attempt to copy elements into backing collections, such as
            <see cref="!:Enumerable.Distinct&lt;TSource&gt;(IEnumerable&lt;TSource&gt;)"/>. Callers must be
            informed of the consequences of not being able to copy elements or references to elements
            as usual.</para>
            <para>Note however that most of these mechanisms are not safe to use if the underlying
            type is disposable, because they remove elements from the source stream that the caller
            would need to dispose.</para>
            <para>Note that this class should only be used for enumerables that "stream" their
            elements and produce new disposable values when reset or similar. If you create one of
            these wrappers around a collection that actually owns the disposable item, such as
            <see cref="T:System.Collections.Generic.List`1"/>, enumerating the collection will destroy the collection's
            contents (which is not what the caller expects).</para></remarks>
            <typeparam name="T">The <see cref="T:System.IDisposable"/> type wrapped in this enumerable.</typeparam>
            <seealso cref="T:System.Collections.Generic.IEnumerable{Microsoft.CodeAnalysis.Driver.DisposableEnumerableView{T}}"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerable`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerable`1"/> class.</summary>
            <param name="backingEnumerable">An enumerable implementation that this instance will wrap.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerable`1.GetEnumerator">
            <summary>Gets an enumerator to walk a view of the underlying collection.</summary>
            <returns>An enumerator that iterates over elements in this collection.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerable`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>Gets an enumerator to walk a view of the underlying collection.</summary>
            <returns>An enumerator that iterates over elements in this collection.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1">
            <summary>A view of a disposable object inside of a collection.</summary>
            <typeparam name="T">The type of disposable object in the collection.</typeparam>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1.#ctor(`0)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1"/>
            class that owns a value.</summary>
            <param name="value">The value this view wraps.</param>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1.Value">
            <summary>Gets a non-owning reference to the element stored in this view.</summary>
            <value>The underlying value in this view.</value>
            <exception cref="T:System.InvalidOperationException">Thrown if this view no longer owns
            the underlying value.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1.StealValue">
            <summary>Takes ownership of the underlying element stored in this view.</summary>
            <exception cref="T:System.InvalidOperationException">Thrown if this view no longer owns the
            underlying value.</exception>
            <returns>A the underlying value in this view.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DisposableEnumerableView`1.Destroy">
            <summary>If this instance owns the underlying value, destroys (calls
            <see cref="M:IDisposable.Dispose"/>) on the underlying value.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverExtensionMethods.Validate(Microsoft.CodeAnalysis.Sarif.Driver.SingleFileOptionsBase)">
            <summary>
            Ensures the consistency of the command line options related to the location and format
            of the output file, and adjusts the options for ease of use.
            </summary>
            <param name="options">
            A <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.SingleFileOptionsBase"/> object containing the command line options.
            </param>
            <returns>
            true if the options are internally consistent; otherwise false.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverExtensionMethods.ValidateOutputOptions(Microsoft.CodeAnalysis.Sarif.Driver.MultipleFilesOptionsBase)">
             <summary>
             Ensures the consistency of the MultipleFilesOptionsBase command line options related to
             the location of the output file, and adjusts the options for ease of use.
             </summary>
             <param name="options">
             A <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.MultipleFilesOptionsBase"/> object containing the relevant options.
             </param>
             <returns>
             true if the options are internally consistent; otherwise false.
             </returns>
             <remarks>
             At this time, this method does not actually do any validation. Unlike the case of
             SingleFileOptionsBase, where you have to specify exactly one of --inline and
             --output-file, it is _not_ necessary to specify --output-folder-path if --inline is
             absent, because by default each transformed file is written to the path containing
             corresponding input file.
            
             However, similarly to the case of SingleFileOptionsBase, we _do_ want to set 
             --log ForceOverwrite whenever --log Inline is true, because there's no reason
             to force the user to type "--log ForceOverwrite;Inline" when they've said
             that they want to overwrite the input file
             (see https://github.com/microsoft/sarif-sdk/issues/1642).
            
             So we introduce this method for three reasons:
             1) For symmetry with the SingleFileOptionsBase,
             2) To DRY out the logic for making --log Inline and --log ForceOverwrite consistent, and
             3) To leave an obvious place to put output file option consistency logic if it's
                needed in future.
             </remarks>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.ErrorInvalidTransformTargetVersion">
            <summary>
              Looks up a localized string similar to Target version must be 1 or 2.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.ExactlyOneOfTwoOptionsIsRequired">
            <summary>
              Looks up a localized string similar to Exactly one of the &apos;{0}&apos; and &apos;{1}&apos; options must be present..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.InvalidPE_Description">
            <summary>
              Looks up a localized string similar to A binary was not analyzed as the it does not appear to be a valid portable executable..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.MSG_AnalysisCompletedSuccessfully">
            <summary>
              Looks up a localized string similar to Analysis completed successfully..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.MSG_AnalysisIncomplete">
            <summary>
              Looks up a localized string similar to Analysis finished but was not complete due to non-fatal runtime errors..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.MSG_UnexpectedApplicationExit">
            <summary>
              Looks up a localized string similar to Analysis halted prematurely due to a fatal execution condition..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.NoAnalyzerPathsSpecified">
            <summary>
              Looks up a localized string similar to No analyzer paths specified.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.NonOwningDisposableViewAccess">
            <summary>
              Looks up a localized string similar to Attempted to access a DisposableEnumerable which is non-owning..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.NoRuleDescription">
            <summary>
              Looks up a localized string similar to No description available..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.OptionsAreMutuallyExclusive">
            <summary>
              Looks up a localized string similar to The &apos;{0}&apos; and &apos;{1}&apos; options cannot be specified together..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.OptionValueMustBeNonNegative">
            <summary>
              Looks up a localized string similar to The value of the &apos;{0}&apos; option must be greater than or equal to zero..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectBuilderCannotFreeze">
            <summary>
              Looks up a localized string similar to Invalid PREfast defect state..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectPrimaryLocationMissing">
            <summary>
              Looks up a localized string similar to PREfast defects require a main SFA where the defect occurs.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectProbabilityMustBeInRange">
            <summary>
              Looks up a localized string similar to Probability must be between 0.0 and 1.0, inclusive; or be unset..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectRankMustBeInRange">
            <summary>
              Looks up a localized string similar to Rank must be between 0 and 10, inclusive; or be unset..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectsRequireConteintInDescription">
            <summary>
              Looks up a localized string similar to PREfast defects require descriptions with content..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastDefectsRequireContentInDefectCode">
            <summary>
              Looks up a localized string similar to PREfast defects require content in their defect code..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastFunctionReferenceLineMustBeInRange">
            <summary>
              Looks up a localized string similar to The function line number must be strictly positive; files begin at line 1..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastKeyEventIdMustBeInRange">
            <summary>
              Looks up a localized string similar to KeyEvent ids must be strictly positive..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.PREfastSequenceNumberOutOfRange">
            <summary>
              Looks up a localized string similar to SequenceNumber must be positive, or 0 to disable sequence numbering..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.UnexpectedApplicationExit">
            <summary>
              Looks up a localized string similar to Application exited unexpectedly..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.UnhandledEngineException">
             <summary>
               Looks up a localized string similar to An exception was raised during analysis:
            {0}.
             </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DriverResources.XmlElementNameWasUnset">
            <summary>
              Looks up a localized string similar to The local element name was not set..
            </summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverUtilities.ReportWhetherOutputFilesCanBeCreated(System.Collections.Generic.IEnumerable{System.String},System.Boolean,Microsoft.CodeAnalysis.Sarif.IFileSystem)">
            <summary>
            Returns a value indicating whether a set of output files can be created, and writes messages
            to the error stream if any of them cannot.
            </summary>
            <param name="outputFilePaths">
            A list of the paths to the output files.
            </param>
            <param name="force">
            true if the --log ForceOverwrite option was specified.
            </param>
            <param name="fileSystem">
            An object that provides access to the file system.
            </param>
            <returns>
            true if all the output files can be created; otherwise false.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverUtilities.ReportWhetherOutputFileCanBeCreated(System.String,System.Boolean,Microsoft.CodeAnalysis.Sarif.IFileSystem)">
            <summary>
            Returns a value indicating whether the output file can be created, and writes a message
            to the error stream if it cannot.
            </summary>
            <param name="outputFilePath">
            The path to the output file.
            </param>
            <param name="force">
            true if the --log ForceOverwrite option was specified.
            </param>
            <param name="fileSystem">
            An object that provides access to the file system.
            </param>
            <returns>
            true if the output file can be created; otherwise false.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverUtilities.CanCreateOutputFile(System.String,System.Boolean,Microsoft.CodeAnalysis.Sarif.IFileSystem)">
            <summary>
            Returns a value indicating whether the output file can be created.
            </summary>
            <param name="outputFilePath">
            The path to the output file.
            </param>
            <param name="force">
            true if the --log ForceOverwrite option was specified.
            </param>
            <param name="fileSystem">
            An object that provides access to the file system.
            </param>
            <returns>
            true if the output file can be created; otherwise false.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.DriverUtilities.GetOptionDescription``1(System.String)">
            <summary>
            Constructs a description of a command line option.
            </summary>
            <typeparam name="T">
            The type that defines the property corresponding to the command line option.
            </typeparam>
            <param name="optionPropertyName">
            The name of the property corresponding to the command line option.
            </param>
            <returns>
            A description of the specified command line option in the format "shortName", "longName",
            or "shortName, longName", depending on which names are available.
            </returns>
            <remarks>
            The CommandLine package defines <see cref="T:CommandLine.OptionAttribute"/> to mark
            properties that correspond to command line options. CommandLine performs some validation,
            but sometimes it is necessary to perform additional validation. In that case, it is
            desirable for the validation message to refer to the invalid parameter in the same
            format that CommandLine itself does.
            </remarks>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions">
            <summary>A class containing common useful extension methods for <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions.LexicographicalCompare``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Compares two sequences of elements lexicographically, using the element type's default
            comparer.
            </summary>
            <typeparam name="T">The type of element in the sequences being compared.</typeparam>
            <param name="leftSequence">The left hand side sequence to lexicographically compare.</param>
            <param name="rightSequence">The right hand side sequence to lexicographically compare.</param>
            <returns>
            If the range <paramref name="leftSequence"/> is lexicographically less than the range
            <paramref name="rightSequence"/>, a negative value. Otherwise, if the range
            <paramref name="rightSequence"/> is lexicographically less than the range
            <paramref name="leftSequence"/>, a positive value. Otherwise, (the sequences are equal) 0.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions.LexicographicalCompare``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})">
            <summary>
            Compares two sequences of elements lexicographically, using the supplied element comparer.
            </summary>
            <typeparam name="T">The type of element in the sequences being compared.</typeparam>
            <param name="leftSequence">The left hand side sequence to lexicographically compare.</param>
            <param name="rightSequence">The right hand side sequence to lexicographically compare.</param>
            <param name="comparer">The comparer.</param>
            <returns>
            If the range <paramref name="leftSequence"/> is lexicographically less than the range
            <paramref name="rightSequence"/>, a negative value. Otherwise, if the range
            <paramref name="rightSequence"/> is lexicographically less than the range
            <paramref name="leftSequence"/>, a positive value. Otherwise, (the sequences are equal) 0.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions.RemoveIf``1(``0[]@,System.Func{``0,System.Boolean})">
            <summary>Removes elements from an array if they match a predicate.</summary>
            <typeparam name="T">The type of elements in the array.</typeparam>
            <param name="array">The array to search for elements matching the specified predicate. If this parameter is <c>null</c>, no action is taken and false is returned.</param>
            <param name="predicate">The predicate to check against.</param>
            <returns>true if any elements were removed from <paramref name="array"/>; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions.Shuffle``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Generates an enumerable collection in a random order.
            </summary>
            <typeparam name="T">The type stored in the enumerable collection.</typeparam>
            <param name="sequence">The enumerable containing the original data to scramble.</param>
            <returns>The sequence <paramref name="sequence"/> in a scrambled order.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnumerableExtensions.Shuffle``1(System.Collections.Generic.IEnumerable{``0},System.Random)">
            <summary>
            Generates an enumerable collection in a random order.
            </summary>
            <typeparam name="T">The type stored in the enumerable collection.</typeparam>
            <param name="sequence">The enumerable containing the original data to scramble.</param>
            <param name="randomNumberGenerator">The random number generator to use.</param>
            <returns>The sequence <paramref name="sequence"/> in a scrambled order.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.EnvironmentVariables">
            <summary>
            A wrapper class for accessing environment variables.
            </summary>
            <remarks>
            Clients should use this class rather than directly using the System.EnvironmentVariable
            class, so they can mock the IEnvironmentVariables interface in unit tests.
            </remarks>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.EnvironmentVariables.ExpandEnvironmentVariables(System.String)">
            <summary>
            Replaces the name of each environment variable embedded in the specified string with
            the string equivalent of the value of the variable, then returns the resulting string.
            </summary>
            <param name="name">
            A string containing the names of zero or more environment variables. Each environment
            variable is quoted with the percent sign character (%).
            </param>
            <returns>
            A string with each environment variable replaced by its value.
            </returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.LineNumberWasOutOfRange">
            <summary>
              Looks up a localized string similar to Line number supplied was out of range [1, numLinesInFile + 1).
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.NonOwningDisposableViewAccess">
            <summary>
              Looks up a localized string similar to Attempted to access a DisposableEnumerable which is non-owning..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectBuilderCannotFreeze">
            <summary>
              Looks up a localized string similar to Invalid PREfast defect state..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectPrimaryLocationMissing">
            <summary>
              Looks up a localized string similar to PREfast defects require a main SFA where the defect occurs.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectProbabilityMustBeInRange">
            <summary>
              Looks up a localized string similar to Probability must be between 0.0 and 1.0, inclusive; or be unset..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectRankMustBeInRange">
            <summary>
              Looks up a localized string similar to Rank must be between 0 and 10, inclusive; or be unset..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectsRequireConteintInDescription">
            <summary>
              Looks up a localized string similar to PREfast defects require descriptions with content..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastDefectsRequireContentInDefectCode">
            <summary>
              Looks up a localized string similar to PREfast defects require content in their defect code..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastFunctionReferenceLineMustBeInRange">
            <summary>
              Looks up a localized string similar to The function line number must be strictly positive; files begin at line 1..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastKeyEventIdMustBeInRange">
            <summary>
              Looks up a localized string similar to KeyEvent ids must be strictly positive..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.PREfastSequenceNumberOutOfRange">
            <summary>
              Looks up a localized string similar to SequenceNumber must be positive, or 0 to disable sequence numbering..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.ValueCannotBeNegative">
            <summary>
              Looks up a localized string similar to The value cannot be negative..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.ValueMustBeAtLeastOne">
            <summary>
              Looks up a localized string similar to The value must be greater than or equal to 1..
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.ExceptionStrings.XmlElementNameWasUnset">
            <summary>
              Looks up a localized string similar to The local element name was not set..
            </summary>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.IEnvironmentVariables">
            <summary>
            An interface for accessing environment variables.
            </summary>
            <remarks>
            Clients wishing to access environment variables should instantiate an EnvironmentVariables
            object rather than directly using the System.Environment class, so they can mock the
            IEnvironmentVariables interface in unit tests.
            </remarks>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.IEnvironmentVariables.ExpandEnvironmentVariables(System.String)">
            <summary>
            Replaces the name of each environment variable embedded in the specified string with
            the string equivalent of the value of the variable, then returns the resulting string.
            </summary>
            <param name="name">
            A string containing the names of zero or more environment variables. Each environment
            variable is quoted with the percent sign character (%).
            </param>
            <returns>
            A string with each environment variable replaced by its value.
            </returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.KeyEventImportance">
            <summary>Kinds of importance that can be applied to a <see cref="!:PREfastKeyEvent"/>.</summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.KeyEventImportance.Essential">
            <summary>This <see cref="!:PREfastKeyEvent"/> (and the SFA to which it is attached) is
            essential to understand the defect.</summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.KeyEventImportance.Full">
            <summary>This <see cref="!:PREfastKeyEvent"/> describes the defect, but may not be
            absolutely necessary to understand its impact.</summary>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash">
            <summary>Murmur hash 3 implementation of IHashCalculator. See
            http://www.codeproject.com/Articles/32829/Hash-Functions-An-Empirical-Comparison
            http://code.google.com/p/smhasher/
            http://code.google.com/p/smhasher/source/browse/trunk/MurmurHash3.cpp
            </summary>
            <remarks>This implementation is the x86_32 version. Note that we don't deal with the "tail" bits of the algorithm
            because we allow only integer inputs.</remarks>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.ConstantOne">
            <summary>The first murmur hash constant.</summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.ConstantTwo">
            <summary>The second murmur hash constant.</summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash._internalState">
            <summary>The internal state of the hash.</summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash._itemCount">
            <summary>Number of items inserted into the hash.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.op_Equality(Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash,Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash)">
            <summary>Equality operator.</summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>true of <paramref name="left"/> is equal to <paramref name="right"/>; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.op_Inequality(Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash,Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash)">
            <summary>Inequality operator.</summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>true of <paramref name="left"/> is not equal to <paramref name="right"/>; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.Add(System.Int32)">
            <summary>Adds item to the calculated hash.</summary>
            <param name="item">The item to add to the calculated hash.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.AddRange(System.Int32[])">
            <summary>Adds multiple items to the calculated hash.</summary>
            <param name="items">The items to add.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.AddRange(System.Collections.Generic.IEnumerable{System.Int32})">
            <summary>Adds multiple items to the calculated hash.</summary>
            <param name="items">The items to add.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.Equals(System.Object)">
            <summary>Indicates whether this instance and a specified object are equal.</summary>
            <param name="obj">Another object to compare to.</param>
            <returns>true if <paramref name="obj" /> and this instance are the same type and
            represent the same value; otherwise, false.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.GetHashCode">
            <summary>Returns the hash code for this instance.</summary>
            <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.ToString">
            <summary>Returns a human readable string describing this instance.</summary>
            <returns>A human readable string describing this instance.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.Add(System.Object)">
            <summary>Adds item to the calculated hash.</summary>
            <param name="item">The item to add to the calculated hash. If this parameter is
            <c>null</c>, the effect will be the same as if its
            <see cref="M:System.Object.GetHashCode" /> function returns 0.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.AddRange(System.Collections.IEnumerable)">
            <summary>Adds a set of items to the calculated hash.</summary>
            <param name="items">The items to add. If any item is <c>null</c>, the effect is the
            same as if that item's <see cref="M:System.Object.GetHashCode" /> returned null.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.Mix(System.UInt32)">
            <summary>Mixes the given hash value.</summary>
            <param name="h">Hash value to process.</param>
            <returns>The mixed hash value.</returns>
            <remarks>This function must be in an unchecked context.</remarks>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MurmurHash.RotateLeft(System.UInt32,System.Byte)">
            <summary>Rotates left.</summary>
            <param name="h">Hash value to process.</param>
            <param name="amount">The amount by which <paramref name="h" /> shall be rotated.</param>
            <returns>The rotated value of <paramref name="h" />.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.Pair">
            <summary>Contains a function to make it less verbose to make key value pairs. Similar to C++'s
            std::make_pair.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.Pair.Make``2(``0,``1)">
            <summary>Makes a pair, with the generic type parameters determined using generic argument deduction.</summary>
            <typeparam name="TKey">Key type.</typeparam>
            <typeparam name="TValue">Value type.</typeparam>
            <param name="key">The key to use in the new pair.</param>
            <param name="value">The value to use in the new pair.</param>
            <returns>A KeyValuePair{TKey,TValue} containing the supplied key and value.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions">
            <summary>Path extension functions.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions.GetPathRelativeToSdlCommon(System.String)">
            <summary>Gets a path relative to the SdlCommon library.</summary>
            <param name="relativePath">The relative path to obtain to SdlCommon.dll.</param>
            <returns>The path relative to the SdlCommon library.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions.TryGetDirectory(System.String)">
            <summary>
            Try to get the directory containing a file or the directory itself if path is a directory.
            </summary>
            <param name="fileOrDirectory">file or directory</param>
            <returns>directory if possible, otherwise null</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions.PathUnescapePath(System.String)">
            <summary>Unescapes a potentially quoted path.</summary>
            <exception cref="T:System.IO.IOException">Thrown when an invalid path is supplied.</exception>
            <param name="sourcePath">The path to unescape.</param>
            <returns>An unescaped version of <paramref name="sourcePath"/>.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions.ReplaceInvalidCharInFileName(System.String,System.String)">
            <summary>
            Replace invalid file name characters in given file name with specified valid character.
            </summary>
            <param name="fileName">The file name to check if contains invalid file name characters.</param>
            <param name="replacement">The string to replace the invalid file name characters.</param>
            <returns>A valid file name string.</returns>
            <exception cref="T:System.ArgumentNullException">Throw when any argument is null.</exception>
            <exception cref="T:System.ArgumentException">Throw if the replacement contains invalid file name character.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.PathExtensions.AddSlashes(System.Char[],System.Int32@,System.Int32)">
            <summary>Adds slashes to the temporary array.</summary>
            <param name="resultTemp">The result temporary array.</param>
            <param name="resultIdx">[in,out] Zero-based index of <paramref name="resultTemp"/> where slashes are being added. On return, set to the next insertion index in <paramref name="resultTemp"/>.</param>
            <param name="slashesToAdd">The number of slashes to add.</param>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1">
            <summary>Reference equals equality comparer.</summary>
            <typeparam name="T">Generic type compared.</typeparam>
            <seealso cref="T:System.Collections.Generic.IEqualityComparer`1"/>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1.Instance">
            <summary>The instance of equality comparer for T.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1.#ctor">
            <summary>
            Prevents clients from constructing <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1"/> instances.
            </summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1.Equals(`0,`0)">
            <summary>Tests if two T objects are considered equal.</summary>
            <param name="x">Left T to be compared.</param>
            <param name="y">Right T to be compared.</param>
            <returns>true if the objects are considered equal, false if they are not.</returns>
            <seealso cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.ReferenceEqualityComparer`1.GetHashCode(`0)">
            <summary>Calculates the hash code for a given T.</summary>
            <param name="obj">The object to get a hash code for.</param>
            <returns>The hash code for <paramref name="obj"/>.</returns>
            <seealso cref="M:System.Collections.Generic.IEqualityComparer`1.GetHashCode(`0)"/>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream">
            <summary>
            "Rental" stream. Wraps a stream object, but prevents the client from calling dispose
            on that stream object. This allows a stream to be passed, for example to TextReader or
            TextWriter, without giving up ownership of the underlying stream.
            </summary>
            <seealso cref="T:System.IO.Stream"/>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream._innerStream">
            <summary>The inner stream.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.#ctor(System.IO.Stream)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream"/> class.</summary>
            <param name="sourceStream">The Stream to process.</param>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.CanRead">
            <summary>
            When overridden in a derived class, gets a value indicating whether the current stream
            supports reading.
            </summary>
            <value>true if the stream supports reading; otherwise, false.</value>
            <seealso cref="P:System.IO.Stream.CanRead"/>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.CanSeek">
            <summary>
            When overridden in a derived class, gets a value indicating whether the current stream
            supports seeking.
            </summary>
            <value>true if the stream supports seeking; otherwise, false.</value>
            <seealso cref="P:System.IO.Stream.CanSeek"/>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.CanWrite">
            <summary>
            When overridden in a derived class, gets a value indicating whether the current stream
            supports writing.
            </summary>
            <value>true if the stream supports writing; otherwise, false.</value>
            <seealso cref="P:System.IO.Stream.CanWrite"/>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Length">
            <summary>
            When overridden in a derived class, gets the length in bytes of the stream.
            </summary>
            <value>A long value representing the length of the stream in bytes.</value>
            <seealso cref="P:System.IO.Stream.Length"/>
            <exception cref="T:System.NotSupportedException">A class derived from Stream does not
            support seeking.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Position">
            <summary>
            When overridden in a derived class, gets or sets the position within the current stream.
            </summary>
            <value>The current position within the stream.</value>
            <seealso cref="P:System.IO.Stream.Position"/>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
            <exception cref="T:System.NotSupportedException">The stream does not support seeking.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Flush">
            <summary>
            When overridden in a derived class, clears all buffers for this stream and causes any
            buffered data to be written to the underlying device.
            </summary>
            <seealso cref="M:System.IO.Stream.Flush"/>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            When overridden in a derived class, reads a sequence of bytes from the current stream and
            advances the position within the stream by the number of bytes read.
            </summary>
            <param name="buffer">An array of bytes. When this method returns, the buffer contains the
            specified byte array with the values between <paramref name="offset" /> and
            (<paramref name="offset" /> + <paramref name="count" /> - 1) replaced by the bytes read from
            the current source.</param>
            <param name="offset">The zero-based byte offset in <paramref name="buffer" /> at which to
            begin storing the data read from the current stream.</param>
            <param name="count">The maximum number of bytes to be read from the current stream.</param>
            <returns>
            The total number of bytes read into the buffer. This can be less than the number of bytes
            requested if that many bytes are not currently available, or zero (0) if the end of the
            stream has been reached.
            </returns>
            <seealso cref="M:System.IO.Stream.Read(System.Byte[],System.Int32,System.Int32)"/>
            <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and
            <paramref name="count" /> is larger than the buffer length.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="buffer" /> is null.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset" /> or
            <paramref name="count" /> is negative.</exception>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
            <exception cref="T:System.NotSupportedException">The stream does not support reading.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            When overridden in a derived class, sets the position within the current stream.
            </summary>
            <param name="offset">A byte offset relative to the <paramref name="origin" /> parameter.</param>
            <param name="origin">A value of type <see cref="T:System.IO.SeekOrigin" /> indicating the
            reference point used to obtain the new position.</param>
            <returns>The new position within the current stream.</returns>
            <seealso cref="M:System.IO.Stream.Seek(System.Int64,System.IO.SeekOrigin)"/>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
            <exception cref="T:System.NotSupportedException">The stream does not support seeking, such
            as if the stream is constructed from a pipe or console output.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.SetLength(System.Int64)">
            <summary>When overridden in a derived class, sets the length of the current stream.</summary>
            <param name="value">The desired length of the current stream in bytes.</param>
            <seealso cref="M:System.IO.Stream.SetLength(System.Int64)"/>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
            <exception cref="T:System.NotSupportedException">The stream does not support both writing
            and seeking, such as if the stream is constructed from a pipe or console output.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            When overridden in a derived class, writes a sequence of bytes to the current stream and
            advances the current position within this stream by the number of bytes written.
            </summary>
            <param name="buffer">An array of bytes. This method copies <paramref name="count" /> bytes
            from <paramref name="buffer" /> to the current stream.</param>
            <param name="offset">The zero-based byte offset in <paramref name="buffer" /> at which to
            begin copying bytes to the current stream.</param>
            <param name="count">The number of bytes to be written to the current stream.</param>
            <seealso cref="M:System.IO.Stream.Write(System.Byte[],System.Int32,System.Int32)"/>
            <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and
            <paramref name="count" /> is greater than the buffer length.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="buffer" /> is null.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset" /> or
            <paramref name="count" /> is negative.</exception>
            <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
            <exception cref="T:System.NotSupportedException">The stream does not support writing.</exception>
            <exception cref="T:System.ObjectDisposedException">Methods were called after the stream
            was closed.</exception>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream.Dispose(System.Boolean)">
            <summary>Seeks the underlying stream back to the state it was in before this <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.RentalStream"/> was
            constructed. Satisfies the contract of the base class, System.IO.Stream.Dispose(bool).</summary>
            <param name="disposing">Unused parameter.</param>
            <seealso cref="M:System.IO.Stream.Dispose(System.Boolean)"/>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.DefaultDriverOptions">
            <summary>
            Options that cut across all rules that are provided by a driver. Currently restricted to a
            single setting that allows for rules to be explicitly disabled. In the future, this
            same mechanism will be improved to allow configuration to alter the warning level
            for a result.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.DefaultDriverOptions.RuleEnabled">
            <summary>
            Enable namespace import optimization.
            </summary>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.DriverEventSource">
            <summary>
             EventSource is an ETW EventSource for Microsoft.CodeAnalysis.Sarif.PatternMatcher events, allowing performance tracing.
             https://learn.microsoft.com/en-us/dotnet/core/diagnostics/eventsource-instrumentation
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.MultifileCommandBase.ProcessingName">
            <summary>
            Gets a label that reflects the processing capability of this command. This
            label will be used as a suffix for default log file names created during
            execution. e.g., a ProcessingName value of 'merged' applied to an input
            file named 'MyInput.sarif' will, by default, create an output log file named
            'MyInput-merged.sarif'.
            </summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.MultithreadedAnalyzeCommandBase`2.GetConfigurationFileName(System.String,Microsoft.CodeAnalysis.Sarif.IFileSystem)">
            <summary>
            Calculate the file to load the configuration from.
            </summary>
            <param name="options">Options</param>
            <returns>Configuration file path, or null if the built in configuration should be used.</returns>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RuleEnabledState.Default">
            <summary>
            Unknown state. Rule will raise all notifications according
            to helpers invoked during execution state.
            </summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RuleEnabledState.Disabled">
            <summary>
            User has disabled a rule. This should always result in a tool
            warning, in order to preserve knowledge that some portion of
            analysis was disabled.
            </summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RuleEnabledState.Warning">
            <summary>
            User has reduced all signal from a rule to warnings. Warnings
            should always be persisted to reports but may not block
            engineering processes.
            </summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RuleEnabledState.Error">
            <summary>
            User has elevated all failures from a check to errors.
            </summary>
        </member>
        <member name="F:Microsoft.CodeAnalysis.Sarif.Driver.RuleEnabledState.Note">
            <summary>
            User has reduced all signal from a rule to notes.
            </summary>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion">
            <summary>
            The SemanticVersion class implements Semantic Versioning based on the
            http://semver.org/ summary 2.0.0
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Major">
            <summary>
            Major version.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Metadata">
            <summary>
            Metadata which is not used for version comparison.
            This contains the value after the plus sign as described below
            Build metadata MAY be denoted by appending a plus sign and a series of dot separated
            identifiers immediately following the patch or pre-release version.
            Identifiers MUST comprise only ASCII alphanumerics and hyphen [0-9A-Za-z-].
            Identifiers MUST NOT be empty.
            Build metadata SHOULD be ignored when determining version precedence.
            Thus two versions that differ only in the build metadata, have the same precedence.
            Examples: 1.0.0-alpha+001, 1.0.0+20130313144700, 1.0.0-beta+exp.sha.5114f85.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Minor">
            <summary>
            Minor version.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Patch">
            <summary>
            Patch version.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.PatchMinor">
            <summary>
            This is used in cases where the version had 4 numbers. This is a violation of Semantic Version spec, but
            the retire data has cases of this so we will allow it, but make is read only.
            </summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Prerelease">
            <summary>
            This contains the value after the hyphen as described below.
            A pre-release version MAY be denoted by appending a hyphen and a series of dot separated
            identifiers immediately following the patch version. Identifiers MUST comprise only
            ASCII alphanumerics and hyphen [0-9A-Za-z-]. Identifiers MUST NOT be empty.
            Numeric identifiers MUST NOT include leading zeroes.
            Pre-release versions have a lower precedence than the associated normal version.
            A pre-release version indicates that the version is unstable and might not satisfy
            the intended compatibility requirements as denoted by its associated normal version.
            Examples: 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-0.3.7, 1.0.0-x.7.z.92.
            </summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.#ctor">
            <summary>
            Construct Semantic version.
            </summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.#ctor(System.String)">
            <summary>
            Construct version from a string.
            </summary>
            <param name="version">Version string</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.ComparePreRelease(System.String,System.String)">
            <summary>
            Compares two prerelease values based on the SemanticVersion specification (identifier at a time).
            </summary>
            <param name="left">A Series of dot separated identifiers to be compared.</param>
            <param name="right">A Series of dot separated identifiers to be compared.</param>
            <returns>
            returns 1 if left is greater than  right, -1 if left is less than right, 0 if they are equal.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.CompareTo(System.Object)">
            <summary>
            Compares Semantic Version according to the specification 2.0.0 at http://semver.org/
            </summary>
            <param name="obj">Object to compare this to.</param>
            <returns>
            returns 1 if this is greater than obj, -1 if this is less than obj, 0 if they are equal.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.op_LessThan(Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion,Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion)">
            <summary>
            Operator > for version comparison.
            </summary>
            <param name="left">Version on left side of expression.</param>
            <param name="right">Version on right side of expression.</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.op_GreaterThan(Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion,Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion)">
            <summary>
            Operator > for version comparison.
            </summary>
            <param name="left">Version on left side of expression.</param>
            <param name="right">Version on right side of expression.</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.op_Equality(Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion,Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion)">
            <summary>
            Operator == for version comparison.
            </summary>
            <param name="left">Version on left side of expression.</param>
            <param name="right">Version on right side of expression.</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.op_Inequality(Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion,Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion)">
            <summary>
            Operator != for version comparison.
            </summary>
            <param name="left">Version on left side of expression.</param>
            <param name="right">Version on right side of expression.</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Equals(System.Object)">
            <summary>
            Override Equals for version comparison.
            </summary>
            <param name="obj">Version to compare.</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.GetHashCode">
            <summary>
            Get the hash code for the object.
            </summary>
            <returns>The hash code of the Semantic Version</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.ToString">
            <summary>
            Convert to a string.
            </summary>
            <returns>
            Returns a string representation of this object.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.Parse(System.String)">
            <summary>
            Parse the version from a given string.
            </summary>
            <param name="version">Version in Semantic Version format http://semver.org/ </param>
            <returns>A SemanticVersion object.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.op_Explicit(System.String)~Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion">
            <summary>
            Handle explicit conversion so the Json de-serializer will function.
            </summary>
            <param name="version"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.MakeLegalVersion(System.String)">
            <summary>
            Try to make a legal version to fix RetireData errors.
            </summary>
            <param name="version"></param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion.TryParse(System.String,Microsoft.CodeAnalysis.Sarif.Driver.SemanticVersion@)">
            <summary>
            Parse the version from a given string.
            </summary>
            <param name="version">Input version string in Semantic Version format.</param>
            <param name="result">SemanticVersion object.</param>
            <returns>Returns true if successful, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.SkimmerIdComparer`1">
            <summary>
            This partly implemented Skimmer comparer simply orders skimmers by their Ids and Names.
            This provides for some basic sort ordering to help produce deterministically ordered analysis.
            </summary>
            <typeparam name="TContext"></typeparam>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.StringExtensions">
            <summary>Extensions on the <see cref="T:System.String"/> class.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.StringExtensions.ClampToNullIfWhiteSpace(System.String)">
            <summary>Gets a null value for null or whitespace strings. Otherwise passes though the source string unchanged.</summary>
            <param name="target">The string to check.</param>
            <returns>If <paramref name="target"/> is <c>null</c> or whitespace, <c>null</c>; otherwise <paramref name="target"/>.</returns>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory">
            <summary>
            Temporary directory class; implements <see cref="T:System.IDisposable"/> to ensure an effort is made to
            delete the temporary directory in the face of exceptions. If you only need a single file, use the
            <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempFile"/> class instead.
            </summary>
            <seealso cref="T:System.IDisposable"/>
            <seealso cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempFile"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory"/> class.</summary>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Name">
            <summary>Gets the name of the generated directory.</summary>
            <value>The name of the generated directory.</value>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Combine(System.String)">
            <summary>
            Gets the full path to a file with the supplied name inside this temp directory.
            </summary>
            <param name="fileName">File name of the file path to generate.</param>
            <returns>
            The current <see cref="P:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Name"/> combined with <paramref name="fileName"/>.
            </returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Touch(System.String)">
            <summary>Touches the given file in the temp directory.</summary>
            <param name="fileName">File name of the file path to generate.</param>
            <returns>The full path to the file created or updated.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Write(System.String,System.String)">
            <summary>Writes text to the given file in the temp directory.</summary>
            <param name="fileName">File name of the file path to generate.</param>
            <param name="text">The text to write.</param>
            <returns>The full path to the file created or updated.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged
            resources. Makes a best-effort attempt to delete the temporary directory.
            </summary>
            <seealso cref="M:System.IDisposable.Dispose()"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory.Finalize">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged
            resources. Makes a best-effort attempt to delete the temporary directory.
            </summary>
            <seealso cref="M:System.Object.Finalize()"/>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.TempFile">
            <summary>
            Temporary file class; implements <see cref="T:System.IDisposable"/> to ensure an effort is made to
            delete the temporary file in the face of exceptions. If you need a directory or set of
            files instead of a file, use the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory"/> class instead.
            </summary>
            <seealso cref="T:System.IDisposable"/>
            <seealso cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempDirectory"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.#ctor">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempFile"/> class.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.#ctor(System.String)">
            <summary>Initializes a new instance of the <see cref="T:Microsoft.CodeAnalysis.Sarif.Driver.TempFile"/> class where the file name has the indicated extension.</summary>
            <param name="requestedExtension">The requested extension.</param>
        </member>
        <member name="P:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.Name">
            <summary>Gets the name of the generated file.</summary>
            <value>The name of the generated file.</value>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.CreateTempName">
            <summary>Creates temporary path name.</summary>
            <returns>A temporary path name where a file is not present on the file system.</returns>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged
            resources. Makes a best-effort attempt to delete the temporary file.
            </summary>
            <seealso cref="M:System.IDisposable.Dispose()"/>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.TempFile.Finalize">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged
            resources. Makes a best-effort attempt to delete the temporary file.
            </summary>
            <seealso cref="M:System.Object.Finalize()"/>
        </member>
        <member name="T:Microsoft.CodeAnalysis.Sarif.Driver.XmlWriterExtensions">
            <summary>Extension methods applied to class XmlWriter.</summary>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.XmlWriterExtensions.WriteElementInt(System.Xml.XmlWriter,System.String,System.Int32)">
            <summary>Writes an element whose value is the supplied integer.</summary>
            <param name="writer">The writer to which an element shall be written.</param>
            <param name="localElementName">The name of the element to be written.</param>
            <param name="value">The value of the resulting element.</param>
        </member>
        <member name="M:Microsoft.CodeAnalysis.Sarif.Driver.XmlWriterExtensions.WriteElementIfNonempty(System.Xml.XmlWriter,System.String,System.String)">
            <summary>Writes an element if the supplied value is not null or whitespace.</summary>
            <exception cref="T:System.ArgumentNullException">Thrown when <paramref name="writer"/> is null.</exception>
            <exception cref="T:System.ArgumentException">Thrown when <paramref name="localElementName"/> is not set.</exception>
            <param name="writer">The writer to which an element shall be written.</param>
            <param name="localElementName">The name of the element to be written.</param>
            <param name="elementValue">The element string if the element should be written; otherwise, null.</param>
        </member>
    </members>
</doc>
