+
    <=i                         R t ^ RIHtHt ^ RIHt ]R,          R8  d   ^ RIHt M^ RIHt ^ RI	H
t
 ^ RI5 ^ RI5 ^ RIt ! R R	]4      t ! R
 R]4      tR# )zJ
This module contains the namespace class and the singleton module class.
)dirnamebasename)version_info:N   N)parse)matcher)*Nc                   6   a  ] tR t^t o RtR tR tR tRtV t	R# )	Namespacea;  
Contains the naming information for an extension.

Public fields:

header is the header attribute ("header file" name).
is_ext is true for extensions, false for xproto.
major_version and minor_version are extension version info.
ext_xname is the X extension name string.
ext_name is the XCB extension name prefix.
c                   Wn         \        V4      V n        \        V4      V n        \        V4      P                  4       V n        V P                  P                  R 4      V n	        V P                  R,           V n
        / V n        V P                  P                  RR4      '       d   RV n        V P                  P                  R4      V n        V P                  P                  R4      V n        V P                  P                  R4      V n        V P                  P                  R4      V n        RV P                   3V n        R
# RV n        R	V n        RV n        R
# )header:zextension-xnameFTzmajor-versionzminor-versionzextension-namexcb Nr   )pathr   dirr   filer   getrootrootgetr   nseventsis_extmajor_versionminor_version	ext_xnameext_nameprefix)selffilenames   &&1/usr/lib/python3.14/site-packages/xcbgen/state.py__init__Namespace.__init__   s    	8$X&	 (O++-	iimmH-++#  99==*E22DK!%!?D!%!?D!YY]]+<=DN IIMM*:;DM $--0DKDKDM"DK    c                &    W#3V P                   V&   R # Nr   r   idnameitems   &&&&r!   	add_eventNamespace.add_event9   s    ,Br$   c                    V P                   P                  4        F5  w  pw  rEVP                  V8X  g   K  VP                  V4      pVf   K2  We3u # 	  R # r&   )r   itemsis_ge_eventget_name_for_opcode)r   opcoder0   r)   r*   eventopcode_specific_names   &&&    r!   get_event_by_opcodeNamespace.get_event_by_opcode<   sS    !%!2!2!4B  K/','@'@&'J$'3088	 "5
 r$   )r   r   r   r   r   r   r   r   r   r   r   r   r   N)
__name__
__module____qualname____firstlineno____doc__r"   r,   r5   __static_attributes____classdictcell____classdict__s   @r!   r
   r
      s     
#6' r$   r
   c                      a  ] tR t^Et o Rt]P                  R,          t]P                  R,          tR t	R t
R tR tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tRtV tR# )Modulea   
This is the grand, encompassing class that represents an entire XCB specification.
Only gets instantiated once, in the main() routine.

Don't need to worry about this much except to declare it and to get the namespace.

Public fields:
namespace contains the namespace info for the spec.
openclosec                   \        V4      V n        W n        . V n        . V n        ^ V n        / V n        / V n        / V n        . V n	        / V n
        V P                  V P                  V P                  P                  &   V P                  RRR\        4       V P                  RRR\        4       V P                  RRR\        4       V P                  RRR\         4       V P                  RRR\"        4       V P                  RRR\$        4       V P                  RRR\&        4       V P                  R	RR\(        4       V P                  R
RR\*        4       V P                  RRR\,        4       V P                  RRR\.        4       V P                  RRR\0        4       V P                  RRR\2        4       V P                  RRR\4        4       R# )    CARD8r   CARD16CARD32CARD64INT8INT16INT32INT64BYTEBOOLcharfloatdoublevoidN)uint8_t)uint16_t)uint32_t)uint64_t)int8_t)int16_t)int32_t)int64_t)rP   )rQ   )rR   )rS   )r
   	namespaceoutputimportsdirect_importsimport_leveltypesr   errorsall
namespacesr   add_typetcard8tcard16tcard32tcard64tint8tint16tint32tint64tbytetbooltchartfloattdoubletvoid)r   r    r]   s   &&&r!   r"   Module.__init__R   si   "8, 
 37>>//0 	gr<8hM7;hM7;hM7;fb+u5gr<8gr<8gr<8fb,6fb,6fb)U3gr:v6hK9fb)U3r$   c                F    \         P                  ! W P                  4       R # r&   )r   executer\   )r   s   &r!   registerModule.registert   s    nn-r$   c                    V P                  4        V P                   F  w  r^ V n        VP                  V 4       K  	  R# rE   N)add_events_to_namespacesrc   padsresolver   r*   r+   s   &  r!   r}   Module.resolvex   s1    %%' HHLTDILL %r$   c                    V P                  4        V P                   F  w  rVP                  V4       K  	  V P                  4        R # r&   )rB   rc   outrC   r~   s   &  r!   generateModule.generate   s1    		 HHLTHHTN % 	

r$   c                    V P                   ^ 8X  d'   V P                  P                  WP                  34       V P                  P                  WP                  34       W P
                  VP                  &   R# rz   )r`   r_   appendr   r^   rd   r   )r   r*   r\   s   &&&r!   
add_importModule.add_import   sZ    !&&.>.>'?@T#3#345.7	**+r$   c                B    V P                    F  w  r#W!8X  g   K   R # 	  R# )TF)r^   )r   r*   name_r   s   &&  r!   
has_importModule.has_import   s    #||OU}  , r$   c                    W!,           pWPP                   9   d   R # W43V P                   V&   VR R V P                  P                  8X  d   V P                  P	                  W434       R # R # N)ra   r\   r   rc   r   )r   r)   r   r*   r+   keys   &&&&& r!   re   Module.add_type   sT    g**,

39---HHOOTL) .r$   c                   TpW0P                   9   d   V P                   V,          V,          # V P                  P                  V,           pW0P                   9   d   V P                   V,          V,          # V P                   P                  4        F<  pVP	                  R 4      ^,          V8X  g   K"  V P                   V,          V,          u # 	  \        RV,          4      h)r   zType %s not found)ra   r\   r   keys
rpartitionResolveException)r   r)   idxr   s   &&& r!   get_type_implModule.get_type_impl   s    **::c?3''nn"$**::c?3''::??$C~~c"1%+zz#s++ % 2R788r$   c                &    V P                  V^4      #    r   r   r)   s   &&r!   get_typeModule.get_type       !!"a((r$   c                &    V P                  V^ 4      # )rE   r   r   s   &&r!   get_type_nameModule.get_type_name   r   r$   c                (    V P                   V,          # r&   )rd   )r   r   s   &&r!   get_namespaceModule.get_namespace   s    x((r$   c                ~    VR R V P                   P                  8X  d   V P                  P                  W#34       R # R # r   )r\   r   rc   r   r(   s   &&&&r!   add_requestModule.add_request   s1    9---HHOOTL) .r$   c                    W#3V P                   V&   VR R V P                  P                  8X  d   V P                  P	                  W#34       R # R # r   )r   r\   r   rc   r   r(   s   &&&&r!   r,   Module.add_event   @    ,B9---HHOOTL) .r$   c                    V P                   P                  4        FI  w  pw  r#VR R R8X  d   RpM	VR,          pV P                  V,          pVf   K7  VP                  WV4       KK  	  R # )Nr   r   r   )r   r/   rd   r,   )r   r)   r*   r+   namespace_namer\   s   &     r!   r{   Module.add_events_to_namespaces   sa    #{{002OBCRyH$!# "&b7I$##Bd3  3r$   c                6    V P                   V,          ^,          # r   r'   r   s   &&r!   	get_eventModule.get_event       {{2q!!r$   c                    W#3V P                   V&   VR R V P                  P                  8X  d   V P                  P	                  W#34       R # R # r   )rb   r\   r   rc   r   r(   s   &&&&r!   	add_errorModule.add_error   r   r$   c                6    V P                   V,          ^,          # r   )rb   r   s   &&r!   	get_errorModule.get_error   r   r$   )rc   r_   rb   r   r`   r^   r\   rd   r]   r|   ra   N)r7   r8   r9   r:   r;   __main__r]   rB   rC   r"   rw   r}   r   r   r   re   r   r   r   r   r   r,   r{   r   r   r   r<   r=   r>   s   @r!   rA   rA   E   s      ??6"DOOG$E4D.8*9)))*
*4 "*
" "r$   rA   )   r   )r;   os.pathr   r   sysr   xml.etree.ElementTreer   xml.etree.cElementTreexcbgenr   xcbgen.errorxcbgen.xtypesr   objectr
   rA    r$   r!   <module>r      sL    & v+,    0 0fV"V V"r$   