(command.CommandList children: [ (C {<_Dbg_help_add>} {<frame>} { (SQ <'**frame** [*frame-number*].\n'> <'\n'> <'Change the current frame to frame *frame-numbrer* if specified, or the\n'> <'most-recent frame, 0, if no frame number specified.\n'> <'\n'> <'A negative number indicates the position from the other or\n'> <'least-recently-entered end. So **frame -1** moves to the oldest frame.\n'> <'\n'> <'See also:\n'> <'---------\n'> <'\n'> <'**up**, **down**'> ) } {<1>} {<_Dbg_complete_frame>} ) (command.ShFunction name: _Dbg_complete_frame body: (BraceGroup children: [ (command.Sentence child: (C {<typeset>} {<-i>} {<start>}) terminator: <Id.Op_Semi _> ) (command.DParen child: (arith_expr.BinaryAssign op_id: Id.Arith_Equal left: <Id.Lit_ArithVarLike start> right: (arith_expr.Binary op_id: Id.Arith_Plus left: (arith_expr.Unary op_id: Id.Node_UnaryMinus child: <Id.Lit_ArithVarLike _Dbg_stack_size> ) right: {<Id.Lit_Digits 1>} ) ) ) (command.Sentence child: (C {<typeset>} {<-i>} {<end>}) terminator: <Id.Op_Semi _> ) (command.DParen child: (arith_expr.BinaryAssign op_id: Id.Arith_Equal left: <Id.Lit_ArithVarLike end> right: (arith_expr.Binary op_id: Id.Arith_Minus left: <Id.Lit_ArithVarLike _Dbg_stack_size> right: {<Id.Lit_Digits 1>} ) ) ) (C {<_Dbg_complete_num_range>} {($ Id.VSub_DollarName '$start')} {($ Id.VSub_DollarName '$end')} ) ] ) ) (command.ShFunction name: _Dbg_do_frame body: (BraceGroup children: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<_Dbg_not_running>}) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<3>} ) ] ) (C {<typeset>} {<Id.Lit_VarLike 'count='> (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary tok:<Id.VTest_ColonHyphen ':-'> arg_word:{<1>}) ) } ) (C {<_Dbg_is_signed_int>} {($ Id.VSub_DollarName '$count')}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.DParen child: (arith_expr.Binary op_id: Id.Arith_DEqual left: {<Id.Lit_Digits 0>} right: {($ Id.VSub_QMark '$?')} ) ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<_Dbg_frame_adjust>} {($ Id.VSub_DollarName '$count')} {<0>}) (C {<typeset>} {<-i>} {<Id.Lit_VarLike 'rc='> ($ Id.VSub_QMark '$?')}) ] spids: [175 190] ) ] else_action: [ (C {<_Dbg_errmsg>} {(DQ <'Expecting an integer; got '> ($ Id.VSub_DollarName '$count'))}) (C {<typeset>} {<-i>} {<Id.Lit_VarLike 'rc='> <2>}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Id.Arith_DEqual left: {<Id.Lit_Digits 0>} right: <Id.Lit_ArithVarLike rc> ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_Dbg_last_cmd) op: assign_op.Equal rhs: {(SQ <frame>)} spids: [241] ) ] ) ] ) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {($ Id.VSub_DollarName '$rc')} ) ] ) ) ] )