@@ -8656,7 +8656,8 @@ <h3>Example</h3>
8656
8656
<p>The lint checks for <code>if</code>-statements appearing in loops
8657
8657
that contain a <code>continue</code> statement in either their main blocks or their
8658
8658
<code>else</code>-blocks, when omitting the <code>else</code>-block possibly with some
8659
- rearrangement of code can make the code easier to understand.</p>
8659
+ rearrangement of code can make the code easier to understand.
8660
+ The lint also checks if the last statement in the loop is a <code>continue</code></p>
8660
8661
<h3>Why is this bad?</h3>
8661
8662
<p>Having explicit <code>else</code> blocks for <code>if</code> statements
8662
8663
containing <code>continue</code> in their THEN branch adds unnecessary branching and
@@ -8702,6 +8703,42 @@ <h3>Example</h3>
8702
8703
# break;
8703
8704
}
8704
8705
</code></pre>
8706
+ <pre><code class="language-rust">
8707
+ fn foo() -> ErrorKind { ErrorKind::NotFound }
8708
+ for _ in 0..10 {
8709
+ match foo() {
8710
+ ErrorKind::NotFound => {
8711
+ eprintln!("not found");
8712
+ continue
8713
+ }
8714
+ ErrorKind::TimedOut => {
8715
+ eprintln!("timeout");
8716
+ continue
8717
+ }
8718
+ _ => {
8719
+ eprintln!("other error");
8720
+ continue
8721
+ }
8722
+ }
8723
+ }
8724
+ </code></pre>
8725
+ <p>Could be rewritten as</p>
8726
+ <pre><code class="language-rust">
8727
+ fn foo() -> ErrorKind { ErrorKind::NotFound }
8728
+ for _ in 0..10 {
8729
+ match foo() {
8730
+ ErrorKind::NotFound => {
8731
+ eprintln!("not found");
8732
+ }
8733
+ ErrorKind::TimedOut => {
8734
+ eprintln!("timeout");
8735
+ }
8736
+ _ => {
8737
+ eprintln!("other error");
8738
+ }
8739
+ }
8740
+ }
8741
+ </code></pre>
8705
8742
</div><div class="lint-additional-info-container"><div class="lint-additional-info-item"><span> Applicability: </span><span class="label label-default label-applicability">Unspecified</span><a href="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_lint_defs/enum.Applicability.html#variants">(?)</a></div><div class="lint-additional-info-item"><span>Added in: </span><span class="label label-default label-version">pre 1.29.0</span></div><div class="lint-additional-info-item"><a href="https://github.com/rust-lang/rust-clippy/issues?q=is%3Aissue+needless_continue">Related Issues</a></div><div class="lint-additional-info-item"><a href="https://github.com/rust-lang/rust-clippy/blob/master/clippy_lints/src/needless_continue.rs#L8">View Source</a></div></div></div></article><article class="panel panel-default" id="needless_doctest_main"><input id="label-needless_doctest_main" type="checkbox"><label for="label-needless_doctest_main" onclick="highlightIfNeeded('needless_doctest_main')"><header class="panel-heading"><h2 class="panel-title"><div class="panel-title-name" id="lint-needless_doctest_main"><span>needless_doctest_main</span> <a href="#needless_doctest_main" onclick="lintAnchor(event)" class="anchor label label-default">¶</a> <a href="" class="anchor label label-default" onclick="copyToClipboard(event)">📋</a></div><div class="panel-title-addons"><span class="label label-lint-group label-default label-group-style">style</span> <span class="label label-lint-level label-lint-level-warn">warn</span> <span class="label label-doc-folding"></span></div></h2></header></label><div class="list-group lint-docs"><div class="list-group-item lint-doc-md"><h3>What it does</h3>
8706
8743
<p>Checks for <code>fn main() { .. }</code> in doctests</p>
8707
8744
<h3>Why is this bad?</h3>
0 commit comments