Differential D130181 Diff 449048 clang-tools-extra/test/clang-tidy/checkers/readability/use-early-exits-split.cpp
Changeset View
Changeset View
Standalone View
Standalone View
clang-tools-extra/test/clang-tidy/checkers/readability/use-early-exits-split.cpp
- This file was added.
// RUN: %check_clang_tidy %s readability-use-early-exits -format-style=llvm %t -- \ | |||||
// RUN: -config="{CheckOptions: {readability-use-early-exits.LineCountThreshold: 2, \ | |||||
// RUN: readability-use-early-exits.SplitConjunctions: true}}" | |||||
void padLines(); | |||||
bool A, B, C; | |||||
void conjunction() { | |||||
// CHECK-MESSAGES: [[@LINE+2]]:5: warning: use early exit | |||||
while (true) { | |||||
if (A && B) { | |||||
padLines(); | |||||
} | |||||
} | |||||
// CHECK-FIXES: while (true) { | |||||
// CHECK-FIXES-NEXT: if (!A) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (!B) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: padLines(); | |||||
// CHECK-FIXES-NEXT: } | |||||
// CHECK-MESSAGES: [[@LINE+2]]:5: warning: use early exit | |||||
while (true) { | |||||
if (A && B && !C) { | |||||
padLines(); | |||||
} | |||||
} | |||||
// CHECK-FIXES: while (true) { | |||||
// CHECK-FIXES-NEXT: if (!A) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (!B) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (C) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: padLines(); | |||||
// CHECK-FIXES-NEXT: } | |||||
// CHECK-MESSAGES: [[@LINE+3]]:5: warning: use early exit | |||||
// CHECK-MESSAGES: [[@LINE+3]]:7: warning: use early exit | |||||
while (true) { | |||||
if (A && B) { | |||||
if (B && !C) { | |||||
padLines(); | |||||
} | |||||
} | |||||
} | |||||
// CHECK-FIXES: while (true) { | |||||
// CHECK-FIXES-NEXT: if (!A) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (!B) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (!B) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: if (C) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: padLines(); | |||||
// CHECK-FIXES-NEXT: } | |||||
} | |||||
void disjunction() { | |||||
// CHECK-MESSAGES: [[@LINE+2]]:5: warning: use early exit | |||||
while (true) { | |||||
if (A || B) { | |||||
padLines(); | |||||
} | |||||
} | |||||
// CHECK-FIXES: while (true) { | |||||
// CHECK-FIXES-NEXT: if (!(A || B)) | |||||
// CHECK-FIXES-NEXT: continue; | |||||
// CHECK-FIXES-EMPTY: | |||||
// CHECK-FIXES-NEXT: padLines(); | |||||
// CHECK-FIXES-NEXT: } | |||||
} |