
    hT                     r    S r SSKJr  SSKJr   " S S5      r " S S\\5      r\rS r	\" \5      S	 5       r
g
)a8  
Functions for working with "safe strings": strings that can be displayed safely
without further escaping in HTML. Marking something as a "safe string" means
that the producer of the string has already turned characters that should not
be interpreted by the HTML engine (e.g. '<') into the appropriate entities.
    wraps)	keep_lazyc                       \ rS rSrSrS rSrg)SafeData    c                     U $ )z
Return the html representation of a string for interoperability.

This allows other template engines to understand Django's SafeData.
r	   selfs    I/var/www/html/env/lib/python3.13/site-packages/django/utils/safestring.py__html__SafeData.__html__   s	         N)__name__
__module____qualname____firstlineno__	__slots__r   __static_attributes__r	   r   r   r   r      s    Ir   r   c                   6   ^  \ rS rSrSrSrU 4S jrS rSrU =r	$ )
SafeString   zV
A str subclass that has been specifically marked as "safe" for HTML output
purposes.
r	   c                 f   > [         TU ]  U5      n[        U[        5      (       a  [	        U5      $ U$ )z{
Concatenating a safe string with another safe bytestring or
safe string is safe. Otherwise, the result is no longer safe.
)super__add__
isinstancer   r   )r   rhst	__class__s      r   r   SafeString.__add__!   s/    
 GOC c8$$a= r   c                     U $ Nr	   r   s    r   __str__SafeString.__str__+   s    r   )
r   r   r   r   __doc__r   r   r$   r   __classcell__)r    s   @r   r   r      s    
 I r   r   c                 4   ^ ^ [        T5      UU 4S j5       nU$ )Nc                      > T" T" U 0 UD65      $ r#   r	   )argskwargsfuncsafety_markers     r   wrapper"_safety_decorator.<locals>.wrapper3   s    T426233r   r   )r-   r,   r.   s   `` r   _safety_decoratorr0   2   s     
4[4 4 Nr   c                 ~    [        U S5      (       a  U $ [        U 5      (       a  [        [        U 5      $ [	        U 5      $ )z
Explicitly mark a string as safe for (HTML) output purposes. The returned
object can be used everywhere a string is appropriate.

If used on a method as a decorator, mark the returned data as safe.

Can be called multiple times on a single string.
r   )hasattrcallabler0   	mark_safer   )ss    r   r4   r4   :   s6     q*{{ A..a=r   N)r&   	functoolsr   django.utils.functionalr   r   strr   SafeTextr0   r4   r	   r   r   <module>r:      sO     -	 	h ,  : r   