(CommandList children: [ (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [47 51] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(rmdir)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cwd) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(pwd)})]) left_token: <Left_CommandSub '$('> spids: [66 68] ) } spids: [65] ) ] spids: [65] ) (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$cwd') (/a/b/c))} {(DQ ($ VSub_Name '$cwd') (/a/x))}) (C {(framework_failure_)}) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(rmdir)} {(-p)} {(--ignore-fail-on-non-empty)} {(DQ ($ VSub_Name '$cwd') (/a/b/c))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[102])] spids: [102] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-d)} {(DQ ($ VSub_Name '$cwd') (/a/x))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[119])] spids: [119] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-d)} {(DQ ($ VSub_Name '$cwd') (/a/b))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[136])] spids: [136] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-d)} {(DQ ($ VSub_Name '$cwd') (/a/b/c))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[150])] spids: [150] ) ] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )