private static bool CanRefactor(RefactoringContext context, BlockSyntax block) { if (context.Span.IsEmptyOrBetweenSpans(block) && EmbeddedStatementAnalysis.IsEmbeddableBlock(block)) { StatementSyntax statement = EmbeddedStatementAnalysis.GetEmbeddedStatement(block.Statements[0]); return(statement == null || !statement.FullSpan.Contains(context.Span)); } return(false); }
private static bool CanRefactorIfElse(BlockSyntax selectedBlock, IfStatementSyntax topmostIf) { bool success = false; foreach (BlockSyntax block in GetBlocks(topmostIf)) { if (block == selectedBlock) { continue; } else if (EmbeddedStatementAnalysis.IsEmbeddableBlock(block)) { success = true; } else { return(false); } } return(success); }