func createBrickPDF(_ bricks: [Brick]) -> Data { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
let bricks = [ , , , , , , ] let firstFiveBricks = bricks.prefix(5) let pdfData = createBrickPDF(firstFiveBricks) Cannot convert value of type ‘ArraySlice’ to expected argument type ‘[Brick]’ !
let bricks = [ , , , , , , ] let firstFiveBricks = bricks.prefix(5) let pdfData = createBrickPDF(firstFiveBricks) Cannot convert value of type ‘ArraySlice’ to expected argument type ‘[Brick]’ !
let bricks = [ , , , , , , ] let firstFiveBricks = bricks.prefix(5) let pdfData = createBrickPDF(firstFiveBricks) Cannot convert value of type ‘ArraySlice’ to expected argument type ‘[Brick]’ !
func createBrickPDF(_ bricks: [Brick]) -> Data { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
func createBrickPDF(_ bricks: [Brick]) -> Data { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
func createBrickPDF(_ bricks: S) -> Data where S.Iterator.Element == Brick { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
func createBrickPDF(_ bricks: S) -> Data where S.Iterator.Element == Brick { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
func createBrickPDF(_ bricks: S) -> Data where S.Iterator.Element == Brick { let result = NSMutableData() // prepare PDF context for brick in bricks { // generate PDF data } return result as Data }
Value of type ’S’ has no member ‘count’ ! func createBrickPDF(_ bricks: S) -> Data where S.Iterator.Element == Brick { let result = NSMutableData() // prepare PDF context let renderer = BrickPDFRenderer(count: bricks.count) for brick in bricks { // generate PDF data } return result as Data }
func createBrickPDF(_ bricks: C) -> Data where C.Iterator.Element == Brick { let result = NSMutableData() // prepare PDF context let renderer = BrickPDFRenderer(count: bricks.count) for brick in bricks { // generate PDF data } return result as Data }
Type erasure class BrickRenderer { let bricks: AnyCollection init(_ bricks: AnyCollection) { self.bricks = bricks } } let renderer = BrickRenderer(AnyCollection(bricks)) let renderer = BrickRenderer(AnyCollection(firstFiveBricks))