PjDdZddlmZddlmZGddeZdZdS)zEgettext message extraction via Babel: https://pypi.org/project/Babel/)extract_python)MessageExtractorc*eZdZfdZdZdZxZS)BabelMakoExtractorc||_||_d||d|ddd|_t dS)N input_encodingencoding) comment-tagsr )keywordsoptionsjoingetconfigsuper__init__)selfr comment_tagsr __class__s /srv/buildsys-work-dir/castor/build_node/builder-2/WGSG1/unpkd_srcs/cloudlinux-venv-1.0.6/venv/lib/python3.11/site-packages/mako/ext/babelplugin.pyrzBabelMakoExtractor.__init__sp   HH\22  '++j$"?"?   c,||S)N) process_file)rfileobjs r__call__zBabelMakoExtractor.__call__s  )))rc#K|jd}t||j||jD]\}}}}||dz z||||zfVdS)Nr )rrr r ) rcode code_linenotranslator_stringsrlinenofuncnamemessagespython_translator_commentss rprocess_pythonz!BabelMakoExtractor.process_pythons{>2 D$-t| L L      &vz*"%??       r)__name__ __module__ __qualname__rrr% __classcell__)rs@rrr sV     ***       rrc#NKt|||}||Ed{VdS)aExtract messages from Mako templates. :param fileobj: the file-like object the messages should be extracted from :param keywords: a list of keywords (i.e. function names) that should be recognized as translation functions :param comment_tags: a list of translator tags to search for and include in the results :param options: a dictionary of additional options (optional) :return: an iterator over ``(lineno, funcname, message, comments)`` tuples :rtype: ``iterator`` N)r)rr rr extractors rextractr,,sA#8\7CCIy!!!!!!!!!!!rN)__doc__babel.messages.extractrmako.ext.extractrrr,rrr1svLK111111------)> " " " " "r