(CommandList children: [ (FuncDef name: test_sort body: (BraceGroup children: [ (FuncDef name: do_one body: (BraceGroup children: [ (C {(sort_list)} {(0)} { (BracedVarSub token: <VSub_Name list> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [24 30] ) (-1) } ) (C {(assertEquals)} {(DQ (0))} {(DQ ($ VSub_QMark "$?"))}) (C {(typeset)} {(-i)} {(i)}) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 0)}) ) cond: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:i) right: (ArithWord w: { (BracedVarSub token: <VSub_Name list> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [63 69] ) } ) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:i)) body: (DoGroup children: [ (C {(assertEquals)} { (DQ (BracedVarSub token: <VSub_Name check> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$i")})) spids: [85 90] ) ) } { (DQ (BracedVarSub token: <VSub_Name list> bracket_op: (ArrayIndex expr:(ArithWord w:{($ VSub_Name "$i")})) spids: [94 99] ) ) } ) ] spids: [79 103] ) ) ] spids: [17] ) spids: [13 16] ) (C {(typeset)} {(-a)} {(list)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list) op: Equal rhs: {(ArrayLiteralPart)} spids: [121] ) ] spids: [121] ) (C {(sort_list)} {(0)} {(0)}) (C {(assertEquals)} {(DQ (2))} {(DQ ($ VSub_QMark "$?"))}) (C {(assertEquals)} {(DQ (0))} { (DQ (BracedVarSub token: <VSub_Name list> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [152 158] ) ) } ) (C {(sort_list)} {(1)} {(1)}) (C {(assertNotEquals)} {(DQ (0))} {(DQ ($ VSub_QMark "$?"))}) (C {(typeset)} {(-a)} {(check)}) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <one>)}])} spids: [189] ) ] spids: [189] ) terminator: <Op_Semi ";"> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:check) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <one>)}])} spids: [197] ) ] spids: [197] ) (C {(do_one)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <one>)}{(SQ <two>)}{(SQ <three>)}])} spids: [208] ) ] spids: [208] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:check) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <one>)}{(SQ <three>)}{(SQ <two>)}])} spids: [225] ) ] spids: [225] ) (C {(do_one)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list) op: Equal rhs: {(ArrayLiteralPart words:[{(4)}{(3)}{(2)}{(1)}])} spids: [244] ) ] spids: [244] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:check) op: Equal rhs: {(ArrayLiteralPart words:[{(1)}{(2)}{(3)}{(4)}])} spids: [256] ) ] spids: [256] ) (C {(do_one)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:list) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <" 4">)}{(SQ <"3 ">)}{(SQ <2>)}{(SQ <1>)}])} spids: [271] ) ] spids: [271] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id:Redir_Less left:{(SQ <" 4">)} right:{(SQ <1>)}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:check) op: Equal rhs: { (ArrayLiteralPart words: [{(SQ <" 4">)} {(SQ <1>)} {(SQ <2>)} {(SQ <"3 ">)}] ) } spids: [312] ) ] spids: [312] ) ] spids: [-1 309] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:check) op: Equal rhs: {(ArrayLiteralPart words:[{(SQ <1>)}{(SQ <2>)}{(SQ <"3 ">)}{(SQ <" 4">)}])} spids: [335] ) ] spids: [335] ) ] spids: [332 355] ) (C {(do_one)}) (C {(sort_list)} {(0)} {(10)}) (C {(assertNotEquals)} {(DQ (0))} {(DQ ($ VSub_QMark "$?"))}) ] spids: [10] ) spids: [6 9] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(SQ </src/external-vcs/sourceforge/bashdb>)} {(Lit_Other "=")} {(SQ )} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Something is wrong abs_top_srcdir is not set."))}) (C {(exit)} {(1)}) ] spids: [-1 401] ) ] spids: [-1 415] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:abs_top_srcdir) op: Equal rhs: {(/src/external-vcs/sourceforge/bashdb)} spids: [417] ) ] spids: [417] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:abs_top_srcdir) op: Equal rhs: { (BracedVarSub token: <VSub_Name abs_top_srcdir> suffix_op: (StringUnary op_id:VOp1_DPercent arg_word:{(Lit_Slash /)}) spids: [424 428] ) (/) } spids: [423] ) ] spids: [423] ) (C {(.)} {(${ VSub_Name abs_top_srcdir) (test/unit/helper.sh)}) (C {(.)} {($ VSub_Name "$abs_top_srcdir") (/lib/sort.sh)}) (C {(set)} {(--)}) (AndOr children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Number "$0")} right: {(${ VSub_Name BASH_SOURCE)} ) ) (C {(.)} {(${ VSub_Name shunit_file)}) ] op_id: Op_DAmp ) ] )