Auto-Closures and Lazy Evaluation in Swift

Auto-closures are a powerful feature because you can conditionally evaluate an expression, evaluate it many times, and use the bound expression in any way a closure can be used – Apple Developer