z]Q @ddlmZddlmZGddeZdZdS)) ParserCreate)IntrospectionParserExceptionc*eZdZdZdZdZdZdZdS)_Parsermapin_iface in_methodsigc>i|_d|_d|_d|_dS)Nr)selfs ?/usr/lib/python3/dist-packages/dbus/_expat_introspect_parser.py__init__z_Parser.__init__!s" ctdd}d|_|j|_|j|_|||jS)NzUTF-8 T)r buffer_textStartElementHandlerEndElementHandlerParser)rdataparsers rparsez _Parser.parse'sHgs++!%)%="#'#9  Txrc|js |js|dkr|d|_dSdSdS|js|dkr|d|_dS|jr8|dkr4|dddkr|xj|dz c_dSdSdSdS)N interfacenamemethodarg directionintype)r r getr )rr attributess rrz_Parser.StartElementHandler/s} 3N 3t{':': *6 2  3 3':':N 3tx'7'7!+F!3. 3TU]]>>+t44<<HH 6 22HHHH 3 3]]<!#     %5%5rN)__name__ __module__ __qualname__ __slots__rrrrrrrrsU7I  3 3 3rrc t|S#t$r}t|jd|d}~wwxYw)aReturn a dict mapping ``interface.method`` strings to the concatenation of all their 'in' parameters, and mapping ``interface.signal`` strings to the concatenation of all their parameters. Example output:: { 'com.example.SignalEmitter.OneString': 's', 'com.example.MethodImplementor.OneInt32Argument': 'i', } :Parameters: `data` : str The introspection XML. Must be an 8-bit string of UTF-8. z: N)rr Exceptionr __class__)res rprocess_introspection_datar0Cs\"Hyyt$$$ HHH*q{{{AA+FGGGHs # A AA N)xml.parsers.expatrdbus.exceptionsrobjectrr0r+rrr4st8+*****888888"""""f"""HHHHHHr