
    h                     B    S r SSKJr  SSKJr  SSKJr   " S S\5      rg)z
The Response class in REST framework is similar to HTTPResponse, except that
it is initialized with unrendered data, instead of a pre-rendered string.

The appropriate renderer is called during Django's template response rendering.
    )	responses)SimpleTemplateResponse)
Serializerc                   h   ^  \ rS rSrSr   S	U 4S jjrS r\S 5       r\S 5       r	U 4S jr
SrU =r$ )
Response   zQ
An HttpResponse that allows its data to be rendered into
arbitrary media types.
c                    > [         T
U ]  SUS9  [        U[        5      (       a  Sn[	        U5      eXl        X0l        XPl        X`l        U(       a  UR                  5        H	  u  pXU'   M     gg)z
Alters the init arguments slightly.
For example, drop 'template_name', and instead use 'data'.

Setting 'renderer' and 'media_type' will typically be deferred,
For example being set automatically by the `APIView`.
N)statusztYou passed a Serializer instance as data, but probably meant to pass serialized `.data` or `.error`. representation.)
super__init__
isinstancer   AssertionErrordatatemplate_name	exceptioncontent_typeitems)selfr   r
   r   headersr   r   msgnamevalue	__class__s             I/var/www/html/env/lib/python3.13/site-packages/rest_framework/response.pyr   Response.__init__   sr     	f-dJ'', 
 !%%	*"(&}}"T
  /     c                     U $ )N )clsargskwargss      r   __class_getitem__Response.__class_getitem__2   s    
r   c                    [        U SS 5      n[        U SS 5      n[        U SS 5      nU(       d   S5       eU(       d   S5       eUc   S5       eXS'   UR                  nUR                  nU R                  nUc  Ub  SR	                  XE5      nOUc  UnX`S	'   UR                  U R                  X#5      n[        U[        5      (       a  U(       d   S
5       eUR                  U5      $ U(       d  U S		 U$ )Naccepted_rendereraccepted_media_typerenderer_contextz&.accepted_renderer not set on Responsez(.accepted_media_type not set on Responsez%.renderer_context not set on Responseresponsez{}; charset={}zContent-Typez?renderer returned unicode, and did not specify a charset value.)
getattr
media_typecharsetr   formatrenderr   r   strencode)r   rendererr&   contextr*   r+   r   rets           r   rendered_contentResponse.rendered_content5   s   4!4d;%d,A4H$ 2D9AAAx"N$NN""K$KK""
((
""((G$7+22:GL!%L+^oodii)<Fc3 #7 ::g&&^$
r   c                 D    [         R                  " U R                  S5      $ )z_
Returns reason text corresponding to our HTTP response status code.
Provided for convenience.
 )r   getstatus_code)r   s    r   status_textResponse.status_textW   s     }}T--r22r   c                 R   > [         TU ]  5       nS H  nX!;   d  M
  X	 M     / US'   U$ )z?
Remove attributes from the response that shouldn't be cached.
)r%   r'   resolver_matchclientrequestjsonwsgi_request_closable_objects)r   __getstate__)r   statekeyr   s      r   rB   Response.__getstate___   s<     $&
C |J
 &(!"r   )r   r   r   r   )NNNNFN)__name__
__module____qualname____firstlineno____doc__r   r"   propertyr3   r9   rB   __static_attributes____classcell__)r   s   @r   r   r      sP    
 *.-1/3#<  B 3 3 r   r   N)rJ   http.clientr   django.template.responser   rest_framework.serializersr   r   r   r   r   <module>rQ      s$    " ; 1]% ]r   