199451b44SJordan Rupprechtimport lldb 299451b44SJordan Rupprechtimport sys 399451b44SJordan Rupprecht 499451b44SJordan Rupprecht 599451b44SJordan Rupprechtclass WelcomeCommand(object): 699451b44SJordan Rupprecht def __init__(self, debugger, session_dict): 799451b44SJordan Rupprecht pass 899451b44SJordan Rupprecht 999451b44SJordan Rupprecht def get_short_help(self): 102238dcc3SJonas Devlieghere return ( 112238dcc3SJonas Devlieghere "Just a docstring for welcome_impl\nA command that says hello to LLDB users" 122238dcc3SJonas Devlieghere ) 1399451b44SJordan Rupprecht 1499451b44SJordan Rupprecht def __call__(self, debugger, args, exe_ctx, result): 152238dcc3SJonas Devlieghere print("Hello " + args + ", welcome to LLDB", file=result) 1699451b44SJordan Rupprecht return None 1799451b44SJordan Rupprecht 1899451b44SJordan Rupprecht 1999451b44SJordan Rupprechtclass TargetnameCommand(object): 2099451b44SJordan Rupprecht def __init__(self, debugger, session_dict): 2199451b44SJordan Rupprecht pass 2299451b44SJordan Rupprecht 2399451b44SJordan Rupprecht def __call__(self, debugger, args, exe_ctx, result): 2499451b44SJordan Rupprecht target = debugger.GetSelectedTarget() 2599451b44SJordan Rupprecht file = target.GetExecutable() 262238dcc3SJonas Devlieghere print("Current target " + file.GetFilename(), file=result) 272238dcc3SJonas Devlieghere if args == "fail": 282238dcc3SJonas Devlieghere result.SetError("a test for error in command") 2999451b44SJordan Rupprecht 3099451b44SJordan Rupprecht def get_flags(self): 3199451b44SJordan Rupprecht return lldb.eCommandRequiresTarget 3299451b44SJordan Rupprecht 3399451b44SJordan Rupprecht 3499451b44SJordan Rupprechtdef print_wait_impl(debugger, args, result, dict): 3599451b44SJordan Rupprecht result.SetImmediateOutputFile(sys.stdout) 362238dcc3SJonas Devlieghere print("Trying to do long task..", file=result) 3799451b44SJordan Rupprecht import time 382238dcc3SJonas Devlieghere 3999451b44SJordan Rupprecht time.sleep(1) 402238dcc3SJonas Devlieghere print("Still doing long task..", file=result) 4199451b44SJordan Rupprecht time.sleep(1) 422238dcc3SJonas Devlieghere print("Done; if you saw the delays I am doing OK", file=result) 4399451b44SJordan Rupprecht 4499451b44SJordan Rupprecht 4599451b44SJordan Rupprechtdef check_for_synchro(debugger, args, result, dict): 4699451b44SJordan Rupprecht if debugger.GetAsync(): 472238dcc3SJonas Devlieghere print("I am running async", file=result) 48*fd35a923SEisuke Kawashima if not debugger.GetAsync(): 492238dcc3SJonas Devlieghere print("I am running sync", file=result) 5099451b44SJordan Rupprecht 5199451b44SJordan Rupprecht 5299451b44SJordan Rupprechtdef takes_exe_ctx(debugger, args, exe_ctx, result, dict): 5399451b44SJordan Rupprecht print(str(exe_ctx.GetTarget()), file=result) 54