private static bool IsSynchronouslyJoined()

in src/Microsoft.VisualStudio.SDK.Analyzers/VSSDK007ThreadHelperJTFRunAsync.cs [161:174]


        private static bool IsSynchronouslyJoined(SyntaxNodeAnalysisContext context, InvocationExpressionSyntax invocationExpr)
        {
            if (invocationExpr.Parent == null ||
                invocationExpr.Parent is not MemberAccessExpressionSyntax ||
                context.SemanticModel.GetSymbolInfo(invocationExpr.Parent, context.CancellationToken).Symbol is not IMethodSymbol methodSymbol ||
                methodSymbol.Name != Types.JoinableTask.Join)
            {
                return false;
            }

            return
                methodSymbol.ContainingType.Name == Types.JoinableTask.TypeName &&
                methodSymbol.ContainingType.BelongsToNamespace(Types.JoinableTaskFactory.Namespace);
        }