id-^dZddlmZddlmZddlmZdZdZGddej Z d S) z& Fixer to remove function annotations ) fixer_base)token)symsz)Removing function annotations completely.c|jdS)Nr)children)nodes X/opt/cloudlinux/venv/lib/python3.11/site-packages/libpasteurize/fixes/fix_annotations.pyparam_without_annotationsr s = c"eZdZdZdZdZdZdS)FixAnnotationsFcT|js d|_|||dSdS)NTreason)warnedwarning)selfrrs r warn_oncezFixAnnotations.warn_onces9{ .DK LLfL - - - - - . .r zm funcdef< 'def' any parameters< '(' [params=any] ')' > ['->' ret=any] ':' any* > c|d}|d}|I||t|j||dS|jt jkr_|jD]U}|jt j kr>||t| t|VdS|jt j kr@||t| t|dSdS)zK This just strips annotations from the funcdef completely. paramsretNr) getr warning_text prev_siblingremovetyper typedargslistrtnamereplacer )rrresultsrrparams r transformzFixAnnotations.transforms,Y''kk&!! ? NN4 N 5 5 5   # # % % % JJLLL >66 ;$, , , D D:++NN4 N===MM";E"B"BCCC D D[DJ & & NN4 N 5 5 5 NN4V<< = = = = =' &r N)__name__ __module__ __qualname__rrPATTERNr"r r r r s> F... G>>>>>r r N) __doc__lib2to3r lib2to3.pgen2rlib2to3.fixer_utilrrr BaseFixr r'r r r-s######; ">">">">">Z'">">">">">r