+
    :iJ                         R t ^ RIHt ^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 Rt
]! R]
4      t ! R R4      tR	 tRR
 lt]R8X  d
   ]! 4        R# R# )z:Module for displaying information about Numba's gdb set up)
namedtupleN)dedent)configz4binary_loc, extension_loc, py_ver, np_ver, supported	_gdb_infoc                   l   a  ] tR t^t o RtR tRR lt]R 4       t]	R 4       t
R tR tR tR	 tR
tV tR# )_GDBTestWrapperziWraps the gdb binary and has methods for checking what the gdb binary
has support for (Python and NumPy).c                v    \         P                  pVf   R\         P                   2p\        V4      hWn        R # )Nz.No valid binary could be found for gdb named: )r   
GDB_BINARY
ValueError_gdb_binary)self
gdb_binarymsgs   &  V/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/misc/numba_gdbinfo.py__init___GDBTestWrapper.__init__   s9    &&
C''(*CS/!%    c                    V P                   R .pV F%  pVP                  R4       VP                  V4       K'  	  VP                  RR.4       \        P                  ! VR^
RR7      # )z-qz-exqT)capture_outputtimeouttext)r   appendextend
subprocessrun)r   cmdgdb_callxs   &&  r   _run_cmd_GDBTestWrapper._run_cmd   s^    OOT+AOOE"OOA  	%~~htR#') 	)r   c                    V P                   # )Nr   r   s   &r   r   _GDBTestWrapper.gdb_binary#   s    r   c                     VP                   ^ 8H  # )    )
returncode)clsstatuss   &&r   success_GDBTestWrapper.success'   s      A%%r   c                "    V P                  4       # )zChecks that gdb will launch okr   r#   s   &r   check_launch_GDBTestWrapper.check_launch+   s    }}r   c                *    R pV P                  V34      # )zUpython from __future__ import print_function; import sys; print(sys.version_info[:2])r-   r   r   s   & r   check_python_GDBTestWrapper.check_python/   s    9}}cV$$r   c                *    R pV P                  V34      # )ztpython from __future__ import print_function; import types; import numpy; print(isinstance(numpy, types.ModuleType))r-   r1   s   & r   check_numpy_GDBTestWrapper.check_numpy4   s    < }}cV$$r   c                *    R pV P                  V34      # )zapython from __future__ import print_function; import types; import numpy;print(numpy.__version__)r-   r1   s   & r   check_numpy_version#_GDBTestWrapper.check_numpy_version:   s    * }}cV$$r   r"   N) )__name__
__module____qualname____firstlineno____doc__r   r   propertyr   classmethodr*   r.   r2   r5   r8   __static_attributes____classdictcell__)__classdict__s   @r   r   r      sU     +&)     & &%
%% %r   r   c                    Rp RpRpRpRp \        4       pVP                  4       pVP                  V4      '       g5   RVP                   RVP                   RVP
                   2p\        V4      hVP                  p VP                  4       pVP                  V4      '       Ed   \        P                  ! RVP                  P                  4       4      pVe   VP                  4       w  rV	 R	V
 2pR
pVP                  4       pVP                  V4      '       d   RVP
                  P                  4       9  d   VP                  P                  4       R8X  de   R
pRpVP                  4       pVP                  V4      '       d:   RVP
                  P                  4       9  d   VP                  P                  4       pT'       d   T'       d   RpMRpMRpRp\        P                   P#                  \        P                   P%                  \&        4      T4      p\)        YTYL4      #   \         d   pRT 2p  Rp?L}Rp?ii ; i)zEPrints information to stdout about the gdb setup that Numba has foundNFzNo Python supportzNo NumPy supportzgdb at 'z#' does not appear to work.
stdout: z	
stderr: z\((\d+),\s+(\d+)\).T	TracebackTrueUnknownz+Testing gdb binary failed. Reported Error: z!Full (Python and NumPy supported)z'Partial (Python only, no NumPy support)Nonezgdb_print_extension.py)r   r.   r*   r   stdoutstderrr
   r2   rematchstripgroupsr5   r8   	Exceptionospathjoindirname__file__r   )	gdb_stategdb_has_pythongdb_has_numpygdb_python_versiongdb_python_numpy_versiongdb_wrapperr)   r   version_matchpymajorpyminoreprint_ext_supportedprint_ext_fileprint_ext_paths                  r   collect_gdbinford   A   s    INM,1
#>%' ))+""6**k445 6  &jICS/!**	
 ))+v&&HH%:%+]]%8%8%:<M(#0#7#7#9 (/y'%;"!%$002&&v.."&--*=*=*??!==..0F:,0M7@4%0%D%D%FF*226::#.fmm6I6I6K#K(.(;(;(= %= "E"K$ .NWW\\"''//(";^LN Y0B-D DQ  FA!E	Fs   A1H$ $H>/H99H>c                   \        4       p\        R4       RV  R2p\        VRVP                  3,          4       \        VRVP                  3,          4       \        VRVP                  3,          4       \        VRVP
                  3,          4       \        VRVP                  3,          4       \        R4       \        R	4       \        R
VP                   R24       \        R4       Rp\        \        V4      4       R# )z;Displays the information collected by collect_gdbinfo.
    z%-zs : %-szBinary locationzPrint extension locationzPython versionzNumPy versionz Numba printing extension support zTTo load the Numba gdb printing extension, execute the following from the gdb prompt:z
source 
a  
    =============================================================
    IMPORTANT: Before sharing you should remove any information
    in the above that you wish to keep private e.g. paths.
    =============================================================
    NzP--------------------------------------------------------------------------------)rd   print
binary_locextension_locpy_vernp_ver	supportedr   )sep_posgdb_infofmtwarns   &   r   display_gdbinforr      s      H	(Owiw
C	#"H$7$78
89	#+X-C-CD
DE	#!8??3
34	#(//2
23	#3X5G5GH
HI	"I	 ! "	Ih,,-R
01	(OD 
&,r   __main__)-   )r?   collectionsr   rR   rM   r   textwrapr   numbar   _fieldsr   r   rd   rr   r;   r:   r   r   <module>ry      s[    @ " 	 	    B{G,	0% 0%fADH6 z r   