(command.AndOr ops: [Op_DAmp] children: [ (command.FuncDef name: _abook body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cur spids:[13]) op: Equal spids: [13] ) (assign_pair lhs: (lhs_expr.LhsName name:prev spids:[15]) op: Equal spids: [15] ) (assign_pair lhs: (lhs_expr.LhsName name:words spids:[17]) op: Equal spids: [17] ) (assign_pair lhs: (lhs_expr.LhsName name:cword spids:[19]) op: Equal spids: [19] ) ] spids: [11] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(_init_completion)}) (command.ControlFlow token:<ControlFlow_Return return>) ] ) (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.LogicalAnd left: (bool_expr.BoolBinary op_id: BoolBinary_eq left: {($ VSub_DollarName '$cword')} right: {(1)} ) right: (bool_expr.BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_DollarName '$cur'))} ) ) ) (command.BraceGroup children: [ (C {(compopt)} {(-o)} {(nospace)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[65]) op: Equal rhs: {(word_part.ArrayLiteralPart words:[{(DQ (-))}])} spids: [65] ) ] spids: [65] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [55] ) ] ) (command.Case to_match: {($ VSub_DollarName '$cur')} arms: [ (case_arm pat_list: [{(-) (Lit_Other '*')}] action: [ (C {(_longopt)} {(abook)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [91 93 106 16777215] ) ] spids: [84 88 109] ) (command.Case to_match: {($ VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(--informat)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[124]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {($ VSub_Number '$1')} {(--formats)}) (C {(sed)} {(-n)} {(-e)} {(SQ <'s/^'>) (word_part.SingleQuotedPart left: <Left_DollarSingleQuote "$'"> tokens: [<Char_OneChar '\\t'>] spids: [152 154] ) (SQ <'\\([a-z]*\\).*/\\1/p'>) } {(-e)} {(SQ <'/^$/q'>)} ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [134 164] ) ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [127 173] ) } ] ) } spids: [124] ) ] spids: [124] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [120 121 183 16777215] ) (case_arm pat_list: [{(--outformat)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[190]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {($ VSub_Number '$1')} {(--formats)}) (C {(sed)} {(-n)} {(-e)} {(SQ <'/^$/,$s/^'>) (word_part.SingleQuotedPart left: <Left_DollarSingleQuote "$'"> tokens: [<Char_OneChar '\\t'>] spids: [218 220] ) (SQ <'\\([a-z]*\\).*/\\1/p'>) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [200 224] ) ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [193 233] ) } ] ) } spids: [190] ) ] spids: [190] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [186 187 243 16777215] ) (case_arm pat_list: [{(--infile)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[250]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(stdin)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [253 267] ) } ] ) } spids: [250] ) ] spids: [250] ) (C {(_filedir)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [246 247 280 16777215] ) (case_arm pat_list: [{(--outfile)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[287]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(stdout)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [290 304] ) } ] ) } spids: [287] ) ] spids: [287] ) (C {(_filedir)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [283 284 317 16777215] ) (case_arm pat_list: [{(--config)} {(--datafile)}] action: [ (C {(_filedir)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [320 323 334 16777215] ) ] spids: [113 117 337] ) ] spids: [8] ) spids: [4 7] ) (C {(complete)} {(-F)} {(_abook)} {(abook)}) ] )