<?xml version="1.0"?>
<doc>
    <assembly>
        <name>SimpleInjector.Diagnostics</name>
    </assembly>
    <members>
        <member name="T:SimpleInjector.Diagnostics.Analyzer">
            <summary>
            Entry point for doing diagnostic analysis on <see cref="T:SimpleInjector.Container"/> instances.
            </summary>
            <example>
            The following example shows the usage of the <b>Analyzer</b> class:
            <code lang="cs"><![CDATA[
            DiagnosticResult[] results = Analyzer.Analyze(container);
            
            var typesWithAShortedLifetimeThanTheirDependencies =
                from result in results
                where result.DiagnosticType == DiagnosticType.PotentialLifestyleMismatch
                let mismatch = (PotentialLifestyleMismatchDiagnosticResult)result
                select mismatch.Relationship.ImplementationType;
            ]]></code>
            </example>
        </member>
        <member name="M:SimpleInjector.Diagnostics.Analyzer.Analyze(SimpleInjector.Container)">
            <summary>
            Analyzes the supplied <paramref name="container"/> instance.
            </summary>
            <param name="container">The container instance to analyze.</param>
            <returns>A collection of <see cref="T:SimpleInjector.Diagnostics.DiagnosticResult"/> sub types that describe the diagnostic
            warnings and messages.</returns>
        </member>
        <member name="T:SimpleInjector.Diagnostics.ContainerRegisteredServiceDiagnosticResult">
            <summary>
            Diagnostic result for a warning about a concrete type that was not registered explicitly and was not 
            resolved using unregistered type resolution, but was created by the container using the transient 
            lifestyle.
            For more information, see: https://simpleinjector.org/diaut.
            </summary>
        </member>
        <member name="T:SimpleInjector.Diagnostics.DiagnosticResult">
            <summary>
            Base class for types that hold information about a single diagnostic message or warning for a
            particular type or part of the configuration.
            </summary>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticResult.DiagnosticType">
            <summary>Gets the diagnostic type of this result.</summary>
            <value>The <see cref="P:SimpleInjector.Diagnostics.DiagnosticResult.DiagnosticType"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticResult.ServiceType">
            <summary>Gets the service type to which this warning is related.</summary>
            <value>A <see cref="T:System.Type"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticResult.Description">
            <summary>Gets the description of the diagnostic result.</summary>
            <value>A <see cref="T:System.String"/> with the description.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticResult.Group">
            <summary>Gets the hierarchical group to which this diagnostic result belongs.</summary>
            <value>The <see cref="T:SimpleInjector.Diagnostics.DiagnosticGroup"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.ContainerRegisteredServiceDiagnosticResult.Relationships">
            <summary>Gets a collection of <see cref="T:SimpleInjector.Advanced.KnownRelationship"/> instances that describe all 
            container-registered dependencies for the given component.</summary>
            <value>List of <see cref="T:SimpleInjector.Advanced.KnownRelationship"/> objects.</value>
        </member>
        <member name="T:SimpleInjector.Diagnostics.DiagnosticGroup">
            <summary>
            A hierarchical group of <see cref="T:SimpleInjector.Diagnostics.DiagnosticResult"/>.
            </summary>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.GroupType">
            <summary>
            Gets the base <see cref="P:SimpleInjector.Diagnostics.DiagnosticGroup.DiagnosticType"/> that describes the service types of its 
            <see cref="P:SimpleInjector.Diagnostics.DiagnosticGroup.Results"/>. The value often be either <see cref="T:System.Object"/> (in case this is a
            root group) or a partial generic type to allow hierarchical grouping of a large number of related
            generic types.
            </summary>
            <value>The <see cref="T:System.Type"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.Name">
            <summary>Gets the friendly name of the group.</summary>
            <value>The name.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.Description">
            <summary>Gets the description of the group.</summary>
            <value>The description.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.DiagnosticType">
            <summary>Gets the diagnostic type of all grouped <see cref="T:SimpleInjector.Diagnostics.DiagnosticResult"/> instances.</summary>
            <value>The <see cref="P:SimpleInjector.Diagnostics.DiagnosticGroup.DiagnosticType"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.Parent">
            <summary>Gets the parent <see cref="T:SimpleInjector.Diagnostics.DiagnosticGroup"/> or null (Nothing in VB) when this is the
            root group.</summary>
            <value>The <see cref="T:SimpleInjector.Diagnostics.DiagnosticGroup"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.Children">
            <summary>Gets the collection of child <see cref="T:SimpleInjector.Diagnostics.DiagnosticGroup"/>s.</summary>
            <value>A collection of <see cref="T:SimpleInjector.Diagnostics.DiagnosticGroup"/> elements.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.DiagnosticGroup.Results">
            <summary>Gets the collection of <see cref="T:SimpleInjector.Diagnostics.DiagnosticResult"/> instances.</summary>
            /// <value>A collection of <see cref="T:SimpleInjector.Diagnostics.DiagnosticResult"/> elements.</value>
        </member>
        <member name="T:SimpleInjector.Diagnostics.DiagnosticType">
            <summary>
            Specifies the list of diagnostic types that are currently supported by the diagnostic 
            <see cref="T:SimpleInjector.Diagnostics.Analyzer"/>. Note that new diagnostic types might be added in future versions.
            For more information, please read the 
            <a href="https://simpleinjector.org/diagnostics">Diagnosing your configuration using the Diagnostic 
            Services</a> wiki documentation.
            </summary>
        </member>
        <member name="F:SimpleInjector.Diagnostics.DiagnosticType.ContainerRegisteredComponent">
            <summary>
            Diagnostic type that warns about 
            a concrete type that was not registered explicitly and was not resolved using unregistered type 
            resolution, but was created by the container using the transient lifestyle.
            For more information, see: https://simpleinjector.org/diaut.
            </summary>
        </member>
        <member name="F:SimpleInjector.Diagnostics.DiagnosticType.PotentialLifestyleMismatch">
            <summary>
            Diagnostic type that warns when a 
            component depends on a service with a lifestyle that is shorter than that of the component.
            For more information, see: https://simpleinjector.org/dialm.
            </summary>
        </member>
        <member name="F:SimpleInjector.Diagnostics.DiagnosticType.ShortCircuitedDependency">
            <summary>
            Diagnostic type that warns when a
            component depends on an unregistered concrete type and this concrete type has a lifestyle that is 
            different than the lifestyle of an explicitly registered type that uses this concrete type as its 
            implementation.
            For more information, see: https://simpleinjector.org/diasc.
            </summary>
        </member>
        <member name="F:SimpleInjector.Diagnostics.DiagnosticType.SingleResponsibilityViolation">
            <summary>
            Diagnostic type that warns when a
            component depends on (too) many services.
            For more information, see: https://simpleinjector.org/diasr.
            </summary>
        </member>
        <member name="T:SimpleInjector.Diagnostics.PotentialLifestyleMismatchDiagnosticResult">
            <summary>
            Diagnostic result for a warning about a
            component that depends on a service with a lifestyle that is shorter than that of the component.
            For more information, see: https://simpleinjector.codeplex.com/wikipage?title=PotentialLifestyleMismatches.
            </summary>
        </member>
        <member name="P:SimpleInjector.Diagnostics.PotentialLifestyleMismatchDiagnosticResult.Relationship">
            <summary>Gets the object that describes the relationship between the component and its dependency.</summary>
            <value>A <see cref="T:SimpleInjector.Advanced.KnownRelationship"/> instance.</value>
        </member>
        <member name="T:SimpleInjector.Diagnostics.ShortCircuitedDependencyDiagnosticResult">
            <summary>
            Diagnostic result that warns about a
            component that depends on an unregistered concrete type and this concrete type has a lifestyle that is 
            different than the lifestyle of an explicitly registered type that uses this concrete type as its 
            implementation.
            For more information, see: https://simpleinjector.codeplex.com/wikipage?title=ShortCircuitedDependencies.
            </summary>
        </member>
        <member name="P:SimpleInjector.Diagnostics.ShortCircuitedDependencyDiagnosticResult.Relationship">
            <summary>Gets the instance that describes the current relationship between the checked component
            and the short-circuited dependency.</summary>
            <value>The <see cref="T:SimpleInjector.Advanced.KnownRelationship"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.ShortCircuitedDependencyDiagnosticResult.ExpectedDependencies">
            <summary>
            Gets the collection of registrations that have the component's current dependency as 
            implementation type, but have a lifestyle that is different than the current dependency.
            </summary>
            <value>A collection of <see cref="T:SimpleInjector.InstanceProducer"/> instances.</value>
        </member>
        <member name="T:SimpleInjector.Diagnostics.SingleResponsibilityViolationDiagnosticResult">
            <summary>
            Diagnostic result that warns about a component that depends on (too) many services.
            For more information, see: https://simpleinjector.codeplex.com/wikipage?title=PotentialSingleResponsibilityViolations.
            </summary>
        </member>
        <member name="P:SimpleInjector.Diagnostics.SingleResponsibilityViolationDiagnosticResult.ImplementationType">
            <summary>Gets the created type.</summary>
            <value>A <see cref="T:System.Type"/>.</value>
        </member>
        <member name="P:SimpleInjector.Diagnostics.SingleResponsibilityViolationDiagnosticResult.Dependencies">
            <summary>Gets the list of registrations that are dependencies of the <see cref="P:SimpleInjector.Diagnostics.SingleResponsibilityViolationDiagnosticResult.ImplementationType"/>.</summary>
            <value>A collection of <see cref="T:SimpleInjector.InstanceProducer"/> instances.</value>
        </member>
    </members>
</doc>
