(command.CommandList children: [ (command.ShFunction name: makeAbsolute body: (BraceGroup children: [ (command.Case to_match: {($ Id.VSub_Number '$1')} arms: [ (case_arm pat_list: [{<'/'> <Id.Lit_Star '*'>}] action: [(C {<echo>} {(DQ ($ Id.VSub_Number '$1'))})] spids: [18 20 34 -1] ) (case_arm pat_list: [{<Id.Lit_Star '*'>}] action: [ (command.Pipeline children: [ (C {<echo>} { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<makeAbsolute>} {(DQ ($ Id.VSub_Number '$2'))} {(DQ ($ Id.VSub_DollarName '$PWD'))} ) ) <'/'> (DQ ($ Id.VSub_Number '$1')) } ) (C {<sed>} {(SQ <'s,/\\.$,,'>)}) ] negated: F ) ] spids: [37 38 74 -1] ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:me) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<which>} {(DQ ($ Id.VSub_Number '$0'))}) ) } spids: [82] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {<test>} {<-L>} {(DQ ($ Id.VSub_DollarName '$me'))}) terminator: <Id.Op_Semi _> ) ] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:readlink) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Simple words: [{<type>} {<readlink>}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) ) } spids: [114] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:readlink) op: assign_op.Equal rhs: (word.Empty) spids: [128] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {<test>} {<-n>} {(DQ ($ Id.VSub_DollarName '$readlink'))}) terminator: <Id.Op_Semi _> ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:me) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<readlink>} {<-nf>} {(DQ ($ Id.VSub_DollarName '$me'))}) ) } spids: [149] ) ] ) ] spids: [131 142] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:me) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.Pipeline children: [ (C {<ls>} {<-l>} {(DQ ($ Id.VSub_DollarName '$me'))}) (C {<sed>} {(SQ <'s/^.*-> //'>)}) ] negated: F ) ) } spids: [170] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:base) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<dirname>} {(DQ ($ Id.VSub_DollarName '$me'))}) ) } spids: [192] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:me) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<makeAbsolute>} {(DQ ($ Id.VSub_DollarName '$me'))} {(DQ ($ Id.VSub_DollarName '$base'))} ) ) } spids: [204] ) ] ) ] ) ] spids: [96 107] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:bindir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (C {<dirname>} {(DQ ($ Id.VSub_DollarName '$me'))}) ) } spids: [225] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:libdir) op: assign_op.Equal rhs: { (command_sub left_token: <Id.Left_Backtick '`'> child: (command.CommandList children: [ (command.Sentence child: (C {<cd>} {(DQ ($ Id.VSub_DollarName '$bindir') <'/../lib'>)}) terminator: <Id.Op_Semi _> ) (C {<pwd>}) ] ) ) } spids: [236] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:LD_LIBRARY_PATH) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$libdir') <Id.Lit_Colon ':'> ($ Id.VSub_DollarName '$libdir') <'/qtcreator'> (braced_var_sub token: <Id.VSub_Name LD_LIBRARY_PATH> suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonPlus arg_word: {<':'> ($ Id.VSub_DollarName '$LD_LIBRARY_PATH')} ) ) } spids: [252] ) ] ) (C {<export>} {<LD_LIBRARY_PATH>}) (C {<exec>} {(DQ ($ Id.VSub_DollarName '$bindir') <'/qtcreator'>)} { (braced_var_sub token: <Id.VSub_Number 1> suffix_op: (suffix_op.Unary op_id:Id.VTest_Plus arg_word:{(DQ ($ Id.VSub_At '$@'))}) ) } ) ] )