3
V'ícPH ã @ s d Z ddlZddlmZmZmZmZmZmZ ddl m
Z
mZmZm
Z
mZmZmZmZ dddgZG dd deZG d d deZG d
d deZdS )zî
pygments.lexers.unicon
~~~~~~~~~~~~~~~~~~~~~~
Lexers for the Icon and Unicon languages, including ucode VM.
:copyright: Copyright 2006-2022 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 8 @ sª e Zd ZdZdZdgZdgZdgZej Z
defdej
fdefdejd fd
eejeejdfdejfd
ejfdejfdejfdejfdejfedpd*d*d+ejfedqd*d*d+ejfedWdXefdYefdZejfd[efd\efd]eeeefd^efd_efd`efgdaej fdbej!fdcej"fgddedrfdgedefdhejfedigddedffgdjedefdkej#fdlefdmejfedigdnZ$doS (s r z<
For Unicon source code.
.. versionadded:: 2.4
ZUniconZuniconz*.icnztext/uniconz[^\S\n]+z#.*?\nzclass|method|procedureÚ
subprogramz(record)(\s+)(\w+)Útype_defz^(#line|\$C|\$Cend|\$define|\$else|\$endif|\$error|\$ifdef|\$ifndef|\$include|\$line|\$undef)\bz(&null|&fail)\baù &allocated|&ascii|&clock|&collections|&column|&col|&control|&cset|¤t|&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|®ions|&resize|&row|&rpress|&rrelease|&shift|&source|&storage|&subject|&time|&trace|&ucase|&version|&window|&x|&yz(by|of|not|to)\bz (global|local|static|abstract)\bzpackage|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Úwhilez\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"(?:[^\\"]|\\.)*"z'(?:[^\\']|\\.)*'z[*<>+=/&!?@~\\-]z\^z(\w+)(\s*|[(,])z[\[\]]z<>|=>|[()|:;,.'`{}%&?]z\n+z3\b([+-]?([2-9]|[12][0-9]|3[0-6])[rR][0-9a-zA-Z]+)\bz'[+-]?[0-9]*\.([0-9]*)([Ee][+-]?[0-9]*)?z\b([+-]?[0-9]+[KMGTPkmgtp]?)\bz\(ú#popÚformal_partú;z"[^"]+"|\w+Úrootz\)z\w+ú,z(:string|:integer|:real)\b)r^ rZ r r r\ N)r r r r r r r r r r r r r! r"