관리-도구
편집 파일: fix_has_key.cpython-312.opt-1.pyc
� �Q�f| � �Z � d Z ddlmZ ddlmZ ddlmZmZ G d� dej � Zy)a& Fixer for has_key(). Calls to .has_key() methods are expressed in terms of the 'in' operator: d.has_key(k) -> k in d CAVEATS: 1) While the primary target of this fixer is dict.has_key(), the fixer will change any has_key() method call, regardless of its class. 2) Cases like this will not be converted: m = d.has_key if m(k): ... Only *calls* to has_key() are converted. While it is possible to convert the above to something like m = d.__contains__ if m(k): ... this is currently not done. � )�pytree)� fixer_base)�Name�parenthesizec � � e Zd ZdZdZd� Zy)� FixHasKeyTa� anchor=power< before=any+ trailer< '.' 'has_key' > trailer< '(' ( not(arglist | argument<any '=' any>) arg=any | arglist<(not argument<any '=' any>) arg=any ','> ) ')' > after=any* > | negation=not_test< 'not' anchor=power< before=any+ trailer< '.' 'has_key' > trailer< '(' ( not(arglist | argument<any '=' any>) arg=any | arglist<(not argument<any '=' any>) arg=any ','> ) ')' > > > c �` � | j }|j j |j k( r&| j j |j � ry |j d� }|d }|j }|d D �cg c] }|j � �� }}|d j � } |j d� } | r| D �cg c] }|j � �� } }| j |j |j |j |j |j |j |j fv rt | � } t! |� dk( r|d }n t# j$ |j&