Skip to content

reduce_boolean

Ian Applebaum edited this page Jun 13, 2020 · 1 revision

Reduce Boolean

Prefer using .allSatisfy() or .contains() over reduce(true) or reduce(false)

  • Identifier: reduce_boolean
  • Enabled by default: Enabled
  • Supports autocorrection: No
  • Kind: performance
  • Analyzer rule: No
  • Minimum Swift compiler version: 4.2.0
  • Default configuration: warning

Non Triggering Examples

nums.reduce(0) { $0.0 + $0.1 }
nums.reduce(0.0) { $0.0 + $0.1 }

Triggering Examples

let allNines = nums.reduce(true) { $0.0 && $0.1 == 9 }
let anyNines = nums.reduce(false) { $0.0 || $0.1 == 9 }
let allValid = validators.reduce(true) { $0 && $1(input) }
let anyValid = validators.reduce(false) { $0 || $1(input) }
let allNines = nums.reduce(true, { $0.0 && $0.1 == 9 })
let anyNines = nums.reduce(false, { $0.0 || $0.1 == 9 })
let allValid = validators.reduce(true, { $0 && $1(input) })
let anyValid = validators.reduce(false, { $0 || $1(input) })
Clone this wiki locally