docs: def _proc_ctype_header(self, request, result):
          """
          Process the Content-Type header rules for the request.  Only
          the desired API version can be determined from those rules.
  
          :param request: The Request object provided by WebOb.
          :param result: The Result object to store the results in.
          """
  
          if result:
              # Result has already been fully determined
              return
  
          try:
              ctype = request.headers['content-type']
          except KeyError:
              # No content-type header to examine
              return
  
          # Parse the content type
          ctype, params = parse_ctype(ctype)
  
          # Is it a recognized content type?
          if ctype not in self.types:
              return
  
          # Get the mapped ctype and version
          mapped_ctype, mapped_version = self.types[ctype](params)
  
          # Update the content type header and set the version
          if mapped_ctype:
              request.environ['aversion.request_type'] = mapped_ctype
              request.environ['aversion.orig_request_type'] = ctype
              request.environ['aversion.content_type'] = \
                  request.headers['content-type']
              if self.overwrite_headers:
                  request.headers['content-type'] = mapped_ctype
          if mapped_version:
              result.set_version(mapped_version)