+
    ‘°³j1  ã                  óà   a€ 0 t $ R t^ RIHt ^ RIt^ RIt^ RIt^ RIHtH	t	 ^ RI
HtHt ^ RIHt ]tR]R&   ] U u/ uF  q P"                  V bK  	  up tR]R	&   R
 R ltR R ltR R ltR# u up i )u*  Per-header descriptor, registry, and platform-aware accessors.

The canonical authored data lives in :mod:`header_descriptor_catalog`. This
module provides a name-keyed registry and platform-dispatch helpers consumed
by the runtime search path â€” keeping the search code itself platform-agnostic.
)ÚannotationsN)Ú	TypeAliasÚcast)ÚHEADER_DESCRIPTOR_CATALOGÚHeaderDescriptorSpec)Ú
IS_WINDOWSr   ÚHeaderDescriptorzdict[str, HeaderDescriptor]ÚHEADER_DESCRIPTORSc               ó    € V ^8„  d   QhRRRR/# ©é   Údescr   Úreturnztuple[str, ...]© )Úformats   "Úk/home/luca/screen-checking/.venv/lib/python3.14/site-packages/cuda/pathfinder/_headers/header_descriptor.pyÚ__annotate__r      s   € ÷ 7ñ 7Ð#3ð 7¸ñ 7ó    c                óØ   € \         '       d9   \        \        \        R3,          V P                  V P
                  ,           4      # \        \        \        R3,          V P
                  4      # )zÚReturn the effective include subdirectory search list for the current platform.

On Windows, Windows-specific subdirs are checked first, followed by the
common subdirs.  On Linux, only the common subdirs are returned.
.)r   r   ÚtupleÚstrÚinclude_subdirs_windowsÚinclude_subdirs)r   s   &r   Úplatform_include_subdirsr      sJ   € ÷ ƒzÜ”Eœ#˜s˜(•O T×%AÑ%AÀD×DXÑDXÕ%XÓYÐYÜ””c˜3�h• ×!5Ñ!5Ó6Ð6r   c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   r   )   s   € ÷ ñ Ð&6ð ¸?ñ r   c                ó¼  € . p\         '       d.   VP                  R V P                   4       4       \        V4      # V P                  '       dd   \
        P                  ! R4      p\        V\        4      '       d8   V'       d0   VP                  \        P                  P                  RV4      4       VP                  R V P                   4       4       \        V4      # )zBReturn platform-aware, expanded system include-directory patterns.c              3  ó`   "  € T F$  p\         P                  P                  V4      x € K&  	  R # 5i©N©ÚosÚpathÚ
expandvars©Ú.0Úpatterns   & r   Ú	<genexpr>Ú.system_install_dir_patterns.<locals>.<genexpr>-   s$   é € ÐdÑCc¸œŸ™×*Ñ*¨7×3Ð3ÓCcùó   ‚,.Ú	MULTIARCHz/usr/includec              3  ó`   "  € T F$  p\         P                  P                  V4      x € K&  	  R # 5ir   r   r"   s   & r   r%   r&   3   s$   é € ÐXÑ?W°G”B—G‘G×&Ñ& w×/Ð/Ó?Wùr'   )r   ÚextendÚsystem_install_dirs_windowsr   Úuse_linux_multiarch_include_dirÚ	sysconfigÚget_config_varÚ
isinstancer   Úappendr   r    ÚjoinÚsystem_install_dirs)r   ÚpatternsÚ	multiarchs   &  r   Úsystem_install_dir_patternsr5   )   s–   € à€HßƒzØ�‰ÑdÀ4×CcÒCcÓdÔdÜ�X‹ÐØ×+×+Ð+Ü×,Ò,¨[Ó9ˆ	Ü�i¤×%Ò%¯)Ø�O‰OœBŸG™GŸL™L¨¸ÓCÔDØ‡O�OÑX¸t×?WÒ?WÓXÔXÜ�‹?Ðr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r   Úconda_prefixr   r   z
str | Noner   )r   s   "r   r   r   7   s"   € ÷ ñ Ð/ð ¸sð Àzñ r   c                óÀ  € \         '       dJ   \        P                  P                  VR4      p\        P                  P	                  V4      '       d   V# R# V P
                  '       dw   \        P                  ! \        P                  P                  VRRR4      4      pV'       d   \        V4      ^8w  d   R# \        P                  P                  V^ ,          4      # V# )zÐResolve the conda anchor point for header search on the current platform.

Returns the directory that ``_locate_in_anchor_layout`` should use as
*anchor_point*, or ``None`` if the conda layout is not usable.
ÚLibraryNÚtargetsÚ*Úinclude)	r   r   r    r1   ÚisdirÚconda_targets_layoutÚglobÚlenÚdirname)r   r7   ÚanchorÚtargets_include_paths   &&  r   Úresolve_conda_anchorrD   7   s›   € ÷ ƒzÜ—‘—‘˜l¨IÓ6ˆÜŸ™Ÿ™ v×.Ò.ˆvÐ8°DÐ8Ø× × Ð Ü#Ÿyšy¬¯©¯©°lÀIÈsÐT]Ó)^Ó_Ðß#¤sÐ+?Ó'@ÀAÔ'EÙÜ�w‰w�‰Ð3°AÕ6Ó7Ð7ØÐr   )Ú__conditional_annotations__Ú__doc__Ú
__future__r   r?   r   r-   Útypingr   r   Ú2cuda.pathfinder._headers.header_descriptor_catalogr   r   Ú%cuda.pathfinder._utils.platform_awarer   r   Ú__annotations__Únamer	   r   r5   rD   )r   rE   s   0@r   Ú<module>rM      sm   øðôõ #ã Û 	Û ß "÷õ =à2Ð �)Ó 2ñ PiÓ2iÑOhÀt·9±9¸d²?ÑOhÑ2iÐ Ð/Ó iõ7õ÷ùò9 3js   ºA+