(command.CommandList children: [ (C {(_Dbg_help_add)} {(commands)} { (SQ (Token id:Id.Lit_Chars val:'commands [BKPT-NUM]\n' span_id:64) (Token id:Id.Lit_Chars val:'\n' span_id:65) (Token id:Id.Lit_Chars val:'Set commands to be executed when a breakpoint is hit.\n' span_id:66) (Token id:Id.Lit_Chars val:'\n' span_id:67) (Token id: Id.Lit_Chars val: 'Without BKPT-NUM, the targeted breakpoint is the last one set. The\n' span_id: 68 ) (Token id:Id.Lit_Chars val:'commands themselves follow starting on the next line. \n' span_id:69) (Token id:Id.Lit_Chars val:'\n' span_id:70) (Token id: Id.Lit_Chars val: 'Type a line containing "end" to indicate the end of them. Give\n' span_id: 71 ) (Token id: Id.Lit_Chars val: '"silent" as the first line to make the breakpoint silent; then no\n' span_id: 72 ) (Token id: Id.Lit_Chars val: 'output is printed when it is hit, except what the commands print.' span_id: 73 ) ) } ) (command.ShFunction name: _Dbg_do_commands body: (command.BraceGroup children: [ (C {(eval)} {(DQ ($ Id.VSub_DollarName '$_seteglob'))}) (C {(typeset)} {(Id.Lit_VarLike 'num=') ($ Id.VSub_Number '$1')}) (C {(typeset)} {(-i)} {(Id.Lit_VarLike 'found=') (0)}) (command.Case to_match: {($ Id.VSub_DollarName '$num')} arms: [ (case_arm pat_list: [{($ Id.VSub_DollarName '$int_pat')}] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Unary op_id: Id.BoolUnary_z child: { (braced_var_sub token: (Token id: Id.VSub_Name val: _Dbg_brkpt_file span_id: 124 ) bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w: {($ Id.VSub_DollarName '$num')} ) ) ) } ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:132) ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ('No breakpoint number ') ($ Id.VSub_DollarName '$num') (.))} ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:146) arg_word: {(1)} ) ] spids: [117 134] ) ] ) (command.DParen child: (arith_expr.BinaryAssign op_id: Id.Arith_Equal left: (sh_lhs_expr.Name name:found) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) ) ) ] spids: [112 114 162 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (C {(_Dbg_errmsg)} {(DQ ('Invalid entry number skipped: ') ($ Id.VSub_DollarName '$num'))} ) ] spids: [165 167 -1 178] ) ] ) (C {(eval)} {(DQ ($ Id.VSub_DollarName '$_resteglob'))}) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DParen child: (arith_expr.VarRef token: (Token id:Id.Lit_ArithVarLike val:found span_id:192) ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:197) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_brkpt_commands_defining) op: assign_op.Equal rhs: {(1)} spids: [203] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_brkpt_commands_current) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$num')} spids: [207] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.IndexedName name: _Dbg_brkpt_commands_end index: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$num')}) ) op: assign_op.Equal rhs: { (braced_var_sub token: (Token id:Id.VSub_Name val:_Dbg_brkpt_commands span_id:216) prefix_op: (Id.VSub_Pound) bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At) ) } spids: [211] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.IndexedName name: _Dbg_brkpt_commands_start index: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$num')}) ) op: assign_op.Equal rhs: { (braced_var_sub token: (Token id: Id.VSub_Name val: _Dbg_brkpt_commands_end span_id: 229 ) bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$num')}) ) ) } spids: [225] ) ] ) (C {(_Dbg_msg)} { (DQ ('Type commands for when breakpoint ') ($ Id.VSub_DollarName '$found') (' hit, one per line.') ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_prompt) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'>' span_id:249))} spids: [247] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:253) arg_word: {(0)} ) ] spids: [188 199] ) ] ) ] ) ) ] )