o
    \h                     @   sZ   d Z ddl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 dgZG dd deZdS )z
    pygments.lexers.maple
    ~~~~~~~~~~~~~~~~~~~~~

    Lexers for Maple.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )wordsbygroupsExtendedRegexLexer)CommentNameString
WhitespaceOperatorPunctuationNumberKeyword
MapleLexerc                   @   s   e Zd ZdZdZdgZg dZdgZdZdZ	dZ
d	Zd
d Zdejfdejdfdefdefdefee
dddefeedddejfdefdefdefdeejefdejfdejfdefgdejdfdejdfdejfgd Zd!d" Zd#S )$r   z
    Lexer for Maple.
    Maplemaple)z*.mplz*.miz*.mmztext/x-maplez)https://www.maplesoft.com/products/Maple/z2.19)/andassumingbreakbycatchdescriptiondodoneelifelseenderrorexportfifinallyforfromglobalifimpliesin	intersectlocalminusmodmodulenextnotodoptionoptionsorprocquitreadreturnsavestopsubsetthentotryunionuseuseswhilexor)absadd	addressofanamesr   andmapandseqappendtoArrayarrayArrayOptionsassembleASSERTassignassigned
attributescatceilcoeffcoeffs	conjugateconvertCopySignDEBUG	debugoptsDefault0DefaultOverflowDefaultUnderflowdegreedenomdiffdisassembledivider   entriesEqualEntriesevalevalbevalfevalhf
evalindetsevalnexpandexports	factorialfloorfracfrem	FromInertfrontendgcgenpolyhashastypehfarrayicontentigcdilcmilog10Imr#   indetsindicesr%   iolibiquoiremirootr~   isqrt
kerneloptslcoeffldegreelengthlexorderlhs
lowerboundlprintmacromapmaxmaxnormmember
membertypeminr'   r(   modpmodp1modp2modsmul	NextAfternopsnormalr+   	numboccurnumelemsnumerNumericClassNumericEventNumericEventHandlerNumericStatusopr/   order	OrderedNEormaporseqparse	piecewisepointtoprintr1   RereadlibRecordremoverhsroundrtablertable_elemsrtable_evalrtable_indfnsrtable_num_elemsrtable_optionsrtable_redimrtable_scanblockrtable_set_indfnrtable_split_unitsavelibScale10Scale2
SDMPolynom
searchtext
SearchTextselectselectremoveseqseriessetattributeSFloatExponentSFloatMantissasignsortssystemr5   r   subsr6   
subsindetssubsop	substringsystemtabletaylortcoefftime	timelimitToInert	traperrortrunctype	typematchunamesunassignr:   	Unordered
upperbounduserinfowritetor>   xormapxorseqc                 c   sv    | dt|dfV  | d|_|j}|d|_| j|dE d H  |dt|dfV  | |_||_d S )N      )context)startr
   groupposr   get_tokens_unprocessed)selfmatchctxorig_end r   X/home/air/segue/gemini/backup/venv/lib/python3.10/site-packages/pygments/lexers/maple.pydelayed_callback   s   

zMapleLexer.delayed_callbackz#.*\nz\(\*commentz"(\\.|.|\s)*?"z('+)((.|\n)*?)\1z`(\\`|.)*?`z\b)prefixsuffixz[a-zA-Z_][a-zA-Z0-9_]*z=(:=|\*\*|@@|<=|>=|<>|->|::|\.\.|&\+|[\+\-\*\.\^\$/@&,:=<>%~])z[;^!@$\(\)\[\]{}|_\\#?]+z(\d+)(\.\.)z"(\d*\.\d+|\d+\.\d*)([eE][+-]?\d+)?z\d+z\s+z.*\(\*z#pushz.*\*\)z#popz.*\n)rootr   c                 C   s   d| v rdS d S )Nz:=g?r   )textr   r   r   analyse_text!  s   zMapleLexer.analyse_textN)__name__
__module____qualname____doc__namealiases	filenames	mimetypesurlversion_addedkeywordsbuiltinsr   r   Single	Multiliner   r   r   r   Builtinr	   r
   r   r   IntegerFloatr   tokensr   r   r   r   r   r      sB    0 0


N)r   pygments.lexerr   r   r   pygments.tokenr   r   r   r   r	   r
   r   r   __all__r   r   r   r   r   <module>   s
    
(