Ë
    !täi\<  ã                   óh   — d Z ddlZddlmZmZmZ ddlmZmZm	Z	m
Z
mZmZmZmZ dgZ G d„ de«      Zy)z½
    pygments.lexers.idl
    ~~~~~~~~~~~~~~~~~~~

    Lexers for IDL.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚwordsÚbygroups)ÚTextÚCommentÚOperatorÚKeywordÚNameÚNumberÚStringÚ
WhitespaceÚIDLLexerc                   óâ  — e Zd ZdZdZdZdgZdgZdgZdZ	e
j                  e
j                  z  ZdZ	 d	Z	 d
d eeej&                  e«      f eedd¬«      ef eedd¬«      ej.                  fdefdefdefdefdej4                  fdej&                  fdej8                  fdej:                  fdej<                  fdej>                  j@                  fdej>                  fdefdefdefde!fgiZ"d„ Z#y)r   z=
    Pygments Lexer for IDL (Interactive Data Language).
    ÚIDLz:https://www.l3harrisgeospatial.com/Software-Technology/IDLÚidlz*.proztext/idlz1.6)+ÚandÚbeginÚbreakÚcaseÚcommonÚcompile_optÚcontinueÚdoÚelseÚendÚendcaseÚendelseÚendforÚ
endforeachÚendifÚendrepÚ	endswitchÚendwhileÚeqÚforÚforeachÚforward_functionÚfunctionÚgeÚgotoÚgtÚifÚinheritsÚleÚltÚmodÚneÚnotÚofÚ
on_ioerrorÚorÚproÚrepeatÚswitchÚthenÚuntilÚwhileÚxor(U  ÚabsÚacosÚadapt_hist_equalÚalogÚalog10ÚamoebaÚannotateÚapp_user_dirÚapp_user_dir_queryÚarg_presentÚarray_equalÚarray_indicesÚarrowÚascii_templateÚasinÚassocÚatanÚaxisÚa_correlateÚbandpass_filterÚbandreject_filterÚbarplotÚbar_plotÚbeseliÚbeseljÚbeselkÚbeselyÚbetaÚbilinearÚbinary_templateÚbindgenÚbinomialÚbin_dateÚbit_ffsÚbit_populationÚ	blas_axpyÚblk_conÚ
box_cursorÚ
breakpointÚbroydenÚbutterworthÚbytarrÚbyteÚ	byteorderÚbytsclÚcaldatÚcalendarÚcall_externalÚcall_functionÚcall_methodÚcall_procedureÚcannyÚcatchÚcdzcdf_\w*ÚceilÚ	chebyshevÚ
check_mathÚ
chisqr_cvfÚ
chisqr_pdfÚcholdcÚcholsolÚcindgenÚcir_3pntÚcloseÚclusterÚcluster_treeÚ	clust_wtsÚcmyk_convertÚcolorbarÚcolorize_sampleÚcolormap_applicableÚcolormap_gradientÚcolormap_rotationÚ
colortableÚcolor_convertÚcolor_exchangeÚ
color_quanÚcolor_range_mapÚcomfitÚcommand_line_argsÚcomplexÚ
complexarrÚcomplexroundÚcompute_mesh_normalsÚcondÚcongridÚconjÚconstrained_minÚcontourÚconvert_coordÚconvolÚ
convol_fftÚ	coord2to3Úcopy_lunÚ	correlateÚcosÚcoshÚcpuÚcramerÚcreate_cursorÚcreate_structÚcreate_viewÚcrosspÚ	crvlengthÚcti_testÚct_luminanceÚcursorÚcurvefitÚcvttobmÚcv_coordÚ
cw_animateÚcw_animate_getpÚcw_animate_loadÚcw_animate_runÚ
cw_arcballÚ	cw_bgroupÚcw_clr_indexÚcw_colorselÚ	cw_defroiÚcw_fieldÚ
cw_fileselÚcw_formÚ
cw_fsliderÚcw_light_editorÚcw_light_editor_getÚcw_light_editor_setÚ	cw_orientÚcw_palette_editorÚcw_palette_editor_getÚcw_palette_editor_setÚ	cw_pdmenuÚcw_rgbsliderÚcw_tmplÚcw_zoomÚc_correlateÚdblarrÚ	db_existsÚdcindgenÚdcomplexÚdcomplexarrÚ
define_keyÚdefine_msgblkÚdefine_msgblk_from_fileÚdefroiÚdefsysvÚdelvarÚ
dendrogramÚdendro_plotÚderivÚderivsigÚdetermÚdeviceÚdfpminÚdiag_matrixÚdialog_dbconnectÚdialog_messageÚdialog_pickfileÚdialog_printersetupÚdialog_printjobÚdialog_read_imageÚdialog_write_imageÚdigital_filterÚdilateÚdindgenÚdissolveÚdistÚdistance_measureÚdlm_loadÚdlm_registerÚdoc_libraryÚdoubleÚdraw_roiÚedge_dogÚefontÚeigenqlÚeigenvecÚellipseÚelmhesÚembossÚemptyÚenable_sysrtnÚeofzeos_\w*ÚeraseÚerfÚerfcÚerfcxÚerodeÚ	errorplotÚerrplotÚestimator_filterÚexecuteÚexitÚexpÚexpandÚexpand_pathÚexpintÚextracÚextract_sliceÚ	factorialÚfftÚfilepathÚfile_basenameÚ
file_chmodÚ	file_copyÚfile_deleteÚfile_dirnameÚfile_expand_pathÚ	file_infoÚ
file_linesÚ	file_linkÚ
file_mkdirÚ	file_moveÚfile_poll_inputÚfile_readlinkÚ	file_sameÚfile_searchÚ	file_testÚ
file_whichÚfindgenÚfiniteÚfixÚflickÚfloatÚfloorÚflow3ÚfltarrÚflushÚformat_axis_valuesÚfree_lunÚfstatÚfulstrÚfunctÚfv_testÚfx_rootÚfz_rootsÚf_cvfÚf_pdfÚgammaÚgamma_ctÚ
gauss2dfitÚgaussfitÚgaussian_functionÚgaussintÚ	gauss_cvfÚ	gauss_pdfÚgauss_smoothÚgetenvÚ
getwindowsÚget_drive_listÚget_dxf_objectsÚget_kbrdÚget_login_infoÚget_lunÚget_screen_sizeÚgreg2julzgrib_\w*Úgrid3ÚgriddataÚ
grid_inputÚgrid_tpsÚgs_iterzh5[adfgirst]_\w*Ú
h5_browserÚh5_closeÚ	h5_createÚh5_get_libversionÚh5_openÚh5_parseÚhanningÚhashzhdf_\w*Ú	heap_freeÚheap_gcÚheap_nosaveÚheap_refcountÚ	heap_saveÚhelpÚhilbertÚ	histogramÚhist_2dÚ
hist_equalÚhlsÚhoughÚhqrÚhsvÚh_eq_ctÚh_eq_intÚi18n_multibytetoutf8Úi18n_multibytetowidecharÚi18n_utf8tomultibyteÚi18n_widechartomultibyteÚibetaÚicontourÚiconvertcoordÚideleteÚidentityÚidlexbr_assistantÚidlitsys_createtoolÚ
idl_base64Úidl_validnameÚiellipseÚigammaÚigetcurrentÚigetdataÚigetidÚigetpropertyÚiimageÚimageÚ
image_contÚimage_statisticsÚ	imaginaryÚimapÚindgenÚintarrÚinterpolÚinterpolateÚinterval_volumeÚint_2dÚint_3dÚint_tabulatedÚinvertÚioctlÚiopenÚiplotÚipolygonÚ	ipolylineÚiputdataÚ	iregisterÚiresetÚiresolveÚirotateÚ	ir_filterÚisaÚisaveÚiscaleÚisetcurrentÚisetpropertyÚishftÚ
isocontourÚ
isosurfaceÚisurfaceÚitextÚ
itranslateÚivectorÚivolumeÚizoomÚi_betaÚjournalÚ
json_parseÚjson_serializeÚjul2gregÚjuldayÚkeyword_setÚkrig2dÚkurtosisÚkw_testÚ	l64indgenÚ
label_dateÚlabel_regionÚladfitÚlaguerreÚ	laplacianÚ	la_choldcÚla_cholmproveÚ
la_cholsolÚ	la_determÚla_eigenproblemÚ
la_eigenqlÚla_eigenvecÚ	la_elmhesÚla_gm_linear_modelÚla_hqrÚ	la_invertÚla_least_squaresÚla_least_square_equalityÚla_linear_equationÚla_ludcÚla_lumproveÚla_lusolÚla_svdÚla_tridcÚla_trimproveÚla_triqlÚ	la_triredÚ	la_trisolÚleast_squares_filterÚleefiltÚlegendÚlegendreÚlinbcgÚlindgenÚlinfitÚ	linkimageÚlistÚll_arc_distanceÚlmfitÚlmgrÚlngammaÚlnp_testÚloadctÚ
locale_getÚlogical_andÚ
logical_orÚlogical_trueÚlon64arrÚlonarrÚlongÚlong64ÚlsodeÚludcÚlumproveÚlusolÚ
lu_complexÚmacharÚ
make_arrayÚmake_dllÚmake_rtÚmapÚmapcontinentsÚmapgridÚmap_2pointsÚmap_continentsÚmap_gridÚ	map_imageÚ	map_patchÚmap_proj_forwardÚmap_proj_imageÚmap_proj_infoÚmap_proj_initÚmap_proj_inverseÚmap_setÚmatrix_multiplyÚmatrix_powerÚmaxÚmd_testÚmeanÚ
meanabsdevÚmean_filterÚmedianÚmemoryÚ	mesh_clipÚmesh_decimateÚmesh_issolidÚ
mesh_mergeÚmesh_numtrianglesÚmesh_objÚmesh_smoothÚmesh_surfaceareaÚmesh_validateÚmesh_volumeÚmessageÚminÚmin_curve_surfÚmk_html_helpÚmodifyctÚmomentÚmorph_closeÚmorph_distanceÚmorph_gradientÚmorph_hitormissÚ
morph_openÚ
morph_thinÚmorph_tophatÚmultiÚm_correlatezncdf_\w*ÚnewtonÚ
noise_hurlÚ
noise_pickÚnoise_scatterÚ
noise_slurÚnormÚ
n_elementsÚn_paramsÚn_tagsÚobjarrÚ	obj_classÚobj_destroyÚobj_hasmethodÚobj_isaÚobj_newÚ	obj_validÚonline_helpÚon_errorÚopenÚoplotÚoploterrÚ	parse_urlÚparticle_traceÚ
path_cacheÚpath_sepÚpcompÚplotÚplot3dÚploterrÚplotsÚ
plot_3dboxÚ
plot_fieldÚpnt_lineÚ	point_lunÚ	polarplotÚpolar_contourÚpolar_surfaceÚpolyÚpolyfillÚ	polyfillvÚpolygonÚpolylineÚ	polyshadeÚpolywarpÚpoly_2dÚ	poly_areaÚpoly_fitÚpopdÚpowellÚpref_commitÚpref_getÚpref_setÚprewittÚprimesÚprintÚprintdÚproductÚprofileÚprofilerÚprofilesÚproject_volÚpsafmÚpseudoÚps_show_fontsÚptrarrÚptr_freeÚptr_newÚ	ptr_validÚpushdÚp_correlateÚqgrid3ÚqhullÚqrombÚqromoÚqsimpÚquery_asciiÚ	query_bmpÚ	query_csvÚquery_dicomÚ	query_gifÚquery_imageÚ
query_jpegÚquery_jpeg2000Úquery_mrsidÚ
query_pictÚ	query_pngÚ	query_ppmÚ	query_srfÚ
query_tiffÚ	query_wavÚradonÚrandomnÚrandomuÚranksÚrdpixÚreadÚreadsÚreaduÚ
read_asciiÚread_binaryÚread_bmpÚread_csvÚ
read_dicomÚread_gifÚ
read_imageÚread_interfileÚ	read_jpegÚread_jpeg2000Ú
read_mrsidÚ	read_pictÚread_pngÚread_ppmÚread_sprÚread_srfÚ	read_sylkÚ	read_tiffÚread_wavÚ	read_waveÚread_x11_bitmapÚread_xwdÚ	real_partÚrebinÚrecall_commandsÚrecon3Úreduce_colorsÚreformÚregion_growÚregister_cursorÚregressÚ	replicateÚreplicate_inplaceÚresolve_allÚresolve_routineÚrestoreÚretallÚreturnÚreverseÚrk4ÚrobertsÚrotÚrotateÚroundÚroutine_filepathÚroutine_infoÚrs_testÚr_correlateÚr_testÚsaveÚsavgolÚscale3Úscale3dÚscope_levelÚscope_tracebackÚscope_varfetchÚscope_varnameÚsearch2dÚsearch3dÚ
sem_createÚ
sem_deleteÚsem_lockÚsem_releaseÚsetenvÚset_plotÚset_shadingÚsfitÚ
shade_surfÚshade_surf_irrÚshade_volumeÚshiftÚ
shift_diffÚshmdebugÚshmmapÚshmunmapÚshmvarÚshow3ÚshowfontÚsimplexÚsinÚsindgenÚsinhÚsizeÚskewnessÚskip_lunÚslicer3Úslide_imageÚsmoothÚsobelÚsocketÚsortÚspawnÚ
spher_harmÚsph_4pntÚsph_scatÚsplineÚspline_pÚspl_initÚ
spl_interpÚsprsabÚsprsaxÚsprsinÚsprstpÚsqrtÚstandardizeÚstddevÚstopÚstrarrÚstrcmpÚstrcompressÚ
streamlineÚstregexÚstretchÚstringÚstrjoinÚstrlenÚ
strlowcaseÚstrmatchÚ
strmessageÚstrmidÚstrposÚstrputÚstrsplitÚstrtrimÚstruct_assignÚstruct_hideÚ	strupcaseÚsurfaceÚsurfrÚsvdcÚsvdfitÚsvsolÚswap_endianÚswap_endian_inplaceÚsymbolÚsystimeÚs_testÚt3dÚ	tag_namesÚtanÚtanhÚ	tek_colorÚ	temporaryÚ
tetra_clipÚtetra_surfaceÚtetra_volumeÚtextÚthinÚthreedÚtimegenÚ
time_test2Útm_testÚtotalÚtraceÚ	transposeÚtriangulateÚtrigridÚtriqlÚtriredÚtrisolÚtri_surfÚtruncate_lunÚts_coefÚts_diffÚts_fcastÚ	ts_smoothÚtvÚtvcrsÚtvlctÚtvrdÚtvsclÚtypenameÚt_cvtÚt_pdfÚuindgenÚuintÚuintarrÚ
ul64indgenÚulindgenÚ	ulon64arrÚulonarrÚulongÚulong64ÚuniqÚunsharp_maskÚusersymÚvalue_locateÚvarianceÚvectorÚvector_fieldÚvelÚvelovectÚvert_t3dÚvoigtÚvoronoiÚ
voxel_projÚwaitÚwarp_triÚ	watershedÚwdeleteÚwf_drawÚwhereÚwidget_baseÚwidget_buttonÚwidget_comboboxÚwidget_controlÚwidget_displaycontextmenÚwidget_drawÚwidget_droplistÚwidget_eventÚwidget_infoÚwidget_labelÚwidget_listÚwidget_propertysheetÚwidget_sliderÚ
widget_tabÚwidget_tableÚwidget_textÚwidget_treeÚwidget_tree_moveÚwidget_windowÚwiener_filterÚwindowÚwriteuÚ	write_bmpÚ	write_csvÚ	write_gifÚwrite_imageÚ
write_jpegÚwrite_jpeg2000Ú
write_nrifÚ
write_pictÚ	write_pngÚ	write_ppmÚ	write_sprÚ	write_srfÚ
write_sylkÚ
write_tiffÚ	write_wavÚ
write_waveÚwsetÚwshowÚwtnÚ	wv_appletÚwv_cwtÚwv_cw_waveletÚ
wv_denoiseÚwv_dwtÚwv_fn_coifletÚwv_fn_daubechiesÚwv_fn_gaussianÚ
wv_fn_haarÚwv_fn_morletÚ
wv_fn_paulÚwv_fn_symletÚwv_import_dataÚwv_import_waveletÚwv_plot3d_wpsÚwv_plot_multiresÚwv_pwtÚwv_tool_denoiseÚxbm_editÚxdisplayfileÚxdxfÚxfontÚxinteranimateÚxloadctÚxmanagerÚ	xmng_tmplÚxmtoolÚxobjviewÚxobjview_rotateÚxobjview_write_imageÚxpaletteÚxpcolorÚxplot3dÚxregisteredÚxroiÚxsq_testÚxsurfaceÚxvareditÚxvolumeÚxvolume_rotateÚxvolume_write_imageÚxyoutsÚzoomÚzoom_24Úrootz(^\s*)(;.*?)(\n)z\b)ÚprefixÚsuffixz \+=|-=|\^=|\*=|/=|#=|##=|<=|>=|=z.\+\+|--|->|\+|-|##|#|\*|/|<|>|&&|\^|~|\|\|\?|:z3\b(mod=|lt=|le=|eq=|ne=|ge=|gt=|not=|and=|or=|xor=)z*\b(mod|lt|le|eq|ne|ge|gt|not|and|or|xor)\bz"[^\"]*"z'[^\']*'z>\b[+\-]?([0-9]*\.[0-9]+|[0-9]+\.[0-9]*)(D|E)?([+\-]?[0-9]+)?\bz)\b\'[+\-]?[0-9A-F]+\'X(U?(S?|L{1,2})|B)\bz&\b\'[+\-]?[0-7]+\'O(U?(S?|L{1,2})|B)\bz\b[+\-]?[0-9]+U?L{1,2}\bz\b[+\-]?[0-9]+U?S?\bz\b[+\-]?[0-9]+B\bz[ \t]+z\nÚ.c                 ó.   — d}d| v r|dz  }d| v r|dz  }|S )z>endelse seems to be unique to IDL, endswitch is rare at least.r   r   gš™™™™™É?r"   g{®Gáz„?© )rÿ  Úresults     úb/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/pygments/lexers/idl.pyÚanalyse_textzIDLLexer.analyse_text  s.   € àˆà˜ÑØ�c‰MˆFØ˜$ÑØ�d‰NˆFàˆó    N)$Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚ
IGNORECASEÚ	MULTILINEÚflagsÚ	_RESERVEDÚ_BUILTIN_LIBr   r   r   ÚSingler   r	   r
   ÚBuiltinr   r   ÚDoubler   ÚFloatÚHexÚOctÚIntegerÚLongr   Útokensr”  r‘  r•  r“  r   r      sM  „ ñð €DØ
F€CØˆg€GØ�	€IØ�€IØ€Mà�M‰M˜BŸL™LÑ(€Eð=€Ið KðL%€LðZ Hð 	Ø ¡(¨:°w·~±~Øó#ð á�9 U°5Ô9¸7ÐCÙ�<¨°eÔ<¸d¿l¹lÐKØ0°(Ð;Ø>ÀÐIØCÀXÐNØ:¸HÐEØ˜&Ÿ-™-Ð(Ø˜&Ÿ-™-Ð(ØNØ�\‰\ðà9¸6¿:¹:ÐFØ6¸¿
¹
ÐCØ(¨&¯.©.×*=Ñ*=Ð>Ø$ f§n¡nÐ5Ø! 6Ð*Ø˜
Ð#Ø�JÐØ�4ˆLð)
ð€Fó2	r•  )r™  r   Úpygments.lexerr   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   r‘  r•  r“  Ú<module>r²     s;   ðñó 
ç 6Ñ 6÷÷ ó ð ˆ,€ôHˆzõ Hr•  