@resultBuilder struct ArrayBuilder { static func buildBlock(_ components: [Int]...) -> [Int] { return Array(components.joined()) } static func buildExpression(_ expression: Int) -> [Int] { print("build expression Int expression \(expression)") return [expression] } } @ArrayBuilder var array: [Int] { [1, 2, 3] [4, 5, 6] [7, 8] [9] 10 } // array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]