B
    `i                 @   sN   d dl mZ d dlmZ d dlmZmZ dejfdejffZ	G dd dZ
dS )	    )	renderers)action_method)PHASE1_CONFIGIRendererFactoryjsonstringc               @   s    e Zd Zdd Zedd ZdS )RenderingConfiguratorMixinc             C   s"   xt D ]\}}| || qW d S )N)DEFAULT_RENDERERSadd_renderer)selfnameZrenderer r   `/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pyramid/config/rendering.pyadd_default_renderers   s    z0RenderingConfiguratorMixin.add_default_renderersc                sd      sd fdd}d d} |d< |d< jtf|t|fd d	S )
a  
        Add a :app:`Pyramid` :term:`renderer` factory to the
        current configuration state.

        The ``name`` argument is the renderer name.  Use ``None`` to
        represent the default renderer (a renderer which will be used for all
        views unless they name another renderer specifically).

        The ``factory`` argument is Python reference to an
        implementation of a :term:`renderer` factory or a
        :term:`dotted Python name` to same.
         c                  s   j j td d S )N)r   )registryZregisterUtilityr   r   )factoryr   r   r   r   register%   s    z9RenderingConfiguratorMixin.add_renderer.<locals>.registerzrenderer factorieszrenderer factoryr   r   )orderZintrospectablesN)Zmaybe_dottedZintrospectableZobject_descriptionactionr   r   )r   r   r   r   Zintrr   )r   r   r   r   r
      s     
z'RenderingConfiguratorMixin.add_rendererN)__name__
__module____qualname__r   r   r
   r   r   r   r   r      s   r   N)Zpyramidr   Zpyramid.config.actionsr   Zpyramid.interfacesr   r   Zjson_renderer_factoryZstring_renderer_factoryr	   r   r   r   r   r   <module>   s
   