44 lines · python
1# encoding: utf-82 3import lldb4 5 6class MyFrameRecognizer(object):7 def get_recognized_arguments(self, frame):8 if frame.name == "foo":9 arg1 = frame.EvaluateExpression("$arg1").signed10 arg2 = frame.EvaluateExpression("$arg2").signed11 val1 = (12 frame.GetThread()13 .GetProcess()14 .GetTarget()15 .CreateValueFromExpression("a", "%d" % arg1)16 )17 val2 = (18 frame.GetThread()19 .GetProcess()20 .GetTarget()21 .CreateValueFromExpression("b", "%d" % arg2)22 )23 return [val1, val2]24 elif frame.name == "bar":25 arg1 = frame.EvaluateExpression("$arg1").signed26 val1 = (27 frame.GetThread()28 .GetProcess()29 .GetTarget()30 .CreateValueFromExpression("a", "(int *)%d" % arg1)31 )32 return [val1]33 return []34 35 36class MyOtherFrameRecognizer(object):37 def get_recognized_arguments(self, frame):38 return []39 40 41class BazFrameRecognizer(object):42 def should_hide(self, frame):43 return "baz" in frame.name44