
    k"gd                     (    d dl mZmZ  G d d      Zy)    )TemplateTemplateDoesNotExistc                   &    e Zd Zd ZddZd Zd Zy)Loaderc                     || _         y N)engine)selfr	   s     U/var/www/html/djangosite/lib/python3.12/site-packages/django/template/loaders/base.py__init__zLoader.__init__   s	        Nc                 .   g }| j                  |      D ]Q  }|||v r|j                  |df       	 | j                  |      }t        |||j                  | j
                        c S  t        ||      # t        $ r |j                  |df       Y w xY w)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.
        zSkipped to avoid recursionzSource does not exist)tried)get_template_sourcesappendget_contentsr   template_namer	   r   )r
   r   skipr   origincontentss         r   get_templatezLoader.get_template   s     //> 	FFdNf&BCD,,V4
  ((KK	 	$ #=>> ( f&=>?s   A55BBc                     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   s     r   r   zLoader.get_template_sources%   s    
 "O
 	
r   c                      y)z}
        Reset any state maintained by the loader instance (e.g. cached
        templates or cached loader modules).
        N )r
   s    r   resetzLoader.reset.   s    
 	r   r   )__name__
__module____qualname__r   r   r   r   r   r   r   r   r      s    ?:
r   r   N)django.templater   r   r   r   r   r   <module>r!      s    :/ /r   