How should I invoke the following method? The method belongs to a class that prints logs.
func log(format: String!, withParameters valist: CVaListPointer)
What I want to achieve, would look like this in Objective-C:
NSLog(@"Message %@ - %@", param1, param2);
Any ideas?
CVaListPointer
is the Swift equivalent of the C va_list
type
and can be created from an [CVarArgType]
array using withVaList()
.
Example:
func log(format: String!, withParameters valist: CVaListPointer) {
NSLogv(format, valist)
}
let args: [CVarArgType] = [ "foo", 12, 34.56 ]
withVaList(args) { log("%@ %ld %f", withParameters: $0) }
Output:
2016-04-27 21:02:54.364 prog[6125:2476685] foo 12 34.560000
For Swift 3, replace CVarArgType
by CVarArg
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With