U
    d/e                     @   sd   d Z ddlZddlmZ ddlmZ ddlmZ ddlmZ dgZG d	d dejej	ej
ejZdS )
z6Mixin classes used to inherit parameter functionality.    N   )engines)formats)	renderers)
formatters
Parametersc                   @   sL   e Zd ZdZddddddeje eje eje eje edddZdS )r   zEParameters for calling ``graphviz.render()`` and ``graphviz.pipe()``.NF)engineformatrenderer	formatterverifyc                K   s   |d kr| j }n|r| | |d kr.| j}n|r<| | |d krL| j}n|rZ| | |d krj| j}n|rx| | |j||||d |S )N)r   r	   r
   r   )	r   Z_verify_enginer	   Z_verify_formatr
   Z_verify_rendererr   Z_verify_formatterupdate)selfr   r	   r
   r   r   kwargs r   >/tmp/pip-unpacked-wheel-n8ok7rre/graphviz/parameters/mixins.py_get_parameters   s*    



 zParameters._get_parameters)	__name__
__module____qualname____doc__typingOptionalstrboolr   r   r   r   r   r      s   )r   r    r   r   r   r   __all__ZEngineZFormatZRenderer	Formatterr   r   r   r   r   <module>   s    