debugPrint

func debugPrint(_: Any..., separator: String, terminator: String)

Writes the textual representations of the given items most suitable for debugging into the standard output.

You can pass zero or more items to the debugPrint(_:separator:terminator:) function. The textual representation for each item is the same as that obtained by calling String(reflecting: item). The following example prints the debugging representation of a string, a closed range of integers, and a group of floating-point values to standard output:

debugPrint("One two three four five")
// Prints "One two three four five"

debugPrint(1...5)
// Prints "CountableClosedRange(1...5)"

debugPrint(1.0, 2.0, 3.0, 4.0, 5.0)
// Prints "1.0 2.0 3.0 4.0 5.0"

To print the items separated by something other than a space, pass a string as separator.

debugPrint(1.0, 2.0, 3.0, 4.0, 5.0, separator: " ... ")
// Prints "1.0 ... 2.0 ... 3.0 ... 4.0 ... 5.0"

The output from each call to debugPrint(_:separator:terminator:) includes a newline by default. To print the items without a trailing newline, pass an empty string as terminator.

for n in 1...5 {
    debugPrint(n, terminator: "")
}
// Prints "12345"

Parameters: items: Zero or more items to print. separator: A string to print between each item. The default is a single space (" "). terminator: The string to print after all items have been printed. The default is a newline ("\n").

See Also: print(_:separator:terminator:), TextOutputStreamable, CustomStringConvertible, CustomDebugStringConvertible

Declaration

func debugPrint(_ items: Any..., separator: String = default, terminator: String = default)
func debugPrint<Target where Target : TextOutputStream>(_: Any..., separator: String, terminator: String, to: inout Target)

Writes the textual representations of the given items most suitable for debugging into the given output stream.

You can pass zero or more items to the debugPrint(_:separator:terminator:to:) function. The textual representation for each item is the same as that obtained by calling String(reflecting: item). The following example prints a closed range of integers to a string:

var range = "My range: "
debugPrint(1...5, to: &range)
// range == "My range: CountableClosedRange(1...5)\n"

To print the items separated by something other than a space, pass a string as separator.

var separated = ""
debugPrint(1.0, 2.0, 3.0, 4.0, 5.0, separator: " ... ", to: &separated)
// separated == "1.0 ... 2.0 ... 3.0 ... 4.0 ... 5.0\n"

The output from each call to debugPrint(_:separator:terminator:to:) includes a newline by default. To print the items without a trailing newline, pass an empty string as terminator.

var numbers = ""
for n in 1...5 {
    debugPrint(n, terminator: "", to: &numbers)
}
// numbers == "12345"

Parameters: items: Zero or more items to print. separator: A string to print between each item. The default is a single space (" "). terminator: The string to print after all items have been printed. The default is a newline ("\n"). output: An output stream to receive the text representation of each item.

See Also: debugPrint(_:separator:terminator:), print(_:separator:terminator:to:), TextOutputStream, TextOutputStreamable, CustomStringConvertible, CustomDebugStringConvertible

Declaration

func debugPrint<Target where Target : TextOutputStream>(_ items: Any..., separator: String = default, terminator: String = default, to output: inout Target)