completion handler in swift code example

Example 1: 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")
    }
})

Example 2: swift completion handler

func thisNeedsToFinishBeforeWeCanDoTheNextStep(completion: (String) -> ()) {    
    let stringToPassOutOfTheCompletionHandler = "The quick brown fox"    
    completion(stringToPassOutOfTheCompletionHandler)
}