(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description) op: assign_op.Equal rhs: {(SQ <'rebase can handle submodules'>)} spids: [4] ) ] redirects: [] ) (C {<.>} {<'./test-lib.sh'>}) (C {<.>} {(DQ ($ Id.VSub_DollarName TEST_DIRECTORY)) <'/lib-submodule-update.sh'>}) (C {<.>} {(DQ ($ Id.VSub_DollarName TEST_DIRECTORY)) <'/lib-rebase.sh'>}) (command.ShFunction name: git_rebase body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.AndOr ops: [ Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp ] children: [ (command.Simple words: [{<git>} {<status>} {<-su>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect>})] more_env: [] do_fork: T ) (command.Simple words: [{<ls>} {<-1pR>} {<Id.Lit_Star '*'>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<expect>})] more_env: [] do_fork: T ) (C {<git>} {<checkout>} {<-b>} {<ours>} {<HEAD>}) (command.Simple words: [{<echo>} {<x>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<file1>})] more_env: [] do_fork: T ) (C {<git>} {<add>} {<file1>}) (C {<git>} {<commit>} {<-m>} {<add_x>}) (C {<git>} {<revert>} {<HEAD>}) (command.Simple words: [{<git>} {<status>} {<-su>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<actual>})] more_env: [] do_fork: T ) (command.Simple words: [{<ls>} {<-1pR>} {<Id.Lit_Star '*'>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<actual>})] more_env: [] do_fork: T ) (C {<test_cmp>} {<expect>} {<actual>}) (C {<git>} {<rebase>} {(DQ ($ Id.VSub_Number 1))}) ] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (C {<test_submodule_switch>} {(DQ <git_rebase>)}) (command.ShFunction name: git_rebase_interactive body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.AndOr ops: [ Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp Id.Op_DAmp ] children: [ (command.Simple words: [{<git>} {<status>} {<-su>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect>})] more_env: [] do_fork: T ) (command.Simple words: [{<ls>} {<-1pR>} {<Id.Lit_Star '*'>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<expect>})] more_env: [] do_fork: T ) (C {<git>} {<checkout>} {<-b>} {<ours>} {<HEAD>}) (command.Simple words: [{<echo>} {<x>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<file1>})] more_env: [] do_fork: T ) (C {<git>} {<add>} {<file1>}) (C {<git>} {<commit>} {<-m>} {<add_x>}) (C {<git>} {<revert>} {<HEAD>}) (command.Simple words: [{<git>} {<status>} {<-su>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<actual>})] more_env: [] do_fork: T ) (command.Simple words: [{<ls>} {<-1pR>} {<Id.Lit_Star '*'>}] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<actual>})] more_env: [] do_fork: T ) (C {<test_cmp>} {<expect>} {<actual>}) (C {<set_fake_editor>}) (command.Simple words: [{<echo>} {(DQ <fake-editor.sh>)}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {<'.git/info/exclude'>} ) ] more_env: [] do_fork: T ) (C {<git>} {<rebase>} {<-i>} {(DQ ($ Id.VSub_Number 1))}) ] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR='> name: KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR ) op: assign_op.Equal rhs: {<1>} spids: [311] ) ] redirects: [] ) (C {<test_submodule_switch>} {(DQ <git_rebase_interactive>)}) (C {<test_done>}) ] )