static public MethodExpressionAnalysis FromSemanticModel(MethodDeclarationSyntax methodSyntax, SemanticModel semanticModel) { var expression = SyntaxOperations.GetBodyOfMethod(methodSyntax).B.Common; var dataFlow = semanticModel.AnalyzeDataFlow(expression); return(new MethodExpressionAnalysis(methodSyntax, expression, semanticModel, dataFlow)); }
static public MethodBlockAnalysis FromSemanticModel(MethodDeclarationSyntax methodSyntax, SemanticModel semanticModel) { var block = SyntaxOperations.GetBodyOfMethod(methodSyntax).A; var controlFlow = semanticModel.AnalyzeControlFlow(block); var dataFlow = semanticModel.AnalyzeDataFlow(block); return(new MethodBlockAnalysis(methodSyntax, block, semanticModel, controlFlow, dataFlow)); }