o
    ô<âgd  ã                   @   s"   d dl mZmZ G dd„ dƒZdS )é    )ÚTemplateÚTemplateDoesNotExistc                   @   s.   e Zd Zdd„ Zd
dd„Zdd„ Zdd	„ ZdS )ÚLoaderc                 C   s
   || _ d S ©N)Úengine)Úselfr   © r   úO/var/www/html/venv/lib/python3.10/site-packages/django/template/loaders/base.pyÚ__init__   s   
zLoader.__init__Nc              	   C   s„   g }|   |¡D ]4}|dur||v r| |df¡ qz|  |¡}W n ty0   | |df¡ Y qw t|||j| jƒ  S t||d‚)a  
        Call self.get_template_sources() and return a Template object for
        the first template matching template_name. If skip is provided, ignore
        template origins in skip. This is used to avoid recursion during
        template extending.
        NzSkipped to avoid recursionzSource does not exist)Útried)Úget_template_sourcesÚappendÚget_contentsr   r   Útemplate_namer   )r   r   Úskipr   ÚoriginÚcontentsr   r   r	   Úget_template   s$   þüzLoader.get_templatec                 C   s   t dƒ‚)zg
        An iterator that yields possible matching template paths for a
        template name.
        zAsubclasses of Loader must provide a get_template_sources() method)ÚNotImplementedError)r   r   r   r   r	   r   %   s   ÿzLoader.get_template_sourcesc                 C   s   dS )z}
        Reset any state maintained by the loader instance (e.g. cached
        templates or cached loader modules).
        Nr   )r   r   r   r	   Úreset.   s   zLoader.resetr   )Ú__name__Ú
__module__Ú__qualname__r
   r   r   r   r   r   r   r	   r      s
    
	r   N)Údjango.templater   r   r   r   r   r   r	   Ú<module>   s    