(command.CommandList children: [ (C {(typeset)} {(-A)} {(_Dbg_aliases)}) (command.ShFunction name: _Dbg_alias_add body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_NEqual left: (arith_expr.ArithWord w:{($ VSub_Pound '$#')}) right: (arith_expr.ArithWord w:{(Lit_Digits 2)}) ) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.IndexedName name: _Dbg_aliases index: (arith_expr.ArithWord w:{($ VSub_Number '$1')}) ) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} ) ] ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] ) ) (command.ShFunction name: _Dbg_alias_remove body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_NEqual left: (arith_expr.ArithWord w:{($ VSub_Pound '$#')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] ) (C {(unset)} {(DQ ('_Dbg_aliases[') ($ VSub_Number '$1') (']'))}) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] ) ) (command.ShFunction name: _Dbg_alias_expand body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_NEqual left: (arith_expr.ArithWord w:{($ VSub_Pound '$#')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:expanded_alias) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Unary op_id:BoolUnary_z child:{(DQ ($ VSub_Number '$1'))}) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] ) (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Unary op_id: BoolUnary_n child: { (braced_var_sub token: <VSub_Name _Dbg_aliases> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{($ VSub_Number '$1')}) ) ) } ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:expanded_alias) op: Equal rhs: { (braced_var_sub token: <VSub_Name _Dbg_aliases> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w:{($ VSub_Number '$1')}) ) ) } ) ] ) ] ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] ) ) (command.ShFunction name: _Dbg_alias_find_index body: (command.BraceGroup children: [ (C {(typeset)} {(Lit_VarLike 'find_name=') ($ VSub_Number '$1')}) (C {(typeset)} {(-i)} {(i)}) (command.ForExpr init: (arith_expr.BinaryAssign op_id: Arith_Equal left: (sh_lhs_expr.Name name:i) right: (arith_expr.ArithWord w:{(Lit_Digits 0)}) ) cond: (arith_expr.Binary op_id: Arith_LessEqual left: (arith_expr.VarRef token:<Lit_ArithVarLike i>) right: (arith_expr.VarRef token:<Lit_ArithVarLike _Dbg_alias_max_index>) ) update: (arith_expr.UnaryAssign op_id:Node_PostDPlus child:(sh_lhs_expr.Name name:i)) body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_GlobDEqual left: { (braced_var_sub token: <VSub_Name _Dbg_alias_names> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.VarRef token:<Lit_ArithVarLike i>) ) ) } right: {(DQ ($ VSub_DollarName '$find_name'))} ) ) (C {(echo)} {($ VSub_DollarName '$i')}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] ) ] ) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] ) ) (command.ShFunction name: _Dbg_alias_find_aliased body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DParen child: (arith_expr.Binary op_id: Arith_NEqual left: (arith_expr.ArithWord w:{($ VSub_Pound '$#')}) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(255)} ) ] ) (C {(typeset)} {(Lit_VarLike 'find_name=') ($ VSub_Number '$1')}) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:aliases_found) op:Equal rhs:{(SQ )})] ) (C {(typeset)} {(-i)} {(i)}) (command.ForEach iter_name: alias iter_words: [ { (braced_var_sub token: <VSub_Name _Dbg_aliases> prefix_op: VSub_Bang bracket_op: (bracket_op.WholeArray op_id:Lit_At) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_GlobDEqual left: { (braced_var_sub token: <VSub_Name _Dbg_aliases> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithWord w: {($ VSub_DollarName '$alias')} ) ) ) } right: {(DQ ($ VSub_DollarName '$find_name'))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Unary op_id: BoolUnary_n child: {($ VSub_DollarName '$aliases_found')} ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:aliases_found) op: PlusEqual rhs: {(SQ <', '>)} ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:aliases_found) op: PlusEqual rhs: {(DQ ($ VSub_DollarName '$alias'))} ) ] ) ] ) ] ) ] ) ) (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] ) ) ] )