--- } {<Id.Lit_RBrace "}">} --- , {<Id.Lit_Comma ",">} --- B-{a,b}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num:1 content:"B-{a,b}-E" src:(source.MainFile path:word_parse_test.py)) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:7 line:...0x7f9ce9b982b8) ] )-- --- B-{a"a",b"b",c"c"}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> (DQ <Id.Lit_Chars a>) <Id.Lit_Comma ","> <Id.Lit_Chars b> (DQ <Id.Lit_Chars b>) <Id.Lit_Comma ","> <Id.Lit_Chars c> (DQ <Id.Lit_Chars c>) <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a\"a\",b\"b\",c\"c\"}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts: [ (Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b98310) (DoubleQuoted left: (Token id:Id.Left_DoubleQuote length:1 col:4 line:...0x7f9ce9b98310) parts: [(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b98310)] right: (Token id:Id.Right_DoubleQuote length:1 col:6 line:...0x7f9ce9b98310) ) ] ) (CompoundWord parts: [ (Token id:Id.Lit_Chars length:1 col:8 line:...0x7f9ce9b98310) (DoubleQuoted left: (Token id:Id.Left_DoubleQuote length:1 col:9 line:...0x7f9ce9b98310) parts: [(Token id:Id.Lit_Chars length:1 col:10 line:...0x7f9ce9b98310)] right: (Token id:Id.Right_DoubleQuote length:1 col:11 line:...0x7f9ce9b98310) ) ] ) (CompoundWord parts: [ (Token id:Id.Lit_Chars length:1 col:13 line:...0x7f9ce9b98310) (DoubleQuoted left: (Token id:Id.Left_DoubleQuote length:1 col:14 line:...0x7f9ce9b98310) parts: [(Token id:Id.Lit_Chars length:1 col:15 line:...0x7f9ce9b98310)] right: (Token id:Id.Right_DoubleQuote length:1 col:16 line:...0x7f9ce9b98310) ) ] ) ] ) (Token id:Id.Lit_Chars length:2 col:18 line:...0x7f9ce9b98310) ] )-- --- B-{a,b}--{c,d}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_RBrace "}"> <Id.Lit_Chars --> <Id.Lit_LBrace "{"> <Id.Lit_Chars c> <Id.Lit_Comma ","> <Id.Lit_Chars d> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}--{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:7 line:...0x7f9ce9b982b8) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:10 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:12 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:14 line:...0x7f9ce9b982b8) ] )-- --- B-{a,b,c,={d,e}}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_Comma ","> <Id.Lit_Chars c> <Id.Lit_Comma ","> <Id.Lit_Equals "="> <Id.Lit_LBrace "{"> <Id..Lit_Chars d> <Id.Lit_Comma ","> <Id.Lit_Chars e> <Id.Lit_RBrace "}"> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b,c,={d,e}}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b98310)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b98310)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b98310)]) (CompoundWord parts: [ (Token id:Id.Lit_Equals length:1 col:9 line:...0x7f9ce9b98310) (word_part.BracedTuple words: [ (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b98310)] ) (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:13 line:...0x7f9ce9b98310)] ) ] ) ] ) ] ) (Token id:Id.Lit_Chars length:2 col:16 line:...0x7f9ce9b98310) ] ) --- B-{a,={b,c}=,d}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Equals "="> <Id.Lit_LBrace "{"> <Id.Lit_Chars b> <Id.Lit_Comma ","> <Id.Lit_Chars c> <Id.Lit_RBrace "}"> <Id.Lit_Equals "="> <Id.Lit_Comma ","> <Id.Lit_Chars d> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c}=,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8)]) (CompoundWord parts: [ (Token id:Id.Lit_Equals length:1 col:5 line:...0x7f9ce9b982b8) (word_part.BracedTuple words: [ (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8)] ) (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b982b8)] ) ] ) (Token id:Id.Lit_Equals length:1 col:11 line:...0x7f9ce9b982b8) ] ) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:13 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:15 line:...0x7f9ce9b982b8) ] )(CompoundWord parts: [ (Token id: Id.Lit_Chars length: 1 col: 3 line: (SourceLine line_num: 1 content: "B-{a,={b,c}=,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) ] ) --- {a,b,} {<Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_Comma ","> <Id.Lit_RBrace "}"> } (word.BracedTree parts: [ (word_part.BracedTuple words: [ (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 1 col: 1 line: (SourceLine line_num: 1 content: "{a,b,}" src: (source.MainFile path:word_parse_test.py) ) ) ] ) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b98368)]) (CompoundWord parts:[]) ] ) ] ) --- hi {<Id.Lit_Chars hi>} (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num:1 content:hi src:(source.MainFile path:word_parse_test.py)) ) ] ) --- B-{a,b}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num:1 content:"B-{a,b}-E" src:(source.MainFile path:word_parse_test.py)) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:7 line:...0x7f9ce9b982b8) ] )(CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num:1 content:"B-{a,b}-E" src:(source.MainFile path:word_parse_test.py)) ) (Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:7 line:...0x7f9ce9b982b8) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num:1 content:"B-{a,b}-E" src:(source.MainFile path:word_parse_test.py)) ) (Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:7 line:...0x7f9ce9b982b8) ] ) --- B-{a,={b,c,d}=,e}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Equals "="> <Id.Lit_LBrace "{"> <Id.Lit_Chars b> <Id.Lit_Comma ","> <Id.Lit_Chars c> <Id.Lit_Comma ","> <Id.Lit_Chars d> <Id.Lit_RBrace "}"> <Id.Lit_Equals "="> <Id.Lit_Comma ","> <Id.Lit_Chars e> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b98368)]) (CompoundWord parts: [ (Token id:Id.Lit_Equals length:1 col:5 line:...0x7f9ce9b98368) (word_part.BracedTuple words: [ (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b98368)] ) (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b98368)] ) (CompoundWord parts: [(Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b98368)] ) ] ) (Token id:Id.Lit_Equals length:1 col:13 line:...0x7f9ce9b98368) ] ) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:15 line:...0x7f9ce9b98368)]) ] ) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] )(CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Equals length:1 col:5 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b98368) (Token id:Id.Lit_Equals length:1 col:13 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Equals length:1 col:5 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b98368) (Token id:Id.Lit_Equals length:1 col:13 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Equals length:1 col:5 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b98368) (Token id:Id.Lit_Equals length:1 col:13 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,={b,c,d}=,e}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Chars length:1 col:15 line:...0x7f9ce9b98368) (Token id:Id.Lit_Chars length:2 col:17 line:...0x7f9ce9b98368) ] ) --- B-{a,b}-{c,d}-E {<Id.Lit_Chars B-> <Id.Lit_LBrace "{"> <Id.Lit_Chars a> <Id.Lit_Comma ","> <Id.Lit_Chars b> <Id.Lit_RBrace "}"> <Id.Lit_Chars -> <Id.Lit_LBrace "{"> <Id.Lit_Chars c> <Id.Lit_Comma ","> <Id.Lit_Chars d> <Id.Lit_RBrace "}"> <Id.Lit_Chars -E> } (word.BracedTree parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}-{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8) (word_part.BracedTuple words: [ (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b982b8)]) (CompoundWord parts:[(Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b982b8)]) ] ) (Token id:Id.Lit_Chars length:2 col:13 line:...0x7f9ce9b982b8) ] )(CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}-{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:13 line:...0x7f9ce9b982b8) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}-{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Chars length:1 col:3 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:13 line:...0x7f9ce9b982b8) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}-{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id:Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:9 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:13 line:...0x7f9ce9b982b8) ] ) (CompoundWord parts: [ (Token id: Id.Lit_Chars length: 2 col: 0 line: (SourceLine line_num: 1 content: "B-{a,b}-{c,d}-E" src: (source.MainFile path:word_parse_test.py) ) ) (Token id.'' None '1' None '1..' None '1' (word_part.BracedRange blame_tok: (Token id:Id.Lit_Chars length:4 col:0 line:(SourceLine line_num:1 content:1..3 src:(source__Interactive))) kind: Id.Range_Int start: 1 end: 3 step: 1 ) '3' (word_part.BracedRange blame_tok: (Token id:Id.Lit_Chars length:10 col:0 line:(SourceLine line_num:1 content:3..-10..-2 src:(source__Interactive))) kind: Id.Range_Int start: 3 end: -10 step: -2 ) '3..-10..-2..' None 'a' None 'a..' None 'a' (word_part.BracedRange blame_tok: (Token id:Id.Lit_Chars length:4 col:0 line:(SourceLine line_num:1 content:a..z src:(source__Interactive))) kind: Id.Range_Char start: a end: z step: 1 ) 'a..z..' None 'z' (word_part.BracedRange blame_tok: (Token id:Id.Lit_Chars length:8 col:0 line:(SourceLine line_num:1 content:z..a..-1 src:(source__Interactive))) kind: Id.Range_Char start: z end: a step: -1 ) . ---------------------------------------------------------------------- Ran 3 tests in 0.016s OK :Id.Lit_Chars length:1 col:5 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:7 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:1 col:11 line:...0x7f9ce9b982b8) (Token id:Id.Lit_Chars length:2 col:13 line:...0x7f9ce9b982b8) ] )