private static void ReportAtLastClause([NotNull] ISwitchCaseOperation switchCase, OperationAnalysisContext context) { ICaseClauseOperation lastClause = switchCase.Clauses.Last(); Location location = lastClause.GetLocationForKeyword(); context.ReportDiagnostic(Diagnostic.Create(Rule, location)); }
public override void VisitSwitchCase(ISwitchCaseOperation operation) { Assert.Equal(OperationKind.SwitchCase, operation.Kind); VisitLocals(operation.Locals); AssertEx.Equal(operation.Clauses.Concat(operation.Body), operation.Children); VerifySubTree(((BaseSwitchCase)operation).Condition); }
private static bool HasDefaultCase(ISwitchCaseOperation switchCase) { foreach (var clause in switchCase.Clauses) { if (clause.CaseKind == CaseKind.Default) { return(true); } } return(false); }
private void Analyze(OperationAnalysisContext obj) { ISwitchOperation operation = (ISwitchOperation)obj.Operation; if (operation.Cases.Length != 1) { return; } ISwitchCaseOperation caseOperation = operation.Cases[0]; if (caseOperation.Clauses.Any(x => x.Label?.Name == "default")) { obj.ReportDiagnostic(Diagnostic.Create(Rule, operation.Cases[0].Syntax.GetLocation())); return; } }
public override IOperation VisitSwitchCase(ISwitchCaseOperation operation, object argument) { return(new SwitchCase(operation.Locals, ((BaseSwitchCase)operation).Condition, VisitArray(operation.Clauses), VisitArray(operation.Body), ((Operation)operation).SemanticModel, operation.Syntax, operation.Type, operation.ConstantValue, operation.IsImplicit)); }
public override void VisitSwitchCase(ISwitchCaseOperation operation) { Assert.Equal(OperationKind.SwitchCase, operation.Kind); AssertEx.Equal(operation.Clauses.Concat(operation.Body), operation.Children); }
public virtual void VisitSwitchCase(ISwitchCaseOperation operation) { DefaultVisit(operation); }
public override void VisitSwitchCase([NotNull] ISwitchCaseOperation operation) { VisitArray(operation.Clauses); }
public override void VisitSwitchCase([NotNull] ISwitchCaseOperation operation) { base.VisitSwitchCase(operation); }
public override bool VisitSwitchCase([NotNull] ISwitchCaseOperation operation1, [CanBeNull] IOperation argument) { return(argument is ISwitchCaseOperation operation2 && AreBaseOperationsEqual(operation1, operation2)); }