let isDebug: Bool = {var isDebug = false// function with a side effect and Bool return value that we can pass into assert()func set(debug: Bool) -> Bool {isDebug = debugreturn isDebug}// assert:// "Condition is only evaluated in playgrounds and -Onone builds."// so isDebug is never changed to true in Release buildsassert(set(debug: true))return isDebug}()
#if os(macOS) /* Checks the target operating system */
#if canImport(UIKit) /* Check if a module presents */
#if swift(<5) /* Check the Swift version */
#if targetEnvironment(simulator) /* Check envrionments like Simulator or Catalyst */
#if compiler(<7) /* Check compiler version */