docs: def get_extension(self, protocol):
          """Retrieve extension for the given protocol
  
          :param protocol: name of the protocol
          :type protocol: string
          :raises NoProtocolError: no extension registered for protocol
  
          """
          if protocol not in self.registry:
              raise NoProtocolError("No protocol for %s" % protocol)
          index = self.registry[protocol]
          return self.extensions[index]