  
  __all__ = ('Request',)
  
  
  def request_class_factory(request):
      """
      Builds and returns a request class, to be used as a replacement of Django's built-in.
      
      In fact :class:`request.Request` needs to be mixed-in with a subclass of `HttpRequest` for use,
      and we cannot do that before knowing which subclass of `HttpRequest` is used. So this function
      takes a request instance as only argument, and returns a properly mixed-in request class.
      """
      request_class = type(request)
      return type(request_class.__name__, (Request, request_class), {})
  
  
  class Request(object):
      """
      A mixin class allowing to enhance Django's standard HttpRequest.
      """
  
 
</s> remove         Returns a subclass of Django's `HttpRequest` with a richer API,
        as described in :mod:`request`.
 </s> add         Instantiates and returns the list of parsers that will be used by the request
        to parse its content. </s> remove     A mixin class allowing to enhance Django's standard HttpRequest.
 </s> add     A wrapper allowing to enhance Django's standard HttpRequest. </s> remove     def get_request_class(self):
 </s> add     request_class = Request
    """
    The class to use as a wrapper for the original request object.
    """

    def get_parsers(self): </s> remove         if not hasattr(self, '_request_class'):
            self._request_class = request_class_factory(self.request)
            self._request_class._USE_FORM_OVERLOADING = self._USE_FORM_OVERLOADING
            self._request_class._METHOD_PARAM = self._METHOD_PARAM
            self._request_class._CONTENTTYPE_PARAM = self._CONTENTTYPE_PARAM
            self._request_class._CONTENT_PARAM = self._CONTENT_PARAM
            self._request_class.parsers = self.parsers
        return self._request_class
 </s> add         if not hasattr(self, '_parsers'):
            self._parsers = [r(self) for r in self.parser_classes]
        return self._parsers </s> remove     _USE_FORM_OVERLOADING = True
    _METHOD_PARAM = '_method'
    _CONTENTTYPE_PARAM = '_content_type'
    _CONTENT_PARAM = '_content'

    parsers = ()
 </s> add     parser_classes = ()
  
  __all__ = ('Request',)
  
  












  class Request(object):
      """
      A mixin class allowing to enhance Django's standard HttpRequest.
      """
  
keep keep keep keep replace replace replace replace replace replace replace replace replace replace replace replace keep keep keep keep keep
 cleaned Request/Response/mixins to have similar interface 
djangorestframework/request.py