2023-10-16 13:31:15 +02:00
|
|
|
:lang: go
|
2023-05-03 11:06:20 +02:00
|
|
|
|
2023-10-16 13:31:15 +02:00
|
|
|
include::../why.adoc[]
|
2020-06-30 12:47:33 +02:00
|
|
|
|
2023-05-03 11:06:20 +02:00
|
|
|
=== Noncompliant code example
|
2020-06-30 12:47:33 +02:00
|
|
|
|
2023-10-16 13:31:15 +02:00
|
|
|
[source,go,diff-id=1,diff-type=noncompliant]
|
2020-06-30 12:47:33 +02:00
|
|
|
----
|
|
|
|
func foo(a bool, y int) int {
|
2023-10-16 13:31:15 +02:00
|
|
|
x := ((y / 2 + 1)) // Noncompliant
|
2020-06-30 12:47:33 +02:00
|
|
|
|
|
|
|
if a && ((x+y > 0)) { // Noncompliant
|
2023-10-16 13:31:15 +02:00
|
|
|
return ((x + 1)) // Noncompliant
|
2020-06-30 12:47:33 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
----
|
|
|
|
|
2023-05-03 11:06:20 +02:00
|
|
|
=== Compliant solution
|
2020-06-30 12:47:33 +02:00
|
|
|
|
2023-10-16 13:31:15 +02:00
|
|
|
[source,go,diff-id=1,diff-type=compliant]
|
2020-06-30 12:47:33 +02:00
|
|
|
----
|
|
|
|
func foo(a bool, y int) int {
|
|
|
|
x := (y / 2 + 1)
|
|
|
|
|
|
|
|
if a && (x+y > 0) {
|
2023-10-16 13:31:15 +02:00
|
|
|
return (x + 1)
|
2020-06-30 12:47:33 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
----
|
2021-06-02 20:44:38 +02:00
|
|
|
|
2023-06-16 11:18:11 +02:00
|
|
|
include::../rspecator.adoc[]
|