File: //usr/local/lib/python3.10/dist-packages/pip/_vendor/urllib3/__pycache__/request.cpython-310.pyc
o
��h# � @ s� d dl mZ d dlZddlmZ ddlmZ ddlmZ dgZ G dd� de
�Zejs>G d d
� d
ej
e j�Zeej
e _dS dS )� )�absolute_importN� )�encode_multipart_formdata)�six)� urlencode�RequestMethodsc @ sZ e Zd ZdZh d�Zddd�Z ddd�Zdd d
�Zddd�Z dd
d�Z dS )r a�
Convenience mixin for classes who implement a :meth:`urlopen` method, such
as :class:`urllib3.HTTPConnectionPool` and
:class:`urllib3.PoolManager`.
Provides behavior for making common types of HTTP request methods and
decides which type of request field encoding to use.
Specifically,
:meth:`.request_encode_url` is for sending requests whose fields are
encoded in the URL (such as GET, HEAD, DELETE).
:meth:`.request_encode_body` is for sending requests whose fields are
encoded in the *body* of the request using multipart or www-form-urlencoded
(such as for POST, PUT, PATCH).
:meth:`.request` is for making any kind of request, it will look up the
appropriate encoding format and use one of the above two methods to make
the request.
Initializer parameters:
:param headers:
Headers to include with all requests, unless other headers are given
explicitly.
> �GET�HEAD�DELETE�OPTIONSNc C s |pi | _ d S �N)�headers)�selfr
� r �F/usr/local/lib/python3.10/dist-packages/pip/_vendor/urllib3/request.py�__init__+ s zRequestMethods.__init__Tc K � t d��)NzMClasses extending RequestMethods must implement their own ``urlopen`` method.)�NotImplementedError)r �method�url�bodyr
�encode_multipart�multipart_boundary�kwr r r �urlopen. s
�zRequestMethods.urlopenc K sN |� � }||d<