3 ª f¡ã@s:dZddlmZmZddlmZmZGdd„dejƒZdS)z: Optional fixer to transform set() calls to set literals. é)Ú fixer_baseÚpytree)ÚtokenÚsymsc@s eZdZdZdZdZdd„ZdS)Ú FixSetLiteralTajpower< 'set' trailer< '(' (atom=atom< '[' (items=listmaker< any ((',' any)* [',']) > | single=any) ']' > | atom< '(' items=testlist_gexp< any ((',' any)* [',']) > ')' > ) ')' > > c CsÊ|jdƒ}|r2tjtj|jƒgƒ}|j|ƒ|}n|d}tjtj dƒg}|j dd„|j Dƒƒ|j tjtj dƒƒ|jj|d _tjtj|ƒ}|j|_t|j ƒdkrÆ|j d }|jƒ|j|j d _|S) NÚsingleÚitemsú{css|]}|jƒVqdS)N)Úclone)Ú.0Ún©r úB/opt/alt/python36/lib64/python3.6/lib2to3/fixes/fix_set_literal.pyú 'sz*FixSetLiteral.transform..ú}ééééÿÿÿÿr)ÚgetrZNoderZ listmakerr ÚreplaceZLeafrÚLBRACEÚextendZchildrenÚappendÚRBRACEZ next_siblingÚprefixZ dictsetmakerÚlenÚremove) ÚselfZnodeZresultsrZfakerÚliteralZmakerr r r rÚ transforms"   zFixSetLiteral.transformN)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleZexplicitZPATTERNr r r r rr s rN) Ú__doc__Zlib2to3rrZlib2to3.fixer_utilrrZBaseFixrr r r rÚs