(command.CommandList children: [ (command.Simple blame_tok: <typeset> more_env: [] words: [ {<typeset>} {<-r>} {<Id.Lit_VarLike '_Dbg_info_cmds='> (SQ < 'args breakpoints display files functions line program signals source stack variables warranty' > ) } ] redirects: [] do_fork: T ) (command.ShFunction name_tok: <_Dbg_info_help> name: _Dbg_info_help body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.DParen left: <Id.Op_DLeftParen _> child: (arith_expr.Binary op_id: Id.Arith_DEqual left: {($ Id.VSub_Pound '#')} right: {<Id.Lit_Digits 0>} ) right: <Id.Op_DRightParen _> redirects: [] ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <typeset> more_env: [] words: [{<typeset>} {<-a>} {<list>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <_Dbg_section> more_env: [] words: [{<_Dbg_section>} {(SQ <'List of info subcommands:'>)}] redirects: [] do_fork: T ) (command.ForEach keyword: <Id.KW_For for> iter_names: [thing] iterable: (for_iter.Words words:[{($ Id.VSub_DollarName _Dbg_info_cmds)}]) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <_Dbg_info_help> more_env: [] words: [{<_Dbg_info_help>} {($ Id.VSub_DollarName thing)} {<1>}] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] spids: [78 93] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <typeset> more_env: [] words: [{<typeset>} {<Id.Lit_VarLike 'subcmd='> (DQ ($ Id.VSub_Number 1))}] redirects: [] do_fork: T ) (command.Simple blame_tok: <typeset> more_env: [] words: [{<typeset>} {<Id.Lit_VarLike 'label='> (DQ ($ Id.VSub_Number 2))}] redirects: [] do_fork: T ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.DBracket left: <Id.KW_DLeftBracket '[['> expr: (bool_expr.Unary op_id: Id.BoolUnary_n child: { (DQ (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name _Dbg_command_help_info> var_name: _Dbg_command_help_info bracket_op: (bracket_op.ArrayIndex expr: {($ Id.VSub_DollarName subcmd)} ) right: <Id.Right_DollarBrace '}'> ) ) } ) right: <Id.Lit_DRightBracket ']]'> redirects: [] ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.DBracket left: <Id.KW_DLeftBracket '[['> expr: (bool_expr.Unary op_id: Id.BoolUnary_z child: {($ Id.VSub_DollarName label)} ) right: <Id.Lit_DRightBracket ']]'> redirects: [] ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <_Dbg_msg_rst> more_env: [] words: [ {<_Dbg_msg_rst>} { (DQ (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name _Dbg_command_help_info> var_name: _Dbg_command_help_info bracket_op: (bracket_op.ArrayIndex expr: {($ Id.VSub_DollarName subcmd)} ) right: <Id.Right_DollarBrace '}'> ) ) } ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] spids: [182 194] ) ] else_kw: <Id.KW_Else else> else_action: [ (command.ShAssignment left: <Id.Lit_VarLike 'label='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'label='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'label='> name:label) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <builtin> more_env: [] words: [ {<builtin>} {<printf>} {(DQ <'info %-12s-- '>)} {($ Id.VSub_DollarName subcmd)} ] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) ] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] spids: [160 179] ) ] else_action: [] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Case case_kw: <Id.KW_Case case> to_match: (case_arg.Word w:{($ Id.VSub_DollarName subcmd)}) arms_start: <Id.KW_In in> arms: [ (CaseArm left: <ar> pattern: (pat.Words words:[{<ar>} {<arg>} {<args>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} { (DQ <'info args -- Argument variables (e.g. '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\$'> ch: '$' ) <'1, '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\$'> ch:'$') <'2, ...) of the current stack frame.'> ) } ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <b> pattern: (pat.Words words: [ {<b>} {<br>} {<bre>} {<brea>} {(SQ <break>)} {<breakp>} {<breakpo>} {<breakpoints>} {<w>} {<wa>} {<wat>} {<watc>} {(SQ <watch>)} {<watchp>} {<watchpo>} {<watchpoints>} ] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} {(SQ <'info breakpoints -- Status of user-settable breakpoints'>)} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <disp> pattern: (pat.Words words:[{<disp>} {<displ>} {<displa>} {<display>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info display -- Show all display expressions'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <Id.KW_Fi fi> pattern: (pat.Words words:[{<Id.KW_Fi fi>} {<file>} {<files>} {<sources>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info files -- Source files in the program'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <fu> pattern: (pat.Words words: [ {<fu>} {<fun>} {<Id.KW_Func func>} {<funct>} {<functi>} {<functio>} {<Id.KW_Function function>} {<functions>} ] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info functions -- All function names'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <l> pattern: (pat.Words words:[{<l>} {<li>} {<lin>} {<line>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} {(SQ <'info line -- list current line number and and file name'>)} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <p> pattern: (pat.Words words: [{<p>} {<pr>} {<pro>} {<prog>} {<progr>} {<progra>} {<program>}] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info program -- Execution status of the program.'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <h> pattern: (pat.Words words: [ {<h>} {<ha>} {<han>} {<hand>} {<handl>} {<handle>} {<si>} {<sig>} {<sign>} {<signa>} {<signal>} {<signals>} ] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} { (SQ <'info signals -- What debugger does when program gets various signals'> ) } ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <so> pattern: (pat.Words words:[{<so>} {<sou>} {<sourc>} {<source>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} {(SQ <'info source -- Information about the current source file'>)} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <st> pattern: (pat.Words words:[{<st>} {<sta>} {<stac>} {<stack>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info stack -- Backtrace of the stack'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <tr> pattern: (pat.Words words: [ {<tr>} {<tra>} {<trac>} {<trace>} {<tracep>} {<tracepo>} {<tracepoi>} {<tracepoint>} {<tracepoints>} ] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [{<_Dbg_msg>} {(SQ <'info tracepoints -- Status of tracepoints'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <v> pattern: (pat.Words words: [ {<v>} {<va>} {<Id.KW_Var var>} {<vari>} {<varia>} {<variab>} {<variabl>} {<variable>} {<variables>} ] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} {(SQ <'info variables -- All global and static variable names'>)} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <w> pattern: (pat.Words words: [{<w>} {<wa>} {<war>} {<warr>} {<warra>} {<warran>} {<warrant>} {<warranty>}] ) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_msg> more_env: [] words: [ {<_Dbg_msg>} {(SQ <'info warranty -- Various kinds of warranty you do not have'>)} ] redirects: [] do_fork: T ) (command.ControlFlow keyword: <Id.ControlFlow_Return return> arg_word: {<0>} ) ] right: <Id.Op_DSemi _> ) (CaseArm left: <Id.Lit_Star '*'> pattern: (pat.Words words:[{<Id.Lit_Star '*'>}]) middle: <Id.Right_CasePat _> action: [ (command.Simple blame_tok: <_Dbg_errmsg> more_env: [] words: [ {<_Dbg_errmsg>} { (DQ <'Undefined info command: '> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ch: '"' ) ($ Id.VSub_DollarName subcmd) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'. Try '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'help info'> (word_part.EscapedLiteral token: <Id.Lit_EscapedChar '\\"'> ch: '"' ) <.> ) } ] redirects: [] do_fork: T ) ] ) ] arms_end: <Id.KW_Esac esac> redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) ] )