o bc@s:dZddlmZmZddlmZmZGdddejZdS)z: Optional fixer to transform set() calls to set literals. ) fixer_basepytree)tokensymsc@s eZdZdZdZdZddZdS) FixSetLiteralTajpower< 'set' trailer< '(' (atom=atom< '[' (items=listmaker< any ((',' any)* [',']) > | single=any) ']' > | atom< '(' items=testlist_gexp< any ((',' any)* [',']) > ')' > ) ')' > > c Cs|d}|rttj|g}|||}n|d}ttj dg}| dd|j D| ttj d|jj|d_ttj|}|j|_t|j dkrc|j d }||j|j d_|S) Nsingleitems{css|]}|VqdS)N)clone).0nr 4/usr/lib/python3.10/lib2to3/fixes/fix_set_literal.py 'sz*FixSetLiteral.transform..})getrNoder listmakerr replaceLeafrLBRACEextendchildrenappendRBRACE next_siblingprefix dictsetmakerlenremove) selfnoderesultsrfakerliteralmakerr r r r transforms"   zFixSetLiteral.transformN)__name__ __module__ __qualname__ BM_compatibleexplicitPATTERNr)r r r rr s  rN) __doc__lib2to3rrlib2to3.fixer_utilrrBaseFixrr r r rs