155 pendingFilter, downFilter, replicaFilter)
156 }
157 if region != nil {
158 return region, region.GetStorePeer(source.GetID())159 }
160 shuffleRegionNoRegionCounter.Inc()
161 }
Depending on the evaluation order is not idiomatic and may lead to bugs during future refactorings.
package main
func mutate(x *int) int {
*x += 10
return *x
}
func identity(x int) int {
return x
}
func foo() (int, int, int) {
x := 5
return identity(x), mutate(&x), x // 5, 15, 15
}
package main
func mutate(x *int) int {
*x += 10
return *x
}
func identity(x int) int {
return x
}
func foo() (int, int, int) {
x := 5
result := mutate(&x)
return identity(x), result, x // 15, 15, 15
}