(CommandList children: [ (C {(_Dbg_help_add)} {(signal)} { (DQ ("signal SIGNAL\n") ("\n") ("Send a signal to the debugged program.\n") ("\n") ("SIGNAL can be a name like ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (TERM) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (" (for SIGTERM) or a positive number like \n") ("15 (which in ") (EscapedLiteralPart token:<Lit_EscapedChar "\\*">) ("nix systems is the equivalent number. On ") (EscapedLiteralPart token:<Lit_EscapedChar "\\*">) ("nix systems the\n") ("command ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ("kill -l") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (" sometimes will give a list of signal names and numbers.\n") ("\n") ("The signal is sent to process ") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) (" (which is ") ($ VSub_Dollar "$$") (" right now).\n") ("\n") ("Also similar is the ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (kill) (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (" command.") ) } ) (FuncDef name: _Dbg_do_signal body: (BraceGroup children: [ (C {(typeset)} {(Lit_VarLike "sig=") ($ VSub_Number "$1")}) (C {(typeset)} {(-i)} {(signum)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$sig")})) terminator: <Op_Semi ";"> ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ("Missing signal name or signal number."))}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] spids: [-1 134] ) ] spids: [-1 149] ) (C {(eval)} {(DQ ($ VSub_Name "$_seteglob"))}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name "$sig")} right: {($ VSub_Name "$int_pat")} ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(eval)} {(DQ ($ VSub_Name "$_resteglob"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:signame) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_signum2name)} {($ VSub_Name "$sig")})] ) left_token: <Left_CommandSub "$("> spids: [184 188] ) } spids: [183] ) ] spids: [183] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_QMark "$?")}) right: (ArithWord w:{(Lit_Digits 0)}) ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(_Dbg_msg)} {(DQ ("Bad signal number: ") ($ VSub_Name "$sig"))}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(1)} ) ] spids: [-1 206] ) ] spids: [-1 222] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:signum) op: Equal rhs: {(sig)} spids: [225] ) ] spids: [225] ) ] spids: [-1 173] ) ] else_action: [ (C {(eval)} {(DQ ($ VSub_Name "$_resteglob"))}) (Sentence child:(C {(typeset)} {(signum)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:signum) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(_Dbg_name2signum)} {($ VSub_Name "$sig")})] ) left_token: <Left_CommandSub "$("> spids: [246 250] ) } spids: [245] ) ] spids: [245] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_QMark "$?")}) right: (ArithWord w:{(Lit_Digits 0)}) ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(_Dbg_msg)} {(DQ ("Bad signal name: ") ($ VSub_Name "$sig"))}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(1)} ) ] spids: [-1 268] ) ] spids: [-1 284] ) ] spids: [229 287] ) (C {(kill)} {(-) ($ VSub_Name "$signum")} {($ VSub_Dollar "$$")}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [106] ) spids: [102 105] ) ] )