Цель C найти вызывающего метода - PullRequest
85 голосов
/ 20 сентября 2009

Есть ли способ определить строку кода, с которой был вызван определенный method?

Ответы [ 11 ]

0 голосов
/ 24 марта 2017

Версия @Geoff H от Swift 3 для справки:

let sourceString: String = Thread.callStackSymbols[1]
let separatorSet: CharacterSet = CharacterSet(charactersIn: " -[]+?.,")
let array = NSMutableArray(array: sourceString.components(separatedBy: separatorSet))
array.remove("")

print("Stack: \(array[0])")
print("Framework:\(array[1])")
print("Memory Address:\(array[2])")
print("Class Caller:\(array[3])")
print("Method Caller:\(array[4])")
...