B
    ë¹`Ä  ã               @   sN   d Z ddlZddlmZmZ dZdZdddgZd	d„ Zdd
d„Z	ddd„Z
dS )a  
    Pygments
    ~~~~~~~~

    Pygments is a syntax highlighting package written in Python.

    It is a generic syntax highlighter for general use in all kinds of software
    such as forum systems, wikis or other applications that need to prettify
    source code. Highlights are:

    * a wide range of common languages and markup formats is supported
    * special attention is paid to details, increasing quality by a fair amount
    * support for new languages and formats are added easily
    * a number of output formats, presently HTML, LaTeX, RTF, SVG, all image
      formats that PIL supports, and ANSI sequences
    * it is usable as a command-line tool and as a library
    * ... and it highlights even Brainfuck!

    The `Pygments master branch`_ is installable with ``easy_install Pygments==dev``.

    .. _Pygments master branch:
       https://github.com/pygments/pygments/archive/master.zip#egg=Pygments-dev

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)ÚStringIOÚBytesIOz2.9.0ZrestructuredtextÚlexÚformatÚ	highlightc          
   C   sh   y
|  | ¡S  tk
rb } z:t|jd tƒrPd|jd ksHd|jd krPtdƒ‚‚ W dd}~X Y nX dS )zG
    Lex ``code`` with ``lexer`` and return an iterable of tokens.
    r   zunbound method get_tokensz&missing 1 required positional argumentz4lex() argument must be a lexer instance, not a classN)Z
get_tokensÚ	TypeErrorÚ
isinstanceÚargsÚstr)ÚcodeÚlexerÚerr© r   úY/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pygments/__init__.pyr   $   s    
c          
   C   sž   y@|s2t |ddƒrtƒ ptƒ }| | |¡ | ¡ S | | |¡ W nX tk
r˜ } z:t|jd tƒr†d|jd ks~d|jd kr†tdƒ‚‚ W dd}~X Y nX dS )zó
    Format a tokenlist ``tokens`` with the formatter ``formatter``.

    If ``outfile`` is given and a valid file object (an object
    with a ``write`` method), the result will be written to it, otherwise
    it is returned as a string.
    ÚencodingNr   zunbound method formatz&missing 1 required positional argumentz;format() argument must be a formatter instance, not a class)	Úgetattrr   r   r   Úgetvaluer   r   r	   r
   )ÚtokensÚ	formatterÚoutfileZrealoutfiler   r   r   r   r   3   s    c             C   s   t t| |ƒ||ƒS )zÿ
    Lex ``code`` with ``lexer`` and format it with the formatter ``formatter``.

    If ``outfile`` is given and a valid file object (an object
    with a ``write`` method), the result will be written to it, otherwise
    it is returned as a string.
    )r   r   )r   r   r   r   r   r   r   r   K   s    )N)N)Ú__doc__ÚsysÚior   r   Ú__version__Z__docformat__Ú__all__r   r   r   r   r   r   r   Ú<module>   s   

