(CommandList children: [ (AndOr children: [ (FuncDef name: _lsof body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:cur) op:Equal spids:[13]) (assign_pair lhs:(LhsName name:prev) op:Equal spids:[15]) (assign_pair lhs:(LhsName name:words) op:Equal spids:[17]) (assign_pair lhs:(LhsName name:cword) op:Equal spids:[19]) ] spids: [11] ) (AndOr children: [(C {(_init_completion)}) (ControlFlow token:<ControlFlow_Return return>)] op_id: Op_DPipe ) (Case to_match: {($ VSub_Name "$prev")} arms: [ (case_arm pat_list: [ {(-) (SQ <"?">)} {(-h)} {(Lit_Other "+") (c)} {(-c)} {(-d)} {(-F)} {(-i)} {(Lit_Other "+") (r)} {(-r)} {(-s)} {(-S)} {(-T)} ] action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})] spids: [37 65 73 -1] ) (case_arm pat_list: [{(-A)} {(-k)} {(-m)} {(Lit_Other "+") (m)} {(-o)}] action: [ (C {(_filedir)}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [76 86 97 -1] ) (case_arm pat_list: [{(Lit_Other "+") (d)} {(Lit_Other "+") (D)}] action: [ (C {(_filedir)} {(-d)}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [100 105 118 -1] ) (case_arm pat_list: [{(-D)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} {(SQ <"? b i r u">)} {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [128 144] ) } ] ) } spids: [125] ) ] spids: [125] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [121 122 154 -1] ) (case_arm pat_list: [{(-f)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} {(SQ <"c f g G n">)} {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [164 180] ) } ] ) } spids: [161] ) ] spids: [161] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [157 158 190 -1] ) (case_arm pat_list: [{(-g)}] action: [ (C {(_pgids)}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [193 194 209 -1] ) (case_arm pat_list: [{(-p)}] action: [ (C {(_pids)}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [212 213 228 -1] ) (case_arm pat_list: [{(-u)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-u)} {(--)} {(DQ ($ VSub_Name "$cur"))}) ] ) left_token: <Left_CommandSub "$("> spids: [242 254] ) } ] ) } spids: [239] ) ] spids: [239] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [231 232 264 -1] ) ] spids: [30 34 267] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ ($ VSub_Name "$cur"))} right: {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*") } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} { (SQ < "-h -a -A -b -c +c -C +d -d +D -D +f -f -F -g\n" > <" -i -k -l +L -L +m -m +M -M -n -N -o -O -p -P +r -r -R -s -S -T -t\n"> <" -u -U -v -V +w -w -x -X -z -Z"> ) } {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [296 314] ) } ] ) } spids: [293] ) ] spids: [293] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [-1 290] ) ] spids: [-1 324] ) (C {(_filedir)}) ] spids: [8] ) spids: [4 7] ) (C {(complete)} {(-F)} {(_lsof)} {(lsof)}) ] op_id: Op_DAmp ) ] )