(command.CommandList children: [ (command.ShFunction name: _samba_resolve_order body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:12) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:14) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'lmhosts host wins bcast' span_id: 21 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [11] ) ] ) ] ) ) (command.ShFunction name: _samba_domains body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Unary op_id: Id.BoolUnary_n child: { (braced_var_sub token: (Token id:Id.VSub_Name val:COMP_SAMBA_SCAN span_id:51) suffix_op: (suffix_op.Unary op_id:Id.VTest_ColonHyphen arg_word:{}) ) } ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:56) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:62) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:64) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( smbtree -N -D )' span_id: 71 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [61] ) ] ) ] spids: [44 58] ) ] ) ] ) ) (command.ShFunction name: _samba_hosts body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Unary op_id: Id.BoolUnary_n child: { (braced_var_sub token: (Token id:Id.VSub_Name val:COMP_SAMBA_SCAN span_id:104) suffix_op: (suffix_op.Unary op_id:Id.VTest_ColonHyphen arg_word:{}) ) } ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:109) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:115) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:117) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 124 ) command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(smbtree)} {(-N)} {(-S)}) (C {(sed)} {(-ne)} { (SQ (Token id: Id.Lit_Chars val: 's/^[[:space:]]*\\\\\\\\*\\([^[:space:]]*\\).*/\\1/p' span_id: 141 ) ) } ) ] negated: F ) ] ) ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [114] ) ] ) ] spids: [97 111] ) ] ) ] ) ) (command.ShFunction name: _samba_debuglevel body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:173) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:175) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'{0..10}' span_id:182))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [172] ) ] ) ] ) ) (command.ShFunction name: _samba_sockopts body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:206) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:208) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'SO_KEEPALIVE SO_REUSEADDR SO_BROADCAST\n' span_id: 215 ) (Token id: Id.Lit_Chars val: ' TCP_NODELAY IPTOS_LOWDELAY IPTOS_THROUGHPUT SO_SNDBUF SO_RCVBUF\n' span_id: 216 ) (Token id:Id.Lit_Chars val:' SO_SNDLOWAT SO_RCVLOWAT' span_id:217) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [205] ) ] ) ] ) ) (command.ShFunction name: _samba_signing body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:241) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:243) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'on off required' span_id:250))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [240] ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbclient body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:292) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-R)} {(--name-resolve)}] action: [ (C {(_samba_resolve_order)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:312) arg_word: {(0)} ) ] spids: [303 306 317 -1] ) (case_arm pat_list: [{(-t)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:325) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 327 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'SJIS EUC JIS7 JIS8 JUNET HEX CAP' span_id: 334 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [324] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:350) arg_word: {(0)} ) ] spids: [320 321 355 -1] ) (case_arm pat_list: [{(-s)} {(--configfile)} {(-A)} {(--authentication-file)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:371) arg_word: {(0)} ) ] spids: [358 365 376 -1] ) (case_arm pat_list: [{(-l)} {(--log-basename)} {(-D)} {(--directory)}] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:394) arg_word: {(0)} ) ] spids: [379 386 399 -1] ) (case_arm pat_list: [{(-O)} {(--socket-options)}] action: [ (C {(_samba_sockopts)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:411) arg_word: {(0)} ) ] spids: [402 405 416 -1] ) (case_arm pat_list: [{(-T)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:424) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 426 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'c x I X F b g q r N a' span_id: 433 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [423] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:447) arg_word: {(0)} ) ] spids: [419 420 452 -1] ) (case_arm pat_list: [{(-W)} {(--workgroup)}] action: [ (C {(_samba_domains)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:464) arg_word: {(0)} ) ] spids: [455 458 469 -1] ) (case_arm pat_list: [{(-d)} {(--debuglevel)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:481) arg_word: {(0)} ) ] spids: [472 475 486 -1] ) (case_arm pat_list: [{(-L)} {(--list)}] action: [ (C {(_samba_hosts)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:498) arg_word: {(0)} ) ] spids: [489 492 503 -1] ) (case_arm pat_list: [{(-S)} {(--signing)}] action: [ (C {(_samba_signing)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:515) arg_word: {(0)} ) ] spids: [506 509 520 -1] ) (case_arm pat_list: [ {(-p)} {(--port)} {(-M)} {(--message)} {(-I)} {(--ip-address)} {(-b)} {(--send-buffer)} {(-U)} {(--user)} {(-n)} {(--netbiosname)} {(-i)} {(--scope)} {(-T)} {(--tar)} {(-c)} {(--command)} {(-m)} {(--max-protocol)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:571) arg_word: {(0)} ) ] spids: [523 564 576 -1] ) (case_arm pat_list: [ {(-) (word_part.EscapedLiteral token: (Token id:Id.Lit_EscapedChar val:'\\?' span_id:580) ) } {(--help)} {(-V)} {(--version)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:594) arg_word: {(0)} ) ] spids: [579 587 599 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:610) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:630) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:636) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 638 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 645 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [635] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [616 632] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbclient)} {(smbclient)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbget body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:720) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-o)} {(--outputfile)} {(-f)} {(--rcfile)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:744) arg_word: {(0)} ) ] spids: [731 738 749 -1] ) (case_arm pat_list: [{(-d)} {(--debuglevel)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:761) arg_word: {(0)} ) ] spids: [752 755 766 -1] ) (case_arm pat_list: [{(-w)} {(--workgroup)}] action: [ (C {(_samba_domains)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:778) arg_word: {(0)} ) ] spids: [769 772 783 -1] ) (case_arm pat_list: [{(-u)} {(--username)} {(-p)} {(--password)} {(-b)} {(--blocksize)}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:800) arg_word: {(0)} ) ] spids: [786 797 805 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:816) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:836) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:842) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 844 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 851 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [841] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [822 838] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbget)} {(smbget)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbcacls body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:926) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-s)} {(--configfile)} {(-A)} {(--authentication-file)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:950) arg_word: {(0)} ) ] spids: [937 944 955 -1] ) (case_arm pat_list: [{(-l)} {(--log-basename)}] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:969) arg_word: {(0)} ) ] spids: [958 961 974 -1] ) (case_arm pat_list: [{(-d)} {(--debuglevel)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:986) arg_word: {(0)} ) ] spids: [977 980 991 -1] ) (case_arm pat_list: [{(--signing)}] action: [ (C {(_samba_signing)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1001) arg_word: {(0)} ) ] spids: [994 995 1006 -1] ) (case_arm pat_list: [{(-O)} {(--socket-options)}] action: [ (C {(_samba_sockopts)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1018) arg_word: {(0)} ) ] spids: [1009 1012 1023 -1] ) (case_arm pat_list: [{(-W)} {(--workgroup)}] action: [ (C {(_samba_domains)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1035) arg_word: {(0)} ) ] spids: [1026 1029 1040 -1] ) (case_arm pat_list: [ {(-) (word_part.EscapedLiteral token: (Token id:Id.Lit_EscapedChar val:'\\?' span_id:1044) ) } {(--help)} {(--usage)} {(-D)} {(--delete)} {(-M)} {(--modify)} {(-a)} {(--add)} {(-S)} {(--set)} {(-C)} {(--chown)} {(-G)} {(--chgrp)} {(-n)} {(--netbiosname)} {(-i)} {(--scope)} {(-U)} {(--user)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1090) arg_word: {(0)} ) ] spids: [1043 1087 1095 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1106) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1126) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1132) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1134 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 1141 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1131] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [1112 1128] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbcacls)} {(smbcacls)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbcquotas body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1216) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-s)} {(--configfile)} {(-A)} {(--authentication-file)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1240) arg_word: {(0)} ) ] spids: [1227 1234 1245 -1] ) (case_arm pat_list: [{(-l)} {(--log-basename)}] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1259) arg_word: {(0)} ) ] spids: [1248 1251 1264 -1] ) (case_arm pat_list: [{(-d)} {(--debuglevel)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1276) arg_word: {(0)} ) ] spids: [1267 1270 1281 -1] ) (case_arm pat_list: [{(--signing)}] action: [ (C {(_samba_signing)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1291) arg_word: {(0)} ) ] spids: [1284 1285 1296 -1] ) (case_arm pat_list: [ {(-) (word_part.EscapedLiteral token: (Token id:Id.Lit_EscapedChar val:'\\?' span_id:1300) ) } {(--help)} {(--usage)} {(-U)} {(-u)} {(--user)} {(-S)} {(--set)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1318) arg_word: {(0)} ) ] spids: [1299 1315 1323 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1334) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1354) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1360) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1362 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 1369 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1359] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [1340 1356] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbcquotas)} {(smbcquotas)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbpasswd body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1440) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-r)}] action: [ (C {(_samba_hosts)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1458) arg_word: {(0)} ) ] spids: [1451 1452 1463 -1] ) (case_arm pat_list: [{(-R)}] action: [ (C {(_samba_resolve_order)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1473) arg_word: {(0)} ) ] spids: [1466 1467 1478 -1] ) (case_arm pat_list: [{(-c)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1488) arg_word: {(0)} ) ] spids: [1481 1482 1493 -1] ) (case_arm pat_list: [{(-D)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1503) arg_word: {(0)} ) ] spids: [1496 1497 1508 -1] ) (case_arm pat_list: [{(-U)} {(-h)} {(-w)}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1519) arg_word: {(0)} ) ] spids: [1511 1516 1524 -1] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1545) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1551) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1553 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" -h )' span_id: 1560 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1550] ) ] ) ] spids: [1531 1547] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbpasswd)} {(smbpasswd)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbtar body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1611) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-r)} {(-t)}] action: [ (C {(_filedir)} {(tar)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1633) arg_word: {(0)} ) ] spids: [1622 1625 1638 -1] ) (case_arm pat_list: [{(-s)}] action: [ (C {(_samba_hosts)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1648) arg_word: {(0)} ) ] spids: [1641 1642 1653 -1] ) (case_arm pat_list: [{(-l)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1663) arg_word: {(0)} ) ] spids: [1656 1657 1668 -1] ) (case_arm pat_list: [{(-N)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1678) arg_word: {(0)} ) ] spids: [1671 1672 1683 -1] ) (case_arm pat_list: [{(-p)} {(-x)} {(-b)} {(-d)} {(-u)}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1698) arg_word: {(0)} ) ] spids: [1686 1695 1703 -1] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1724) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1730) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1732 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 1739 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1729] ) ] ) ] spids: [1710 1726] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbtar)} {(smbtar)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _smbtree body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1794) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(-s)} {(--configfile)} {(-A)} {(--authentication-file)}] action: [ (C {(_filedir)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1818) arg_word: {(0)} ) ] spids: [1805 1812 1823 -1] ) (case_arm pat_list: [{(-l)} {(--log-basename)}] action: [ (C {(_filedir)} {(-d)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1837) arg_word: {(0)} ) ] spids: [1826 1829 1842 -1] ) (case_arm pat_list: [{(-d)} {(--debuglevel)}] action: [ (C {(_samba_debuglevel)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1854) arg_word: {(0)} ) ] spids: [1845 1848 1859 -1] ) (case_arm pat_list: [{(-S)} {(--signing)}] action: [ (C {(_samba_signing)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1871) arg_word: {(0)} ) ] spids: [1862 1865 1876 -1] ) (case_arm pat_list: [ {(-) (word_part.EscapedLiteral token: (Token id:Id.Lit_EscapedChar val:'\\?' span_id:1880) ) } {(--help)} {(--usage)} {(-U)} {(--user)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1892) arg_word: {(0)} ) ] spids: [1879 1889 1897 -1] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:1908) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1928) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1934) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1936 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: '$( _parse_help "$1" )' span_id: 1943 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1933] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [1914 1930] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_smbtree)} {(smbtree)}) ] ) ] )