| # Copyright (c) HashiCorp, Inc. |
| # SPDX-License-Identifier: MPL-2.0 |
| |
| rules: |
| - id: odd-sequence-ifs |
| patterns: |
| - pattern-either: |
| - pattern: | |
| if $X { return ... } |
| if $X { ... } |
| - pattern: | |
| if ! $X { return ... } |
| if $X { ... } |
| - pattern: | |
| if $X { return ... } |
| if ! $X { ... } |
| - pattern: | |
| if $X == $Y { return ... } |
| if $X != $Y { ... } |
| - pattern: | |
| if $X != $Y { return ... } |
| if $X == $Y { ... } |
| - pattern: | |
| if $X { return ... } |
| for $X { ... } |
| - pattern: | |
| if $X { |
| if $X { ... } |
| ... |
| } |
| - pattern: | |
| if $X { |
| if ! $X { ... } |
| ... |
| } |
| - pattern: | |
| if ! $X { |
| if $X { ... } |
| ... |
| } |
| - pattern: | |
| if $X == $Y { |
| if $X != $Y { ... } |
| ... |
| } |
| - pattern: | |
| if $X != $Y { |
| if $X == $Y { ... } |
| ... |
| } |
| - pattern: | |
| if $X { |
| for ! $X { ... } |
| ... |
| } |
| - pattern: | |
| if ! $X { |
| for $X { ... } |
| ... |
| } |
| - pattern: | |
| if $X == $Y { |
| for $X != $Y { ... } |
| ... |
| } |
| - pattern: | |
| if $X != $Y { |
| for $X == $Y { ... } |
| ... |
| } |
| - pattern: | |
| for $X { |
| if $X { ... } |
| ... |
| } |
| - pattern: | |
| for $X { |
| if ! $X { ... } |
| ... |
| } |
| - pattern: | |
| for ! $X { |
| if $X { ... } |
| ... |
| } |
| - pattern: | |
| for $X == $Y { |
| if $X != $Y { ... } |
| ... |
| } |
| - pattern: | |
| for $X != $Y { |
| if $X == $Y { ... } |
| ... |
| } |
| message: "Odd sequence of ifs" |
| languages: [go] |
| severity: ERROR |