
    *	                         d Z ddlmZ ddlmZ ddlmZ dZ	 ddlmZ	 ddl
mZ edd	fd
Z G d de      Zy# e$ r dZ	dZY w xY w)z
Adaptor for building prompt_toolkit styles, starting from a Pygments style.

Usage::

    from pygments.styles.tango import TangoStyle
    style = style_from_pygments(pygments_style_cls=TangoStyle)
    )unicode_literals   )Style)style_from_dict)PygmentsStylestyle_from_pygments)DefaultStyleNTc                     |t        |t              sJ | t        | t              sJ i }| |j	                  | j
                         ||j	                  |       t        ||      S )a  
    Shortcut to create a :class:`.Style` instance from a Pygments style class
    and a style dictionary.

    Example::

        from prompt_toolkit.styles.from_pygments import style_from_pygments
        from pygments.styles import get_style_by_name
        style = style_from_pygments(get_style_by_name('monokai'))

    :param style_cls: Pygments style class to start from.
    :param style_dict: Dictionary for this style. `{Token: style}`.
    :param include_defaults: (`bool`) Include prompt_toolkit extensions.
    )include_defaults)
isinstancedict
issubclasspygments_Styleupdatestylesr   )	style_cls
style_dictr   styles_dicts       6lib/third_party/prompt_toolkit/styles/from_pygments.pyr   r      so    " J!===
9n EEEK9++,:&;9IJJ    c                   4    e Zd ZdZd Zd Zededfd       Zy)r    Deprecated. c                 P    t        |t              sJ t        |j                        S N)r   r   r   r   )clspygments_style_clss     r   __new__zPygmentsStyle.__new__>   s%    ,n===18899r   c                      y r    )selfs    r   invalidation_hashzPygmentsStyle.invalidation_hashB   s    r   NTc                     t        |||      S )r   )r   r   r   )r   )r   r   r   include_extensionss       r   from_defaultszPygmentsStyle.from_defaultsE   s    
 #(!/1 	1r   )	__name__
__module____qualname____doc__r   r!   classmethodpygments_DefaultStyler$   r   r   r   r   r   <   s,    : &*)>)-1 1r   r   )r(   
__future__r   baser   	from_dictr   __all__pygments.styler   pygments.styles.defaultr	   r*   ImportErrorr   r   r   r   r   <module>r2      sa    (  &!6M #8#')-K>1E 1I  !N !s   7 	AA