swift how to add a completion block to a function
Simple Swift 4.0 example: func method(arg: Bool, completion: (Bool) -> ()) { print("First line of code executed") // do stuff here to determine what you want to "send back". // we are just sending the Boolean value that was sent in "back" completion(arg) } How to use it: method(arg: true, completion: { (success) -> Void in print("Second line of code executed") if success { // this will be equal to whatever value is set in this method call print("true") } else { print("false") } })