(AndOr OP_AND_IF (FunctionDef _rcs [] (List (= scope= flags=0 words=[{[LIT_CHARS cur]}, {[LIT_CHARS prev]}, {[LIT_CHARS words]}, {[LIT_CHARS cword]}] bindings=[]) (AndOr OP_OR_IF (Com {[LIT_CHARS _init_completion]} ) (Com {[LIT_CHARS return]} ) ) (= scope= flags=0 words=[{[LIT_CHARS file]}, {[LIT_CHARS dir]}, {[LIT_CHARS i]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('file', {[VarSub cur transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]})]) (= scope= flags=0 words=[] bindings=[('dir', {[VarSub cur transform_ops=[VS_UNARY_PERCENT {[LIT_SLASH /] [LIT_CHARS "*"]}]]})]) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_EQUAL {[VarSub file]} {[VarSub dir]}}) (= scope= flags=0 words=[] bindings=[('dir', {[LIT_CHARS .]})]) ) (= scope= flags=0 words=[] bindings=[('COMPREPLY', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -f]} {[LIT_CHARS --]} {[DQ [VarSub dir][LIT_CHARS /RCS/][VarSub file]]})]}]})]) (ForExpr {A2 AS_OP_EQUAL {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}}} {A2 AS_OP_LESS {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(#len)]]}}} {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub i]}} } (List (= scope= flags=0 words=[] bindings=[('file', {[VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}}) transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]})]) (= scope= flags=0 words=[] bindings=[('dir', {[VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}}) transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS RCS] [LIT_SLASH /] [LIT_CHARS "*"]}]]})]) (Com {[LIT_CHARS COMPREPLY] [LIT_DBRACKET_LIKE "["] [VarSub i] [LIT_DBRACKET_LIKE "]="] [VarSub dir] [VarSub file]} ) ) ) (= scope= flags=0 words=[] bindings=[('COMPREPLY+', {[Array {[ComSub (Com {[LIT_CHARS compgen]} {[LIT_CHARS -G]} {[DQ [VarSub dir][LIT_CHARS /][VarSub file][LIT_CHARS "*,v"]]})]}]})]) (ForExpr {A2 AS_OP_EQUAL {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}}} {A2 AS_OP_LESS {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(#len)]]}}} {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub i]}} } (Com {[LIT_CHARS COMPREPLY] [LIT_DBRACKET_LIKE "["] [VarSub i] [LIT_DBRACKET_LIKE "]="] [VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}}) transform_ops=[VS_UNARY_PERCENT {[LIT_CHARS ",v"]}]]} ) ) (AndOr OP_AND_IF (DBracket {B? LOGICAL_BINARY_AND {B2 BINARY_INT_EQ {[VarSub COMPREPLY bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(#len)]]} {[LIT_CHARS 0]}} {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[LIT_CHARS ci]}}}) (AndOr OP_OR_IF (Com {[LIT_CHARS _filedir]} ) (Com {[LIT_CHARS _filedir]} {[LIT_CHARS -d]} ) ) ) ) ) (Com {[LIT_CHARS complete]} {[LIT_CHARS -F]} {[LIT_CHARS _rcs]} {[LIT_CHARS ci]} {[LIT_CHARS co]} {[LIT_CHARS rlog]} {[LIT_CHARS rcs]} {[LIT_CHARS rcsdiff]} ) )