protected AbstractNonSubstitutableMemberAnalyzer(
     IDiagnosticDescriptorsProvider diagnosticDescriptorsProvider,
     ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder)
     : base(diagnosticDescriptorsProvider)
 {
     _analyzeInvocationAction = AnalyzeInvocation;
     _substitutionNodeFinder  = substitutionNodeFinder;
     SupportedDiagnostics     = ImmutableArray.Create(DiagnosticDescriptorsProvider.NonVirtualSetupSpecification, DiagnosticDescriptorsProvider.InternalSetupSpecification);
 }
예제 #2
0
 protected AbstractCallInfoAnalyzer(
     IDiagnosticDescriptorsProvider diagnosticDescriptorsProvider,
     ICallInfoFinder <TInvocationExpressionSyntax, TIndexerExpressionSyntax> callInfoFinder,
     ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder)
     : base(diagnosticDescriptorsProvider)
 {
     _callInfoFinder         = callInfoFinder;
     _substitutionNodeFinder = substitutionNodeFinder;
 }
예제 #3
0
 protected AbstractReceivedInReceivedInOrderAnalyzer(
     ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder,
     IDiagnosticDescriptorsProvider diagnosticDescriptorsProvider)
     : base(diagnosticDescriptorsProvider)
 {
     _substitutionNodeFinder  = substitutionNodeFinder;
     _analyzeInvocationAction = AnalyzeInvocation;
     SupportedDiagnostics     = ImmutableArray.Create(diagnosticDescriptorsProvider.ReceivedUsedInReceivedInOrder);
 }
예제 #4
0
        protected AbstractCallInfoAnalyzer(
            IDiagnosticDescriptorsProvider diagnosticDescriptorsProvider,
            ICallInfoFinder <TInvocationExpressionSyntax, TIndexerExpressionSyntax> callInfoFinder,
            ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder)
            : base(diagnosticDescriptorsProvider)
        {
            _callInfoFinder          = callInfoFinder;
            _substitutionNodeFinder  = substitutionNodeFinder;
            _analyzeInvocationAction = AnalyzeInvocation;

            SupportedDiagnostics = ImmutableArray.Create(
                DiagnosticDescriptorsProvider.CallInfoArgumentOutOfRange,
                DiagnosticDescriptorsProvider.CallInfoCouldNotConvertParameterAtPosition,
                DiagnosticDescriptorsProvider.CallInfoCouldNotFindArgumentToThisCall,
                DiagnosticDescriptorsProvider.CallInfoMoreThanOneArgumentOfType,
                DiagnosticDescriptorsProvider.CallInfoArgumentSetWithIncompatibleValue,
                DiagnosticDescriptorsProvider.CallInfoArgumentIsNotOutOrRef);
        }
예제 #5
0
 protected AbstractNonSubstitutableMemberWhenAnalyzer(IDiagnosticDescriptorsProvider diagnosticDescriptorsProvider, ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder)
     : base(diagnosticDescriptorsProvider)
 {
     _substitutionNodeFinder = substitutionNodeFinder;
 }
예제 #6
0
 private ReEntrantCallFinder(ISubstitutionNodeFinder <InvocationExpressionSyntax> substitutionNodeFinder)
     : base(substitutionNodeFinder)
 {
 }
 protected AbstractReEntrantCallFinder(ISubstitutionNodeFinder <TInvocationExpressionSyntax> substitutionNodeFinder)
 {
     _substitutionNodeFinder = substitutionNodeFinder;
 }