#if targetEnvironment(macCatalyst)
print("Launch on Mac")
#elseif targetEnvironment(simulator)
print("Launch on simulator")
#else
print("Launch on iOS")
#endif
| Platform condition | Valid arguments |
| os() | macOS, iOS, watchOS, tvOS, visionOS, Linux, Windows |
| arch() | i386, x86_64, arm, arm64 |
| swift() | >= or < followed by a version number |
| compiler() | >= or < followed by a version number |
| canImport() | A module name |
| targetEnvironment() | simulator, macCatalyst |
| Блок условной компиляции позволяет компилировать код в зависимости от значения одного или нескольких условий компиляции. Каждый блок условной компиляции начинается с директивы #if и заканчивается директивой компиляции #endif. |