関数が戻り値になる関数

/*
  関数が戻り値になる関数
*/
// func makeIncrementer() -> (Int -> Int) { // error: single argument function types require parentheses
func makeIncrementer() -> ((Int) -> Int) {
    func addOne(number: Int) -> Int {
        return 1 + number
    }
    return addOne
}
var increment = makeIncrementer()
// increment(7) // warning: result of call to function returning 'Int' is unused
print("increment(7) = \(increment(7)).")