Performs a traditional C-style assert with an optional message.
SDK
- Xcode 6.1+
Framework
- Swift Standard Library
Declaration
func assert(_ condition: @autoclosure () -> Bool, _ message: @autoclosure () -> String = String(), file: Static String = #file, line: UInt = #line)
Parameters
conditionThe condition to test.
conditionis only evaluated in playgrounds and-Ononebuilds.messageA string to print if
conditionis evaluated tofalse. The default is an empty string.fileThe file name to print with
messageif the assertion fails. The default is the file whereassert(_:is called._: file: line:) lineThe line number to print along with
messageif the assertion fails. The default is the line number whereassert(_:is called._: file: line:)
Discussion
Use this function for internal sanity checks that are active during testing but do not impact performance of shipping code. To check for invalid usage in Release builds, see precondition(_:.
In playgrounds and
-Ononebuilds (the default for Xcode’s Debug configuration): Ifconditionevaluates tofalse, stop program execution in a debuggable state after printingmessage.In
-Obuilds (the default for Xcode’s Release configuration),conditionis not evaluated, and there are no effects.In
-Ouncheckedbuilds,conditionis not evaluated, but the optimizer may assume that it always evaluates totrue. Failure to satisfy that assumption is a serious programming error.