code: def verify(self, type_):
          
          raw_missing, mistyped, mismatched = self._diff_signatures(type_)
  
          # See if we have defaults for missing methods.
          missing = []
          defaults_to_use = {}
          for name in raw_missing:
              try:
                  defaults_to_use[name] = self._defaults[name].implementation
              except KeyError:
                  missing.append(name)
  
          if not any((missing, mistyped, mismatched)):
              return defaults_to_use
  
          raise self._invalid_implementation(type_, missing, mistyped, mismatched)
docs: Check whether a type implements ``self``.
  
          Parameters
          ----------
          type_ : type
              The type to check.
  
          Raises
          ------
          TypeError
              If ``type_`` doesn't conform to our interface.
  
          Returns
          -------
          None