File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/ampl.cpython-38.pyc
U
�[ � @ sb d Z ddlmZmZmZmZmZ ddlmZm Z m
Z
mZmZm
Z
mZmZ dgZG dd� de�ZdS )z�
pygments.lexers.ampl
~~~~~~~~~~~~~~~~~~~~
Lexers for the AMPL language.
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�bygroups�using�this�words)�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation� AmplLexerc @ s e Zd ZdZdZdgZdgZddefdejfde j
fd e jfed
dd�e
jfd
e
jfdejfdej
fdefdeejee
j�fdee
jeej�fdee
jeeeejeeeej� fdee
jeee�eej�fedddd�ejfdefeddd�e
jfdejfdejfdejfdefgiZdS )r zP
For `AMPL <http://ampl.com/>`_ source code.
.. versionadded:: 2.2
ZAmplZamplz*.run�rootz\nz\s+z#.*?\nz/[*](.|\n)*?[*]/);�callZcd�closeZcommands�data�deleteZdisplayZdrop�end�environ�exit�expandZinclude�loadZmodelZ objectiveZoptionZproblem�purge�quitZ redeclare�reload�remove�resetZrestore�shellZshowZ solexpandZsolutionZsolve�updateZunloadZxrefZcoeffZcoefZcover�objZinterval�default�from�toZto_comeZnet_inZnet_outZdimenZ dimensionZcheckZcomplements�writeZfunction�pipe�format�ifZthen�else�in�while�repeat�forz\b)�suffixzF(integer|binary|symbolic|ordered|circular|reversed|INOUT|IN|OUT|LOCAL)z\".*?\"z\'.*?\'z[()\[\]{},;:]+zu\b(\w+)(\.)(astatus|init0|init|lb0|lb1|lb2|lb|lrc|lslack|rc|relax|slack|sstatus|status|ub0|ub1|ub2|ub|urc|uslack|val)zr(set|param|var|arc|minimize|maximize|subject to|s\.t\.|subj to|node|table|suffix|read table|write table)(\s+)(\w+)z0(param)(\s*)(:)(\s*)(\w+)(\s*)(:)(\s*)((\w|\s)+)z+(let|fix|unfix)(\s*)((?:\{.*\})?)(\s*)(\w+))<�absZacosZacosh�aliasZasinZasinhZatanZatan2ZatanhZceil�ctimeZcosZexpZfloor�logZlog10�max�minZ precision�roundZsinZsinhZsqrtZtanZtanh�timeZtruncZBetaZCauchyZExponentialZGammaZIrand224ZNormalZNormal01ZPoissonZUniformZ Uniform01ZnumZnum0Zichar�charZlengthZsubstrZsprintf�match�subZgsub�printZprintf�nextZnextw�prevZprevw�firstZlast�ordZord0ZcardZarityZ
indexarity)�prefixr. z>(\+|\-|\*|/|\*\*|=|<=|>=|==|\||\^|<|>|\!|\.\.|:=|\&|\!=|<<|>>))�or�existsZforall�andr* �notZwithin�unionZdiff�
differenceZsymdiffZinterZ intersect�intersectionZcrossZsetofZbyZless�sumZprod�productZdiv�modz*(\d+\.(?!\.)\d*|\.(?!.)\d+)([eE][+-]?\d+)?z\d+([eE][+-]?\d+)?z
[+-]?Infinityz(\w+|(\.(?!\.)))N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenamesr �
Whitespacer �SingleZ Multiliner r
ZReservedZTyper �Doubler r r ZVariableZDeclarationr r ZBuiltinr r
ZFloatZInteger�tokens� rU rU �6/usr/lib/python3/dist-packages/pygments/lexers/ampl.pyr st
�
���� ��� � �
�����N)rM Zpygments.lexerr r r r r Zpygments.tokenr r r r
r r r
r �__all__r rU rU rU rV �<module> s
(