private void AnalyzeSubstituteForPartsOf(SubstituteContext <TInvocationExpressionSyntax> substituteContext) { var proxyType = substituteContext.MethodSymbol.TypeArguments.FirstOrDefault(); if (proxyType == null) { return; } if (AnalyzeTypeKind(substituteContext, proxyType)) { return; } if (AnalyzeTypeAccessability(substituteContext, proxyType)) { return; } if (proxyType.TypeKind != TypeKind.Class) { return; } var constructorContext = SubstituteConstructorAnalysis.CollectConstructorContext(substituteContext, proxyType); AnalyzeConstructor(substituteContext, constructorContext); }
private void AnalyzePartialSubstitute(SubstituteContext <TInvocationExpressionSyntax> substituteContext) { if (AnalyzeProxies(substituteContext)) { return; } var proxyType = SubstituteProxyAnalysis.GetActualProxyTypeSymbol(substituteContext); if (proxyType == null) { return; } if (AnalyzeTypeKind(substituteContext, proxyType)) { return; } if (AnalyzeTypeAccessability(substituteContext, proxyType)) { return; } if (proxyType.TypeKind != TypeKind.Class) { return; } var constructorContext = SubstituteConstructorAnalysis.CollectConstructorContext(substituteContext, proxyType); AnalyzeConstructor(substituteContext, constructorContext); }