bgUdZddlmZddlmZddlZddlmZddlmZddl m Z m Z m Z ddl mZerdd lmZd d iZd ed <GddeZddZdS)z+Check for new / old style related problems.) annotations) TYPE_CHECKINGN)nodes) BaseChecker)has_known_basesnode_frame_classonly_required_for_messages)MessageDefinitionTuple)PyLinterE1003)z&Bad first argument %r given to super()bad-super-callzbUsed when another argument than the current class is given as first argument of the super builtin.z!dict[str, MessageDefinitionTuple]MSGScLeZdZdZdZeZdZedd d Z e Z d S) NewStyleConflictCheckerzChecks for usage of new style capabilities on old style classes and other new/old styles conflicts problems. * use of property, __slots__, super * "super" usage newstyler nodenodes.FunctionDefreturnNonec|sdS|jd}|tjD]}t |t |kr$|j}t|tj sF|j }t|tjr/t|jtj r|jj dks|j st|s|js|jd}t|tjrIt|jtj r*|jj dkr|d|d &t#|jd krzt|jd tj rU|jd j d kr?t|tj r%|jd kr|d|d  |jo,t'|jddn#t*j$rYwxYw|urt/fd|Dr[d}rj }n4|jr-t3|jddr|jdj }|r|d||f dS)zCheck use of super.NT)futuresuperrtyper )r)rargsself __class__)zself.__class__c3$K|] }|kV dSNr).0isupclss i/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/pylint/checkers/newstyle.py z.qs'.V.VqqF{.V.V.V.V.V.Vname) is_methodparentframenodes_of_classrCallrfunc isinstance AttributeexprNamer(rrr add_messagelenattrnamenextinferastroidInferenceErrorall ancestorshasattr) rrklassstmtr1callarg0r(r$s @r%visit_functiondefz)NewStyleConflictChecker.visit_functiondef2s~~  F !!!..'' 33B TB TD%%)9$)?)???9DdEO44 9D4,, ty%*55 INg--~/ T_U%;%;/ Tyy|tUZ00"49ej99 &00$$%5Dy$QQQ  NNa''"49Q<<<( ! )V33"4994 44$$(t:M%!YK4 ! 0B0B0D0Dd+K+KFF-H &&3.V.V.V.VEOODUDU.V.V.V+V+V&D1%{1wty|V'D'D1#y|0T(()9D7(SSSEB TB Ts 4IIIN)rrrr) __name__ __module__ __qualname____doc__r(rmsgsoptionsr rAvisit_asyncfunctiondefrr'r%rr#sg D DG 011HTHTHT21HTT/r'rlinterr rrcJ|t|dSr!)register_checkerr)rIs r%registerrLs% 3F;;<<<<rTs7 211"""""" '''''' 100000%$$$$$$ +Z/Z/Z/Z/Z/kZ/Z/Z/z======r'