docs: def encode(self, encoding=None):
          r"""Encode into a multihash-encoded digest.
  
          If `encoding` is `None`, a binary digest is produced:
  
          >>> mh = Multihash(0x01, b'TEST')
          >>> mh.encode()
          b'\x01\x04TEST'
  
          If the name of an `encoding` is specified, it is used to encode the
          binary digest before returning it (see `CodecReg` for supported
          codecs).
  
          >>> mh.encode('base64')
          b'AQRURVNU'
  
          If the `encoding` is not available, a `KeyError` is raised.
          """
          try:
              fc = self.func.value
          except AttributeError:  # application-specific function code
              fc = self.func
          mhash = bytes([fc, len(self.digest)]) + self.digest
          if encoding:
              mhash = CodecReg.get_encoder(encoding)(mhash)
          return mhash