(command.CommandList children: [ (C {(Lit_Other ':')} {(included)} {(from)} {(t2016)} {(and)} {(others)}) (C {(.)} {(./test-lib.sh)}) (command.FuncDef name: set_state body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.SimpleCommand words: [{(echo)} {(DQ ($ VSub_Number '$3'))}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(DQ ($ VSub_Number '$1'))} ) ] ) (C {(git)} {(add)} {(DQ ($ VSub_Number '$1'))}) (command.SimpleCommand words: [{(echo)} {(DQ ($ VSub_Number '$2'))}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(DQ ($ VSub_Number '$1'))} ) ] ) ] ) ] spids: [31] ) spids: [26 30] ) (command.FuncDef name: save_state body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:noslash spids:[83]) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Number '$1'))}) (C {(tr)} {(/)} {(_)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [85 99] ) ) } spids: [83] ) ] spids: [83] ) (command.SimpleCommand words: [{(cat)} {(DQ ($ VSub_Number '$1'))}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(_worktree_) (DQ ($ VSub_Name '$noslash'))} ) ] ) (command.SimpleCommand words: [{(git)} {(show)} {(Lit_Other ':') (DQ ($ VSub_Number '$1'))}] redirects: [ (redir.Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(_index_) (DQ ($ VSub_Name '$noslash'))} ) ] ) ] ) ] spids: [80] ) spids: [75 79] ) (command.FuncDef name: set_and_save_state body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(set_state)} {(DQ ($ VSub_At '$@'))}) (C {(save_state)} {(DQ ($ VSub_Number '$1'))}) ] ) ] spids: [145] ) spids: [140 144] ) (command.FuncDef name: verify_state body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (C {(test)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cat)} {(DQ ($ VSub_Number '$1'))})] ) left_token: <Left_CommandSub '$('> spids: [177 183] ) ) } {(Lit_Other '=')} {(DQ ($ VSub_Number '$2'))} ) (C {(test)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(git)} {(show)} {(Lit_Other ':') (DQ ($ VSub_Number '$1'))})] ) left_token: <Left_CommandSub '$('> spids: [198 207] ) ) } {(Lit_Other '=')} {(DQ ($ VSub_Number '$3'))} ) ] ) ] spids: [171] ) spids: [166 170] ) (command.FuncDef name: verify_saved_state body: (command.BraceGroup children: [ (command.AndOr ops: [Op_DAmp] children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:noslash spids:[227]) op: Equal rhs: { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Number '$1'))}) (C {(tr)} {(/)} {(_)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [229 243] ) ) } spids: [227] ) ] spids: [227] ) (C {(verify_state)} {(DQ ($ VSub_Number '$1'))} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cat)} {(_worktree_) (DQ ($ VSub_Name '$noslash'))})] ) left_token: <Left_CommandSub '$('> spids: [256 263] ) ) } { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cat)} {(_index_) (DQ ($ VSub_Name '$noslash'))})] ) left_token: <Left_CommandSub '$('> spids: [267 274] ) ) } ) ] ) ] spids: [224] ) spids: [219 223] ) (command.FuncDef name: save_head body: (command.BraceGroup children: [ (command.SimpleCommand words: [{(git)} {(rev-parse)} {(HEAD)}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(_head)})] ) ] spids: [285] ) spids: [280 284] ) (command.FuncDef name: verify_saved_head body: (command.BraceGroup children: [ (C {(test)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(cat)} {(_head)})]) left_token: <Left_CommandSub '$('> spids: [312 316] ) ) } {(Lit_Other '=')} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(git)} {(rev-parse)} {(HEAD)})]) left_token: <Left_CommandSub '$('> spids: [322 328] ) ) } ) ] spids: [306] ) spids: [301 305] ) ] )