(CommandList children: [ (C {(_Dbg_help_add)} {(debug)} { (DQ ('debug [SCRIPT]\n') ('\n') ('Set up SCRIPT for debugging. \n') ('\n') ('If SCRIPT is not given, take the script name from the command that is\n') ('about to be executed.') ) } ) (FuncDef name: _Dbg_do_debug body: (BraceGroup children: [ (C {(_Dbg_shell_new_shell_profile)}) (Assignment keyword: Assign_Typeset pairs: [ (assign_pair lhs: (LhsName name:script_cmd) op: Equal rhs: { (BracedVarSub token: <VSub_At '@'> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {($ VSub_Name '$_Dbg_bash_command')} ) spids: [100 104] ) } spids: [99] ) ] spids: [97] ) (Sentence child: (Assignment keyword: Assign_Typeset pairs: [ (assign_pair lhs: (LhsName name:set_Dbg_debug_cmd) op: Equal rhs: { (DQ ('typeset _Dbg_debug_cmd=') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ($ VSub_Name '$script_cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } spids: [119] ) ] spids: [117] ) terminator: <Op_Semi ';'> ) (AndOr ops: [Op_DAmp] children: [ (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Name '$BASH')}) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BASH) op: Equal rhs: {(SQ <bash>)} spids: [141] ) ] spids: [141] ) ] ) (C {(eval)} {(DQ ($ VSub_Name '$_seteglob'))}) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithUnary op_id:Arith_Bang child:(ArithVarRef name:_Dbg_script)) spids: [162 169] ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:set_Dbg_debug_cmd) op: Equal rhs: { (DQ ('typeset _Dbg_debug_cmd=') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ($ VSub_Name '$BASH') (' --init-file ') (${ VSub_Name _Dbg_shell_temp_profile) (' --debugger ') ($ VSub_Name '$script_cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } spids: [180] ) ] spids: [180] ) terminator: <Op_Semi ';'> ) ] spids: [16777215 173] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name '$_Dbg_orig_0') (///)} right: {(Lit_Other '*') (bashdb///)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:set_Dbg_debug_cmd) op: Equal rhs: { (DQ ('typeset _Dbg_debug_cmd=') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ($ VSub_Name '$BASH') (' ') ($ VSub_Name '$_Dbg_orig_0') (' -q -L ') ($ VSub_Name '$_Dbg_libdir') (' ') ($ VSub_Name '$script_cmd') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } spids: [219] ) ] spids: [219] ) terminator: <Op_Semi ';'> ) ] spids: [196 212] ) ] spids: [16777215 235] ) (C {(eval)} {(DQ ($ VSub_Name '$_resteglob'))}) (C {(eval)} {($ VSub_Name '$set_Dbg_debug_cmd')}) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child:(ArithVarRef name:_Dbg_set_basename) spids:[254 259]) terminator: <Op_Semi ';'> ) ] action: [ (C {(_Dbg_msg)} {(DQ ('Debugging new script with ') ($ VSub_Name '$script_cmd'))}) ] spids: [16777215 263] ) ] else_action: [ (C {(_Dbg_msg)} {(DQ ('Debugging new script with ') ($ VSub_Name '$_Dbg_debug_cmd'))}) ] spids: [275 286] ) (Assignment keyword: Assign_Typeset flags: [-r] pairs: [ (assign_pair lhs: (LhsName name:old_quit_on_quit) op: Equal rhs: {($ VSub_Name '$_Dbg_QUIT_ON_QUIT')} spids: [293] ) ] spids: [289] ) (C {(export)} {(Lit_VarLike '_Dbg_QUIT_ON_QUIT=') (1)}) (C {(export)} {(Lit_VarLike 'BASHDB_BASENAME_ONLY=') (DQ ($ VSub_Name '$_Dbg_set_basename'))} ) (DParen child: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:_Dbg_DEBUGGER_LEVEL)) spids: [311 315] ) (C {($ VSub_Name '$_Dbg_debug_cmd')}) (DParen child: (UnaryAssign op_id:Node_PostDMinus child:(LhsName name:_Dbg_DEBUGGER_LEVEL)) spids: [321 325] ) (C {(_Dbg_restore_from_nested_shell)}) (C {(export)} {(Lit_VarLike '_Dbg_QUIT_ON_QUIT=') ($ VSub_Name '$old_quit_on_quit')}) ] spids: [89] ) spids: [85 88] ) ] )