一つ前のポストと似たような話題でブレークポイントのTIpsをもう一つ。
Stack-trace-dumping regular-expression-based symbolic breakpoints in LLDB
LLDBの --func-regex オプションを使うと正規表現でクラス名を指定できて、そのすべてのメソッドにブレークポイントを設定することができる。
(lldb) breakpoint set --func-regex NSLayoutManagerとすると NSLayoutManagerのそれぞれのメソッドでブレークポイントが働くようになる。
記事ではこのタイミングでスタックトレースを出力する方法が紹介されていた。
(lldb) breakpoint command add 2 Enter your debugger command(s). Type 'DONE' to end. > script print "----------" > bt > continue > DONE (lldb)最後に continueを入れているので出力後は止まらずに実行を継続する。
メソッドのみを対象として、C関数を除外したい場合は頭に[を付ける。
(lldb) breakpoint set --func-regex "\[NSLayoutManager"するとNSLayoutManagerLogDebug()などが除外される。