
    ,hH                         d Z ddlZddlmZmZmZ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 g dZ G d de      Z G d d	e      Z G d
 de      Zy)z
    pygments.lexers.unicon
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for the Icon and Unicon languages, including ucode VM.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerincludebygroupswordsusingthis)TextCommentOperatorKeywordNameStringNumberPunctuation)	IconLexer
UcodeLexerUniconLexerc                      e Zd ZdZdZdgZdgZdgZdZdZ	e
j                  Zdefd	ej                  fdefd
ej"                  dfd eej"                  eej&                        dfdej(                  fdej*                  fdej,                  fdej,                  fdej,                  fdej"                  f eddd      ej,                  f eddd      ej2                  f ed      defdefdej:                  fdefdefd ee ee            fde fd e fd!efgd"e!jD                  fd#e!jF                  fd$e!jH                  fgd%e d&fd'e d(fd)ej2                  f ed*      gd%e d+fgd,e d(fd-ejJ                  fd.e fd/ej,                  f ed*      gd0Z&y1)2r   z!
    For Unicon source code.
    Uniconuniconz*.icnztext/uniconzhttps://www.unicon.org2.4[^\S\n]+#.*?\nclass|method|procedure
subprogram(record)(\s+)(\w+)type_def^(#line|\$C|\$Cend|\$define|\$else|\$endif|\$error|\$ifdef|\$ifndef|\$include|\$line|\$undef)\b(&null|&fail)\b  &allocated|&ascii|&clock|&collections|&column|&col|&control|&cset|&current|&dateline|&date|&digits|&dump|&errno|&errornumber|&errortext|&errorvalue|&error|&errout|&eventcode|&eventvalue|&eventsource|&e|&features|&file|&host|&input|&interval|&lcase|&letters|&level|&line|&ldrag|&lpress|&lrelease|&main|&mdrag|&meta|&mpress|&mrelease|&now|&output|&phi|&pick|&pi|&pos|&progname|&random|&rdrag|&regions|&resize|&row|&rpress|&rrelease|&shift|&source|&storage|&subject|&time|&trace|&ucase|&version|&window|&x|&y(by|of|not|to)\bz (global|local|static|abstract)\bzpackage|link|import)breakcasecreatecriticaldefaultendalldoelseeveryfailifimportinitial	initially	invocablenextrepeatreturnsuspendthenthreaduntilwhile\bprefixsuffix(+  AbortabsacosActiveAlertanyAnyArbArbnoargsarrayasinatanatanhAttribBalbalBgBreakBreakxcalloutcentercharchdirchmodchownchroot	classnameClipCloneclosecofailcollectColor
ColorValuecondvarconstructorcopyCopyAreacosCouplecryptcsetctime	dbcolumnsdbdriverdbkeysdblimits	dbproductdbtablesdelaydeletedetabdisplayDrawArc
DrawCircleDrawCube	DrawCurveDrawCylinderDrawDisk	DrawImageDrawLine	DrawPointDrawPolygonDrawRectangleDrawSegment
DrawSphere
DrawString	DrawTorusdtorentab	EraseArea
errorclearEvent	eventmaskEvGetEvSendexecexitexpEyeFailfcntlfdupFencefetchFg
fieldnamesfilepairFillArc
FillCircleFillPolygonFillRectanglefindflockflushFontfork	FreeColor	FreeSpacefunctiongetgetchgetchegetegidgetenvgeteuidgetgidgetgrgethostgetpgrpgetpidgetppidgetpw	getrusagegetservGetSpacegettimeofdaygetuidglobalnamesGotoRCGotoXYgtimehardlinkiandicomIdentityMatriximageInPortinsertInt86integerioctliorishiftistateixorkbhitkeykeywordkillleftLenlistloadloadfunc
localnameslocklogLowerlstatmanymapmatch
MatrixModemaxmembermembernamesmethodnamesmethodsminmkdirmove
MultMatrixmutexnameNewColorNormalsNotAnynumericopenopencloprecordOutPortPaletteCharsPaletteColor
PaletteKey
paramnamesparentPatternPeekPendingpipePixel	PlayAudioPokepop	PopMatrixPosposprocpullpush
PushMatrix
PushRotate	PushScalePushTranslateputQueryPointerRaiseread	ReadImagereadlinkreadsreadyrealreceiveRefreshRemremoverenamereplreverserightrmdirRotateRposRtabrtodrunerrsaveScaleseekselectsendseqserialsetsetenvsetgidsetgrent
sethostentsetpgrpsetpwent
setserventsetuidsignalsinsortsortfSpanspawnsqlsqrtstatstaticnamesstop	StopAudiostring	structureSucceedSwisymlink
sys_errstrsystemsyswriteTabtabtabletanTexcoordTexture	TextWidth	TranslatetraptrimtruncatetrylocktypeumaskUncoupleunlockuptoutimevariableVAttribwaitWAttribWDefaultWFlushwhereWinAssociate	WinButtonWinColorDialogWindowContentsWinEditRegionWinFontDialog
WinMenuBarWinOpenDialogWinPlayMediaWinSaveDialogWinScrollBarWinSelectDialogwrite
WriteImagewritesWSectionWSyncnumberszc<@|<<@|>@|>>@|\.>|->|===|~===|\*\*|\+\+|--|\.|~==|~=|<=|>=|==|=|<<=|<<|>>=|>>|:=:|:=|->|<->|\+:=|\|"(?:[^\\"]|\\.)*"'(?:[^\\']|\\.)*'[*<>+=/&!?@~\\-]z\^(\w+)(\s*|[(,])[\[\]]z<>|=>|[()|:;,.'`{}%&?]\n+3\b([+-]?([2-9]|[12][0-9]|3[0-6])[rR][0-9a-zA-Z]+)\b'[+-]?[0-9]*\.([0-9]*)([Ee][+-]?[0-9]*)?\b([+-]?[0-9]+[KMGTPkmgtp]?)\b\(#popformal_part;ru  "[^"]+"|\w+rootrv  \)\w+,(:string|:integer|:real)\bry  ri  r   r   rv  N'__name__
__module____qualname____doc__r   aliases	filenames	mimetypesurlversion_addedre	MULTILINEflagsr	   r
   Singler   Declarationr   TypePreProcConstantReservedr   r   Functionr   r   r   	Characterr   r   r   r   HexFloatIntegerVariabletokens     X/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/pygments/lexers/unicon.pyr   r      sT    DjG	II
"CMLLE $'$&(;(;\J"g))4>
L56=ooG!1!12  '//1 !'"2"230'2B2BC#W%8%89 4
 =B%Q   =z "'u{=6| ]]}>~ I67?A!6*!6#3#34 (+H$d!<=$&4TNSj
X DVZZP7F.?
 K!89;'T]]+FO	
 K/
 K(T]]#;*G,<,<=FO
uAFr  r   c                      e Zd ZdZdZdgZddgZg ZdZdZ	e
j                  Zdefd	ej                  fdefd
ej"                  dfd eej"                  eej&                        dfdej(                  fdej*                  fdej,                  fdej,                  fdej,                  fdej"                  f eddd      ej,                  f eddd      ej2                  f ed      defdefdej:                  fdefd ee ee            fde fde fd efgd!e!jD                  fd"e!jF                  fd#e!jH                  fgd$e d%fd&e d'fd(ej2                  f ed)      gd$e d*fgd+e d'fd,ejJ                  fd-e fd.ej,                  f ed)      gd/Z&y0)1r   z
    Lexer for Icon.
    Iconiconz*.iconz*.ICONz https://www2.cs.arizona.edu/iconz1.6r   r   r   r   r   r   r   r   r    r!   z(global|local|static)\blink)r"   r#   r$   r&   r'   r(   r)   r*   r+   r,   r-   r/   r1   r2   r3   r4   r5   r6   r8   r9   r:   r;   )r?   r@   rA   rB   rC   rG   rH   rI   rJ   rK   rL   rN   rO   rR   rS   rT   rU   rV   rW   rX   rZ   r[   r\   r]   r^   r_   r`   ra   rc   rd   re   rf   rg   rh   ri   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r*  r+  r,  r-  r.  r0  r1  r2  r3  r4  r5  r7  r8  r:  r;  r<  r=  r>  r@  rA  rB  rC  rD  rE  rF  rG  rH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  rc  rd  re  rf  rg  rh  ri  zS===|~===|\*\*|\+\+|--|\.|==|~==|<=|>=|=|~=|<<=|<<|>>=|>>|:=:|:=|<->|<-|\+:=|\|\||\|rj  rk  rl  rm  rn  z<>|=>|[()|:;,.'`{}%\^&?]ro  rp  rq  rr  rs  rt  rw  ru  rx  ry  rv  rz  r{  r|  r}  r~  Nr  r  r  r  r   r      sK    DhG8$II
,CMLLE $'$&(;(;\J"g))4>
L56=ooG!1!12  '//1 !'"2"23')9)9:g))* *
 38G   :t "'uu:6v ]]w;x I+,46!6*!6#3#34 (+$d!<=$(+6TNKf
P DVZZP7F.?
 K!89;'T]]+FO	
 K/
 K(T]]#;*G,<,<=FO
m}Fr  r   c                   V   e Zd ZdZdZdgZg dZg ZdZdZ	e
j                  Zddef edd	d	
      ej                   f edd	d	
      ef edd	d	
      ej$                  f edd	d	
      ej&                  fdej*                  fdej,                  fdej,                  fdefdefdefgiZd Zy)r   z%
    Lexer for Icon ucode files.
    ucode)z*.uz*.u1z*.u2zhttp://www.unicon.orgr   ry  z(#.*\n))condeclendr'   globalimplr1   labr  localrecorduidunionsversionr:   r;   )colmfilenlinesynt)Yasgnbangbscancatccasechfailcoactr]   complcoretr$   rh   diffdivdupefaileinitr'   eqvereterrorescanesuspfieldgotoinitintinterinvokekeywdlconcatlexeqlexgelexgtlexlelexltlexnelimitllistlsuspmarkmark0minusmodmultnegneqvnonnullnoopnullnumbernumeqnumgenumgtnumlenumltnumnepfailpluspnullr   powerpretr   psusppush1pushn1randomrasgnrcvrcvbkr  refreshrswapsdupsectsizesndsndbkstrsubscswaptabmattallytobytraceunmarkvaluevar)rC   r#   endcaseendeveryendif	endifelse	endrepeat
endsuspendenduntilendwhiler+   r-   ifelser3   r5   r8   r9   z\d+(\s*|\.$|$)z[+-]?\d*\.\d+(E[-+]?\d+)?z[+-]?\d+\.\d*(E[-+]?\d+)?z"(<>|=>|[()|:;,.'`]|[{}]|[%^]|[&?])z\s+\bz[\w-]+c                 t    d}d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r	d| v r|dz  }d	| v r	d
| v r|dz  }|S )z}endsuspend and endrepeat are unique to this language, and
        \self, /self doesn't seem to get used anywhere else either.r   r  g?r  z:=g{Gz?	procedurer'   z\selfz/selfg      ?r  )textresults     r  analyse_textzUcodeLexer.analyse_text  sq     4cMF$cMF4<dNF$5D=dNF
 tD 0cMFr  N)r  r  r  r  r   r  r  r  r  r  r  r  r  r
   r   r   r  r   r  r  r   r  r  r   r	   r  r  r  r  r  r   r   3  s    DiG'II
!CMLLE 	!  U, ]]	  1U,    : ).e;=<   =">  
 %) ]] /)6<<8)6<<82K@tCB
DFLr  r   )r  r  pygments.lexerr   r   r   r   r   r   pygments.tokenr	   r
   r   r   r   r   r   r   __all__r   r   r   r  r  r  <module>r     sW    
 L L   5O* OdJ
 JZj jr  