YBFj)dZddlmZmZmZmZddlmZmZm Z m Z m Z m Z m Z mZmZgdZGddeZGddeZGd d eZGd d eZGd deZGddeZdS)z pygments.lexers.esoteric ~~~~~~~~~~~~~~~~~~~~~~~~ Lexers for esoteric languages. :copyright: Copyright 2006-present by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. ) RegexLexerincludewordsbygroups) CommentOperatorKeywordNameStringNumber PunctuationError Whitespace)BrainfuckLexer BefungeLexer RedcodeLexer CAmkESLexer CapDLLexer AheuiLexerceZdZdZdZdZddgZddgZdgZd Z d e j fd e j fd e j fd efgdedfdefedgdedfdedfedgdZdZdS)rz4 Lexer for the esoteric BrainFuck language. Brainfuckz'http://www.muppetlabs.com/~breadbox/bf/ brainfuckbfz*.bfz*.bzapplication/x-brainfuckz[.,]+z[+-]+z[<>]+z[^.,+\-<>\[\]]+z\[loopz\]commonz#pushz#pop)rrootrcd}d}tdt|}|d|D]$}|dks|dkr|dz }|dks|dkr|dz }%|d |zkrd S|d |zkrd Sd}d |vr|d z }|S) z]It's safe to assume that a program which mostly consists of + - and < > is brainfuck.rN+-<>g?g?z[-]g?)maxlen)textplus_minus_countgreater_less_countrange_to_checkcresults FC:\PYTHON\_runtimes\venv\Lib\site-packages\pygments/lexers/esoteric.py analyse_textzBrainfuckLexer.analyse_text3sS#d)),,o~o& ( (ACxx188 A% Cxx188"a'" tn4 5 53 !6 7 73 D== cMF N)__name__ __module__ __qualname____doc__nameurlaliases filenames mimetypes version_addedr TagBuiltinVariablerr rrtokensr.r/r-rrs D 3CD!GI*+IM tx t| $ t} %  )  GV $ EN GH   GW % GV $ GH   F(r/rceZdZdZdZdZdgZdgZdgZdZ dd e fd e fd e j fd e jfd efde jfdejfdejfdefdefdefdefg iZdS)rz2 Lexer for the esoteric Befunge language. Befungez$http://en.wikipedia.org/wiki/Befungebefungez *.befungezapplication/x-befungez0.7rz[0-9a-f]z [+*/%!`-]z[<>^v?\[\]rxjk]z [:\\$.,n]z[|_mw]z[{}]z".*?"z\'.z[#;]z [pg&~=@iotsy]z[()A-Z]\s+N)r0r1r2r3r4r5r6r7r8r9r rr r<r;r r:r DoubleSinglerrr=r>r/r-rrMs D 0CkG I()IM  & ! 8 $  / 4< (  dh  v} % V] # g  w '  ! Z   FFFr/rceZdZdZdZdZddgZddgZdZd d e e e j e fd e fd e fd e fde fdefeddefeddejfdejfeddejfde e j e e j fde e j e e j fdejfdefdejfdefdejfdefgiZdS)rzO Basic lexer for the input language for the CAmkES component platform. CAmkESzhttps://sel4.systems/CAmkES/camkesidl4z*.camkesz*.idl4z2.1r^(\s*)(#.*)(\n)rB/\*(.|\n)*?\*/z//.*$z [\[(){},.;\]]z[~!%^&*+=|?:<>/-])"assembly attribute component composition configuration connection connectorconsumescontroldataportDataport DataportsemitseventEventEventsexportfromgrouphardwarehas interface Interfacemaybe procedure Procedure Proceduresprovidestemplatethreadthreadstouseswith\bsuffix)boolbooleanBufchar characterdoublefloatininoutintint16_6int32_tint64_tint8_tintegermutexoutrealrefin semaphoresignedstringstructuint16_tuint32_tuint64_tuint8_t uintptr_tunsignedvoidz%[a-zA-Z_]\w*_(priority|domain|buffer))dma_pool from_access to_accessz#(import)(\s+)((?:<[^>]*>|"[^"]*");)z$(include)(\s+)((?:<[^>]*>|"[^"]*");)0[xX][\da-fA-F]+z-?[\d]+z-?[\d]+\.[\d]+z"[^"]*"z[Tt]rue|[Ff]alsez [a-zA-Z_]\w*N)r0r1r2r3r4r5r6r7r9rrrPreprocr rrr TypeReservedr HexFloatr r r;r=r>r/r-rrjs D (C GX&IM  *go"" Z  ( w  { + !8 , UK !!!#* +U(  !!! #*,  06w7G H U;E J J J  "4*goFF H5*goFF H!&* -   -  $, /d #g4 6FFFr/rc2eZdZdZdZdZdgZdgZdZdde e e j e fd e fd e fd e fd e fd e feddefeddejfeddejfdejfdefeddefeddefdefgiZdS)ra Basic lexer for CapDL. The source of the primary tool that reads such specifications is available at https://github.com/seL4/capdl/tree/master/capDL-tool. Note that this lexer only supports a subset of the grammar. For example, identifiers can shadow type names, but these instances are currently incorrectly highlighted as types. Supporting this would need a stateful lexer that is considered unnecessarily complex for now. CapDLzMhttps://ssrg.nicta.com.au/publications/nictaabstracts/Kuz_KLW_10.abstract.pmlcapdlz*.cdlz2.2rrIrBrJz (//|--).*$z[<>\[(){},:;=\]]z\.\.)archarm11capschild_ofia32irqmapsobjectsrmrn)aep asid_poolcnodeepframe io_deviceio_portsio_pt notificationpdpttcbutvcpu)asidaddrbadgecacheddomdomainIDelffault_epGguard guard_sizeinitippriospRRGRXRWRWGRWXWWGWXlevelmasked master_replypaddrportsreplyuncachedrz\d+(\.\d+)?(k|M)?)bits)cspacevspace reply_slot caller_slotipc_buffer_slotz[a-zA-Z_][-@\.\w]*N)r0r1r2r3r4r5r6r7r9rrrrr rr rrr rr r=r>r/r-rrsf   D YCiG IM  W_jAA CZ  ( G $ + . k " U',.../6 8U"*/11129, @ U2;@ AAA    !&* - !6 * U9U + + +V 4 U'/46667= ?#D )I% 'FFFr/rc 0eZdZdZdZdgZdgZdZdZdZ dZ d d e fd e j fd d e ejfd d e ejfdefdefdefdefdejfg iZdS)rzg A simple Redcode lexer based on ICWS'94. Contributed by Adam Blinkinsop . Redcoderedcodez*.cwz&https://en.wikipedia.org/wiki/Core_Warz0.8)DATMOVADDSUBMULDIVMODJMPJMZJMNDJNCMPSLTSPLORGEQUEND)ABABBAFXIrrBz;.*$z\b({})\b|z [A-Za-z_]\w+z[-+*/%]z[#$@<>]z[.,]z[-+]?\d+N)r0r1r2r3r4r6r7r5r9opcodes modifiersrrrDformatjoinr Function Decoratorrr r Integerr=r>r/r-rrs DkGI 2CM$G6I  Z gn %   1 1 2 2DM B    3 3 4 4dn E d #  "  " k " &. ) FFFr/rc>eZdZdZdZdZdgZdgZdZdde fd e fgiZ d S) rz? Aheui is esoteric language based on Korean alphabets. Aheuizhttp://aheui.github.io/aheuiz*.aheuirru[나-낳냐-냫너-넣녀-녛노-놓뇨-눟뉴-닇다-닿댜-댷더-덯뎌-뎧도-돟됴-둫듀-딓따-땋땨-떃떠-떻뗘-뗳또-똫뚀-뚷뜌-띟라-랗랴-럏러-렇려-렿로-롷료-뤃류-릫마-맣먀-먛머-멓며-몋모-뫃묘-뭏뮤-믷바-밯뱌-뱧버-벟벼-볗보-봏뵤-붛뷰-빃빠-빻뺘-뺳뻐-뻫뼈-뼣뽀-뽛뾰-뿧쀼-삏사-샇샤-샿서-섷셔-셯소-솧쇼-숳슈-싛싸-쌓쌰-썋써-쎃쎠-쎻쏘-쏳쑈-쑿쓔-씧자-잫쟈-쟣저-젛져-졓조-좋죠-줗쥬-즿차-챃챠-챻처-첳쳐-쳫초-촣쵸-춯츄-칗카-캏캬-컇커-컿켜-켷코-콯쿄-쿻큐-킣타-탛탸-턓터-텋텨-톃토-톻툐-퉇튜-틯파-팧퍄-퍟퍼-펗펴-폏포-퐇표-풓퓨-픻하-핳햐-햫허-헣혀-혛호-홓효-훟휴-힇].N) r0r1r2r3r4r5r6r7r9rrr=r>r/r-rr s` D #CiG IM  ! "'N% FFFr/rN)r3pygments.lexerrrrrpygments.tokenrrr r r r r rr__all__rrrrrrr>r/r-rs@???????????###################### ' ' '77777Z777t::@@@@@*@@@F88888888v!!!!!:!!!H          r/