YBFjAdZddlZddlmZmZmZmZmZddlm Z m Z m Z m Z m Z mZmZmZmZgdZGddeZGdd eZGd d eZGd d eZGddeZdS)z pygments.lexers.ml ~~~~~~~~~~~~~~~~~~ Lexers for ML family languages. :copyright: Copyright 2006-present by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerincludebygroupsdefaultwords) TextCommentOperatorKeywordNameStringNumber PunctuationError)SMLLexer OcamlLexerOpaLexer ReasonLexer FStarLexerc| eZdZdZdZdgZgdZddgZdZdZ hd Z hd Z hd Z d Z d ZdZdZdZdZiddefdejdfgddedfdedfdejdfdejdfdejdfgdd d!d"e Defd#ejd$fd%ejd&fd'ejfd(ejfd)ej fd*ej!fd+ej!fd,ej!fd-ej fd.e"j#fd/e d0e"j#fd1ed0e"j#fd2ejd3fd4ejd5fd6ejd7fd8ejd9fd:e"j$fd;e d<ed=fd;e d0efd;ed0efgd=d;e d<efd;e d0edfd;ed0edfde%fd>e%fgd?e&dgde'dd@ejdAfdBejdCfe'de'dd>e%fgdDe'ddEefdejdfdFejdGfdHejdIfdJedGfdKejdLfe'de'dd>e%fg d$eejd&eejdMdNd!e edfgd7e'de'dMd;e d0e"j(fe&dgdGe'dd:e"j$fdOedPfd;e d0e"j)dfd;ed0e"j)dfe&dgdAe'dd:e"j$fdOedPfd;e dQedRe*e"j+eedfd;edQedRe*e"j+eedfd;e d0e"j+dfd;ed0e"j+dfe&dgd9e'de'dMd:e"j$fdOedPfdSed0edTfd;e d0ej,fd;ed0ej,fd>e%dfgdUe'ddVejdWfe'dMe'dd>e%dfgd3e'de'dMd:e"j$fdOedPfdXe*eeejdfdSed0edYfd;e d0ej,fd;ed0ej,fd>e%dfg dZe'ddVejd[fd\ejdWfd]ejfd^e d0e*eee"j-fd_ed0e*eee"j-fe'dMe'dd>e%fg e'dd`e d0e*ejee"j-fdaed0e*ejee"j-fd]ejfd;e dbed0e"j-fe&dge'dd;e d0e"j-dfd;ed0e"j-dfd>e%dfgdEefdejdfd:e"j$fe e"fdcefddedfee"fgdeejfdejdffdgejdfdhejfgdiZ.djS)krz' For the Standard ML language. z Standard MLsml)z*.smlz*.sigz*.funztext/x-standardmlzapplication/x-standardmlz)https://en.wikipedia.org/wiki/Standard_ML1.5>)asdofnifinofopandendfunletrecsigvalcaseelseopenthentypewithinfixlocalraisewherewhileeqtypehandleinfixrnonfixorelsestructabstypeandalsofunctorrsharingdatatypewithtype exception signature structure>#:=->:>=>\|> ..._{}(),;[]z[a-zA-Z][\w']*z[!%&$#+\-/:<=>?@\\~`^|*]+c d|fdtjfdtjfdtjfdtjfdtjfd|dfgS) Nz[^"\\]z\\[\\"abtnvfr]z\\\^[\x40-\x5e] \\[0-9]{3}z\\u[0-9a-fA-F]{4}z\\\s+\\"#pop)r EscapeInterpol)whatkinds @C:\PYTHON\_runtimes\venv\Lib\site-packages\pygments/lexers/ml.pystringyzSMLLexer.stringy<sR  !  .  / FM * !6= 1  ) 8V $  c#(K|d|jvrt}n tj}|d||dfV|dt |dfVdS)N)groupalphanumid_reservedrr Namespacestartrselfmatchtokens rYlong_id_callbackzSMLLexer.long_id_callbackKs ;;q>>T5 5 5EENEkk!nneU[[^^3333kk!nnk5;;q>>999999r[c#K|d|jvrt}n+|d|jvrt}nt}|d||dfVdSNr])r_r`rsymbolicid_reservedr rbrcs rYend_id_callbackzSMLLexer.end_id_callbackSsv ;;q>>T5 5 5EE [[^^t7 7 7EEEkk!nneU[[^^333333r[c#K|d}||jvr tj}n||jvrt }nt }|d||fVdSri)r_r`r Reservedrjrr rb)rdrestrrfs rY id_callbackzSMLLexer.id_callback\sjkk!nn $* * *$EE D, , ,EEEkk!nneS((((((r[ whitespace\s+\(\*comment delimitersz\(|\[|\{mainz\)|\]|\}rUz\b(let|if|local)\b(?!\'))ruruz\b(struct|sig|while)\b(?!\')z\b(do|else|end|in|then)\b(?!\')core({})|c#>K|]}tj|VdS)N)reescape).0zs rY zSMLLexer.|s*$J$JaRYq\\$J$J$J$J$J$Jr[z#"charrTstringz~?0x[0-9a-fA-F]+z0wx[0-9a-fA-F]+z0w\d+z~?\d+\.\d+[eE]~?\d+z ~?\d+\.\d+z~?\d+[eE]~?\d+z~?\d+z#\s*[1-9][0-9]*z#\s*(rMz#\s+(z\b(datatype|abstype)\b(?!\')dnamez\b(exception)\b(?!\')enamez4\b(functor|include|open|signature|structure)\b(?!\')snamez\b(type|eqtype)\b(?!\')tnamez \'[\w\']*rLz)(\.)dottedz\S+rootz\b(val|and)\b(?!\')vnamez\b(fun)\b(?!\'))rUmain-funfnamerz\sz\b(fun|and)\b(?!\')rz\b(val)\b(?!\'))rUrurrGz\b(case|handle)\b(?!\'))rUrubreakoutz(?=\b({})\b(?!\'))\(tyvarseqz )(\s*)(=(?!z))=(?!)rUtypbindrz\b(and)\b(?!\'))rUrz(=)(\s*)(datatype))rUdatbinddatconr)rUrz\b(withtype)\b(?!\')z\b(of)\b(?!\')z (\|)(\s*)(z (\|)(\s+)(z (and\b)(\s+)(z (and\b)(\s*)(z)|(rN\)z[^(*)]#push\*\)[(*)])rrrrsN)/__name__ __module__ __qualname____doc__namealiases filenames mimetypesurl version_addedr`rjnonid_reserved alphanumid_re symbolicid_rerZrgrkrorr Multilinerr rmformatjoinr CharDoublerHexIntegerFloatr Label DecoratorrrrraFunctionrVariableTypeClasstokensr[rYrrs  DgG+++I$&@AI 5CM   JIIN%M0M    :::444)))z TN g' 3 z  +v . +v . ('*: G /1A6 J  z(  ^^CHH$J$J>$J$J$JJJ K K  FK ( 6=( + &* -  , v~ & #V\ 2 FL )  - v~ &  , &m & & & 3 &m & & & 3 ,g.> H %w'7 A D  w ( ')97 C4> * &- & & &(8( C "- " " "K 0 "- " " "K 0?  )zj  &- & & &(8 9 "- " " "OV < "- " " "OV < UO UO  kz~  GFOO zJ  GL ! !$W%5w ? !1 * , GL ! ! GFOO UO  Kzf  GL ! ! DM g' 3$W%5w ? !1 & (K ) ')9   GL ! ! GFOO UO% gzR  $$SzT ''&-((UzX  " ) )#((3F*G*G H H$PV W Yzb  GL ! ! GJ   "- " " "DN 3 GFOO  czt  GL ! ! 4> * K , "- " " "DM6 : "- " " "DM6 : GFOO  uzN  GL ! ! 4> * K , =- = =M = = = XdmT; 7 7 A =- = =M = = = XdmT; 7 7 A "- " " "DM6 : "- " " "DM6 : GFOO Ozp  GL ! ! GJ   4> * K , %] % % %{4G H "- " " "GL 1 "- " " "GL 1 UF #  qzL  GL ! ! !13D E GJ   GFOO UF # Mzb  GL ! ! GJ   4> * K , " Xk4)9 : :F D %] % % %{ * ,#- " " "GL 1 "- " " "GL 1 UF # czD  GL ! ! !13D E $g&68I J  0 1 += + + + Xk4 4 4 6 += + + + Xk4 4 4 6 GJ   GFOO UO Ezj GL ! ! .m . . . Xg&dj 9 9 ; .m . . . Xg&dj 9 9 ;  0 1 4- 4 4M 4 4 4dj A GFOO   GL ! ! "- " " "DJ 7 "- " " "DJ 7 UF #  DM g' 3 4> * D ! ;  K ( D !  ) * g' 1 g' 0 w( )  izzzFFFr[rceZdZdZdZdZdgZgdZdgZdZ dZ d Z d Z d Z d Zd ZdZdejfdejfdejfgdefdejjfdejdfdejfdedfdde efdde dddefdedede efdde ejfddeejfd efd!e j!fd"e j"fd#e j#fd$e j$fd%e j%fd&ej&fd'ej&fd(efd)ej'd*fd+ej(fgd,efd-ed.fd/ed0fd1efgd2ej'fe)d3d4ej'fd)ej'd0fgdefd5e*fd6ejfd7ejd0fd8ed0fe+d0gd9Z,dS):rz! For the OCaml language. OCamlzhttps://ocaml.org/ocaml)z*.mlz*.mliz*.mllz*.mlyz text/x-ocamlz0.7)0r rassertbeginclass constraintrdonedowntor(r!r>externalfalseforr"functionr:rrrinherit initializerlazyr#remethodmodulemutablenewobjectrr)privater/r$r%r7r*totruetryr+r&virtualwhenr1r,))!=rA&&&rr\*\+rN--\.rD\.\.\.rB:::=rErO;;<<-rC>>]>\}\?\?\?\[\[<\[>\[\|rQrI`\{\{?@^|~-])asrlandlorlsllxormodor[!?~][=<>@^|&+\*/$%-]unitintfloatboolrrlistarray \\[\\"\'ntbr]rS\\x[0-9a-fA-F]{2}rqfalse|true|\(\)|\[\]\b([A-Z][\w\']*)(?=\s*\.)r\b([A-Z][\w\']*) \(\*(?![)])rs\b({})\brxrwNrL)? [^\W\d][\w']*(-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)0[xX][\da-fA-F][\da-fA-F_]*0[oO][0-7][0-7_]*0[bB][01][01_]*\d[\d_]*7'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))''.''rTr[~?][a-z][\w\']*:[^(*)]+rrrrrUr[^\\"]+escape-sequence\\\nr[A-Z][\w\']*(?=\s*\.) [A-Z][\w\']* [a-z_][\w\']*rrrsrr)-rrrrrrrrrrkeywordskeyopts operatorsword_operators prefix_syms infix_syms primitivesr rVrr BuiltinPseudorarr rrr r WordrrrrOctBinrrrrrrrrrr[rYrrcs D CiG333I IMHG)IGNK$JTJv} - FM * !6= 1 TN $dl&9 : )4>8 D $* - Wi 0    2 2 3 3W = ^^CHHWTTrT]33 4 4h ? 9* 9 9{ 9 9i 9 98 D    8 8 9 98= I    4 4 5 5w| D t $ 8&, G +VZ 8 !6: .  , &. ) G [  V[ ! 7O 6=( + !4= 17 < ! gw ' gv & w    ' G% & & fm $ 6=& )  TN K %t~ 6 dj& 1 tV , GFOO  _77FFFr[rceZdZdZdZdgZdgZdgZdZdZ dZ d Z d Z d Z id d ejfdejfdejfgddedfdefgdeddefgdedee ddefde zdzejjfdejfdejfdejfdejfdejfdejfd ejfd!ejfd"ejd#fd$ejfd%e d&fd'e d(fd)ej!d*fd+ej"fd,e zd-zej"fd.ej#fd/e zd-zefd0e d1e fd0e d1e fd2e d3fd4e zej$fd5e zej!fd6ej!fe efgd3edd7ej$fe%d8gd9edd:ej$d;fdede%d?gd@eddAej$dBfe%d(gdCedd7ej$dDfdEej$dFfe%d(gdGeddHej$d>fd7ej$dDfe%d(gdIeddJej$fdKej$fd:ej$d&fdLej$d(fgdMeddNej$fdKej$fd%ej$d&fd'ej$d(fgddOefded&fdPed(fdKefgd#dQejfd"ejd(fd%e dfed gdRdSejfdTejd(fd%e dfed gd*dUej!dVfdWej!dXfgdYdZej!d(fgdefd[ej!d\fd]ej!d(fdWej!dXfgd4ej!d^fd"ej!d_fd5e zej!d(fd6ej!d`fdaej!d(fd%e d`fgdbedcfddej!defdfej!d*fd%e dfdgej!fgdhed(fdiefgdjZ&dkS)lrz% Lexer for the Opa language. Opaopaz*.opaz text/x-opazhttp://opalang.orgr)r rrr'clientcssdatabasedbrr(r!rforallrrimportrerrpackageparserr$serverr*r+r&r, xml_parserz(([a-zA-Z_]\w*)|(`[^`]*`))z[.=\-<>,@~%/+?*&^!]z [()\[\],;|]rz \\[\\"\'ntr}]rSrcommentsz/\*znested-commentz//.*?$zcomments-and-spacesrqrz\b)prefixsuffix@z-?.[\d]+([eE][+\-]?\d+)z-?\d+.\d*([eE][+\-]?\d+)z-?\d+[eE][+\-]?\d+z0[xX][\da-fA-F]+z 0[oO][0-7]+z 0[bB][01]+z\d+z#[\da-fA-F]{3,6}rTrz9'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2})|.)'rrrrUz<(?=[a-zA-Z>])z html-open-tagz[@?!]?(/\w+)+(\[_\])?z<-(?!rMz\b([A-Z]\w*)(?=\.)rrLz)+rBr+r rAz#(?=\{)rD)rU type-lhs-1type-with-slashtype-1r)rU type-tuplez~?\{)rU type-recordr4)rU slash-type-1r5r8/)rUr5r3)rUr+z(?=,))rU type-arrowr:z ,(?=[^:]*?->)r6z[^()/*]+z[/*]rr7z[^{}/*]+[^/*]+z\*/z[^\\"{]+ single-stringz [^\\\'{]+z\'z[\w\-:]+)rU html-attrr)rU html-content html-end-tagz [\w\-:]*>z [\w\-:]+=html-attr-valuez/>)rUr<)rUr)rUrz [^"\'{`=<>]+zz[^\-]+|-)r=r@r>rAN)'rrrrrrrrrrrident_reop_repunc_rer rVr rrrr r rrrrrr r!rrrr Singlerrarrrrr[rYrrs DgG II CM H-H "EGc v} - FM * !6= 1 c  W. /   c  GJ   TN c$  G) * * U8E% 8 8 8' B H_u $dl&9 :( 6 (&, 7 "FL 1 &* - VZ ( FJ ' V^ $ &. 16=( +J [ Hg & Hf %  ?&t} 5e^D $- 0 #DN 3 U]4  ) %^^^X & '   x (8V $\7< ((]FM *  't cU %ct  G) * * GL ! G= > > ucF  G) * * GL"8 9 gl$; < e^W\+A B w|V , \7< ( GFOO  Gch  G) * * G6 7 7 icp  G) * * ', 2 3 GFOO  qcH  G) * * GL"2 3 w|%; < GFOO  IcT  G) * *w|-> ? GL"2 3 GFOO Uct  G) * * ', ' gl # GL' * GL& )  ucB  G) * * ', ' gl # GL' * GL& )  Ccx   Wg & Wf % g   ycJ  &- ( 6=& ) Hf % G% & &  KcV  6= ) FM6 * Hf % G% & &  Wcp  &-)> ? 6=": ; qc~  6=& 1 cNTN 6=*; < FM6 * 6=": ;  6="; < 6="4 5 (]FM6 2 (8 9 fmV 4 H. /  g~ . FM#; < 6=/ 2 Hf %  &  Wf % ' " cccFFFr[rceZdZdZdZdZddgZddgZdgZd Z d Z d Z d Z d Z dZdZdZdejfdejfdejfgdefdejjfdejdfdejfdejfdejdfdde efdde ddd ej fd!eded"e efdde ej fddeej!fd#efd$e"j#fd%e"j$fd&e"j%fd'e"j&fd(e"j'fd)ej(fd*ej(fd+efd,ej)d-fd.ej*fgd/ejfd0ejd1fd2ejd3fd4ejfgd5ej)fe+d6d7ej)fd,ej)d3fgdefd8e,fd9ejfd:ejd3fd;ed3fe-d3gd<Z.dS)=rz$ For the ReasonML language. ReasonMLzhttps://reasonml.github.io/reasonmlreasonz*.rez*.reiztext/x-reasonmlz2.6)0rrrrrrrrr(r!r>rrrr"esfunrr:rrrrrrr#switchrpubrrnonrecrrr)prir$r%r7r*rrrr+r&rrr1r,)+rrArrrrrrrNrrrFrrz\.\.\.rBrrrErOrrrrCrrrrrrrrrrQrIrrrrGz\|\|rrrr) r rrrrlsrrrrrrrrrSrrqrrrrz//.*?\nz \/\*(?!/)rsrrxrwNrrLrrrrrrr r r r rTrr r;z\/\*rz\*\/rUrrrrrrrrr)/rrrrrrrrrrrrrrrrrr rVrr rrrarr rErrrr r rrrrrr r!rrrrrrrrrr[rYrrs D 'C8$G!I"#IMHG)IUNK$JTJv} - FM * !6= 1 TN $dl&9 : )4>8 D $* -  ( 7,i 8    2 2 3 3W = ^^CHHWTTrT]33 4 4hm D 9* 9 9{ 9 9i 9 98 D    8 8 9 98= I    4 4 5 5w| D t $ 8&, G +VZ 8 !6: .  , &. ) G [  V[ ! 7O 6=( + !4= 19 >) * g' 1 g' 0 G% &   ' G% & & fm $ 6=& )  TN K %t~ 6 dj& 1 tV , GFOO  a88FFFr[rc$eZdZdZdZdZdgZddgZdgZdZ d Z d Z d Z d Z d ZdZdZdZdejfdejfdejfgdefdejjfdejdfdejfdedfdefdde efdde ejfdde ejfdde ddd e fd!eded"ee fddeej!fd#efd$e"j#fd%e"j$fd&e"j%fd'e"j&fd(e"j'fd)ej(fd*ej(fd+efd,e j)fd-efd.ej*d/fd0ej+fgd1efd2ed3fd4ed5fd6efgd7ej*fe,d8d9ej*fd.ej*d5fgdefd:e-fd;ejfdZ/dS)?rz For the F* language. FStarzhttps://www.fstar-lang.org/fstarz*.fstz*.fstiz text/x-fstarz2.7)5abstract attributesnoequnopteqandbeginbyreffectr(r!ensuresr>existsrr)r"rrrrinlineinline_for_extraction irreduciblelogicrerrr new_effect noextractrr)opaquerrange_of reifiablereify reflectablerequires set_range_of sub_effectsynthr*totalrrr+unfold unfoldabler&rr,not)r#r$)assumeadmitrcalc)/rrz/\\z\\/z<:z<@z\(\|z\|\)rAzu#rrrz\(\)rNz~>rDrz<--z<==>z==>rrz\?\.z\.\[z\.\(z\.\(\|z\.\[\|z \{:patternrBrrrOrrCz%\[z!\{rz\[@rz\|>z\]z\|\]rrGrz\$rrrrrrSrrqzfalse|true|False|True|\(\)|\[\]rrrrrsz\/\/.+$rrxrwNrrLrrrrrrr r r r z\`([\w\'.]+)\`z\`rTrr rrrrrrUrrrrrrrrr)0rrrrrrrrrrr decl_keywordsassume_keywordsrrrrrr rVrr rrrarr rrr Exception Declarationr rrrrr r!rrrrrrrrrrr[rYrr^s D 'CiG(#I IM H#M;OG)IK$JTJv} - FM * !6= 1 TN /1D E )4>8 D $* - Wi 0  !    2 2 3 3W =    9 9 : :DN K    7 7 8 8':M N ^^CHHWTTrT]33 4 4h ? 9* 9 9{ 9 9i 9 98 D    4 4 5 5w| D t $ 8&, G +VZ 8 !6: .  , &. ) G [  V[ ! 7O  . G  6=( + !4= 1= B ! gw ' gv & w    ' G% & & fm $ 6=& )  TN K %t~ 6 dj& 1 tV , GFOO  e::FFFr[r)rrzpygments.lexerrrrrrpygments.tokenrr r r r r rrr__all__rrrrrrr[rYrys HHHHHHHHHHHHHH N M MLLLLLzLLL^ YYYYYYYYx@@@@@z@@@F YYYYY*YYYx``````````r[